Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integrate support for flutter 2.8.x #1298

Merged
merged 12 commits into from Apr 7, 2022
4 changes: 2 additions & 2 deletions .github/workflows/benchmark.yml
Expand Up @@ -5,12 +5,12 @@ on: [workflow_dispatch, pull_request]
env:
nodeVersion: "16"
cmakeVersion: "3.22.x"
flutterVersion: "2.5.3"
flutterVersion: "2.8.1"

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
benchmark:
runs-on: [self-hosted, benchmark, flutter_2.5.3]
runs-on: [self-hosted, benchmark]
timeout-minutes: 30
steps:
- uses: actions/checkout@v2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/example_build.yml
Expand Up @@ -10,7 +10,7 @@ on:
env:
nodeVersion: "16"
cmakeVersion: "3.22.x"
flutterVersion: "2.5.3"
flutterVersion: "2.8.1"

jobs:
build_android-app_in_macos:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/integration_test_flutter.yml
Expand Up @@ -5,12 +5,12 @@ on: [workflow_dispatch, pull_request]
env:
nodeVersion: "16"
cmakeVersion: "3.22.x"
flutterVersion: "2.5.3"
flutterVersion: "2.8.1"

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
integration_test_f_253:
runs-on: [self-hosted, flutter_2.5.3]
integration_test:
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v2
- uses: subosito/flutter-action@v1
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/plugin_test_flutter.yml
Expand Up @@ -5,12 +5,12 @@ on: [workflow_dispatch, pull_request]
env:
nodeVersion: "16"
cmakeVersion: "3.22.x"
flutterVersion: "2.5.3"
flutterVersion: "2.8.1"

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
plugin_test_f_253:
runs-on: [self-hosted, flutter_2.5.3]
plugin_test:
runs-on: [self-hosted]
steps:
- uses: actions/checkout@v2
- uses: subosito/flutter-action@v1
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/sync_to_release.yml
Expand Up @@ -7,16 +7,16 @@ on:

# Sync main code to release/flutter-2.2.x branch.
jobs:
flutter_2_2_x:
flutter_2_5_x:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v2
with:
ref: 'release/flutter-2.2.x'
ref: 'release/flutter-2.5.x'
- name: Opening pull request
uses: tretuna/sync-branches@1.2.0
with:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
FROM_BRANCH: 'main'
TO_BRANCH: 'release/flutter-2.2.x'
TO_BRANCH: 'release/flutter-2.5.x'
4 changes: 0 additions & 4 deletions integration_tests/lib/main.dart
Expand Up @@ -5,14 +5,10 @@ import 'dart:async';
import 'dart:io';

import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:kraken/css.dart';
import 'package:kraken/bridge.dart';
import 'package:kraken/dom.dart';
import 'package:kraken/gesture.dart';
import 'package:kraken/kraken.dart';
import 'package:kraken/module.dart';
import 'package:kraken/widget.dart';
import 'package:ansicolor/ansicolor.dart';
import 'package:path/path.dart' as path;

Expand Down
1 change: 0 additions & 1 deletion integration_tests/lib/plugin.dart
Expand Up @@ -5,7 +5,6 @@ import 'dart:async';
import 'dart:io';

import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:kraken/bridge.dart';
import 'package:kraken/css.dart';
import 'package:kraken/dom.dart';
Expand Down
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
26 changes: 13 additions & 13 deletions integration_tests/specs/css/css-flexbox/flex_shrink.ts
Expand Up @@ -825,7 +825,7 @@ describe('flexbox flex-shrink', () => {
);

document.body.appendChild(container);
await snapshot(0.1);
await snapshot(0.2);
});

it('should work with flex item with overflow hidden', async () => {
Expand Down Expand Up @@ -904,7 +904,7 @@ describe('flexbox flex-shrink', () => {
boxSizing: 'border-box',
},
}, [

]),
createElement(
'div',
Expand All @@ -917,7 +917,7 @@ describe('flexbox flex-shrink', () => {
boxSizing: 'border-box',
},
}, [

]),
createElement(
'div',
Expand All @@ -930,7 +930,7 @@ describe('flexbox flex-shrink', () => {
boxSizing: 'border-box',
},
}, [

]),
createElement(
'div',
Expand All @@ -943,7 +943,7 @@ describe('flexbox flex-shrink', () => {
boxSizing: 'border-box',
},
}, [

]),
createElement(
'div',
Expand All @@ -956,11 +956,11 @@ describe('flexbox flex-shrink', () => {
boxSizing: 'border-box',
},
}, [

]),
])
]);

