1325 Commits

Author SHA1 Message Date
Chris Yang
2fcd4e799b
Do nothing if the params didn't change when compositing iOS platform views. (#8999) 2019-06-03 13:08:29 -07:00
Matt Carroll
008090b8ab
Extracted PlatformViewsChannel from PlatformViewsController. (#7847) 2019-06-03 11:04:33 -07:00
stuartmorgan
4c6253cdd6
Copy the macOS podspec during builds (#9158)
The podspec must be copied to the build output root, otherwise
--local-engine won't work in projects containing plugins.

Mirrors the iOS podspec copy rule.
2019-05-31 17:22:09 -07:00
Kevin Lindkvist
69ebe5fb28 Remove references to Fuchsia's ContextWriter (#9157) 2019-05-31 16:12:07 -07:00
Dan Field
79c6ce19a1
Preserve safe area (#8848)
Preserve safe area on Window regardless of insets.
2019-05-31 09:24:38 -07:00
Jason Simmons
e8db5dfd52
Always run the resource extractor in FlutterMain (#9149)
FlutterMain.findAppBundlePath is using the presence of the flutter_assets
directory as a signal that the app is initialized.  For consistency,
FlutterMain will run the resource extractor at startup and create
flutter_assets even if no resources need to be extracted.
2019-05-30 16:50:31 -07:00
Jason Simmons
e87326dd7d
Suppress an unchecked cast warning in ShimPluginRegistry (#9145) 2019-05-30 13:10:03 -07:00
stuartmorgan
ba6cc8c93c
Fix type mismatches in C++ standard codec (#9112)
There were some implicit casts in the standard codec implementation that
didn't show up on Linux, but do on Windows.
2019-05-30 10:17:08 -07:00
Chris Yang
49b6de8c5c
Dynamically add certain iOS AppDelegate methods. (#8843) 2019-05-30 09:06:49 -07:00
Matt Carroll
e8aa120482
New Plugin API PR5: Integrates plugin lifecycle control with FlutterFragment. (#9083) 2019-05-29 20:46:07 -07:00
Matt Carroll
8b1199c4dd
Implemented Log proxy that only logs in BuildConfig.DEBUG (#25391). (#9122) 2019-05-29 20:19:29 -07:00
Dan Field
fa9b5bd0e2
Reduce pipeline depth when GPU and Platform are same thread (#9132) 2019-05-29 19:45:02 -07:00
Kaushik Iska
d4794122ab
Change the virtual display size restriction to warning (#9110)
* Change the virtual display size restriction to warning

- Fixes: https://github.com/flutter/flutter/issues/33290

- This is so we don't block usecases where users show the platform
  view partially.

- https://github.com/flutter/flutter/issues/31990 should address this
  issue more broadly.

* Fix error message
2019-05-30 08:07:41 +05:30
Matt Carroll
4c4c0f8282
Add plugin shim to facilitate old plugins in new embedding (#33478). (#9120) 2019-05-29 18:39:15 -07:00
Matt Carroll
e8c2b17873
Added support for transparent FlutterActivitys (#32740). (#9115) 2019-05-29 18:34:53 -07:00
Chinmay Garde
37b367e4d2
Allow specifying both Dart and non-Dart fixtures in engine unit-tests. (#9113)
* Allow specifying both Dart and non-Dart fixtures in engine unittests.

This fixes numerous issues in the way in which fixtures were managed
in the engine unit-tests.

* Instead of only being able to specify Dart fixtures, unit-tests may specify
  non-Dart fixtures as well. These are simply copied over to the fixtures
  directory known to the unit-test at runtime.
* An issue where numerous Dart files could be given to the kernel snapshotter
  has been addressed. It was anticipated that such a (legal) invocation to the
  kernel snapshotter would produce a snapshot with the contents of all the Dart
  files added to the root library. This is incorrect and the behavior in this
  case is undefined.
* Dart files referenced by the main Dart file are correctly tracked via a
  depfile.
* The snapshotter arguments have been cleaned up to get rid of unused
  arguments (`—strong`) and  the use of the VM product mode argument has been
  corrected to no longer depend on the Flutter product mode.
2019-05-28 19:11:47 -07:00
Kate Lovett
6e5151359d
Removing unused imports (#9108) 2019-05-28 15:16:33 -07:00
Mehmet Fidanboylu
41e10f07f4
Fix internal break since listing contents can return null (#9078) 2019-05-26 20:07:13 -07:00
stuartmorgan
2404cdc901
Rename macOS FLEPlugin* to FlutterPlugin* (#9074)
As another step toward aligning the macOS plugin API with the iOS plugin
API, and with its final form, rename the plugin-related classes from
FLEPlugin* to FlutterPlugin*. This makes the names of the clasess the
same between iOS and macOS. Eventually they should actually merge, with
annotations/ifdefs for platform differences, but for now since the macOS
version uses the same method names and is simply a subset of the iOS
APIs (with one to-be-stabilized method that is macOS-specific) doing the
merge later won't be a breaking change.

Doing this now allows for building out plugin tooling and plugin
implementations on macOS without creating a growing body of code that
will experience a breaking change later.

See:
https://github.com/flutter/flutter/issues/31735
https://github.com/flutter/flutter/issues/32718
2019-05-25 20:45:00 -04:00
Chris Bracken
509a43fe27
Apply minor cleanups to Android embedding (#9088)
Eliminate an unused import, add missing @Override annotations, and
eliminate an unused logger.
2019-05-25 15:45:14 -07:00
Chris Bracken
0a0f3305b5
Removed outdated deprecation comments (#9087)
In breaking change flutter/engine#4487, a typo was fixed in our Android
APIs correcting RequestPermissionResult to RequestPermissionsResult
(note the 's' on Permissions) for consistency with the Android SDK.

Various tombstone comments were left to help guide developers in the
right direction. These comments were slated for removal in March of
2018; at over a year later, we can probably safely remove them.
2019-05-25 15:02:52 -07:00
Chris Bracken
a44cbbf492
Delete BSDiff sources (#9086)
BSDiff is no longer used as of flutter/engine#8663. This removes the
unused Java import and sources.
2019-05-25 13:49:28 -07:00
Chris Bracken
0f1ff3bdb3
Correct typos, adopt US spellings (#9081)
Corects a bnuch of typeos throughout teh engien codebsae. Also makes
a couple minor Commonwealth -> US spelling adjustments for consistency
with the rest of Flutter's codebase.

Made use of `misspell` tool:
https://github.com/client9/misspell
2019-05-25 13:14:46 -07:00
Matt Carroll
cfa524fcdf
New Plugin API PR4: Adds Lifecycle support to the new plugin system. (#9049) 2019-05-24 19:28:49 -07:00
stuartmorgan
11408effda
Update macOS podspec version requirement (#9077)
The framework is currently built with a 10.12 deployment target, so the
podspec can be at 10.12 rather than 10.13.

The TODO is left because this is an update to the current reality rather
than a final decision about what should be supported.
2019-05-24 21:29:37 -04:00
Jason Simmons
ee6a9c4049
Fix unchecked operation warnings in FlutterMain (#9073)
Also remove trailing whitespace on some lines
2019-05-23 15:30:08 -07:00
stuartmorgan
9d2d58a3c7
Add mouse button support to the macOS shell (#9054)
Uses the new embedding API support for device type and buttons to pass
appropriate mouse button events, allowing for right click, middle click,
etc.

Also fixes some edge cases where macOS event delivery violated Flutter
requirements by tracking more data about the mouse event stream and
adjusting the sent events as necessary.
2019-05-22 17:51:17 -04:00
stuartmorgan
b17c0c6e6f
Add a podspec for FlutterMacOS.framework (#9062)
Based on the iOS Flutter.podspec. This will be used for plugin
management via CocoaPods, as on iOS.

Part of https://github.com/flutter/flutter/issues/32718
2019-05-22 17:48:41 -04:00
stuartmorgan
4dbb9ba388
Expose pointer type and buttons in embedder.h (#9034)
Rather than hard-coding the type of incoming events to mouse, and
synthesizing a primary button press for kDown/kUp, expose device kind
and buttons in the API.

For backwards compatibility, if the type is not set, the old behavior is
used. If an embedder sets the type to mouse explicitly, however, they
must also set correct button information.

For the touch type, the API abstracts away the framework's internal
expectation that a button is set for touch down/move for simplicity.

Fixes flutter/flutter#32854
2019-05-22 11:30:32 -04:00
Matthew Dempsky
ee5915fbb0 Avoid unnecessary copying of vectors in AccessibilityBridge (#9033) 2019-05-21 12:39:11 -07:00
Matthew Dempsky
e40768c63a
Initialize next_pointer_flow_id_ to 0 (#9026)
This member variable was added to three classes in #7807, but only
initialized to 0 in one of them. Initialize to 0 in the other two.
2019-05-20 16:52:16 -07:00
stuartmorgan
e1599ccd3f
Fix horizontal scroll direction for macOS (#9022)
macOS uses negative values to represent scrolls to the right, while
Flutter expects the opposite, so flip X deltas.
2019-05-20 17:01:29 -04:00
stuartmorgan
dbf083bda1
Macos systemnavigator pop (#9019)
Adds the flutter/platform channel to the macOS shell, and implements
SystemNavigator.pop.

Other methods from this channel will be implement in the future.

macOS part of flutter/flutter#30713
2019-05-20 16:15:58 -04:00
Amir Hardon
760fea25cf
remove m prefix from fields in the Android PlatformViews code (#9020) 2019-05-20 12:38:23 -07:00
stuartmorgan
75678602b4
Minor fixes/adjustments to the GLFW shell (#8990)
- Makes json_method_codec.cc compatible with the last stable RapidJSON release.
- Allows removing the GTK dependency with a compile flag.
- Fixes a missing break in a switch flagged by some toolchains.
2019-05-20 14:36:59 -04:00
Emmanuel Garcia
20f5000bc5
Add mode to load AOT snapshots as a native lib (#8979) 2019-05-20 10:08:50 -07:00
Chris Bracken
d946e3e893
Rename Fuchsia Dart and Flutter runners (#9003)
four_gate -> flutter_runner
dt_rush -> dart_runner
2019-05-17 17:04:40 -07:00
Adam Barth
197feb5119
[fuchsia] Update zx_clock_get callers (#8998)
Fuchsia is changing zx_clock_get to return a zx_status_t. This change
prepares us for that change.
2019-05-17 16:37:28 -07:00
Matt Carroll
c181972a40
New Plugin API PR3: Introduces Service, BroadcastReceiver, and ContentProvider awareness, control surfaces, and plugin bindings. (#8962) 2019-05-17 14:25:05 -07:00
stuartmorgan
b6981a38b9
Enable hover by default for desktop shells (#8991)
Fixes flutter/flutter#32835
2019-05-16 20:12:03 -04:00
Dan Field
9d7cd70ce5
add observatoryUrl property to FlutterEngine (#8987) 2019-05-16 13:14:34 -07:00
Matthew Dempsky
3cdfa807fa Replace ararysize macro with fml::size function (#8975)
This is forward compatible with std::size and similar to how Chromium
removed use of the arraysize macro.
2019-05-15 12:43:47 -07:00
Gary Qian
f5fa03b5eb
Use Android text selection shifting API to handle keyboard backspace (#8956) 2019-05-15 10:44:23 +08:00
liyuqian
d0dc9b94d4
Rename frame_time and engine_time (#8952)
At a quick glance, one could easily think of the "engine_time" as the
GPU thread time and the "frame_time" as the UI thread time because the
GPU thread time is mainly spent on the engine while the UI thread time
is mainly spent on the Dart framework to generate the frame.

But it's actually the other way. The "engine_time" is UI thread time and
the "frame_time" is the GPU thread time.

To avoid the confusion, rename them to "ui_time" and "raster_time"
respectively. I avoided the "gpu_time" because the rasterization may be
purely on a CPU backed software Skia backend.
2019-05-14 14:29:27 -07:00
Matthew Dempsky
66087301cd Roll tonic and update #includes (#8950) 2019-05-14 11:57:09 -07:00
Chinmay Garde
5ac2d02645
Avoid disabling sources assignment filters are these have been removed. (#8954) 2019-05-13 18:38:28 -07:00
Matt Carroll
51486a5494
New Plugin API PR2: Introduces ActivityAware, ActivityControlSurface, and ActivityPluginBinding. (#8943) 2019-05-13 17:07:29 -07:00
Jason Simmons
b3b817a9b3
Add a minimal set of symbols to the dynamic symbol table for Linux executables (#8937)
This will reduce executable size.
2019-05-13 16:12:58 -07:00
Chinmay Garde
96ffc893ec
Copy the Dart Runner from //topaz into the engine. (#8949) 2019-05-13 14:48:20 -07:00
Matt Carroll
904cfc4fe3
Add @UiThread to MethodChannel and related classes/calls (#32642). (#8947) 2019-05-13 13:26:31 -07:00