-
Notifications
You must be signed in to change notification settings - Fork 6k
Fire PlatformViewController FlutterView callbacks #13015
Conversation
|
@amirh this still needs a test before it can land but if you want to review the basic approach in the meantime feel free. |
|
This is ready for review. The unit test I added is not good, it's just an interaction test. To really test the behavior I would have need to have significantly refactored the |
| // TODO(mattcarroll): add javadocs | ||
| @UiThread | ||
| public static native boolean nativeGetIsSoftwareRenderingEnabled(); | ||
| public native boolean nativeGetIsSoftwareRenderingEnabled(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was this meant to be part of this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see now.
This seems to indicate that most of these methods shouldn't be static then, right?
shell/platform/android/test/io/flutter/embedding/android/FlutterViewTest.java
Outdated
Show resolved
Hide resolved
dnfield
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This LGTM, but would defer to @amirh
I suspect that many of the methods on FlutterJNI should be made instance methods similar to this one, except for ones that we know will always be global (like the observatory uri).
I agree. I conservatively just instanced the one thing I needed to for this test case but I think it would make sense to move all of them. These are really depending on some mutable state (the native library being loaded) so I don't think they're really immutable/"static" to begin with. |
Fixes a bug where `PlatformViewController` was not being notified of `FlutterView` attachment changes. Unfortunately the test here is just an interaction test. I refactored some of the underlying code so that FlutterEngine could be initialized without through missing native library errors, but even with that variance there isn't any obvious way to test the real behavior here. I'd need to significantly refactor FlutterEngine and PlatformViewsController to write a more effective test here.
amirh
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
This depends on a new bugfix on the engine for text input to work with the new embedding (flutter/engine#13015).
git@github.com:flutter/engine.git/compare/eed171ff3538...66bf00b git log eed171f..66bf00b --no-merges --oneline 2019-10-14 50856934+nturgut@users.noreply.github.com refactoring chrome_installer (flutter/engine#13122) 2019-10-14 mklim@google.com Fire PlatformViewController FlutterView callbacks (flutter/engine#13015) 2019-10-14 30870216+gaaclarke@users.noreply.github.com iOS Platform View: Fixed overrelease of the observer. (flutter/engine#13093) 2019-10-14 ferhat@gmail.com [web] Add basic color per vertex drawVertices API support (flutter/engine#13066) 2019-10-14 mouad.debbar@gmail.com Support keyboard types on mobile browsers (flutter/engine#13044) 2019-10-14 liyuqian@google.com Change IO thread shader cache strategy (flutter/engine#13121) 2019-10-14 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from _GTls... to xRgq0... (flutter/engine#13115) 2019-10-14 skia-flutter-autoroll@skia.org Roll src/third_party/skia 3838fe3c82b4..a7e1b45d9c28 (1 commits) (flutter/engine#13117) 2019-10-14 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from E3s7G... to Lk7iT... (flutter/engine#13116) 2019-10-14 bkonyi@google.com Roll src/third_party/dart 5fad012d02..892fcf2c45 (15 commits) 2019-10-14 jason-simmons@users.noreply.github.com Integrate more SkParagraph builder patches (flutter/engine#13094) 2019-10-13 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from T3Xkz... to E3s7G... (flutter/engine#13114) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from lJPDX... to _GTls... (flutter/engine#13113) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from W9PBe... to T3Xkz... (flutter/engine#13112) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/clang/linux-amd64 from q4DVY... to 2EAvs... (flutter/engine#13111) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/clang/mac-amd64 from zpVtV... to xTJWs... (flutter/engine#13110) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from LsxeL... to lJPDX... (flutter/engine#13109) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from ShVbh... to W9PBe... (flutter/engine#13108) 2019-10-12 bkonyi@google.com Roll src/third_party/dart 90ff37e011..5fad012d02 (6 commits) 2019-10-12 bkonyi@google.com Roll src/third_party/dart 42dcdf903c..90ff37e011 (7 commits) 2019-10-12 skia-flutter-autoroll@skia.org Roll src/third_party/skia 8c6c8b0c42e2..3838fe3c82b4 (3 commits) (flutter/engine#13105) 2019-10-12 liyuqian@google.com Analyze framework Dart code in presubmit tests (flutter/engine#13037) 2019-10-12 iska.kaushik@gmail.com [dart_aot_runner] Complete the port of dart_aot_runner (flutter/engine#13103) 2019-10-11 matthew-carroll@users.noreply.github.com Move initialization into FlutterEngine (flutter/engine#12806) 2019-10-11 ferhat@gmail.com Update felt README (flutter/engine#13097) 2019-10-11 bkonyi@google.com Roll src/third_party/dart 9f33e8da04..42dcdf903c (7 commits) 2019-10-11 iska.kaushik@gmail.com [dart_aot_runner] Generate vmservice aotsnapshots (flutter/engine#13101) 2019-10-11 dnfield@google.com ColorFilter matrix docs (flutter/engine#13100) 2019-10-11 dnfield@google.com cleanup gen_package.py (flutter/engine#13089) 2019-10-11 iska.kaushik@gmail.com [dart_aot_runner] Use the host_toolchain to build kernels (flutter/engine#13096) 2019-10-11 50856934+nturgut@users.noreply.github.com do not wrap font family name (flutter/engine#12801) 2019-10-11 skia-flutter-autoroll@skia.org Roll src/third_party/skia df640e6d14a5..8c6c8b0c42e2 (12 commits) (flutter/engine#13098) 2019-10-11 liyuqian@google.com Remove persistent cache unittest timeout (flutter/engine#13091) 2019-10-11 matthew-carroll@users.noreply.github.com Added FlutterActivity and FlutterFragment hook to cleanUpFlutterEngine() as symmetry for configureFlutterEngine(). (#41943) (flutter/engine#12987) 2019-10-11 yjbanov@google.com use rest args for specifying test targets (flutter/engine#13088) 2019-10-11 yjbanov@google.com Snapshot the felt tool for faster start-up (flutter/engine#13090) 2019-10-11 bkonyi@google.com Roll src/third_party/dart 965b8cb1d8..9f33e8da04 (15 commits) 2019-10-11 dnfield@google.com java imports/style (flutter/engine#13082) 2019-10-11 30870216+gaaclarke@users.noreply.github.com Removed retain cycle from notification center. (flutter/engine#13073) 2019-10-11 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from U4IBp... to ShVbh... (flutter/engine#13092) 2019-10-11 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from fk6ou... to LsxeL... (flutter/engine#13083) 2019-10-11 skia-flutter-autoroll@skia.org Roll src/third_party/skia 6c2b2bb02402..df640e6d14a5 (1 commits) (flutter/engine#13080) 2019-10-11 dnfield@google.com Gen package output corrected (flutter/engine#13086) 2019-10-11 dnfield@google.com Print more output when gen_package fails (flutter/engine#13085) ...
This depends on a new bugfix on the engine for text input to work with the new embedding (flutter/engine#13015).
git@github.com:flutter/engine.git/compare/eed171ff3538...66bf00b git log eed171f..66bf00b --no-merges --oneline 2019-10-14 50856934+nturgut@users.noreply.github.com refactoring chrome_installer (flutter/engine#13122) 2019-10-14 mklim@google.com Fire PlatformViewController FlutterView callbacks (flutter/engine#13015) 2019-10-14 30870216+gaaclarke@users.noreply.github.com iOS Platform View: Fixed overrelease of the observer. (flutter/engine#13093) 2019-10-14 ferhat@gmail.com [web] Add basic color per vertex drawVertices API support (flutter/engine#13066) 2019-10-14 mouad.debbar@gmail.com Support keyboard types on mobile browsers (flutter/engine#13044) 2019-10-14 liyuqian@google.com Change IO thread shader cache strategy (flutter/engine#13121) 2019-10-14 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from _GTls... to xRgq0... (flutter/engine#13115) 2019-10-14 skia-flutter-autoroll@skia.org Roll src/third_party/skia 3838fe3c82b4..a7e1b45d9c28 (1 commits) (flutter/engine#13117) 2019-10-14 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from E3s7G... to Lk7iT... (flutter/engine#13116) 2019-10-14 bkonyi@google.com Roll src/third_party/dart 5fad012d02..892fcf2c45 (15 commits) 2019-10-14 jason-simmons@users.noreply.github.com Integrate more SkParagraph builder patches (flutter/engine#13094) 2019-10-13 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from T3Xkz... to E3s7G... (flutter/engine#13114) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from lJPDX... to _GTls... (flutter/engine#13113) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from W9PBe... to T3Xkz... (flutter/engine#13112) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/clang/linux-amd64 from q4DVY... to 2EAvs... (flutter/engine#13111) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/clang/mac-amd64 from zpVtV... to xTJWs... (flutter/engine#13110) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from LsxeL... to lJPDX... (flutter/engine#13109) 2019-10-12 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from ShVbh... to W9PBe... (flutter/engine#13108) 2019-10-12 bkonyi@google.com Roll src/third_party/dart 90ff37e011..5fad012d02 (6 commits) 2019-10-12 bkonyi@google.com Roll src/third_party/dart 42dcdf903c..90ff37e011 (7 commits) 2019-10-12 skia-flutter-autoroll@skia.org Roll src/third_party/skia 8c6c8b0c42e2..3838fe3c82b4 (3 commits) (flutter/engine#13105) 2019-10-12 liyuqian@google.com Analyze framework Dart code in presubmit tests (flutter/engine#13037) 2019-10-12 iska.kaushik@gmail.com [dart_aot_runner] Complete the port of dart_aot_runner (flutter/engine#13103) 2019-10-11 matthew-carroll@users.noreply.github.com Move initialization into FlutterEngine (flutter/engine#12806) 2019-10-11 ferhat@gmail.com Update felt README (flutter/engine#13097) 2019-10-11 bkonyi@google.com Roll src/third_party/dart 9f33e8da04..42dcdf903c (7 commits) 2019-10-11 iska.kaushik@gmail.com [dart_aot_runner] Generate vmservice aotsnapshots (flutter/engine#13101) 2019-10-11 dnfield@google.com ColorFilter matrix docs (flutter/engine#13100) 2019-10-11 dnfield@google.com cleanup gen_package.py (flutter/engine#13089) 2019-10-11 iska.kaushik@gmail.com [dart_aot_runner] Use the host_toolchain to build kernels (flutter/engine#13096) 2019-10-11 50856934+nturgut@users.noreply.github.com do not wrap font family name (flutter/engine#12801) 2019-10-11 skia-flutter-autoroll@skia.org Roll src/third_party/skia df640e6d14a5..8c6c8b0c42e2 (12 commits) (flutter/engine#13098) 2019-10-11 liyuqian@google.com Remove persistent cache unittest timeout (flutter/engine#13091) 2019-10-11 matthew-carroll@users.noreply.github.com Added FlutterActivity and FlutterFragment hook to cleanUpFlutterEngine() as symmetry for configureFlutterEngine(). (flutter#41943) (flutter/engine#12987) 2019-10-11 yjbanov@google.com use rest args for specifying test targets (flutter/engine#13088) 2019-10-11 yjbanov@google.com Snapshot the felt tool for faster start-up (flutter/engine#13090) 2019-10-11 bkonyi@google.com Roll src/third_party/dart 965b8cb1d8..9f33e8da04 (15 commits) 2019-10-11 dnfield@google.com java imports/style (flutter/engine#13082) 2019-10-11 30870216+gaaclarke@users.noreply.github.com Removed retain cycle from notification center. (flutter/engine#13073) 2019-10-11 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/mac-amd64 from U4IBp... to ShVbh... (flutter/engine#13092) 2019-10-11 skia-flutter-autoroll@skia.org Roll fuchsia/sdk/core/linux-amd64 from fk6ou... to LsxeL... (flutter/engine#13083) 2019-10-11 skia-flutter-autoroll@skia.org Roll src/third_party/skia 6c2b2bb02402..df640e6d14a5 (1 commits) (flutter/engine#13080) 2019-10-11 dnfield@google.com Gen package output corrected (flutter/engine#13086) 2019-10-11 dnfield@google.com Print more output when gen_package fails (flutter/engine#13085) ...
This depends on a new bugfix on the engine for text input to work with the new embedding (flutter/engine#13015).
Fixes a bug where
PlatformViewControllerwas not being notified ofFlutterViewattachment changes.Related to flutter/flutter#41851.