BODY.appendChild(div);

await snapshot();
Expand Down Expand Up @@ -998,7 +998,7 @@ describe('flexbox flex-shrink', () => {
boxSizing: 'border-box',
},
}, [

]),
createElement(
'div',
Expand All @@ -1011,7 +1011,7 @@ describe('flexbox flex-shrink', () => {
boxSizing: 'border-box',
},
}, [

]),
createElement(
'div',
Expand All @@ -1024,7 +1024,7 @@ describe('flexbox flex-shrink', () => {
boxSizing: 'border-box',
},
}, [

]),
createElement(
'div',
Expand All @@ -1037,7 +1037,7 @@ describe('flexbox flex-shrink', () => {
boxSizing: 'border-box',
},
}, [

]),
createElement(
'div',
Expand All @@ -1050,11 +1050,11 @@ describe('flexbox flex-shrink', () => {
boxSizing: 'border-box',
},
}, [

]),
])
]);

BODY.appendChild(div);

await snapshot();
Expand Down
2 changes: 1 addition & 1 deletion integration_tests/specs/css/css-sizing/block-fit.ts
Expand Up @@ -52,6 +52,6 @@ describe('block-fit', () => {
);
BODY.appendChild(parent);

await snapshot();
await snapshot(0.2);
});
});
5 changes: 3 additions & 2 deletions kraken/example/lib/main.dart
@@ -1,5 +1,6 @@
import 'dart:ui';

/*
* Copyright (C) 2022-present The Kraken authors. All rights reserved.
*/
import 'package:flutter/material.dart';
import 'package:kraken/kraken.dart';
import 'package:kraken/devtools.dart';
Expand Down
5 changes: 0 additions & 5 deletions kraken/lib/src/bridge/from_native.dart
Expand Up @@ -9,16 +9,11 @@ import 'dart:ui';

import 'package:ffi/ffi.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/painting.dart';
import 'package:flutter/services.dart';
import 'package:kraken/bridge.dart';
import 'package:kraken/launcher.dart';
import 'package:kraken/module.dart';
import 'package:kraken/src/module/performance_timing.dart';

import 'native_types.dart';
import 'dynamic_library.dart';

