697 Commits

Author SHA1 Message Date
Justin McCandless
a7b6ee58a2
Smart quote/dash configuration support in iOS (#13863)
Support for UITextSmartDashesType and UITextSmartQuotesType in iOS
2019-12-12 10:54:31 -05:00
xster
fc8cafb3c6
objcdoc fix for some ambiguity (#14367) 2019-12-11 16:43:22 -08:00
Wu Zhong
9e4c6ad40c Fix CGMutablePathRef memory leaks when the path is invalid. (#14275) 2019-12-11 15:52:29 -08:00
Jim Graham
85953615eb
Conditionally use offscreen root surface only when needed
Currently helps primarily on iOS when no BackdropFilter is present by lowering energy usage
2019-12-11 15:10:55 -08:00
gaaclarke
84497ba495
Started setting the FlutterOverlayView's bounds when it gets added to its superview. (#14018) 2019-12-05 13:53:07 -08:00
liyuqian
84bf72917c
Revert PRs to unblock David and Jim's work (#14088)
* Revert "Add flow test fixtures and tests (#13986)"

This reverts commit 620f5281b819f304e8e9e945222e26b17b087cc3.

* Revert "Dynamically determine whether to use offscreen surface based on need (#13976)"

This reverts commit a86ef946563b020108320bbfb974bf7343284fd3.
2019-12-03 12:02:37 -08:00
stuartmorgan
063efce92b Report backing store changes in the macOS view (#13933) 2019-12-02 16:33:04 -08:00
Francisco Magdaleno
a68805bcf8
Listen to keyUp event on meta modified keys (#13984) 2019-12-02 16:17:19 -08:00
Jim Graham
a86ef94656
Dynamically determine whether to use offscreen surface based on need (#13976)
Only use an offscreen surface on iOS if a layer which reads back from the destination surface, such as BackdropFilter, is present.
2019-11-27 15:01:25 -08:00
Gary Qian
bcb826759d
Revert "Do not default to downstream affinity on iOS insertText (#13852)" (#14053)
This reverts commit 0d60e1a324c8f17617855f4cfe7287368e15f3dd.
2019-11-28 07:34:40 +09:00
神楽坂花火
f61bec8467 Pass "null" when copy data is null to iOS pasteboard.string (#14046) 2019-11-27 23:46:30 +09:00
Dan Field
c139def52f
Avoid retaining self in block (#14022) 2019-11-26 14:47:00 -08:00
gaaclarke
27fa60793b
Added docstring for FlutterOverlayView. (#14019) 2019-11-26 13:10:24 -08:00
Francisco Magdaleno
c0db9aa11f
Remove device independent mask (#14010) 2019-11-25 14:55:12 -08:00
gaaclarke
97a23a80e1
Made a way to turn off the OpenGL operations on the IO thread for backgrounded apps (#13908) 2019-11-22 14:08:33 -08:00
Gary Qian
0d60e1a324
Do not default to downstream affinity on iOS insertText (#13852) 2019-11-22 14:02:50 -08:00
chunhtai
132d38cd22
Moves pointer event sanitizing to engine. (#13697)
* Moves pointer event sanitizing to engine

* fix comment format

* fix formatting

* addressing comment

* fix format

* fix format

* addressing comment
2019-11-19 09:48:25 -08:00
Todd Volkert
762294cf2d
Revert "RendererContextSwitch guard flutter's gl context rework. (#13812)" (#13906)
This reverts commit f456423cfb820d07bb36e9a8979e3d75cc9d8d76.

This is being reverted because it caused flutter/flutter#45098
(images don't load on iOS).
2019-11-18 18:28:04 -08:00
Darren Austin
5b10fa35b1
Guard against orphaned semantic objects from referencing dead accessibility bridge on iOS (#13857)
* Guard against orphaned semantic objects trying to reference a dead bridge on iOS.

* Switched back to a function instead of a macro for checking the bridge.

* Fixed some formatting issues.
2019-11-14 12:16:02 -08:00
Chris Yang
f456423cfb
RendererContextSwitch guard flutter's gl context rework. (#13812) 2019-11-14 11:50:45 -08:00
chunhtai
1f1e2ba58e
reland add lifecycle enum (#13767)
This reverts commit 8ebb318401344793daa10c3bec97c34891cf7cc8.
2019-11-13 11:26:25 -08:00
Chris Yang
6d66993b1d
Revert "Reland "Guarding EAGLContext used by Flutter #13314" (#13759)" (#13788)
This reverts commit 2dcfaaeb5d3caee2bf7488e90abadf0456f43922.
2019-11-11 17:17:18 -08:00
Chris Yang
2dcfaaeb5d
Reland "Guarding EAGLContext used by Flutter #13314" (#13759) 2019-11-08 20:09:18 -08:00
Chris Yang
f5754357b6
Revert "Reland "Guarding EAGLContext used by Flutter #13314" (#13755)" (#13757)
This reverts commit 618e6666ced77bf497311876fbe968c6b9d72041.
2019-11-08 13:44:29 -08:00
Chris Yang
618e6666ce
Reland "Guarding EAGLContext used by Flutter #13314" (#13755) 2019-11-08 12:26:48 -08:00
Chris Yang
2036530c4d
Revert "Always use IOSGLContextSwitch to access EAGLContexts to prevent plugins from polluting Flutter's EAGLContext (#13314)" (#13753) 2019-11-08 10:59:45 -08:00
Chris Yang
bec554211b
Always use IOSGLContextSwitch to access EAGLContexts to prevent plugins from polluting Flutter's EAGLContext (#13314) 2019-11-08 10:02:23 -08:00
chunhtai
8ebb318401
Revert "Issues/39832 reland (#13642)" (#13720)
This reverts commit 1bfb928e071674a21779cee94908fbcae1c2e657.
2019-11-06 11:41:36 -08:00
Greg Spencer
572e3d16c0
Fix editing selection and deletion on macOS (#13702)
This fixes the selection and deletion during text editing on macOS so that it can handle selections that have a base (selection start) that is after the extent (selection end) in the string.

Apparently the insertText:replacementRange on macOS can supply an NSRange object that has negative values for the length (even though the length is an unsigned NSUInteger). This change checks for that case, and fixes the range of characters replaced in the text to have the right bounds.

Also, I added an additional updateEditState after the state is set from the framework, since there is a timing problem: when the delete key is pressed, it sends an insertText message, which updates the framework state after the framework has already sent its state update to delete the selected region. This additional updateEditState puts the engine and framework back in sync again. Ideally, we would just avoid sending the insertText message, but there's really no way for the engine to know if the pressed key is part of an edit sequence or not.
2019-11-05 19:17:52 -08:00
Darren Austin
05ab04dbe8
Fixed the scroll direction for iOS horizontal accessibility scroll events. (#13651)
* Fixed the scroll direction for horizonatal accessibilty scroll events.

* Updated the comment describing the scroll direction mapping.
2019-11-05 15:25:18 -08:00
chunhtai
1bfb928e07
Issues/39832 reland (#13642)
* Reland "Added new lifecycle enum (#11913)"
2019-11-05 14:52:16 -08:00
chunhtai
fe0838e948
Revert "Added new lifecycle enum (#11913)" (#13632)
This reverts commit 02a479007420b05df8e075978ecdd15442ea520f.
2019-11-04 13:40:20 -08:00
chunhtai
02a4790074
Added new lifecycle enum (#11913) 2019-11-04 12:33:41 -08:00
Dan Field
0a8bd9dd6f
Fix mDNS for iOS13 (#13451) 2019-11-01 15:29:15 -07:00
Amir Hardon
8997f34819
Fix stale platform view gr context on iOS (#13469)
When gr context is changed (this happens when sending the app to the background and then to the foreground) we need to update it for all the platform view overlay surfaces.

The update logic was caching the previous gr context to figure if it had to be updated, but after updating it for a given overlay we were updating the cached context. In apps with multiple platform views this will result in overlays with a stale gr context.

This fixes flutter/flutter#36437
And I believe it should fix flutter/flutter#36999 as well (though I don't have repro code to verify).
2019-10-31 16:51:11 -07:00
Josh
3a32d9fe5c Force orientation change when current orientation not allowed on iOS (#13170) 2019-10-31 12:20:24 -07:00
Amir Hardon
c63aefd28b
Fix iOS crash when multiple platform views are in the scene (#13449)
Having 2 or more platform views simultaneously in the layer tree was crashing immediately on iOS with GL backend.

This regressed in #11070 which passed gl_context to a function in a loop using std::move (which meant on the second iteration the caller is no longer the owner of the field).

I added a scenarios_app test, though this test doesn't run on a physical device on CI so it would have only caught the problem when running locally (flutter/flutter#43852).
2019-10-31 10:30:15 -07:00
Dan Field
90771188f8
Set the install name at link time for darwin dylibs (#13428) 2019-10-29 20:30:13 -07:00
Chinmay Garde
e3aff2c982
Make sure root surface transformations survive resetting the matrix directly in Flow. (#13405)
This used to only be handled correctly for non-root layer backing stores. This
was mostly a side effect of the fact that we used recording canvases instead of
rendering directly into the backing store. We now use recording canvases
consistently.

Fixes b/143464703
Fixes https://github.com/flutter/flutter/issues/43732
2019-10-29 17:44:57 -07:00
gaaclarke
f8a7ce5655
Made it so we clean up gl resources when view controllers get deleted. (#13396) 2019-10-29 16:09:14 -07:00
gaaclarke
ac2fb36cdb
Added back in empty lifecycle events so we don't break people that used to call super. (#13421) 2019-10-29 16:04:59 -07:00
Jason Simmons
7069025a32
Reformat BUILD.gn files to comply with the format checker presubmit script (#13401) 2019-10-29 09:49:16 -07:00
Chinmay Garde
e3c5f4827d
Switch the MacOS Desktop embedder to using a thread configuration where the platform and render task runners are the same. (#13300)
Also creates a new test harness for the desktop embedder framework target and adds a test that launches a headless engine in this new thread configuration.

Fixes https://github.com/flutter/flutter/issues/17579
2019-10-28 12:47:05 -07:00
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