- 08 10月, 2019 1 次提交
-
-
由 Alexander Aprelev 提交于
* Roll dart to aece1c1e92. Changes since last roll: ``` aece1c1e92 Update compile_flutter.sh after vm -> frontend_server rename 9293e26fc9 [gardening] Fix flutter hhh patch. 13fbf569f6 [flutter] split frontend_server from vm package a389015083 Rewrite MethodInvocation to FunctionExpressionInvocation when the target is not a method. ae251757a9 [vm,aot,bytecode] Performance fixes 01ebf92dde [VM] Consume extension member/is late flag setting when reading kernel file. 8e05cd278c [vm, bytecode] Emit bytecode without ASTs by default. 4539536b34 [eventhandler] generalize socket initialization 7115687beb NNBD i13n: Add a description for discarding just the condition 2bcaf02582 (origin/base) Update dartdoc to 0.28.7. a0e8c7712d [dart2js] New RTI: Prevent elision of precomputed1 and remove unneeded read. c38e19cbbe [vm/compiler] bit utilities f918214f36 Add a unit test reproducing issue #38352. ad47b1ca64 Remove summary1, part 2. 0881a4a691 Reland "Deprecate TypeParameterTypeImpl.getTypes()" d93a6b596b Prepare to publish analyzer version 0.38.5 d5feab0c53 [vm] Create builds for LeakSanitizer, MemorySanitizer and ThreadSanitizer. 8c5236f55e [vm/ffi] Fix host-target word mismatch breaking AOT callbacks in ARM_X64. 5f7b837195 Remove unused FunctionElementImpl_forLUB. 2c75771611 Write and read the static type of IntegerLiteral. b00453c68a Create synthetic FunctionType in quick fixes. 897e197dd4 Flow analysis: Update AssignedVariablesVisitor to track functions/methods. 55466fd3cc Flow analysis: Remove AssignedVariables.capturedAnywhere. 0a5cf36f14 Make exitFunctionBody safer. ``` * Update license hash
-
- 05 10月, 2019 1 次提交
-
-
由 Dan Field 提交于
-
- 04 10月, 2019 1 次提交
-
-
由 chunhtai 提交于
-
- 01 10月, 2019 1 次提交
-
-
由 liyuqian 提交于
This reverts commit c2879cae. 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.
-
- 28 9月, 2019 1 次提交
-
-
由 Jonah Williams 提交于
-
- 24 9月, 2019 1 次提交
-
-
由 chunhtai 提交于
* Add windows font change logic * update * fix comment
-
- 21 9月, 2019 1 次提交
-
-
由 gaaclarke 提交于
Added unit tests for method channels.
-
- 20 9月, 2019 1 次提交
-
- 19 9月, 2019 2 次提交
-
-
由 Kaushik Iska 提交于
* [flutter_runner] Move from runner context to component context * remove the file references
-
由 Dan Field 提交于
-
- 18 9月, 2019 5 次提交
-
-
由 Chinmay Garde 提交于
Account for root surface transformation on the surfaces managed by the external view embedder. (#11384) The earlier design speculated that embedders could affect the same transformations on the layers post engine compositor presentation but before final composition. However, the linked issue points out that this design is not suitable for use with hardware overlay planes. When rendering to the same, to affect the transformation before composition, embedders would have to render to an off-screen render target and then apply the transformation before presentation. This patch negates the need for that off-screen render pass. To be clear, the previous architecture is still fully viable. Embedders still have full control over layer transformations before composition. This is an optimization for the hardware overlay planes use-case. Fixes b/139758641
-
由 Matt Carroll 提交于
-
由 Harry Terkelsen 提交于
* Improve the CanvasKit backend for Flutter Web - Improve font handling by trying to load a "normal" font face instead of using the first face matching the family. - Implement Vertices and drawVertices * Add license header to vertices.dart * Remove unused 'encodedPositions' * Delete commented old code. Don't use Skia by default * Add `vertices.dart` to licenses file
-
由 gaaclarke 提交于
Added channel buffers to 'ui' so that messages have a place to go until message handling is setup.
-
由 stuartmorgan 提交于
Makes the plugin registration structure consistent with macOS. This will be used in generated plugin registrant files rather than a specific implemenation class, so this helps unblock the creation of generated registrants on Windows and Linux.
-
- 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
-