Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.
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/engine
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: cd989fbc80bf
Choose a base ref
...
head repository: flutter/engine
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: c4a2712e8f4d
Choose a head ref
  • 3 commits
  • 5 files changed
  • 3 contributors

Commits on May 2, 2023

  1. Stop specifiying Macmini8,1 in ci builders, use inherited mac_model d…

    …imension (#41223)
    
    As of #41219 all the .ci.yaml builders will run on either Macmini8,1 (x64) or Macmini9,1 (arm).  Stop specifying `Macmini8,1` on individual builders and let the specified architecture be the deciding factor.
    
    Reverts #41203
    jmagman authored May 2, 2023
    Configuration menu
    Copy the full SHA
    d7375eb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4f84cac View commit details
    Browse the repository at this point in the history
  3. Web - Fix selection jump on Chrome for Android (#41202)

    ## Description
    
    This PR fixes cursor jump on Chrome for Android when the user taps in a multiline `TextField`.
    
    Using the following code sample:
    
    <details><summary>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(
          title: 'Text Field Focus',
          home: MyCustomForm(),
        );
      }
    }
    
    // Define a custom Form widget.
    class MyCustomForm extends StatelessWidget {
      const MyCustomForm({super.key});
    
      @OverRide
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(
            title: const Text('Text Field Focus'),
          ),
          backgroundColor: Colors.amber,
          body: Padding(
            padding: const EdgeInsets.all(16.0),
            child: TextField(
              decoration: const InputDecoration(
                fillColor: Colors.white,
                filled: true
              ),
              autofocus: true,
              maxLines: 3,
              controller: TextEditingController(text: '1\n2\n3\n4\n'),
            ),
          ),// This trailing comma makes auto-formatting nicer for build methods.
        );
      }
    }
    
    ```
    </details>
    
    On a mobile browser, once the page is loaded, tap after the number 3: 
    
    - Before this PR: the TextField content is automaticaly scrolled and the selection is set after number 1.
    
    https://user-images.githubusercontent.com/840911/232051413-b913f890-6cb1-4c60-92d0-7a3bf74cc688.mov
    
    ## Implementation
    
    A multiline `TextField` relies on an HTML `<textarea>` elements. When a tap occurs the selection should be updated from Flutter not by the HTML element itself. 
    This PR prevents mouse events on Chrome for Android. Those events conflicts with Flutter selection changes.
    Previously, mouse events were only prevented on desktop but they are also emitted on mobile, see https://bugs.chromium.org/p/chromium/issues/detail?id=119216#c11.
    
    ## Related Issue
    
    Related to flutter/flutter#124483 (partial fix because the issue is also reproducible on iOS/Safari).
    
    ## Tests
    
    Adds 1 test.
    bleroux authored May 2, 2023
    Configuration menu
    Copy the full SHA
    c4a2712 View commit details
    Browse the repository at this point in the history
Loading