654 Commits

Author SHA1 Message Date
Francisco Magdaleno
ef32890466
Send flag modified events to the framework (#13269) 2019-10-22 19:01:00 -07:00
Chinmay Garde
97f5ad4a90
Avoid accessing the Cocoa view on the GPU or IO task runners. (#13295)
The view was being accessed from a background thread so its OpenGL context could be accessed. This tripped thread safety assertions in Cocoa. Now the OpenGL context is stashed in the FlutterEngine instance itself.
2019-10-22 14:21:49 -07:00
Chinmay Garde
c92613bc49
Re-land "Custom compositor layers must take into account the device pixel ratio."
This reverts commit 6c2381da6070f9e96825841e77e9ffeb376d6aa9 and applies iOS fixes.
2019-10-17 14:07:51 -07:00
Chinmay Garde
a925df1898
Remove incomplete static thread safety annotations. (#13151)
Fixes https://github.com/flutter/flutter/issues/42704.
2019-10-16 17:28:31 -07:00
Chinmay Garde
53900d5189
Revert "Issue 13238: on iOS, force an orientation change when the current orientation is not allowed" (#13160)
This reverts commit c38ed2ca1c8af167383fe5732539e281d41e9128.
2019-10-15 17:24:49 -07:00
Josh
c38ed2ca1c Issue 13238: on iOS, force an orientation change when the current orientation is not allowed (#12295) 2019-10-15 14:36:59 -07:00
gaaclarke
e3742a9b77
iOS Platform View: Fixed overrelease of the observer. (#13093) 2019-10-14 13:49:02 -07:00
gaaclarke
4243fdb868
Removed retain cycle from notification center. (#13073) 2019-10-11 11:34:11 -07:00
Chinmay Garde
835838ce4a
Put Metal renderer selection behind runtime flag and plist opt-in. (#13056) 2019-10-10 13:03:04 -07:00
Chinmay Garde
86e3ebb748
Allow embedders to specify arbitrary data to the isolate on launch. (#13047)
Since this is currently only meant to be used by the embedding internally, the setter in Objective-C is only exposed via the FlutterDartProject private class extension. Unit tests have been added to the shell_unittests harness.

Fixes https://github.com/flutter/flutter/issues/37641
2019-10-10 12:31:14 -07:00
Dan Field
0622b051b6
Minimal test harness for iOS (#13029) 2019-10-09 21:16:11 -07:00
CloudWebRTC
0f9d88c7b6 Add texture support for macOS shell. (#8507) 2019-10-09 20:35:09 -07:00
gaaclarke
6b56ed7f6f
Refactor: FlutterDartProject (#13006)
- Removed unused instance variable
- Explicitly listed nullability
2019-10-09 07:21:44 -07:00
Dan Field
2f352d6629
Fix for a11y crash on iOS (#12990) 2019-10-08 16:37:09 -07:00
gaaclarke
9f650edd14
Started setting our debug background task id to invalid after completion. (#12999) 2019-10-08 13:12:52 -07:00
Chris Yang
0d59c9ec54
Add onUnregistered callback in 'Texture' and 'FlutterTexture' (#12695)
Texture unregistration is finished on the GPU thread. The FlutterTexture implementation might not know when it is finished which leads to a race condition. Adding this callback so the FlutterTexture is aware of end of the unregistration process.
2019-10-08 12:45:57 -07:00
Kate Lovett
58d7b84177
Re-land Adding Link Semantics (#12972) 2019-10-08 11:27:56 -07:00
Kate Lovett
ac45051f2a
Revert "Adding Link SemanticsFlag (#12453)" (#12815)
This reverts commit 974ca210f5275aee0775b363e9c3416e1603cf73.
2019-10-04 17:06:32 -07:00
WATER1350
61f058da26 Fix crash in copypixelbuffer (#10326) 2019-10-04 13:21:17 -07:00
Kate Lovett
974ca210f5
Adding Link SemanticsFlag (#12453) 2019-10-04 12:51:10 -07:00
gaaclarke
a727401947
Enabled people to chose if SystemNavigator.pop is animated on iOS. (#12752) 2019-10-03 16:57:32 -07:00
gaaclarke
362e3fe586
Added some thread asserts to the code and made ios_surface_ safe since (#12775)
* Added some thread asserts to the code and made ios_surface_ safe since
its being written and read from different threads.

* responded to chinmays feedback, added comment
2019-10-03 16:52:41 -07:00
Chinmay Garde
8aa47326ae
Fix Metal builds. (#12777) 2019-10-03 14:42:54 -07:00
gaaclarke
142cf001bc Revert "Manage resource and onscreen contexts using separate IOSGLContext objects (#12277)" (#12773)
This reverts commit 5a8da65592e4bdf0e833bc7bcf30b589bf63ce17.
2019-10-03 13:25:30 -07:00
gaaclarke
e9c2102373
Expanded channel buffer resize to method channels. (#12725)
* Expanded channel buffer resize to method channels.
2019-10-02 17:59:59 -07:00
Chinmay Garde
c4d127e39c
Fix Metal builds by accounting for the updated SubmitFrame signature. (#12754) 2019-10-02 15:36:28 -07:00
Jiahao
7bb1a6b0aa
Fix parameter naming in docs (#12732) 2019-10-02 08:59:06 -07:00
Chris Yang
bf620dc568
Reland "Add iOS platform view mutation XCUITests to the scenario app(#11652)" (#12707) 2019-10-02 01:51:31 +08:00
gaaclarke
f407e06970
Resize channel buffers (#12402)
Made it so you can resize channel buffers by sending messages to them.
2019-10-01 10:31:25 -07:00
gaaclarke
ddf98c0cba
Cleanup: Turned on NS_ASSUME_NONNULL_BEGIN for FlutterViewController. (#12708)
Cleanup: Turned on NS_ASSUME_NONNULL_BEGIN for FlutterViewController
2019-10-01 09:55:49 -07:00
gaaclarke
669cbba088
Cleanup: Made a macro to assert ARC is enabled. (#12701)
Cleanup: Made a macro to assert ARC is enabled (and its inverse).
2019-09-30 14:47:54 -07:00
liyuqian
9675ca2f6b
Reland "Smooth out iOS irregular input events delivery (#12280)" (#12385)
This reverts commit c2879cae2ee3707ad07af1118bf4862dc1d82bb7.

Additionally, we fix https://github.com/flutter/flutter/issues/40863 by adding a secondary VSYNC callback.

Unit tests are updated to provide VSYNC mocking and check the fix of https://github.com/flutter/flutter/issues/40863.

The root cause of having https://github.com/flutter/flutter/issues/40863 is the false assumption that each input event must trigger a new frame. That was true in the framework PR https://github.com/flutter/flutter/pull/36616 because the input events there are all scrolling move events. When the PR was ported to the engine, we can no longer distinguish different types of events, and tap events may no longer trigger a new frame.

Therefore, this PR directly hooks into the `VsyncWaiter` and uses its (newly added) secondary callback to dispatch the pending input event.
2019-09-30 11:25:50 -07:00
gaaclarke
3c271bb942
Started asserting the FlutterEngine is running before communicating over channels. (#12469)
Started asserting the FlutterEngine is running before communicating
over channels.  This changes a null pointer exception to an
NSException that will provide some meaningful data to clients
incorrectly using the engine in an add-to-app situations.
2019-09-27 15:18:45 -07:00
gaaclarke
57f35d2763
Split out the logic to handle status bar touches into its own function (#12587)
Split out the logic to handle status bar touches into its own function.  This should make add-to-app clients' lives easier.
2019-09-27 15:10:28 -07:00
gaaclarke
92d30c0cc8
Added a default entrypoint variable to match android syntax. (#12370)
Made creating and using a FlutterEngine a bit easier, to try to get it get it as easy to use as Android's equivalent.
* Added a default entrypoint variable.
* I added `run` to and `initWithName:` to FlutterEngine.
2019-09-26 17:11:45 -07:00
Chinmay Garde
5b5fd7508c
Revert "Support accessibility labels on iOS switches. (#12404)" (#12466)
This reverts commit 147d0c3805499f5302f763da01fc40259b1a22ee.
2019-09-26 12:52:52 -07:00
brandondiamond
147d0c3805 Support accessibility labels on iOS switches. (#12404) 2019-09-26 11:14:44 -07:00
gaaclarke
933f83e303
Added unit tests for method channels. (#12373)
Added unit tests for method channels.
2019-09-20 14:25:56 -07:00
liyuqian
c2879cae2e
Revert "Reland "Smooth out iOS irregular input events delivery (#11817)" (#12280)" (#12364)
This reverts commit aac33d1bced7a9d15e1feb19f73eef6da16470f0.

Reason: flutter/flutter#40863

TBR: chinmaygarde, iskakaushik
2019-09-19 19:39:36 -07:00
xster
4159c2bfed
Make iOS FlutterViewController stop sending inactive/pause on app lifecycle events when not visible (#12128) 2019-09-17 12:00:46 -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
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
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
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
Jim Graham
bbb1f12467
Adjust iOS frame start times to match the platform info (#11802) 2019-09-11 19:08:56 -07:00