1673 Commits

Author SHA1 Message Date
Jason Simmons
783deab110
Fix the declaration of setSystemGestureExclusionRects to match the PlatformMessageHandler interface (#12306) 2019-09-16 16:26:39 -07:00
George Wright
5a8da65592
Manage resource and onscreen contexts using separate IOSGLContext objects (#12277)
Manage resource and onscreen contexts using separate IOSGLContext objects.

FlutterView owns the onscreen context, and PlatformViewIOS owns the resource context.
2019-09-16 16:17:46 -07:00
gaaclarke
2620babef0
Made flutter startup faster by allowing initialization to be parallelized (#10182)
Made flutter startup faster by allowing initialization to be parallelized.  This resulting in a 15% decrease in startup time (~0.05ms)
2019-09-16 15:04:51 -07:00
rafern
63873d9f42 Fix objects equal to null not being detected as null (#11283) 2019-09-16 12:16:38 -07:00
Qxyat
7d42bc70cf Reset NSNetService delegate to nil,when stop service. (#11270) 2019-09-16 10:45:52 -07:00
liyuqian
aac33d1bce
Reland "Smooth out iOS irregular input events delivery (#11817)" (#12280)
Additionally, we now use the engine directly as a delegate instead of storing potentially dead runtime_controller.

Unit tests have been updated to include an engine restart check which would fail before the fix.

This fixes https://github.com/flutter/flutter/issues/40303
2019-09-16 10:42:44 -07:00
Michael Goderbauer
ef7bcafd5c
a11y: expose max character count for text fields (#12269) 2019-09-16 09:37:25 -07:00
Ryan Macnak
04f567bdde
Do not assume Platform.script is a Dart source file during training. (#12256)
Cf. dart-lang/sdk@74cff6c7df
2019-09-16 08:57:27 -07:00
Kaushik Iska
289d1eaaa9
Revert "Add iOS platform view mutation XCUITests to the scenario app (#11652)" (#12292)
This reverts commit b73cfdad4f88ddfad6114c77633a0947f0c5fff5.
2019-09-15 17:57:54 -07:00
Chris Yang
b73cfdad4f
Add iOS platform view mutation XCUITests to the scenario app (#11652) 2019-09-16 07:56:24 +08:00
gaaclarke
5075172fe7
FlutterViewController notify will dealloc (#12232)
Made the flutter view controllers dealloc notification more
generic and started turning off semantics when the view controller
is remotely deleted.
2019-09-13 17:33:03 -07:00
Francisco Magdaleno
07d4cd919a
[macos] Stops keeping track of text input models (#12267) 2019-09-13 14:30:20 -07:00
stuartmorgan
ca4c3f6df3
Add an initial macOS version of FlutterAppDelegate (#12230)
Creates a starting point for an app delegate. For now it just
incorporates the menu and window renaming functionality that's currently
in the FDE example, but in the future this will also do forwarding of
application lifecycle events to plugins.

Fixes https://github.com/flutter/flutter/issues/32419
2019-09-12 16:03:18 -07:00
Francisco Magdaleno
5c8611194d
[glfw/windows] Stops keeping track of input models (#12234) 2019-09-12 15:30:53 -07:00
Michael Klimushyn
3c6383f2db
Revert "Smooth out iOS irregular input events delivery (#11817)" (#12251)
This reverts commit b569e8c2fd5a444b6a3f7355a2f8c983c3a23e05.
2019-09-12 11:23:05 -07:00
Michael Klimushyn
dfa9498360
Enable platform view keyboard input on Android Q (#12085)
Naively embedded platform views on Android were never able to receive
keyboard input, because they were never focusable. So far we've worked
around the limiation by hooking into InputMethodManager and proxying the
InputConnection from a focused window over to the embeded view.

Android Q changed InputMethodManager to be instanced per display instead
of a singleton. Because of this our proxy hook was never being called,
since it was being set up on a different instance of IMM than was being
used in the virtual display.

Update `SingleViewPresentation` to store the IMM from the focused window
and return it whenever there are any calls to `INPUT_METHOD_SERVICE`.
This hooks our proxy back into place for the embedded view in the
virtual display. This restores the functionality of our workaround from
previous versions.

Unfortunately there's still a lot of noisy error logs from IMM here. It
can tell that the IMM has a different displayId than what it's expecting
from the window.

This also updates the unit tests to support SDK=27. SDK 16 doesn't have
DisplayManager, so there were NPEs attempting to instantiate the class
under test.
2019-09-12 09:50:54 -07:00
Jim Graham
bbb1f12467
Adjust iOS frame start times to match the platform info (#11802) 2019-09-11 19:08:56 -07:00
Jim Graham
da84d59f64
Revert "Manage iOS contexts separately (#12078)" (#12233)
This reverts commit 4ac0663db7addd6c27904131d8260df66fa8c722.
2019-09-11 17:56:24 -07:00
George Wright
4ac0663db7
Manage iOS contexts separately (#12078)
Manage resource and onscreen contexts using separate IOSGLContext objects. FlutterView owns the onscreen context, and PlatformViewIOS owns the resource context.
2019-09-11 14:32:26 -07:00
Kaushik Iska
2bdfb61a04
Namespace patched SDK names to not conflict with Topaz (#12218) 2019-09-11 08:19:58 -07:00
Jason Simmons
bfa43e1792
[flutter_runner] Generate symbols for the Dart VM profiler (#12048)
Ported from the original implementation in the Topaz tree.
2019-09-10 14:35:42 -07:00
Jason Simmons
2592d6efe2
[flutter_runner] Port the accessibility bridge from Topaz (#12054) 2019-09-10 11:29:08 -07:00
liyuqian
b569e8c2fd
Smooth out iOS irregular input events delivery (#11817)
Fixes https://github.com/flutter/flutter/issues/31086

This patch is a lower level implementation of
https://github.com/flutter/flutter/pull/36616 that would only impact iOS
engine, and host unittests.
2019-09-10 11:18:01 -07:00
Chinmay Garde
d816755508
Don't launch the observatory by default on each embedder unit-test invocation. (#12087)
There is no test to assert this and it unnecessarily slows down the test
harness and opens tons of port on the host.
2019-09-09 19:58:36 -07:00
Chinmay Garde
03e773a902
Guard availability of user notification related methods to iOS 10.0 (#12084)
* `NS_AVAILABLE_IOS(10_0)` makes us tell our compiler that the method needs
  to be stamped into the TU but we promise to do stuff in it only on iOS 10.0
  and above.
* `@availability` ensures that if those methods are called on iOS versions less
  than 10.0, we will do nothing with it. This guards us against the case where
  iOS introduced the functionality privately in older versions of iOS.
2019-09-09 20:25:29 -04:00
Maurice Parrish
9c00c26c8f
Add capability to add AppDelegate as UNUserNotificationCenterDelegate (#9864) 2019-09-09 14:54:00 -07:00
shoryukenn
38d545ee17 Improve Unicode handling on Windows (#11899)
Significantly improves the behavior of non-ASCII text input on Windows. Correctly
processes incoming character events as UTF-16, and for now uses UTF-32 for
the text model so that the existing index-based logic will work much more often.

Future work is still needed, but this will handle far more cases correctly.
2019-09-08 12:13:59 -07:00
xster
8cdb3afd65
Annotate nullability on FlutterEngine to make swift writing more ergonomic (#11808) 2019-09-08 00:25:07 -07:00
Kaushik Iska
35875e0f00
Revert "Manage resource and onscreen contexts using separate IOSGLContext objects (#11798)" (#12055)
This reverts commit a353f93d370dded7bc7756082fbab8b519679d4d.
2019-09-06 18:12:16 -07:00
George Wright
a353f93d37
Manage resource and onscreen contexts using separate IOSGLContext objects (#11798)
Manage resource and onscreen contexts using separate IOSGLContext objects
2019-09-06 16:44:49 -07:00
Kaushik Iska
c9ea4dba8d
[flutter_runner] Refactor our build rules to make them more inline with topaz. (#12034)
Also add flutter tool support for topaz in-tree builds that already have
a dependency on the framework repository.

After this the only major changes left are profiler symbols and
Framework mode.

This should make making topaz use our buldrules significantly easier.
2019-09-06 15:30:37 -07:00
Emmanuel Garcia
50bdbd769e
Document dependencies and remove support-v13 (#11912) 2019-09-06 15:25:59 -07:00
Kaushik Iska
7ea9884ab0
[flutter_runner] Kernel platform files can now be built in topaz (#12016)
- Tested this compatibility in topaz repo. The build rules can now be
used to build kernel_platform_files in topaz tree, after this change we
can migrate the platform*dill and vm*snapshot files in topaz to use the
engine built artifacts.

- Also removes some namespace conflicts for dart configuration.
2019-09-06 14:34:26 -07:00
Kaushik Iska
453d06b1ab
[flutter_runner] Plumb Flutter component arguments to the Dart entrypoint (#12026)
port of Change-Id: Ibcd4a110b84805af02a436a2a5bcf2cf3d2029a4
2019-09-06 14:16:13 -07:00
Matt Carroll
ef2a452124
Remove un-needed FragmentActivity import statements to facilitate proguard. (#11902) 2019-09-05 14:44:04 -07:00
Emmanuel Garcia
edee1fea58
Add @Keep annotation (#11893) 2019-09-05 13:23:04 -07:00
Shi-Hao Hong
14e41878ad
Incorporate View.setSystemGestureExclusionRects code review feedback from #11441 (#11804)
* Improve variable naming and javadoc for setSystemGestureExclusionRects

* Remove variables from setSystemGestureExclusionRects tests

* Split test for two behaviors into two separate tests for setSystemGestureExclusionRects success case
2019-09-05 12:53:41 -07:00
xster
dd71e7be8e
remove extra redundant channels setup in iOS embedding engine (#11886) 2019-09-05 11:13:04 -07:00
Francisco Magdaleno
ef26c460ab
Finish plumbing message responses on method channels (#11877) 2019-09-04 16:17:10 -07:00
James Clarke
7bf31e9bac [Windows] Address #36422 by adding a context for async resource uploading (#11828)
Add a context for async resource uploading.

Fixes flutter/flutter#36422
2019-09-04 15:52:12 -07:00
Shi-Hao Hong
898480fe05
Android 10+ View.getSystemGestureExclusionRects (#11451)
* SystemGesture.getSystemGestureExclusionRects

* Add getSystemExclusionRects unit tests
2019-09-04 15:13:02 -07:00
Core
27955f2477 Fix deleting Thai vowel bug on iOS (skip string range sanitization) (#11807) 2019-09-04 13:19:53 -07:00
Kaushik Iska
b9a743ce8b
[flutter_runner] Add common libs to the test far (#11875)
* [flutter_runner] Add common libs to the test far

* Add flutter runner test build as part of CI
2019-09-04 11:17:25 -07:00
Kaushik Iska
746c7a1cc4
Add a sample unit test target to flutter runner (#11847) 2019-09-04 07:58:52 -07:00
Matt Carroll
fde7c8c334
Rename first frame method and notify FlutterActivity when full drawn (#38714 #36796). (#11357) 2019-09-03 15:49:53 -07:00
James Clarke
51a376d73b
[Windows] Update API for alternative Windows shell platform implementation (#11327)
* Begin API evolution to a more native win32 API

* Child-window based hosting

* Plumb through an initial size for child window to avoid reallocated surface on start

* Windows API cleanup part 1

* Fix wrapper tests

* Ensure flutter's HWND resources are destroyed

* Final API cleanup

* Fix dynamic DPI handling

* Cleanup

* Fix a bug that was causing engine to not be shutdown correctly

* CR feedback

* auto format

* CR feedback: combine FlutterView and FlutterViewController

* The one that clang-format seems to always get wrong

* expletive

* fix sources for licesnse file

* CR Feedback

* cleanup

* Update GetNativeWindow() to return an HWND rather than a long

* fix formatting
2019-09-02 17:55:42 -07:00
gaaclarke
daf1a27d46
Started logging warnings if we drop platform messages. (#11792) 2019-08-30 12:48:03 -07:00
Kaushik Iska
766125b4f2
Roll fuchsia/clang/linux-amd64 from wGyr4... to -mnHl... (#11790)
* Roll fuchsia/clang/linux-amd64 from wGyr4... to -mnHl...

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-toolchain-flutter-engine
Please CC  on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Fix dangling pointer
2019-08-30 11:38:12 -07:00
Kaushik Iska
25ffa223b9
Roll fuchsia/sdk/core/linux-amd64 from -UaaS... to fSXZ0... (#11784)
* Roll fuchsia/sdk/core/linux-amd64 from -UaaS... to fSXZ0...

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/fuchsia-linux-sdk-flutter-engine
Please CC  on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

* Fix deprecated usage
2019-08-30 10:34:06 -07:00
Kaushik Iska
d426031811
[flutter_runner] Port over all the changes to the dart_runner cmx files (#11776)
* Port over all the changes to the dart_runner cmx files

* Update vmservice.cmx
2019-08-30 10:19:08 -07:00