85 Commits

Author SHA1 Message Date
Greg Spencer
6bc70e4a11
Reland: Migration to PlatformDispatcher and multi-window (#21932)
This re-lands #20496 and #21780 after fixing the semantics-enabling code that was causing the post-submit web_smoke_test to fail.

Below is the description from the original PR:

This is a PR for converting the dart:ui code in the engine to use a multi-window API. The goal here is to convert from the window singleton to an API that has the concept of multiple windows. Also, I'm matching up the new PlatformDispatcher class to talk directly to the PlatformConfiguration class in the engine. I'm not attempting to actually enable creating multiple windows here, just migrate to an API that has a concept of multiple windows. The multi-window API in this PR currently only ever creates one window.

The design doc for this change is here.

The major changes in this PR:

Move the platfom-specific attributes out of Window, and into the new PlatformDispatcher class that holds all of the platform state, so that the platform code need only update the configuration on this class.
Create FlutterView, FlutterWindow, and SingletonFlutterWindow classes to separate out the concepts of a view (of which there may be multiple in a window), a window (of which there may be multiple on a screen, and they host views), and a window where there is only ever expected to be one (this hosts the entire API of the former Window class, and will eventually be the type of the window singleton).
Next step after this PR lands:

Remove the Window class entirely (it is replaced by SingletonFlutterWindow). Some minor changes in the Framework are needed to switch to using SingletonFlutterWindow directly first.

The Window class still exists in this PR, but will be removed as soon as the framework is converted to point to the SingletonFlutterWindow class instead. They share the same API, just have different names (Window is currently a subclass of SingletonFlutterWindow). The intention is that the Window name will be freed up to use as a widget class name in the framework for managing windows. The singleton called window will remain, and keep the same API it has now.
2020-10-22 14:54:25 -07:00
Chinmay Garde
5bd7260a1e
Enable loading snapshots with sound null safety enabled. (#21820)
Snapshots compiled with sound null-safety enabled require changes to the way in
which isolates are launched. Specifically, the `Dart_IsolateFlags::null_safety`
field needs to be known upfront. The value of this field can only be determined
once the kernel snapshot is available. This poses a problem in the engine
because the engine used to launch the isolate at shell initialization and only
need the kernel mappings later at isolate launch (when transitioning the root
isolate to the `DartIsolate::Phase::Running` phase). This patch delays launch of
the isolate on the UI task runner till a kernel mapping is available. The side
effects of this delay (callers no longer having access to the non-running
isolate handle) have been addressed in this patch. The DartIsolate API has also
been amended to hide the method that could return a non-running isolate to the
caller.  Instead, it has been replaced with a method that requires a valid
isolate configuration that returns a running root isolate. The isolate will be
launched by asking the isolate configuration for its null-safety
characteristics.

A side effect of enabling null-safety is that Dart APIs that work with legacy
types will now terminate the process if used with an isolate that has sound
null-safety enabled. These APIs may no longer be used in the engine. This
primarily affects the Dart Convertors in Tonic that convert certain C++ objects
into the Dart counterparts. All known Dart Converters have been updated to
convert C++ objects to non-nullable Dart types inferred using type traits of the
corresponding C++ object. The few spots in the engine that used the old Dart
APIs directly have been manually updated. To ensure that no usage of the legacy
APIs remain in the engine (as these would cause runtime process terminations),
the legacy APIs were prefixed with the `DART_LEGACY_API` macro and the macro
defined to `[[deprecated]]` in all engine translation units. While the engine
now primarily works with non-nullable Dart types, callers can still use
`Dart_TypeToNonNullableType` to acquire nullable types for use directly or with
Tonic. One use case that is not addressed with the Tonic Dart Convertors is the
creation of non-nullable lists of nullable types. This hasn’t come up so far in
the engine.

A minor related change is reworking tonic to define a single library target.
This allows the various tonic subsystems to depend on one another. Primarily,
this is used to make the Dart convertors use the logging utilities. This now
allows errors to be more descriptive as the presence of error handles is caught
(and logged) earlier.

Fixes https://github.com/flutter/flutter/issues/59879
2020-10-16 14:53:26 -07:00
Yuqian Li
c2938d06b1
Revert "Migration to PlatformDispatcher and multi-window #20496" (#21792)
* Revert "Fix documentation build for window changes. (#21780)"

This reverts commit 931a04683d6eb49fc92059b2384ac5b1618d5422.

* Revert "Migration to PlatformDispatcher and multi-window (#20496)"

This reverts commit 85b0031f73544e448354047dc6a236c0b0808252.
2020-10-12 19:26:41 -07:00
Greg Spencer
85b0031f73
Migration to PlatformDispatcher and multi-window (#20496)
This is a PR for converting the dart:ui code in the engine to use a multi-window API. The goal here is to convert from the window singleton to an API that has the concept of multiple windows. Also, I'm matching up the new PlatformDispatcher class to talk directly to the PlatformConfiguration class in the engine. I'm not attempting to actually enable creating multiple windows here, just migrate to an API that has a concept of multiple windows. The multi-window API in this PR currently only ever creates one window.

The design doc for this change is here.

The major changes in this PR:

Move the platfom-specific attributes out of Window, and into the new PlatformDispatcher class that holds all of the platform state, so that the platform code need only update the configuration on this class.
Create FlutterView, FlutterWindow, and SingletonFlutterWindow classes to separate out the concepts of a view (of which there may be multiple in a window), a window (of which there may be multiple on a screen, and they host views), and a window where there is only ever expected to be one (this hosts the entire API of the former Window class, and will eventually be the type of the window singleton).
Next step after this PR lands:

Remove the Window class entirely (it is replaced by SingletonFlutterWindow). Some minor changes in the Framework are needed to switch to using SingletonFlutterWindow directly first.

The Window class still exists in this PR, but will be removed as soon as the framework is converted to point to the SingletonFlutterWindow class instead. They share the same API, just have different names (Window is currently a subclass of SingletonFlutterWindow). The intention is that the Window name will be freed up to use as a widget class name in the framework for managing windows. The singleton called window will remain, and keep the same API it has now.
2020-10-09 16:29:16 -07:00
David Worsham
5a2bf6aa4c
Reland: "fuchsia: Remove dead code / break dependencies" (#20532)
Reland #19396 with a fix for improper scale that was affecting internal tests

Tested: Ran all unittests, ran internal tests, and ran workstation on Fuchsia
BUG: 53062, 53063
2020-08-14 20:41:18 -07:00
Ming Lyu (CareF)
409a5e5963
FrameTiming build start timestamp fix and add vsync start timestamp (#20229) 2020-08-07 19:41:01 -07:00
Zachary Anderson
47c1c61a92
Revert "fuchsia: Remove dead code / break dependencies (#19396)" (#20302)
This reverts commit 12a37478de2cc9aff7f8fc72bc3a47f5f02e083c.
2020-08-06 12:06:06 -07:00
David Worsham
12a37478de
fuchsia: Remove dead code / break dependencies (#19396)
The fuchsia code around metrics and sizing was just sending this
information through a side-channel, when the engine already had the
information available. So, delete all of it to make future CLs simpler.

Additionally, the SceneUpdateContext has many unneccesary dependencies
re: metrics and PaintTasks. Break those to make future CLs simpler.

Tested: Ran all unittests and ran workstation on Fuchsia
BUG: 53062, 53063
2020-08-03 22:09:26 -07:00
Greg Spencer
98cfd1db78
Move platform specific information to PlatformConfiguration class (#19652) 2020-07-31 17:21:02 -07:00
Siva
3bb6cc265e
Manual merge of Dart a3815b6590...24c7666def (#19967)
* Manual merge or Dart into flutter a3815b6590...24c7666def

dart-lang/sdk@24c7666def Update tests that have the current version number hardcoded
dart-lang/sdk@f88ce7aef5 Increase Dart version to 2.10

* Update language version.

* Update license.

* Hpdate language version.

* Update license.
2020-07-24 11:00:34 -07:00
Kaushik Iska
110a57983b
Track motion events for reuse post gesture disambiguation (#19484)
This change makes it so that we track all the motion events encountered by `FlutterView` and all of its subviews in the `MotionEventTracker` class, indexed by a unique `MotionEventId`. This identifier is then passed to the Flutter framework as seen in https://github.com/flutter/flutter/pull/60930. Once the gestures take part in gesture disambiguation and are sent back to the engine, we look-up the original motion event using the `MotionEventId` and dispatch it to the platform.

Bug: https://github.com/flutter/flutter/issues/58837
2020-07-06 22:22:37 -07:00
Gary Qian
637a8e7cd0
Revert method channel platform resolved locale (#19136) 2020-06-19 17:40:22 -07:00
Yegor
194acdfaed
apply null safety syntax to mobile dart:ui (#18933)
* apply null safety syntax to mobile dart:ui
2020-06-12 12:42:12 -07:00
Chris Bracken
90eb48956c
null-annotate lib/ui/hooks.dart (#18555) 2020-06-02 09:49:50 -07:00
Chris Bracken
08b61ce561
Delete unused decode UTF-8, JSON functions (#18360)
These were added in 7e5d63513a7ae854605dbd38582cead55594e9f0 for use in
_handleNavigationMessage. That function was deleted in
f37aafd456fc6a1c2dba5bc1b63123b0e665e6cd, but the support methods were
left in the code. `// ignore: unused` annotations were added to all
private native entry points by dnfield (to work around what is arguably
a bug) in 6179ac637724e8f93b7f3c8dcfda93a6b9b7995e, and were applied to
these two methods, I suspect unintentionally.

In any case, they appear entirely unused at present.
2020-05-14 09:12:28 -07:00
Gary Qian
8dc91229b4
PlatformResolvedLocale localization message channel (#17755) 2020-04-21 15:34:44 -07:00
gaaclarke
113ebf963f
Roll src/third_party/dart 1402e8e1a42d.e21c4353006d (95 commits) (#17386)
git log 1402e8e1a42d..e21c4353006d665e7c4378413ad4d237f18437e0 --date=short --first-parent --format='%ad %ae %s'
2020-03-30 jsimmons@google.com [dart:io] Fuchsia version of SocketBase::AvailableDatagram
2020-03-30 jwren@google.com Fix the dart help test output by implementing printUsage() in the test command
2020-03-30 sstrickl@google.com [vm/aot] Drop some Function objects not needed at runtime.
2020-03-30 mit@google.com Roll pub to latest version
2020-03-30 scheglov@google.com Document differences in inheritance tests between CFE and analyzer.
2020-03-30 scheglov@google.com Revert "Fix the result type of binary expression with the left TypeParameter extends num type."
2020-03-30 johnniwinther@google.com [cfe] Handle member signatures from dill in class hierarchy builder
2020-03-30 eernst@google.com [cfe] Add missing .next in endImplicitCreationExpression
2020-03-30 jensj@google.com [CFE] Add api to get language version for uri
2020-03-30 johnniwinther@google.com [cfe] Don't include member signature in id testing by default.
2020-03-30 johnniwinther@google.com [kernel] Make verbose qualified names conditional in toStringInternal
2020-03-30 devoncarew@google.com [dartdev] test the dartdev analyze --fatal-warnings option
2020-03-30 brianwilkerson@google.com Enable omit_local_variable_types in analyzer_plugin
2020-03-30 brianwilkerson@google.com Enable omit_loval_variable_types in analysis_server_client
2020-03-30 brianwilkerson@google.com Enable omit_local_variable_types in analysis_server
2020-03-30 keertip@google.com Add guard code for exceptions from ResourceProvider when reading contents.
2020-03-29 scheglov@google.com Fix the result type of binary expression with the left TypeParameter extends num type.
2020-03-28 scheglov@google.com Fix for creating a setter when the target is in a part without a library.
2020-03-28 brianwilkerson@google.com Remove the need for a --corpus flag from completion_metrics
2020-03-28 brianwilkerson@google.com Remove the need for a --corpus flag from relevance_metrics
2020-03-28 brianwilkerson@google.com Remove an unused variable in AstBuilder
2020-03-28 brianwilkerson@google.com Sort non-generated files in analyis_server and add a test to ensure they stay that way
2020-03-28 scheglov@google.com Add LibraryElement.languageVersionMajor/Minor
2020-03-28 scheglov@google.com Report exceptions with the file content for getResult().
2020-03-28 scheglov@google.com Fix crash in index when the invoked element is multiply defined.
2020-03-28 eernst@google.com Add implementation of several parts of non-function type aliases
2020-03-28 johnniwinther@google.com [cfe] Groups standard tests in update_expectations.dart
2020-03-28 sra@google.com [dart2js] Specialize is- and as- tests for nullable types
2020-03-28 rmacnak@google.com [vm] Do not allocate when evaluating arguments to StorePointer.
2020-03-28 rmacnak@google.com [vm] Fix some data races with profiler samples.
2020-03-28 alexmarkov@google.com Revert "[analyzer] Remove deprecated language version API"
2020-03-27 nshahan@google.com [ddc] Cleanup cast in dart:_runtime lib
2020-03-27 brianwilkerson@google.com New relevance values for UriContributor
2020-03-27 brianwilkerson@google.com New relevance values for KeywordContributor
2020-03-27 brianwilkerson@google.com New relevance values for VariableNameContributor
2020-03-27 paulberry@google.com Migration: don't use union edges for field formal parameters
2020-03-27 rmacnak@google.com [vm] Fix memory leak in profiler when some samples are in native functions without a dynamic symbol.
2020-03-27 bkonyi@google.com [ package:dds ] Fixed smoke_test.dart which was unable to launch smoke.dart due to use of a relative path.
2020-03-27 zichangguo@google.com [dart:io] Fix parsing the response of the HTTP connect method
2020-03-27 mfairhurst@google.com [nnbd_migration] Add confirm dialog to "apply migration" button
2020-03-27 rmacnak@google.com [test] Update use of Null as a bottom type to Never.
2020-03-27 eernst@google.com Added new tests.
2020-03-27 alexmarkov@google.com [vm/nnbd/aot/tfa] Support NNBD strong mode in type flow analysis
2020-03-27 mfairhurst@google.com [analyzer] Remove deprecated language version API
2020-03-27 brianwilkerson@google.com Update relevance computations in LocalReferenceContributor
2020-03-27 brianwilkerson@google.com Update relevance values for LocalLibraryContributor and ImportedReferenceContributor
2020-03-27 sigurdm@google.com Bump pub version
2020-03-27 sigmund@google.com [dart2js] Update test-matrix to specify the libraries.json to dart2js batch runner
2020-03-27 jcollins@google.com Update dartdoc to 0.30.3.
2020-03-27 alexmarkov@google.com [vm/nnbd] Fix marking static fields as late
2020-03-27 scheglov@google.com Fix for completion in formal parameters of GenericFunctionType.
2020-03-27 mfairhurst@google.com [nnbd_migration] Add a "rerun from sources" button.
2020-03-27 mfairhurst@google.com Revert "[analyzer] Copy result of allSupertypes for now."
2020-03-27 scheglov@google.com Merge types during instance member inference.
2020-03-27 scheglov@google.com Catch linking exceptions and include the cycle file contents.
2020-03-27 johnniwinther@google.com [cfe] Handle throw in return type inference
2020-03-27 alexmarkov@google.com [vm/aot/tfa] Fix tracking of parameters in async_op closures
2020-03-27 zichangguo@google.com Reland "[dart:io] Fix hanging on zero-length datagram"
2020-03-27 athom@google.com [infra] Update checked-in SDKs to 2.8.0-dev.18.0
2020-03-27 johnniwinther@google.com [cfe] Add tool for updating all id-tests and expectation tests
2020-03-27 athom@google.com [homebrew] Add support for the beta channel formula
2020-03-27 brianwilkerson@google.com Sort files in analysis_server_client and analyzer_plugin and add tests to keep them that way
2020-03-27 askesc@google.com [benchmark] Benchmark for UTF-8 decoding with typical data.
2020-03-27 jensj@google.com [parser] Change recovery for constructor; report errors in bad constructors
2020-03-27 johnniwinther@google.com [cfe] Use legacy erasure before argument inference
2020-03-27 jensj@google.com [kernel] Polish toString implementation on AST nodes
2020-03-27 sra@google.com [dart2js] Print non-minified init object as multiline
2020-03-27 karlklose@google.com [infra] Handle test steps with no tested configuration
2020-03-27 zichangguo@google.com [dart:io] remove available at _NativeSocket::Read
2020-03-27 nbosch@google.com Remove a stale TODO comment
2020-03-27 rnystrom@google.com Add other breaking changes to CHANGELOG.
2020-03-27 liama@google.com [nnbd/test] Fix tests that are failing in strong mode
2020-03-26 rnystrom@google.com Fix Markdown link in CHANGELOG and remove duplicate entry.
2020-03-26 brianwilkerson@google.com Compute new relevance in LocalConstructorContributor
2020-03-26 kevmoo@google.com DEPS: remove references to pkg:package_resolver
2020-03-26 jcollins@google.com Add a way for analysis_server to open communication via a IsolateChannel.
2020-03-26 scheglov@google.com Use NNBD_TOP_MERGE to combine signatures of the inherited members.
2020-03-26 nshahan@google.com [ddc] Update types in JSArray operations
2020-03-26 srawlins@google.com Migrator: Add an auth token for the preview site
2020-03-26 dacoharkes@google.com [vm] Add Reachability Fence Instruction
2020-03-26 sra@google.com [benchmark] Make BigIntPrintParse be NNBD-agnostic
2020-03-26 rnystrom@google.com Bump the SDK constraint on dart_internal to permit Dart 2.8.0.
2020-03-26 kevmoo@google.com Update changelog with dart2js --package-root removal
2020-03-26 alexmarkov@google.com [vm/corelib] Specify types explicitly in convert_patch.dart
2020-03-26 scheglov@google.com Update checkForWrongTypeParameterVarianceInMethod(), fix NPE.
2020-03-26 mfairhurst@google.com [analyzer] Copy result of allSupertypes for now.
2020-03-26 scheglov@google.com Add  more data to debug crash in buildExportNamespace().
2020-03-26 scheglov@google.com Fix for crash when FieldFormalParameter in a local function has annotations.
2020-03-26 bkonyi@google.com [ VM / DartDev ] Disable DartDev for the 2.8 release
2020-03-26 kevmoo@google.com Remove unused package-root option and configuration from dart2js
2020-03-26 srujzs@google.com [dart:html] Add nullability to EventTarget conversion
2020-03-26 kevmoo@google.com DEPS: Bring in latest pub
2020-03-26 dacoharkes@google.com [vm/ffi] Mark Struct as entrypoint
2020-03-26 jensj@google.com [analyzer] Sort entries in error.dart and syntactic_errors.dart
2020-03-26 karlklose@google.com [infra] pkg/smith: custom test runner steps are test steps
2020-03-30 15:22:47 -07:00
Yegor
5845d70b50
Preserve zones in Window callbacks (#17298)
preserve Window callback zones
2020-03-25 17:25:06 -07:00
vsmenon
0ef67b5e74
opt out dart:ui from nnbd (#16473)
* opt out dart:ui from nnbd

* Annotate tests as well
2020-02-20 11:04:00 -08:00
Dan Field
1970c0624d
implicit casts and add missing docs (#15698) 2020-01-16 17:03:33 -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
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
0a455a8207
Channel buffers (#12167)
Added channel buffers to 'ui' so that messages have a place to
go until message handling is setup.
2019-09-17 12:22:00 -07:00
liyuqian
4243324a03
Revert "Add a BroadcastStream to FrameTiming (#11041)" (#11841)
This reverts commit e97ed36e580c9b4c4a3d768cfe1a520f7bf8161d.

Reason for revert: Stream is considered a bad API: https://github.com/flutter/engine/pull/11041#issuecomment-526892247
2019-09-05 10:41:55 -07:00
liyuqian
e97ed36e58
Add a BroadcastStream to FrameTiming (#11041)
Without this, developers have to override `onReportTimings` to listen for `FrameTiming`.
That can potentially break previous `onReportTimings` listeners if they forget to call
the old listener in their new callback.

This PR replaces the similar RP in the framework: https://github.com/flutter/flutter/pull/38574

Once this PR landed, we'll have to create another framework PR to use the stream to replace
`onReportTimings` usages.

Once that's done, we can then propose the breaking change of removing the deprecated
`onReportTimings`.
2019-08-19 10:52:16 -07:00
Shi-Hao Hong
014ab76ad0
Pass Android Q insets.systemGestureInsets to Window (#10413)
* Pass Android Q system gesture inset information from insets.systemGestureInsets to Window.systemGestureInsets
2019-08-16 13:42:56 -04:00
Dan Field
63b253d907
expose max depth on Window (#10414) 2019-08-02 20:37:24 -07:00
Siva
b3bb39b0b1
Roll src/third_party/dart 06c3d7ad3a...09fc76bc51 (#9728)
* Roll src/third_party/dart 06c3d7ad3a...09fc76bc51

dart-lang/sdk@09fc76bc51 [vm, compiler] Remove dead _classRangeCheckNegative.
dart-lang/sdk@b472d7a9be Unnecessary null aware spread hint
dart-lang/sdk@f939ad3964 library scope extensions
dart-lang/sdk@9503969664 [vm/bytecode] Add DebugCheck bytecode instruction
dart-lang/sdk@fc542be6b4 Issue 36682. Check that selection offset/length is valid in Extract Method refactoring.
dart-lang/sdk@803658a6d8 [corelib_2] fix bigint_from_test for web platforms
dart-lang/sdk@ad6b1ebbd6 Support for 'double' fields in protocol.
dart-lang/sdk@5479175012 Remove incorrect test.
dart-lang/sdk@058092b5f6 [vm] Fix simarm_x64 build on mac
dart-lang/sdk@307ca3f3b6 [vm/bytecode] Improve single stepping and breakpoint setting in bytecode.
dart-lang/sdk@855830f324 Update LSP spec
dart-lang/sdk@d992f55094 [dartfix] Bump pedantic dep to v1.8.0 and cleanup lint violations
dart-lang/sdk@41330f3e34 gitignore .clangd
dart-lang/sdk@8d07009931 [ VM / Gardening ] Mark disassemble_determinism_test as slow on Windows
dart-lang/sdk@1b82367ed6 Update CHANGELOG to reflect breaking change #36765
dart-lang/sdk@a86db84e0a [fasta] Preserve information about const constructors in outline.
dart-lang/sdk@25319ef7a6 Fix bug in codegen/string_escapes_test.dart.
dart-lang/sdk@7acecda2cc [vm/ffi] Fix FFI Utf8 example.
dart-lang/sdk@e3b3c6fa28 [vm] Rename 3head flutter patch after re-land of concurrency change
dart-lang/sdk@2cb5303782 [infra] Update checked in SDKs to 2.4.0
dart-lang/sdk@fce43ebc4e [ddk] Pass environmentDefines to CFE through CompilerOptions
dart-lang/sdk@5450d08ca1 Add support for analyzer static error tests.
dart-lang/sdk@0425997b31 Second attempt to reland "[vm/concurrency] Introduce concept of Isolate Groups"
dart-lang/sdk@5470159054 [vm, gc] Produce a proper error message when crashing due to lack of memory at isolate startup.
dart-lang/sdk@bfc7d21da6 Remove useless dart2js_extra/class_test
dart-lang/sdk@572619b639 [vm, bytecode] Fix vm/cc/CompileFunctionOnHelperThread.
dart-lang/sdk@4de495fccc [vm, compiler] Remove dead stub ICCallThroughFunction.
dart-lang/sdk@8a1dcdae68 Graduate 'flutter' domain from experimental, remove unused methods and fields.
dart-lang/sdk@a945888627 Discard constructors and fields temporarily to get valid code compiling

* Fix analyzer warning.
2019-07-09 16:12:06 -07:00
liyuqian
9f088c65ee
Add onReportTimings and FrameRasterizedCallback API (#8983)
Using it, a Flutter app can monitor missing frames in the release mode, and a custom Flutter runner (e.g., Fuchsia) can add a custom FrameRasterizedCallback.

Related issues:
https://github.com/flutter/flutter/issues/26154
https://github.com/flutter/flutter/issues/31444
https://github.com/flutter/flutter/issues/32447

Need review as soon as possible so we can merge this before the end of May to catch the milestone.

Tests added:
* NoNeedToReportTimingsByDefault
* NeedsReportTimingsIsSetWithCallback
* ReportTimingsIsCalled
* FrameRasterizedCallbackIsCalled
* FrameTimingSetsAndGetsProperly
* onReportTimings preserves callback zone
* FrameTiming.toString has the correct format

This will need a manual engine roll as the TestWindow defined in the framework needs to implement onReportTimings.
2019-06-06 10:42:48 -07:00
Dan Field
79c6ce19a1
Preserve safe area (#8848)
Preserve safe area on Window regardless of insets.
2019-05-31 09:24:38 -07:00
Dan Field
2b1f9925e4
new lints (#8849)
Dart lints added:
* Avoid optional new
* Avoid optional const
* Prefer single quotes
* Prefer default assignment `=`
2019-05-07 16:10:21 -07:00
Zachary Anderson
3a29e6a7a7
Plumb arguments from Settings to Dart main() (#8710) 2019-04-25 07:57:54 -07:00
Gary Qian
5cef4a022d
Use final state passed to dart before initialization as the initial lifecycleState. (#8124) 2019-03-12 10:35:08 -07:00
Gary Qian
3661d5e43b
Re-land "Buffer lifecycle in WindowData" (#8032) 2019-03-06 15:38:34 -08:00
stuartmorgan
dd80fc9ff6
Add engine support for scrollwheel events (#7494)
Adds support for pointer signals, in a way that will support both discrete events (e.g., scroll wheels, flutter/flutter#22762) and continuous gestures (e.g., trackpad scroll, flutter/flutter#21953).

Also exposes these new event options to the embedder. Does not include code to send the
new events from the platform shells.
2019-03-05 14:12:07 -08:00
Gary Qian
39c46dea4b
Revert "Buffer lifecycle in WindowData (#7999)" (#8010)
This reverts commit 0b174017143c34629546134601bb6c65becf71a3.
2019-03-01 15:14:20 -08:00
Gary Qian
0b17401714
Buffer lifecycle in WindowData (#7999) 2019-03-01 10:43:09 -08:00
Chris Bracken
5db4b37724
Revert dart rolls (#7913)
* Roll back three Dart SDK rolls

Revert "Roll src/third_party/dart 75ee523f91..4cff5a4fd6 (6 commits)"
Revert "Roll src/third_party/dart 5ddd157809..75ee523f91 (19 commits)"
Revert "Roll src/third_party/dart c92d5ca288..5ddd157809 (153 commits)"

`pub upgrade` appears to fail 100% reproducibly on broken on Windows.
This rollback rolls back both what appears to be the breaking roll (61fc178)
and the following roll.

This reverts commit 0053c1d5064931d7a690b3d8888d15d72785a079.
This reverts commit 1cf6b8b64d42aefcbc6e7d78a2e6df706962751a.
This reverts commit 61fc1786fd98f48ee355f800cf5d7aef0fff985b.

* Revert "Revert "Revert "Remove unnecessary entry-point closurization. (#7827)" (#7876)" (#7904)"

This reverts commit 93eeb48baee5c24047a4a3cf5b1db234ecc48683.
2019-02-21 16:53:20 -08:00
Dan Field
93eeb48bae
Revert "Revert "Remove unnecessary entry-point closurization. (#7827)" (#7876)" (#7904)
This reverts commit f45572e95f93edb89b6750a4f36ad8ed7c0a2560.
2019-02-21 10:57:31 -08:00
Dan Field
f45572e95f
Revert "Remove unnecessary entry-point closurization. (#7827)" (#7876)
This reverts commit 3a1b9b3d85cc5521b8da85a019cb260e27c6576b.
2019-02-19 16:14:31 -08:00
sjindel-google
3a1b9b3d85
Remove unnecessary entry-point closurization. (#7827) 2019-02-18 14:23:17 +01:00
Chinmay Garde
6585f334a1
Allow all entrypoints support by the command line VM. (#7717) 2019-02-06 15:29:19 -08:00
Matt Carroll
cc27cafb84
Implemented Dark Mode for Android (#25525) (#7488) 2019-02-04 19:30:15 -08:00
Chinmay Garde
23b7e29f04
Re-land "Wrap the user entrypoint function in a zone with native exception callback. (#7512)" (#7551)
This reverts commit 4c135c298a8173bb9affafc1f92120a0158c1e6e and applies relevant fixes.
2019-01-24 13:42:51 -08:00
Vyacheslav Egorov
4c135c298a
Revert "Wrap the user entrypoint function in a zone with native exception callback. (#7512)" (#7522)
This reverts commit 25559ed0779604d56c47c5d2341ffd16b137cd10.

Reason for revert: broken in AOT mode.

@pragma('vm:entry-point') placed on a function only instructs
the compiler to retain the function itself, but does not tell
compiler to generate and retain tear-off for this function.

In this PR _runMainZoned was marked as an entry-point but C++
code was trying to tear it off and use a closure, instead of
invoking it directly, which is not supported.
2019-01-17 11:49:20 +01:00
Chinmay Garde
25559ed077
Wrap the user entrypoint function in a zone with native exception callback. (#7512) 2019-01-16 16:08:51 -08:00
Dan Field
6179ac6377
fix up analysis for Dart in Engine (#7404)
* fix up analysis for Dart in Engine, particularly for tests
2019-01-11 13:50:58 -08:00
Gary Qian
9434bb6488
Return null when locale has not been set in loocale closure. (#6936) 2018-12-10 16:04:23 -08:00
Dan Field
396402f5bd
Flush UserSettings to window (#6850) 2018-11-13 23:41:56 -08:00
Michael Goderbauer
70a1106b50
Unify copyright lines (#6757) 2018-11-07 12:24:35 -08:00