Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit de82e4c

Browse files
committed
Merge remote-tracking branch 'upstream/master' into transform3d
2 parents 84af0ae + 284ef22 commit de82e4c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+1106
-331
lines changed

.cirrus.yml

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -65,21 +65,13 @@ task:
6565
mkdir -p $FRAMEWORK_PATH
6666
cd $FRAMEWORK_PATH
6767
git clone https://github.com/flutter/flutter.git
68-
test_web_script: |
69-
cd $FRAMEWORK_PATH/flutter/dev/integration_tests/web
70-
../../../bin/flutter config --local-engine=host_debug_unopt --no-analytics --enable-web
71-
../../../bin/flutter --local-engine=host_debug_unopt build web -v
7268
analyze_framework_script: |
7369
cd $FRAMEWORK_PATH/flutter
7470
rm -rf bin/cache/pkg/sky_engine
71+
mkdir -p bin/cache/pkg/
7572
cp -r $ENGINE_PATH/src/out/host_debug_unopt/gen/dart-pkg/sky_engine bin/cache/pkg/
7673
bin/flutter update-packages --local-engine=host_debug_unopt
7774
bin/flutter analyze --dartdocs --flutter-repo --local-engine=host_debug_unopt
7875
test_framework_script: |
7976
cd $FRAMEWORK_PATH/flutter/packages/flutter
8077
../../bin/flutter test --local-engine=host_debug_unopt
81-
82-
- name: build_test
83-
build_script: |
84-
cd $ENGINE_PATH/src/flutter
85-
./ci/build.sh

