879 Commits

Author SHA1 Message Date
Jason Simmons
8882bf3c73
Avoid dereferencing IO manager weak pointers on the UI thread (#13232)
UI thread APIs that need to access the IO thread's resource context should
obtain a weak pointer to the IO manager and pass that to the IO thread.
2019-10-18 16:01:55 -07:00
Mouad Debbar
98e6d15663
Preserve stdout colors of subprocesses run by felt (#13209) 2019-10-18 10:41:44 -07:00
Ferhat
6d0f075709
[web] Fix canvas reuse metrics. Refactor drawVertices code. (#13190)
* Draw vertices to shared offscreen canvas on browsers that support OffscreenCanvas.
* Move gl rendering code to render_vertices.dart.
* Reuse shaders and program across calls.
2019-10-18 10:41:16 -07:00
Nurhan Turgut
dea7150f33
Adding firefox_installer.dart (#13185)
* adding firefox downloading functionality to felt

* Getting the location directly from the response
2019-10-18 10:35:21 -07:00
Harry Terkelsen
4332316d2d
Use window.devicePixelRatio in the CanvasKit backend (#13192)
* Use the actual devicePixelRatio in the Skia backend

* Get the coordinates of mouse events in physical pixels

* disable canvaskit by default
2019-10-17 14:28:40 -07:00
George Wright
8b9761940b
Re-enable WeakPtr ThreadChecker and fix associated failures (#12257)
This re-enables thread safety checks for WeakPtr. WeakPtrs can't be used on a thread other than the one the WeakPtrFactory was created on.

This fixes the unit tests and adds a getUnsafe() method to WeakPtr to work around the remaining unresolved locations where we are using WeakPtr unsafely.
2019-10-17 14:10:16 -07:00
Nurhan Turgut
ffb5d0b2e3
wrap the text in text editing. This was causing a missalingment issue in textarea. (#13207) 2019-10-17 12:11:27 -07:00
Mouad Debbar
8f621ad3c7
[web] Environment variable to disable felt snapshot (#13187) 2019-10-17 10:51:46 -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
Harry Terkelsen
7f7e09c7ee
If we get a 'down' event, add that device to the active devices. (#13182)
This prevents us from synthesizing an 'add' event if we get a 'move'
event after a 'down' event. This was causing errors because on the
framework side, it will synthesize an 'add' event if it receives a
'down' event, and if you send another 'add' event (e.g. with a 'move'
after a 'down') then it will throw an AssertionError since it already
has received an 'add' event for that pointer.

Fixes https://github.com/flutter/flutter/issues/40385
2019-10-16 15:41:12 -07:00
Harry Terkelsen
5b56daa23f
Fix type error in SkVertices (#13157) 2019-10-16 10:39:08 -07:00
Yegor
5fe6083d34
Move surface-based SceneBuilder implementation under surface/ (#13159)
Move surface-based SceneBuilder implementation under surface/
2019-10-15 20:07:28 -07:00
Nurhan Turgut
66bf00bca3
refactoring chrome_installer (#13122)
* refactoring before implementing the firefox installer. This PR carries utilities to a common place. Renames the lock file with a generic name.

* Fixed README file for browser_lock

* addressing PR comments: removing unimplemented firefox methods.
2019-10-14 14:51:08 -07:00
Ferhat
3fd877715b
[web] Add basic color per vertex drawVertices API support (#13066)
* Implement basic drawVertices for BlendMode.srcOver and hairline rendering
* Implement maxDiffRate parameter for screenshot tests
2019-10-14 13:16:05 -07:00
Mouad Debbar
c643366c19
Support keyboard types on mobile browsers (#13044) 2019-10-14 13:10:01 -07:00
Ferhat
c6650063c2
Update felt README (#13097)
* Update felt README

* Removed -t since it is removed in #13088
2019-10-11 16:08:03 -07:00
Dan Field
5b5b1c4b9f
ColorFilter matrix docs (#13100) 2019-10-11 16:01:16 -07:00
Nurhan Turgut
3ad8c42591
do not wrap font family name (#12801)
* do not wrap font family name in webkit otherwise icons not show on safari 13 (both IOS and desktop)

* Changing the font loading to work in all browsers.

* Documentation, renaming, gramatical/spelling error related PR comments addressed. Regexp will be addressed in the next commit.

* Changing regular expressions to look simpler. Adding more unit tests.
2019-10-11 15:12:28 -07:00
Yegor
6611e170d3
use rest args for specifying test targets (#13088) 2019-10-11 13:44:55 -07:00
Yegor
4cd64dbe26
Snapshot the felt tool for faster start-up (#13090) 2019-10-11 13:44:06 -07:00
Chinmay Garde
86e3ebb748
Allow embedders to specify arbitrary data to the isolate on launch. (#13047)
Since this is currently only meant to be used by the embedding internally, the setter in Objective-C is only exposed via the FlutterDartProject private class extension. Unit tests have been added to the shell_unittests harness.

Fixes https://github.com/flutter/flutter/issues/37641
2019-10-10 12:31:14 -07:00
Yegor
0b6aa5e320
Add "felt clean" command (#13042)
Add "felt clean" command
2019-10-10 07:15:24 -07:00
Ferhat
d9c3afae26
[web] Implement basic radial gradient (TileMode.clamp, no transform) (#12811)
* Add GradientRadial paintStyle implementation
2019-10-09 15:51:31 -07:00
Harry Terkelsen
e693192167
[web_ui] Check if a pointer is already down for the specific device (#12470)
* WIP on fixing pointer event clicks

* Don't set canvaskit as enabled by default

* Use a Set of pressed buttons rather than a Map of button status to
avoid memory leaks

* Add test for pointer binding

Fix bug where event listeners weren't properly removed
2019-10-09 12:43:06 -07:00
Greg Spencer
77252d2371
Add missing focusable testing info (#13013)
This adds a couple of instances of semantic node isFocusable info that were missing that the framework testing depends upon.
2019-10-09 09:00:24 -07:00
Kate Lovett
a29385d9fe
Link Semantics Typo (#13009) 2019-10-08 16:26:00 -07:00
Ferhat
f2a8b050d4
[web] Add support for path transform (#12794)
* Implement path.transform
2019-10-08 16:05:54 -07:00
Mouad Debbar
6113ef93ea
[web] Update the url when route is replaced (#13003) 2019-10-08 14:47:25 -07:00
Kate Lovett
414ad38662
Missing link flag (#13001) 2019-10-08 13:49:46 -07:00
Kate Lovett
58d7b84177
Re-land Adding Link Semantics (#12972) 2019-10-08 11:27:56 -07:00
Sebastian Roth
32ca0cc7d3
Fix typo on channel buffer debug output. (#12960) 2019-10-08 18:06:32 +01:00
gaaclarke
3a445edda9
Made _printDebug only happen on debug builds of the engine for now. (#12980) 2019-10-08 10:05:48 -07:00
David Iglesias
f48f0fa01b
Open source canvas tests from flutter_web_ui (#12819)
* Open source canvas tests from flutter_web_ui

Reimplement some painter tests as screenshot tests on canvas.

Needs https://github.com/flutter/goldens/pull/53
Fixes https://github.com/flutter/flutter/issues/42027

* Remove whitespace

* Address PR feedback

* Add latest hash to dev/goldens_lock.yaml
* Rename (with git mv) *scuba_test.dart -> *golden_test.dart
2019-10-08 09:40:09 -07:00
Mouad Debbar
dbb285d366
Prevent default when Tab is clicked (#12986) 2019-10-08 09:40:01 -07:00
Gary Qian
eec8d5e733 Unpublicize kDoNotResizeDimension (#12989) 2019-10-08 00:31:34 -07:00
Dan Field
4a849e0f8d
Color matrix doc (#12982) 2019-10-07 17:22:01 -07:00
Jason Simmons
2f87f59053
Use the standard gen_snapshot target unless the platform requires host_targeting_host (#12988) 2019-10-07 16:34:59 -07:00
Kate Lovett
ac45051f2a
Revert "Adding Link SemanticsFlag (#12453)" (#12815)
This reverts commit 974ca210f5275aee0775b363e9c3416e1603cf73.
2019-10-04 17:06:32 -07:00
Jason Simmons
60ce643b63
Use the x64 host toolchain for x86 target gen_snapshot only on Linux (#12809) 2019-10-04 15:07:38 -07:00
Yegor
bba0065cf6
add option for bulk-updating screenshots; update screenshots (#12797)
* add option for bulk-updating screenshots; update screenshots
2019-10-04 15:07:05 -07:00
Jason Simmons
e641120519
Build gen_snapshot with a 64-bit host toolchain even if the target platform is 32-bit (#12802)
By default Dart will build a gen_snapshot for the host platform using a
toolchain matching the bit width of the target platform.  Some host platforms
no longer support 32-bit binaries, so gen_snapshot will now be built as a
64-bit host binary even if the target is 32-bit.
2019-10-04 14:00:30 -07:00
Kate Lovett
974ca210f5
Adding Link SemanticsFlag (#12453) 2019-10-04 12:51:10 -07:00
Nurhan Turgut
16a4df7a76
Fixing selection issues in Firefox (#12793)
* Fixing selection issues in Firefox. Moving text editing dom elements to glass pane.

* Addressing PR comments.

* Update text_editing.dart

fixing typo
2019-10-04 11:58:32 -07:00
Mouad Debbar
e9edb8e14f
Support correct keymap for web (#12712) 2019-10-02 15:09:08 -07:00
Mouad Debbar
327eb876f9
[web] Don't require felt to be in PATH (#12753) 2019-10-02 15:05:16 -07:00
Yegor
7c13f62234
Add web implementation for channel_buffers.dart (#12747) 2019-10-02 13:00:26 -07: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
Mouad Debbar
079e418c26
Set transparent background in textarea elements (#12710) 2019-09-30 21:12:51 -07:00
Nurhan Turgut
bfcafbec2b
[web_ui] Fixing invalid state bug for text editing (#12698)
* Fixing invalid state bug for text editing. Flutter Framework was sending editing state selection base and extent as -1. Since -1 is an invalid value for a dom element selection it was not applied to the last editing state. Now if the base or offset is sent as negative value, web engine will set 0 to the selection range.

* Addressing PR comments.
2019-09-30 12:31:17 -07:00
Greg Spencer
05f4b33cd2
Add isFocusable to SemanticsFlag (#12618)
This adds an isFocusable to SemanticsFlag so that the framework can tell the engine what semantics nodes are allowed to be focused, which will affect what platform flags are applied to the semantics information.

This flag is not yet in use by the frame
2019-09-30 09:46:48 -07:00