- 17 9月, 2019 1 次提交
-
-
由 liyuqian 提交于
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
-
- 13 9月, 2019 2 次提交
-
-
由 stuartmorgan 提交于
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
-
由 Michael Klimushyn 提交于
This reverts commit b569e8c2.
-
- 11 9月, 2019 4 次提交
-
-
由 Jason Simmons 提交于
Ported from the original implementation in the Topaz tree.
-
由 Yegor 提交于
- Add a custom `PlatformPlugin` that spins up a server waiting for test to request a screenshot. - When a screenshot is requested the plugin talks to Chrome via the debug port, captures a screenshot, and compares it with a golden file - This PR also adds proper CLI for `dev/test.dart` with an `ArgParser` for future extension into a proper developer tool for the team. - As a first couple of features, it adds `--debug` option to launch Chrome in debug mode, a `--target` option to choose a single test to run rather than all tests, and `--shard` option to choose a subset of tests to run. Limitations: - While screenshot test will run on Cirrus, they are configured to not fail on Cirrus. Need to solve Chrome version skew. - Stack maps do not work yet (you get stacks, but they are nonsensical) - When requesting a single test, build_runner builds all tests anyway - Nothing but desktop Chrome is supported - Nothing but Linux is supported - There's no Chrome version pinning; currently assumed stable Chrome channel
-
由 Jason Simmons 提交于
-
由 liyuqian 提交于
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.
-
- 04 9月, 2019 2 次提交
-
-
由 Kaushik Iska 提交于
-
由 Matt Carroll 提交于
-
- 03 9月, 2019 1 次提交
-
-
由 James Clarke 提交于
* 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
-
- 31 8月, 2019 1 次提交
-
-
由 Harry Terkelsen 提交于
* WIP on web plugin registry * WIP on web plugins * More WIP on registering web plugins * remove flutter_web_plugins * add license header * Update year of license header to 2013 * Update the license goldens file
-
- 27 8月, 2019 2 次提交
-
-
由 Gary Qian 提交于
-
由 Amir Hardon 提交于
This change sets up a "spying canvas" to try and detect empty canvases. When using platform views with a custom embedder, if a platform view overlay canvas is known to be empty we skip creating a compositor layer for that overlay.
-
- 24 8月, 2019 1 次提交
-
-
由 Dan Field 提交于
-
- 23 8月, 2019 4 次提交
-
-
由 Kaushik Iska 提交于
The core underlying issue is that vector push_back could re-allocate and cause us to segfault. I have switched the backing queues to a map per @jason-simmons suggestion in flutter/flutter#38778. I've also added a test to capture the aforementioned bug. I've run internal tests several times to validate that this is fixed. General threading note for this class is that only the following operations take a write lock on the meta mutex: 1. Create 2. Dispose The rest of the operations take read lock on the meta mutex and acquire finer grained locks for the duration of the operation. We can not grab read lock for the entire duration of NotifyObservers for example because observer can in-turn create other queues -- Which we should not block. Additional changes: 1. Make as many methods as possible const. Unlocked methods are all const. 2. Migrate all the queue members to a struct, and have a map. 3. Get rid of the un-used Swap functionality.
-
由 Chinmay Garde 提交于
-
由 Yegor 提交于
sync web engine; run web engine tests
-
由 Gary Qian 提交于
-
- 21 8月, 2019 2 次提交
-
-
由 Jonah Williams 提交于
-
由 Chinmay Garde 提交于
The root canvas is managed by the external view embedder when using a custom compositor. Due to this, frame submission on the surface will not end up flushing the same (because the surface doesn’t have it to begin with). Fixed with tests.
-
- 16 8月, 2019 1 次提交
-
-
由 Jason Simmons 提交于
ParagraphImpl was used to switch between libtxt and Blink implementations of text rendering and is now obsolete.
-
- 15 8月, 2019 2 次提交
-
-
由 stuartmorgan 提交于
Renames all FLE* classes in the macOS embedding to Flutter*. With the exception of -[FlutterDartProject engineSwitches], which is very clearly called out in the comment, the APIs should be stable at this point, so the marker prefix is no longer needed. This is a breaking change for macOS embedders, but going forward breaking changes at the source level for the macOS API should now be rare. Some of these classes will likely merge with the iOS versions in the future (e.g., FlutterDartProject), but that will be an implementation detail that will not affect clients. Fixes flutter/flutter#31735
-
由 James Clarke 提交于
Start work on flutter/flutter#30726 by adding an alternative win32 shell platform implementation for Windows that is not based on GLFW and that uses LIBANGLE for rendering and native win32 windowing and input. This change does not replace the GLFW implementation but rather runs side by side with it producing a secondary flutter_windows_win32.dll artifact. The following items must be added to attain parity with the GLFW implementation: - Custom task scheduling - Support for keyboard modifier keys - Async texture uploads - Correct high DPI handling on Windows versions < 1703 and will be added in subsequent changes.
-
- 14 8月, 2019 2 次提交
-
-
由 Chinmay Garde 提交于
This patch allows embedders to split the Flutter layer tree into multiple chunks. These chunks are meant to be composed one on top of another. This gives embedders a chance to interleave their own contents between these chunks. The Flutter embedder API already provides hooks for the specification of textures for the Flutter engine to compose within its own hierarchy (for camera feeds, video, etc..). However, not all embedders can render the contents of such sources into textures the Flutter engine can accept. Moreover, this composition model may have overheads that are non-trivial for certain use cases. In such cases, the embedder may choose to specify multiple render target for Flutter to render into instead of just one. The use of this API allows embedders to perform composition very similar to the iOS embedder. This composition model is used on that platform for the embedding of UIKit view such and web view and map views within the Flutter hierarchy. However, do note that iOS also has threading configurations that are currently not available to custom embedders. The embedder API updates in this patch are ABI stable and existing embedders will continue to work are normal. For embedders that want to enable this composition mode, the API is designed to make it easy to opt into the same in an incremental manner. Rendering of contents into the “root” rendering surface remains unchanged. However, now the application can push “platform views” via a scene builder. These platform views need to handled by a FlutterCompositor specified in a new field at the end of the FlutterProjectArgs struct. When a new platform view in introduced within the layer tree, the compositor will ask the embedder to create a new render target for that platform view. Render targets can currently be OpenGL framebuffers, OpenGL textures or software buffers. The type of the render target returned by the embedder must be compatible with the root render surface. That is, if the root render surface is an OpenGL framebuffer, the render target for each platform view must either be a texture or a framebuffer in the same OpenGL context. New render target types as well as root renderers for newer APIs like Metal & Vulkan can and will be added in the future. The addition of these APIs will be done in an ABI & API stable manner. As Flutter renders frames, it gives the embedder a callback with information about the position of the various platform views in the effective hierarchy. The embedder is then meant to put the contents of the render targets that it setup and had previously given to the engine onto the screen (of course interleaving the contents of the platform views). Unit-tests have been added that test not only the structure and properties of layer hierarchy given to the compositor, but also the contents of the texels rendered by a test compositor using both the OpenGL and software rendering backends. Fixes b/132812775 Fixes flutter/flutter#35410
-
- 13 8月, 2019 1 次提交
-
-
由 Kaushik Iska 提交于
After pre-roll we know if there have been any mutations made to the IOS embedded UIViews. If there are any mutations and the thread configuration is such chat the mutations will be committed on an illegal thread (GPU thread), we merge the threads and keep them merged until the lease expires. The lease is currently set to expire after 10 frames of no mutations. If there are any mutations in the interim we extend the lease. TaskRunnerMerger will ultimately be responsible for enforcing the correct thread configurations. This configuration will be inactive even after this change since still use the same thread when we create the iOS engine. That is slated to change in the coming PRs.
-
- 10 8月, 2019 4 次提交
-
-
由 Jonah Williams 提交于
-
由 Jonah Williams 提交于
-
由 Yegor 提交于
* rename stub_ui to web_ui * update licenses
-
由 Konstantin Pozin 提交于
Use Skia's own implementation of SkFontMgr for Fuchsia, for consistency with other Skia clients on Fuchsia. FL-290
-
- 09 8月, 2019 1 次提交
-
-
- 07 8月, 2019 1 次提交
-
-
由 Matt Carroll 提交于
-
- 06 8月, 2019 1 次提交
-
-
由 sjindel-google 提交于
-
- 03 8月, 2019 1 次提交
-
-
由 Gary Qian 提交于
-
- 01 8月, 2019 1 次提交
-
-
由 Kaushik Iska 提交于
Also fixes the architecture of the bundled SO files.
-
- 30 7月, 2019 1 次提交
-
-
由 Matt Carroll 提交于
Android Embedding PR37: Separated FlutterActivity and FlutterFragment via FlutterActivityAndFragmentDelegate (#9895)
-
- 27 7月, 2019 1 次提交
-
-
由 Kaushik Iska 提交于
-
- 23 7月, 2019 1 次提交
-
-
由 Matt Carroll 提交于
-
- 20 7月, 2019 1 次提交
-
-
由 gaaclarke 提交于
Removed logic from FlutterAppDelegate into FlutterPluginAppLifeCycleDelegate. This is a better place for add-to-app since it doesn't require them to use our app delegate.
-
- 18 7月, 2019 1 次提交
-
-
由 Chinmay Garde 提交于
Adds a unit-test asserting this behavior.
-