DEPS

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,15 @@ vars = {
2626
'skia_git': 'https://skia.googlesource.com',
2727
# OCMock is for testing only so there is no google clone
2828
'ocmock_git': 'https://github.com/erikdoe/ocmock.git',
29-
'skia_revision': 'a87c5076a876e63664566bba55e16b6d4d410234',
29+
'skia_revision': 'e2c4999ec3408773e4ae6986a04e4f54509c2f5d',
3030

3131
# When updating the Dart revision, ensure that all entries that are
3232
# dependencies of Dart are also updated to match the entries in the
3333
# Dart SDK's DEPS file for that revision of Dart. The DEPS file for
3434
# Dart is: https://github.com/dart-lang/sdk/blob/master/DEPS.
3535
# You can use //tools/dart/create_updated_flutter_deps.py to produce
3636
# updated revision list of existing dependencies.
37-
'dart_revision': 'ddbeaabe8b3dc6299d9c963d414f820198edf8cd',
37+
'dart_revision': '9560a32779fc966349dd2d719b76aee49fb6a1de',
3838

3939
# WARNING: DO NOT EDIT MANUALLY
4040
# The lines between blank lines above and below are generated by a script. See create_updated_flutter_deps.py
@@ -46,7 +46,7 @@ vars = {
4646
'dart_http_retry_tag': '0.1.1',
4747
'dart_http_throttle_tag': '1.0.2',
4848
'dart_intl_tag': '0.16.1',
49-
'dart_linter_tag': '0.1.119',
49+
'dart_linter_tag': '0.1.120',
5050
'dart_oauth2_tag': '1.6.0',
5151
'dart_protobuf_rev': '3746c8fd3f2b0147623a8e3db89c3ff4330de760',
5252
'dart_pub_rev': '04e237f78b2302d7f20d0b362554425e8deb8add',
@@ -516,7 +516,7 @@ deps = {
516516
'packages': [
517517
{
518518
'package': 'fuchsia/sdk/core/mac-amd64',
519-
'version': 'UKTUc5UVBDJaJFvP4rO5euHhTXsSx0TDo2rwyCTW2MsC'
519+
'version': 'mhxbBrFZDVqhyjD6R_OWPZlC9jG23vcj5Uk33x2NURoC'
520520
}
521521
],
522522
'condition': 'host_os == "mac"',
@@ -536,7 +536,7 @@ deps = {
536536
'packages': [
537537
{
538538
'package': 'fuchsia/sdk/core/linux-amd64',
539-
'version': 'EdtRxRaCSBtWqAj2Ofaisqxa6baoiKQ9th1K-3R3U14C'
539+
'version': 'DMUD0TMLr0mavgE2UCvZxEKXGnot54-bpSBGEEvOYJwC'
540540
}
541541
],
542542
'condition': 'host_os == "linux"',

ci/licenses_golden/licenses_flutter

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -795,6 +795,7 @@ FILE: ../../../flutter/shell/platform/android/io/flutter/plugin/common/StandardM
795795
FILE: ../../../flutter/shell/platform/android/io/flutter/plugin/common/StandardMethodCodec.java
796796
FILE: ../../../flutter/shell/platform/android/io/flutter/plugin/common/StringCodec.java
797797
FILE: ../../../flutter/shell/platform/android/io/flutter/plugin/editing/FlutterTextUtils.java
798+
FILE: ../../../flutter/shell/platform/android/io/flutter/plugin/editing/ImeSyncDeferringInsetsCallback.java
798799
FILE: ../../../flutter/shell/platform/android/io/flutter/plugin/editing/InputConnectionAdaptor.java
799800
FILE: ../../../flutter/shell/platform/android/io/flutter/plugin/editing/TextInputPlugin.java
800801
FILE: ../../../flutter/shell/platform/android/io/flutter/plugin/localization/LocalizationPlugin.java

ci/licenses_golden/licenses_fuchsia

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Signature: 9b48e46f159d6de579f7f185cc23dec4
1+
Signature: 87f7667613801005c03d97752892b32e
22

33
UNUSED LICENSES:
44

@@ -3139,11 +3139,6 @@ FILE: ../../../fuchsia/sdk/linux/arch/arm64/sysroot/include/zircon/string_view.h
31393139
FILE: ../../../fuchsia/sdk/linux/arch/arm64/sysroot/include/zircon/testonly-syscalls.h
31403140
FILE: ../../../fuchsia/sdk/linux/arch/x64/sysroot/include/zircon/string_view.h
31413141
FILE: ../../../fuchsia/sdk/linux/arch/x64/sysroot/include/zircon/testonly-syscalls.h
3142-
FILE: ../../../fuchsia/sdk/linux/dart/fuchsia_modular/lib/src/module/internal/_view_provider_impl.dart
3143-
FILE: ../../../fuchsia/sdk/linux/dart/fuchsia_modular/lib/src/module/noop_view_provider.dart
3144-
FILE: ../../../fuchsia/sdk/linux/dart/fuchsia_modular/lib/src/module/view_provider.dart
3145-
FILE: ../../../fuchsia/sdk/linux/dart/fuchsia_modular_testing/lib/src/module_interceptor.dart
3146-
FILE: ../../../fuchsia/sdk/linux/dart/fuchsia_modular_testing/lib/src/module_with_view_provider_impl.dart
31473142
FILE: ../../../fuchsia/sdk/linux/dart/fuchsia_scenic_flutter/lib/src/child_view_render_box_2.dart
31483143
FILE: ../../../fuchsia/sdk/linux/dart/sl4f/lib/src/component.dart
31493144
FILE: ../../../fuchsia/sdk/linux/dart/sl4f/lib/src/device.dart

ci/licenses_golden/licenses_skia

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Signature: c8b43171afd115a8618c41b931c64abd
1+
Signature: 66a02e906b6c190321e40e37296ef68c
22

33
UNUSED LICENSES:
44

@@ -3922,6 +3922,7 @@ FILE: ../../../third_party/skia/src/core/SkYUVAPixmaps.cpp
39223922
FILE: ../../../third_party/skia/src/gpu/GrBackendSemaphore.cpp
39233923
FILE: ../../../third_party/skia/src/gpu/GrBackendSurfaceMutableState.cpp
39243924
FILE: ../../../third_party/skia/src/gpu/GrBackendSurfaceMutableStateImpl.h
3925+
FILE: ../../../third_party/skia/src/gpu/GrBackendUtils.cpp
39253926
FILE: ../../../third_party/skia/src/gpu/GrBackendUtils.h
39263927
FILE: ../../../third_party/skia/src/gpu/GrBlockAllocator.cpp
39273928
FILE: ../../../third_party/skia/src/gpu/GrBlockAllocator.h
@@ -4007,6 +4008,7 @@ FILE: ../../../third_party/skia/src/sksl/SkSLInliner.h
40074008
FILE: ../../../third_party/skia/src/sksl/SkSLSPIRVtoHLSL.cpp
40084009
FILE: ../../../third_party/skia/src/sksl/SkSLSPIRVtoHLSL.h
40094010
FILE: ../../../third_party/skia/src/sksl/SkSLSampleUsage.cpp
4011+
FILE: ../../../third_party/skia/src/sksl/SkSLTinyUnorderedMap.h
40104012
FILE: ../../../third_party/skia/src/sksl/ir/SkSLInlineMarker.h
40114013
FILE: ../../../third_party/skia/src/utils/SkCustomTypeface.cpp
40124014
----------------------------------------------------------------------------------------------------

ci/licenses_golden/licenses_third_party

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Signature: f7f2dde13633b0c56c6d8b79c881dace
1+
Signature: 5188b32b8a99778d79838f3d3d67036d
22

33
UNUSED LICENSES:
44

@@ -8062,6 +8062,7 @@ FILE: ../../../third_party/dart/runtime/bin/dartdev_isolate.cc
80628062
FILE: ../../../third_party/dart/runtime/bin/dartdev_isolate.h
80638063
FILE: ../../../third_party/dart/runtime/bin/exe_utils.cc
80648064
FILE: ../../../third_party/dart/runtime/bin/exe_utils.h
8065+
FILE: ../../../third_party/dart/runtime/bin/file_win.h
80658066
FILE: ../../../third_party/dart/runtime/bin/platform_macos.h
80668067
FILE: ../../../third_party/dart/runtime/bin/platform_macos_test.cc
80678068
FILE: ../../../third_party/dart/runtime/include/dart_api_dl.c
@@ -8106,6 +8107,7 @@ FILE: ../../../third_party/dart/runtime/vm/compiler/ffi/native_type.h
81068107
FILE: ../../../third_party/dart/runtime/vm/compiler/ffi/recognized_method.cc
81078108
FILE: ../../../third_party/dart/runtime/vm/compiler/ffi/recognized_method.h
81088109
FILE: ../../../third_party/dart/runtime/vm/compiler/frontend/kernel_binary_flowgraph_test.cc
8110+
FILE: ../../../third_party/dart/runtime/vm/compiler/frontend/multiple_entrypoints_test.cc
81098111
FILE: ../../../third_party/dart/runtime/vm/compiler/stub_code_compiler.cc
81108112
FILE: ../../../third_party/dart/runtime/vm/compiler/write_barrier_elimination.cc
81118113
FILE: ../../../third_party/dart/runtime/vm/compiler/write_barrier_elimination.h

e2etests/web/regular_integration_tests/test_driver/text_editing_integration.dart

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,57 @@ void main() {
143143
expect(input2.value, 'Text2');
144144
});
145145

146+
testWidgets('Jump between TextFormFields with tab key after CapsLock is'
147+
'activated',
148+
(WidgetTester tester) async {
149+
app.main();
150+
await tester.pumpAndSettle();
151+
152+
// TODO(nurhan): https://github.com/flutter/flutter/issues/51885
153+
SystemChannels.textInput.setMockMethodCallHandler(null);
154+
155+
// Focus on a TextFormField.
156+
final Finder finder = find.byKey(const Key('input'));
157+
expect(finder, findsOneWidget);
158+
await tester.tap(find.byKey(const Key('input')));
159+
160+
// A native input element will be appended to the DOM.
161+
final List<Node> nodeList = document.getElementsByTagName('input');
162+
expect(nodeList.length, equals(1));
163+
final InputElement input =
164+
document.getElementsByTagName('input')[0] as InputElement;
165+
166+
// Press and release CapsLock.
167+
dispatchKeyboardEvent(input, 'keydown', <String, dynamic>{
168+
'key': 'CapsLock',
169+
'code': 'CapsLock',
170+
'bubbles': true,
171+
'cancelable': true,
172+
});
173+
dispatchKeyboardEvent(input, 'keyup', <String, dynamic>{
174+
'key': 'CapsLock',
175+
'code': 'CapsLock',
176+
'bubbles': true,
177+
'cancelable': true,
178+
});
179+
180+
// Press Tab. The focus should move to the next TextFormField.
181+
dispatchKeyboardEvent(input, 'keydown', <String, dynamic>{
182+
'key': 'Tab',
183+
'code': 'Tab',
184+
'bubbles': true,
185+
'cancelable': true,
186+
});
187+
188+
await tester.pumpAndSettle();
189+
190+
// A native input element for the next TextField should be attached to the
191+
// DOM.
192+
final InputElement input2 =
193+
document.getElementsByTagName('input')[0] as InputElement;
194+
expect(input2.value, 'Text2');
195+
});
196+
146197
testWidgets('Read-only fields work', (WidgetTester tester) async {
147198
const String text = 'Lorem ipsum dolor sit amet';
148199
app.main();

flow/layers/child_scene_layer.cc

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -20,26 +20,10 @@ void ChildSceneLayer::Preroll(PrerollContext* context, const SkMatrix& matrix) {
2020

2121
context->child_scene_layer_exists_below = true;
2222
CheckForChildLayerBelow(context);
23-
24-
// An alpha "hole punch" is required if the frame behind us is not opaque.
25-
if (!context->is_opaque) {
26-
set_paint_bounds(
27-
SkRect::MakeXYWH(offset_.fX, offset_.fY, size_.fWidth, size_.fHeight));
28-
}
2923
}
3024

3125
void ChildSceneLayer::Paint(PaintContext& context) const {
32-
TRACE_EVENT0("flutter", "ChildSceneLayer::Paint");
33-
FML_DCHECK(needs_painting());
34-
FML_DCHECK(needs_system_composite());
35-
36-
// If we are being rendered into our own frame using the system compositor,
37-
// then it is neccesary to "punch a hole" in the canvas/frame behind us so
38-
// that group opacity looks correct.
39-
SkPaint paint;
40-
paint.setColor(SK_ColorTRANSPARENT);
41-
paint.setBlendMode(SkBlendMode::kSrc);
42-
context.leaf_nodes_canvas->drawRect(paint_bounds(), paint);
26+
FML_NOTREACHED();
4327
}
4428

4529
void ChildSceneLayer::UpdateScene(SceneUpdateContext& context) {

flow/layers/layer.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@ struct PrerollContext {
5959
// These allow us to track properties like elevation, opacity, and the
6060
// prescence of a platform view during Preroll.
6161
bool has_platform_view = false;
62-
bool is_opaque = true;
6362
#if defined(LEGACY_FUCHSIA_EMBEDDER)
6463
// True if, during the traversal so far, we have seen a child_scene_layer.
6564
// Informs whether a layer needs to be system composited.

flow/layers/opacity_layer.cc

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,15 @@ OpacityLayer::OpacityLayer(SkAlpha alpha, const SkPoint& offset)
1414

1515
void OpacityLayer::Preroll(PrerollContext* context, const SkMatrix& matrix) {
1616
TRACE_EVENT0("flutter", "OpacityLayer::Preroll");
17+
FML_DCHECK(!GetChildContainer()->layers().empty()); // We can't be a leaf.
1718

18-
ContainerLayer* container = GetChildContainer();
19-
FML_DCHECK(!container->layers().empty()); // OpacityLayer can't be a leaf.
20-
21-
const bool parent_is_opaque = context->is_opaque;
2219
SkMatrix child_matrix = matrix;
2320
child_matrix.postTranslate(offset_.fX, offset_.fY);
2421

2522
// Similar to what's done in TransformLayer::Preroll, we have to apply the
2623
// reverse transformation to the cull rect to properly cull child layers.
2724
context->cull_rect = context->cull_rect.makeOffset(-offset_.fX, -offset_.fY);
2825

29-
context->is_opaque = parent_is_opaque && (alpha_ == SK_AlphaOPAQUE);
3026
context->mutators_stack.PushTransform(
3127
SkMatrix::Translate(offset_.fX, offset_.fY));
3228
context->mutators_stack.PushOpacity(alpha_);
@@ -35,7 +31,6 @@ void OpacityLayer::Preroll(PrerollContext* context, const SkMatrix& matrix) {
3531
ContainerLayer::Preroll(context, child_matrix);
3632
context->mutators_stack.Pop();
3733
context->mutators_stack.Pop();
38-
context->is_opaque = parent_is_opaque;
3934

4035
{
4136
set_paint_bounds(paint_bounds().makeOffset(offset_.fX, offset_.fY));

0 commit comments

Comments
 (0)