// An native struct can be directly convert to javaScript String without any conversion cost.
class NativeString extends Struct {
external Pointer<Uint16> string;
Expand Down
3 changes: 0 additions & 3 deletions kraken/lib/src/bridge/native_value.dart
@@ -1,16 +1,13 @@
/*
* Copyright (C) 2021-present The Kraken authors. All rights reserved.
*/

import 'dart:collection';
import 'dart:convert';
import 'dart:ffi';

import 'package:ffi/ffi.dart';
import 'package:kraken/bridge.dart';

import 'from_native.dart';

class NativeValue extends Struct {
@Double()
external double float64;
Expand Down
5 changes: 0 additions & 5 deletions kraken/lib/src/bridge/to_native.dart
Expand Up @@ -12,11 +12,6 @@ import 'package:flutter/foundation.dart';
import 'package:flutter/scheduler.dart';
import 'package:kraken/dom.dart';
import 'package:kraken/kraken.dart';
import 'package:kraken/module.dart';

import 'from_native.dart';
import 'native_types.dart';
import 'dynamic_library.dart';

// Steps for using dart:ffi to call a C function from Dart:
// 1. Import dart:ffi.
Expand Down
1 change: 0 additions & 1 deletion kraken/lib/src/css/background.dart
Expand Up @@ -3,7 +3,6 @@
*/

import 'dart:math' as math;
import 'dart:ui';

import 'package:flutter/painting.dart';
import 'package:flutter/rendering.dart';
Expand Down
2 changes: 0 additions & 2 deletions kraken/lib/src/css/border.dart
Expand Up @@ -2,9 +2,7 @@
* Copyright (C) 2019-present The Kraken authors. All rights reserved.
*/
import 'dart:core';
import 'dart:ui';

import 'package:flutter/painting.dart';
import 'package:flutter/rendering.dart';
import 'package:kraken/css.dart';

Expand Down
2 changes: 0 additions & 2 deletions kraken/lib/src/css/box.dart
Expand Up @@ -3,9 +3,7 @@
*/

import 'dart:core';
import 'dart:ui';

import 'package:flutter/painting.dart';
import 'package:flutter/rendering.dart';
import 'package:kraken/css.dart';

Expand Down
2 changes: 0 additions & 2 deletions kraken/lib/src/css/margin.dart
Expand Up @@ -2,8 +2,6 @@
* Copyright (C) 2019-present The Kraken authors. All rights reserved.
*/

import 'dart:ui';

import 'package:flutter/rendering.dart';
import 'package:kraken/css.dart';
import 'package:kraken/rendering.dart';
Expand Down
3 changes: 1 addition & 2 deletions kraken/lib/src/css/overflow.dart
Expand Up @@ -3,7 +3,6 @@
*/

import 'package:flutter/animation.dart';
import 'package:flutter/painting.dart';
import 'package:flutter/rendering.dart';
import 'package:kraken/css.dart';
import 'package:kraken/dom.dart';
Expand Down Expand Up @@ -457,7 +456,7 @@ mixin ElementOverflowMixin on ElementBase {

void _scroll(num aim, Axis direction, { bool? withAnimation = false }) {
KrakenScrollable? scrollable = _getScrollable(direction);
if (scrollable != null && aim is num) {
if (scrollable != null) {
double distance = aim.toDouble();

// Apply scroll effect after layout.
Expand Down
3 changes: 0 additions & 3 deletions kraken/lib/src/css/padding.dart
@@ -1,9 +1,6 @@
/*
* Copyright (C) 2019-present The Kraken authors. All rights reserved.
*/

import 'dart:ui';

import 'package:flutter/rendering.dart';
import 'package:kraken/css.dart';
import 'package:kraken/rendering.dart';
Expand Down
3 changes: 1 addition & 2 deletions kraken/lib/src/css/positioned.dart
Expand Up @@ -324,8 +324,7 @@ class CSSPositionedLayout {
if (child.hasSize &&
!needsRelayout &&
(childConstraints == child.constraints) &&
((child is RenderBoxModel && !child.needsLayout) ||
(child is RenderTextBox && !child.needsLayout))
(!child.needsLayout)
) {
isChildNeedsLayout = false;
}
Expand Down
1 change: 0 additions & 1 deletion kraken/lib/src/css/transform.dart
Expand Up @@ -5,7 +5,6 @@
import 'package:flutter/rendering.dart';
import 'package:kraken/css.dart';
import 'package:kraken/rendering.dart';
import 'package:vector_math/vector_math_64.dart';

const Offset _DEFAULT_TRANSFORM_OFFSET = Offset.zero;
const Alignment _DEFAULT_TRANSFORM_ALIGNMENT = Alignment.center;
Expand Down
1 change: 0 additions & 1 deletion kraken/lib/src/css/values/color.dart
Expand Up @@ -3,7 +3,6 @@
*/

import 'dart:math';
import 'dart:ui' show Color;

import 'package:quiver/collection.dart';
import 'package:flutter/material.dart';
Expand Down
3 changes: 0 additions & 3 deletions kraken/lib/src/devtools/server.dart
Expand Up @@ -8,12 +8,9 @@ import 'dart:isolate';
import 'dart:ffi';
import 'dart:typed_data';

import 'package:kraken/module.dart';
import 'package:kraken/bridge.dart';
import 'package:kraken/kraken.dart';
import 'package:kraken/devtools.dart';
import 'package:ffi/ffi.dart';
import '../bridge/dynamic_library.dart';

const String CONTENT_TYPE = 'Content-Type';
const String CONTENT_LENGTH = 'Content-Length';
Expand Down
1 change: 0 additions & 1 deletion kraken/lib/src/devtools/service.dart
Expand Up @@ -9,7 +9,6 @@ import 'dart:typed_data';
import 'package:ffi/ffi.dart';
import 'package:kraken/kraken.dart';
import 'package:kraken/devtools.dart';
import '../bridge/dynamic_library.dart';

typedef NativePostTaskToInspectorThread = Void Function(Int32 contextId, Pointer<Void> context, Pointer<Void> callback);
typedef DartPostTaskToInspectorThread = void Function(int contextId, Pointer<Void> context, Pointer<Void> callback);
Expand Down
3 changes: 0 additions & 3 deletions kraken/lib/src/dom/element.dart
Expand Up @@ -7,16 +7,13 @@ import 'dart:typed_data';
import 'dart:ui';

import 'package:flutter/foundation.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/painting.dart';
import 'package:flutter/rendering.dart';
import 'package:flutter/scheduler.dart';
import 'package:kraken/css.dart';
import 'package:kraken/dom.dart';
import 'package:kraken/foundation.dart';
import 'package:kraken/rendering.dart';
import 'package:kraken/widget.dart';
import 'package:meta/meta.dart';

final RegExp _splitRegExp = RegExp(r'\s+');
const String _ONE_SPACE = ' ';
Expand Down