Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: flutter/flutter
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 5e5b5292f739
Choose a base ref
...
head repository: flutter/flutter
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 918e336014e1
Choose a head ref
  • 14 commits
  • 62 files changed
  • 12 contributors

Commits on Nov 29, 2023

  1. Migration for the sendTiming events for package:unified_analytics (…

    …#138896)
    
    Related to tracker issue:
    - #128251
    
    <img width="278" alt="image" src="https://github.com/flutter/flutter/assets/42216813/cee7b9be-48d6-48e5-8c39-de28d0a1f0de">
    
    The image above shows all of the instances where we have `sendTiming`. All of the call sites have been updated to use the new `Event.timing` event from `package:unified_analytics`.
    eliasyishak authored Nov 29, 2023
    Configuration menu
    Copy the full SHA
    60d5c8a View commit details
    Browse the repository at this point in the history
  2. Remove deprecated PlatformMenuBar.body (#138509)

    Part of #139243
    
    ## Description
    
    This removes the `PlatformMenuBar.body` attribute and constructor parameter, since its deprecation period has elapsed.
    
    ## Tests
     - No tests were using the deprecated attribute, so no tests were removed.
    
    #FlutterDeprecations
    gspencergoog authored Nov 29, 2023
    Configuration menu
    Copy the full SHA
    6295289 View commit details
    Browse the repository at this point in the history
  3. Roll Flutter Engine from 222beb2 to 9a7e49d (1 revision) (#139250)

    flutter-team-archive/engine@222beb2...9a7e49d
    
    2023-11-29 [email protected] [Impeller] fix order of operations in SkSL generated texture lookup. (flutter-team-archive/engine#48488)
    
    If this roll has caused a breakage, revert this CL and stop the roller
    using the controls here:
    https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
    Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
    is aware of the problem.
    
    To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
    
    To report a problem with the AutoRoller itself, please file a bug:
    https://issues.skia.org/issues/new?component=1389291&template=1850622
    
    Documentation for the AutoRoller is here:
    https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
    engine-flutter-autoroll authored Nov 29, 2023
    Configuration menu
    Copy the full SHA
    c864a55 View commit details
    Browse the repository at this point in the history
  4. add sourceTimeStamp to ScaleUpdateDetails (#135936)

    This PR adds the ability to get the `sourceTimeStamp` from `ScaleUpdateDetails` in a `GestureScaleUpdateCallback` like so:
    
    ```dart
    onScaleUpdate: (ScaleUpdateDetails details){
      print(details.sourceTimeStamp);
    }
    ```
    
    `sourceTimeStamp` is necessary when tracking velocity eg.
    
    ```dart
    VelocityTracker tracker = VelocityTracker.withKind(PointerDeviceKind.touch);
    ///...
    onScaleUpdate: (ScaleUpdateDetails details){
      tracker.addPosition(details.sourceTimeStamp!, details.focalPoint);
    }
    ```
    
    The docs say:
    
    >Having both a pan gesture recognizer and a scale gesture recognizer is redundant; scale is a superset of pan. Just use the scale gesture recognizer.
    
    Currently this is not entirely accurate, and should be fixed, as noted in #43833 (comment). This PR does not add `sourceTimeStamp` to `ScaleStartDetails` because it is more involved. Specifically, `ScaleStartDetails` can be created in `acceptGesture` which does not have access to the `PointerEvent` to get the `event.timeStamp` (https://github.com/flutter/flutter/blob/54fa25543243e3bf31af6af0c1fef6adabc1d5c1/packages/flutter/lib/src/gestures/scale.dart#L730C5-L730C5).
    
    fixes #135873. See also #43833 which added delta and #49025 which added `numPointers` to `ScaleUpdateDetails` for the reason given above. `sourceTimeStamp` should probably be added to `ScaleStartDetails` as well because it exists in `DragStartDetails` and therefore in `onPanStart`.
    
    I am not sure how to add tests for this, any input about this PR would be appreciated.
    
    - [] All existing and new tests are passing.
    yakagami authored Nov 29, 2023
    Configuration menu
    Copy the full SHA
    443d861 View commit details
    Browse the repository at this point in the history
  5. Roll dependencies (#139203)

    Removes video_player and scoped_model pins, rolls everything else to latest.
    Hixie authored Nov 29, 2023
    Configuration menu
    Copy the full SHA
    b417812 View commit details
    Browse the repository at this point in the history
  6. Dynamic view sizing (#138648)

    Towards #134501.
    
    This change is based on flutter-team-archive/engine#48090. It changes the `RenderView` to be dynamically sized based on its content if the `FlutterView` it is configured with allows it (i.e. the `FlutterView` has loose `FlutterView.physicalConstraints`). For that, it uses those `physicalConstraints` as input to the layout algorithm by passing them on to its child (after translating them to logical constraints via the device pixel ratio). The resulting `Size` that the `RenderView` would like to be is then communicated back to the engine by passing it to the `FlutterView.render` call.
    
    Tests will fail until flutter-team-archive/engine#48090 has rolled into the framework.
    goderbauer authored Nov 29, 2023
    Configuration menu
    Copy the full SHA
    4f8a991 View commit details
    Browse the repository at this point in the history
  7. Refactor to use Apple system fonts (#137275)

    Addresses #63507, and is a follow up to the engine PR flutter-team-archive/engine#46857
    
    Changes the font family string when attempting to use Apple system fonts to the new proxies added by the engine. For the "Text" font this will be more secure in the future against possible changes to Apple's API. For the "Display" font, this will now work correctly when it didn't before.
    
    I checked the letter spacing values against a native app for all font sizes between 17-28. I made a few adjustments to better match native, but especially for the "Text" font we were either really close, or close enough to not make a large breaking change to default fonts worth it.
    
    | Before  | After |
    | ------------- | ------------- |
    | <img width="466" alt="Screenshot 2023-11-02 at 11 45 12�AM" src="https://github.com/flutter/flutter/assets/58190796/627ed8ac-d848-4f71-aa62-a467b8aac62d"> | <img width="383" alt="Screenshot 2023-11-02 at 11 46 25�AM" src="https://github.com/flutter/flutter/assets/58190796/9a502021-7d2b-4e14-98f1-86971b3830a5"> |
    
    The smaller text in both the before and after should be the same. The large system font that Flutter used before was incorrect, which caused it to look more spread out. Now we use the correct font.
    MitchellGoodwin authored Nov 29, 2023
    Configuration menu
    Copy the full SHA
    e84f129 View commit details
    Browse the repository at this point in the history
  8. Roll Flutter Engine from 9a7e49d to 35939ca (5 revisions) (#139259)

    flutter-team-archive/engine@9a7e49d...35939ca
    
    2023-11-29 [email protected] Roll Skia from eb6fc55a3bc5 to 010883e6572c (1 revision) (flutter-team-archive/engine#48506)
    2023-11-29 [email protected] Roll Skia from 830111a2c7d6 to eb6fc55a3bc5 (1 revision) (flutter-team-archive/engine#48503)
    2023-11-29 [email protected] [canvaskit] Disable createImageBitmap support on Chrome 110 or older on Windows. (flutter-team-archive/engine#48475)
    2023-11-29 [email protected] [fuchsia] Update Fuchsia API level to 15 (flutter-team-archive/engine#48233)
    2023-11-29 [email protected] Roll Skia from 8931060e9ab5 to 830111a2c7d6 (1 revision) (flutter-team-archive/engine#48501)
    
    If this roll has caused a breakage, revert this CL and stop the roller
    using the controls here:
    https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
    Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
    is aware of the problem.
    
    To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
    
    To report a problem with the AutoRoller itself, please file a bug:
    https://issues.skia.org/issues/new?component=1389291&template=1850622
    
    Documentation for the AutoRoller is here:
    https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
    engine-flutter-autoroll authored Nov 29, 2023
    Configuration menu
    Copy the full SHA
    023e5ad View commit details
    Browse the repository at this point in the history
  9. Fix chips onDeleted callback don't show the delete button when disa…

    …bled (#137685)
    
    fixes [Chips with `onDeleted` callback should show the delete button in the `disabled` state](#136638)
    
    ### Code sample
    
    <details>
    <summary>expand to view the code sample</summary> 
    
    ```dart
    import 'package:flutter/material.dart';
    
    void main() => runApp(const MyApp());
    
    class MyApp extends StatelessWidget {
      const MyApp({super.key});
    
      @OverRide
      Widget build(BuildContext context) {
        return const MaterialApp(
          debugShowCheckedModeBanner: false,
          home: Example(),
        );
      }
    }
    
    class Example extends StatefulWidget {
      const Example({super.key});
    
      @OverRide
      State<Example> createState() => _ExampleState();
    }
    
    class _ExampleState extends State<Example> {
    
      @OverRide
      Widget build(BuildContext context) {
        return Scaffold(
          body: Center(
            child: Column(
              mainAxisAlignment: MainAxisAlignment.spaceEvenly,
              children: <Widget>[
                RawChip(
                  avatar: const Icon(Icons.favorite_rounded),
                  label: const Text('RawChip'),
                  onSelected: null,
                  isEnabled: false,
                  onDeleted: () {},
                ),
                InputChip(
                  avatar: const Icon(Icons.favorite_rounded),
                  label: const Text('InputChip'),
                  isEnabled: false,
                  onPressed: null,
                  onDeleted: () {},
                ),
                FilterChip(
                  avatar: const Icon(Icons.favorite_rounded),
                  label: const Text('FilterChip'),
                  onSelected: null,
                  onDeleted: () {},
                ),
              ],
            ),
          ),
        );
      }
    }
    ```
    
    </details>
    
    | Before | After |
    | --------------- | --------------- |
    | <img src="https://github.com/flutter/flutter/assets/48603081/8bd458de-cfd2-44f0-a0dd-a8298938c61f" /> | <img src="https://github.com/flutter/flutter/assets/48603081/afca0684-b061-416b-b029-5316588c6888" /> |
    TahaTesser authored Nov 29, 2023
    Configuration menu
    Copy the full SHA
    4648f54 View commit details
    Browse the repository at this point in the history

Commits on Nov 30, 2023

  1. Migrate fuchsia_precache to shard tests. (#139202)

    Adhoc tests are being deprecated and existing tests are being migrated to shard tests.
    
    Bug: #139153
    godofredoc authored Nov 30, 2023
    Configuration menu
    Copy the full SHA
    c8101b5 View commit details
    Browse the repository at this point in the history
  2. Reverts "Migration for the sendTiming events for `package:unified_a…

    …nalytics`" (#139278)
    
    Reverts #138896
    Initiated by: CaseyHillers
    This change reverts the following previous change:
    Original Description:
    Related to tracker issue:
    - #128251
    
    <img width="278" alt="image" src="https://github.com/flutter/flutter/assets/42216813/cee7b9be-48d6-48e5-8c39-de28d0a1f0de">
    
    The image above shows all of the instances where we have `sendTiming`. All of the call sites have been updated to use the new `Event.timing` event from `package:unified_analytics`.
    auto-submit[bot] authored Nov 30, 2023
    Configuration menu
    Copy the full SHA
    6c4475e View commit details
    Browse the repository at this point in the history
  3. Use the correct recipe on fuchsia_precache. (#139279)

    To run shard tests we need to use flutter_drone recipe.
    
    
    ## Pre-launch Checklist
    
    - [X] I read the [Contributor Guide] and followed the process outlined
    there for submitting PRs.
    - [X] I read the [Tree Hygiene] wiki page, which explains my
    responsibilities.
    - [X] I read and followed the [Flutter Style Guide], including [Features
    we expect every widget to implement].
    - [X] I signed the [CLA].
    - [X] I listed at least one issue that this PR fixes in the description
    above.
    - [X] I updated/added relevant documentation (doc comments with `///`).
    - [X] I added new tests to check the change I am making, or this PR is
    [test-exempt].
    - [X] All existing and new tests are passing.
    
    If you need help, consider asking for advice on the #hackers-new channel
    on [Discord].
    
    <!-- Links -->
    [Contributor Guide]:
    https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
    [Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
    [test-exempt]:
    https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
    [Flutter Style Guide]:
    https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
    [Features we expect every widget to implement]:
    https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#features-we-expect-every-widget-to-implement
    [CLA]: https://cla.developers.google.com/
    [flutter/tests]: https://github.com/flutter/tests
    [breaking change policy]:
    https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
    [Discord]: https://github.com/flutter/flutter/wiki/Chat
    godofredoc authored Nov 30, 2023
    Configuration menu
    Copy the full SHA
    cae47c4 View commit details
    Browse the repository at this point in the history
  4. Introduce multi-touch drag strategies for DragGestureRecognizer (#1…

    …36708)
    
    Fixes #11884
    
    As #38926 pointed out, the current Flutter implementation of multi-finger drag behavior is different from iOS and Android.
    This change introduces the `MultitouchDragStrategy` attribute, which implements the Android behavior and can be controlled through `ScrollBehavior`, while retaining the ability to extend iOS behavior in the future.
    xu-baolin authored Nov 30, 2023
    Configuration menu
    Copy the full SHA
    d49dcaa View commit details
    Browse the repository at this point in the history
  5. Move Impeller tests on Pixel 7 Pro from staging to prod (#139280)

    These tests are now expected to be reasonably stable, and increases in
    flakiness should be reported as part of the regular flaky test triage
    process.
    zanderso authored Nov 30, 2023
    Configuration menu
    Copy the full SHA
    918e336 View commit details
    Browse the repository at this point in the history
Loading