Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Mac Page Up / Page Down in text fields #105497

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

Merged
merged 18 commits into from
Nov 7, 2022
Merged

Conversation

justinmc
Copy link
Contributor

@justinmc justinmc commented Jun 7, 2022

This PR implements the Mac page up/down keyboard shortcuts, which scroll by page. The selection changing behavior of pageup/down and shift + pageup/down were handled by @tgucio in #107602.

out

Closes #105448
Closes #77611

@justinmc justinmc requested a review from LongCatIsLooong June 7, 2022 04:43
@justinmc justinmc self-assigned this Jun 7, 2022
@flutter-dashboard flutter-dashboard bot added a: text input Entering text in a text field or keyboard related problems framework flutter/packages/flutter repository. See also f: labels. labels Jun 7, 2022
@@ -3292,6 +3293,80 @@ class EditableTextState extends State<EditableText> with AutomaticKeepAliveClien
}
}

/// Scrolls down by page if the `forward` parameter is true, or up by page
/// otherwise.
void _scrollByPage(ScrollByPageIntent intent) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's the right behavior when the text field has maxLines set to 1?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the case where PageUp PageDown shouldn't do anything, the Intent should propagate up in case the text field is inside of a scroll view I think? Do scroll views handle those 2 keys right now?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the scroll physics disallows implicit scrolling should the scroll view sill scroll?

/// Creates a [ScrollByPageIntent].
const ScrollByPageIntent({
required bool forward,
}) : super(forward);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought we had the super parameter lint enabled?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This confused me for a second. It looks like the forward param is positional in DirectionalTextEditingIntent (code). Is that intentional? I guess I will make this one positional too, but tell me if you think there is a better approach. Making this positional is a departure from the other Intens in DefaultTextEditingIntents that all have a forward named parameter.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually this is obsolete if we replace this with ScrollIntent as in d4bbc34.

}
final Offset nextExtentOffset =
Offset(extentRect.left, extentRect.top + position.viewportDimension);
final double height = _scrollController.position.maxScrollExtent + renderEditable.size.height;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This assumes the text field scrolls vertically?

@knopp
Copy link
Member

knopp commented Jun 7, 2022

What about ScrollIntent? It's already used in default app shortcuts (with type: ScrollIncrementType.page)

@Piinks
Copy link
Contributor

Piinks commented Jun 16, 2022

I think @knopp is right about ScrollIncrementType.page, we use the same distance determination for page scrolling on scrollbar and keyboard scroll actions. It may be a good idea to centralize that logic so it is easier to re-use.

Copy link
Contributor

@tgucio tgucio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added review comments suggesting an alternative approach to keep vertical runs and not require ScrollAction changes.

Published #107602 with those changes.


/// Extend the selection down by page if the `forward` parameter is true, or
/// up by page otherwise.
void _extendSelectionByPage(ExtendSelectionByPageIntent intent) {
Copy link
Contributor

@tgucio tgucio Jun 23, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I get this right, it looks like in this proposal:

  • without shift, we don't actually move the caret although it would probably be what most users would expect?
  • we don't follow vertical runs here?

Just tried in the Visual Studo Code editor and on PageDown/PageUp it does behave the same way as with ArrowUp/ArrowDown in that the horizontal caret location will be kept in a run from the run start.

So perhaps to enable caret movement and keep the vertical run implementation we could:

  • in editable.dart, add VerticalCaretMovementRun.moveByOffset() e.g.:
  bool moveByOffset(double offset) {
    final Offset initialOffset = _currentOffset;
    if (offset >= 0.0) {
      while (_currentOffset.dy < initialOffset.dy + offset) {
        if (!moveNext()) {
          break;
        }
      }
    } else {
      while (_currentOffset.dy > initialOffset.dy + offset) {
        if (!movePrevious()) {
          break;
        }
      }
    }
    return initialOffset != _currentOffset;
  }
  • in editable_text.dart, create a _UpdateTextSelectionToAdjacentPageAction class based on _UpdateTextSelectionToAdjacentLineAction with a change in invoke() to use the calculated viewport offset:
    final bool shouldMove = currentRun.moveByOffset(
        (intent.forward ? 1.0 : -1.0) * state.renderEditable.size.height);
  • or perhaps both could be handled by a common class such as _UpdateTextSelectionToVerticalPosition

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR now handles vertical runs. Let me know if I've missed anything though.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually I was mistaken and it doesn't, but maybe it doesn't need to because it only moves the cursor during selection. Let me know what you think.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To explain this here for anyone that reads this thread: We decided to not handle shift + pageup/down in this PR, so it only does scrolling and does not need vertical runs. That is handled in another PR by @tgucio that has since been merged.

_value.selection.extent,
);
final ScrollableState? state = _scrollableKey.currentState as ScrollableState?;
final double increment = ScrollAction.calculateScrollIncrement(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this is only used for vertically scrolled / multi-line fields, I wonder if using state.renderEditable.size.height instead of adding ScrollAction.calculateScrollIncrement() would be sufficient?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Piinks Do you think it's worth it to share calculateScrollIntent here? See also where I'm using ScrollAction.getIncrement above.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we could probably only expose one, probably getIncrement since it calls calculateScrollIncrement. Since these were previously private it is unlikely to break anything, so it can be re-worked to better serve as public API.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if using state.renderEditable.size.height instead of adding ScrollAction.calculateScrollIncrement() would be sufficient

It could be for this specific use case, but for consistency across the framework, we should probably establish a pattern. :)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now only one method is exposed, getDirectionalIncrement. It just uses a ScrollIntent like usual, which I create here.

@justinmc
Copy link
Contributor Author

@tgucio It looks like the scroll-only behavior that I implemented in this PR is specific to MacOS. I tried gedit on Linux and Notepad on Windows and both of them move the cursor, as you described.

How about we keep both of our PRs? I'll do the Mac behavior in this one and leave Linux and Windows unimplemented, and you fill that in on your PR.

@justinmc justinmc requested a review from LongCatIsLooong June 23, 2022 17:48
@justinmc
Copy link
Contributor Author

@Piinks Let me know what you think of this approach of sharing some code with ScrollAction.

I'm also interested in what you and @LongCatIsLooong think about my making ScrollIntent overridable to get this to work.

@tgucio
Copy link
Contributor

tgucio commented Jun 23, 2022

@justinmc just tried a bunch of different apps on macOS (long form fields on Chrome, Notes, TextEdit) and I find it almost fascinating that indeed page up/down scrolls without moving the caret :). Let me continue the caret movement implementation in #107602 then and we can differentiate Cupertino vs. Rest-of-the-World in default_text_editing_shortcuts.dart.

Copy link
Contributor

@Piinks Piinks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that making some of the ScrollAction public is a good idea. Scrollbar uses this too, but instead it just duplicates the logic. With more use cases now, I think making it accessible to other widgets makes sense. After this lands, I can go clean up the Scrollbar logic so we are consistent.

_value.selection.extent,
);
final ScrollableState? state = _scrollableKey.currentState as ScrollableState?;
final double increment = ScrollAction.calculateScrollIncrement(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we could probably only expose one, probably getIncrement since it calls calculateScrollIncrement. Since these were previously private it is unlikely to break anything, so it can be re-worked to better serve as public API.

final double increment = _calculateScrollIncrement(state, type: intent.type);
/// Find out how much of an increment to move by, taking the different
/// directions into account.
static double getIncrement(ScrollableState state, ScrollIntent intent) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe this could be getDirectionalIncrement in the public space? It already call on calculateScrollIncrement. Could you incorporate the logic for a forward intent or translate forward into intent.direction?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Translated to intent.direction and renamed to getDirectionalIncrement 👍

_value.selection.extent,
);
final ScrollableState? state = _scrollableKey.currentState as ScrollableState?;
final double increment = ScrollAction.calculateScrollIncrement(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if using state.renderEditable.size.height instead of adding ScrollAction.calculateScrollIncrement() would be sufficient

It could be for this specific use case, but for consistency across the framework, we should probably establish a pattern. :)

@flutter-dashboard
Copy link

This pull request executed golden file tests, but it has not been updated in a while (20+ days). Test results from Gold expire after as many days, so this pull request will need to be updated with a fresh commit in order to get results from Gold.

For more guidance, visit Writing a golden file test for package:flutter.

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.

@justinmc
Copy link
Contributor Author

Planning to return to this once I finish ContextMenu.

@justinmc justinmc requested review from Piinks and tgucio September 20, 2022 18:23
@justinmc
Copy link
Contributor Author

Ready for re-review. Sorry this has been paused for so long while I worked on context menus. The plan is for this PR to handle Mac and iOS only, and for #107602 to handle the rest.

double _getIncrement(ScrollableState state, ScrollIntent intent) {
/// Find out how much of an increment to move by, taking the different
/// directions into account.
static double getDirectionalIncrement(ScrollableState state, ScrollIntent intent) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!

Copy link
Contributor

@Piinks Piinks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Flutter_LGTM
This is awesome! I'll file an issue to update scrollbar now that the increment logic is accessible. Thank you!

@justinmc
Copy link
Contributor Author

justinmc commented Oct 5, 2022

No problem!

This PR should wait for #107602 and then I'll address any conflicts before merging.

@Piinks
Copy link
Contributor

Piinks commented Oct 25, 2022

#107602 landed, would you like to update here so this can be merged @justinmc?

@justinmc
Copy link
Contributor Author

justinmc commented Nov 4, 2022

@Piinks Yes thanks, I've updated this to no longer handle shift + pageup/down (which was taken care of in #107602). Now it does only Mac and iOS pageup/down scrolling.

You're welcome to re-review if you want! Otherwise I'll merge this later assuming it goes green.

@justinmc justinmc changed the title Page Up / Page Down in text fields Mac Page Up / Page Down in text fields Nov 4, 2022
@justinmc
Copy link
Contributor Author

justinmc commented Nov 7, 2022

Google testing has been pending for days, I'm going to go ahead and merge as it should be very low risk for breakages. I'll monitor it after merge.

@justinmc justinmc merged commit 7e36cf1 into flutter:master Nov 7, 2022
@justinmc justinmc deleted the pageup-pagedown branch November 7, 2022 18:43
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Nov 8, 2022
engine-flutter-autoroll added a commit to engine-flutter-autoroll/plugins that referenced this pull request Nov 8, 2022
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Nov 8, 2022
* 5280135 ecd3c4857 Roll Fuchsia Mac SDK from sNXsQVxntMX8f42LE... to 9Jb1-3tRPQ2ZhpTQC... (flutter/engine#37363) (flutter/flutter#114772)

* a6da104 Adds support for the Material Badge widget, BadgeTheme, BadgeThemeData (flutter/flutter#114560)

* 19c5fc5 0cbdf464c Add Matrix::LookAt (flutter/engine#37361) (flutter/flutter#114786)

* c551fe3 4e45cfb4a Roll Fuchsia Mac SDK from 9Jb1-3tRPQ2ZhpTQC... to 5XOj9l5e2wkSpMKT1... (flutter/engine#37369) (flutter/flutter#114789)

* a54a46d 6b57fddd1 Bump github/codeql-action from 2.1.29 to 2.1.31 (flutter/engine#37374) (flutter/flutter#114798)

* 3c9288c Increase minimum supported macOS version from 10.13 to 10.14 (flutter/flutter#114713)

* a1289a4 891d4a357 Roll Skia from c3c31be8729b to 513f0fd34590 (2 revisions) (flutter/engine#37377) (flutter/flutter#114802)

* 04d6fd2 Roll Plugins from a279b9d to 3ca3410 (4 revisions) (flutter/flutter#114813)

* 151c831 92d9ad27f Roll Skia from 513f0fd34590 to da9fad017aee (2 revisions) (flutter/engine#37379) (flutter/flutter#114816)

* d6a8e92 Revert "Adds support for the Material Badge widget, BadgeTheme, BadgeThemeData (#114560)" (flutter/flutter#114819)

* 7de60bb 334549704 Roll buildroot to d13d64086f5e301bd0415eede895b34af220ef42 (flutter/engine#37380) (flutter/flutter#114821)

* 496cf62 Delegate TestWindow.updateSemantics to the wrapped SingletonFlutterWindow (flutter/flutter#114733)

* 497a528 Fix TextField/CupertinoTextField hint style overflow not work. (flutter/flutter#114335)

* 7e36cf1 Mac Page Up / Page Down in text fields (flutter/flutter#105497)

* 77c06c2 0075e10bc Move gclient var property to ci.yaml (flutter/engine#37351) (flutter/flutter#114828)

* 378387b when getting xcworkspace, exclude hidden files (flutter/flutter#114099)

* e901832 4e03d059d [Android] Speed up the method 'FlutterRenderer.getBitmap' (flutter/engine#37342) (flutter/flutter#114833)

* 3cde69e Revert "Revert "Scribble mixin (#104128)" (#114647)" (flutter/flutter#114698)

* e1adc96 feat: provide a way to set the initial child's alignment (flutter/flutter#114745)

* fe5eb2d ee48c0392 Roll Fuchsia Mac SDK from 5XOj9l5e2wkSpMKT1... to sa5bVGimNo3JwLV27... (flutter/engine#37386) (flutter/flutter#114836)

* 5628ebf [RawKeyboard] Allow inconsistent modifiers for Web (flutter/flutter#114499)

* f1cdfa2 Use AppBar.systemOverlayStyle to style system navigation bar (flutter/flutter#104827)

* e4e902d [flutter_tools] add compilation failure tests for new cases added in impellerc (flutter/flutter#114757)

* 7640f31 a81a715ce Revert "Remove deprecated calls to updateSemantics in `PlatformDispatcher` (#36673)" (flutter/engine#37388) (flutter/flutter#114842)

* 585d445 Roll Flutter Engine from a81a715ce6b2 to df602070ac4b (3 revisions) (flutter/flutter#114847)

* 1ca2e0b Fix `CastError` in `StadiumBorder.lerpTo` and  `StadiumBorder.lerpFrom` when using `BorderRadiusDirectional` (flutter/flutter#114826)

* 2e85e74 004a30516 [fuchsia] embedding-flutter test (flutter/engine#37052) (flutter/flutter#114854)

* 139b8f4 Roll Flutter Engine from 004a305166d5 to e7d7edab98ad (2 revisions) (flutter/flutter#114855)

* 53e6876 Allow Flutter golden file tests to be flaky (flutter/flutter#114450)

* a1432a9 Refactor fix_data.yaml (flutter/flutter#114192)
auto-submit bot pushed a commit to flutter/plugins that referenced this pull request Nov 8, 2022
* 04d6fd2 Roll Plugins from a279b9d to 3ca3410 (4 revisions) (flutter/flutter#114813)

* 151c831 92d9ad27f Roll Skia from 513f0fd34590 to da9fad017aee (2 revisions) (flutter/engine#37379) (flutter/flutter#114816)

* d6a8e92 Revert "Adds support for the Material Badge widget, BadgeTheme, BadgeThemeData (#114560)" (flutter/flutter#114819)

* 7de60bb 334549704 Roll buildroot to d13d64086f5e301bd0415eede895b34af220ef42 (flutter/engine#37380) (flutter/flutter#114821)

* 496cf62 Delegate TestWindow.updateSemantics to the wrapped SingletonFlutterWindow (flutter/flutter#114733)

* 497a528 Fix TextField/CupertinoTextField hint style overflow not work. (flutter/flutter#114335)

* 7e36cf1 Mac Page Up / Page Down in text fields (flutter/flutter#105497)

* 77c06c2 0075e10bc Move gclient var property to ci.yaml (flutter/engine#37351) (flutter/flutter#114828)

* 378387b when getting xcworkspace, exclude hidden files (flutter/flutter#114099)

* e901832 4e03d059d [Android] Speed up the method 'FlutterRenderer.getBitmap' (flutter/engine#37342) (flutter/flutter#114833)

* 3cde69e Revert "Revert "Scribble mixin (#104128)" (#114647)" (flutter/flutter#114698)

* e1adc96 feat: provide a way to set the initial child's alignment (flutter/flutter#114745)

* fe5eb2d ee48c0392 Roll Fuchsia Mac SDK from 5XOj9l5e2wkSpMKT1... to sa5bVGimNo3JwLV27... (flutter/engine#37386) (flutter/flutter#114836)

* 5628ebf [RawKeyboard] Allow inconsistent modifiers for Web (flutter/flutter#114499)

* f1cdfa2 Use AppBar.systemOverlayStyle to style system navigation bar (flutter/flutter#104827)

* e4e902d [flutter_tools] add compilation failure tests for new cases added in impellerc (flutter/flutter#114757)

* 7640f31 a81a715ce Revert "Remove deprecated calls to updateSemantics in `PlatformDispatcher` (#36673)" (flutter/engine#37388) (flutter/flutter#114842)

* 585d445 Roll Flutter Engine from a81a715ce6b2 to df602070ac4b (3 revisions) (flutter/flutter#114847)

* 1ca2e0b Fix `CastError` in `StadiumBorder.lerpTo` and  `StadiumBorder.lerpFrom` when using `BorderRadiusDirectional` (flutter/flutter#114826)

* 2e85e74 004a30516 [fuchsia] embedding-flutter test (flutter/engine#37052) (flutter/flutter#114854)

* 139b8f4 Roll Flutter Engine from 004a305166d5 to e7d7edab98ad (2 revisions) (flutter/flutter#114855)

* 53e6876 Allow Flutter golden file tests to be flaky (flutter/flutter#114450)

* a1432a9 Refactor fix_data.yaml (flutter/flutter#114192)
IVLIVS-III pushed a commit to IVLIVS-III/flutter_plugins_fork that referenced this pull request Nov 11, 2022
* 04d6fd2 Roll Plugins from a279b9d to 3ca3410 (4 revisions) (flutter/flutter#114813)

* 151c831 92d9ad27f Roll Skia from 513f0fd34590 to da9fad017aee (2 revisions) (flutter/engine#37379) (flutter/flutter#114816)

* d6a8e92 Revert "Adds support for the Material Badge widget, BadgeTheme, BadgeThemeData (#114560)" (flutter/flutter#114819)

* 7de60bb 334549704 Roll buildroot to d13d64086f5e301bd0415eede895b34af220ef42 (flutter/engine#37380) (flutter/flutter#114821)

* 496cf62 Delegate TestWindow.updateSemantics to the wrapped SingletonFlutterWindow (flutter/flutter#114733)

* 497a528 Fix TextField/CupertinoTextField hint style overflow not work. (flutter/flutter#114335)

* 7e36cf1 Mac Page Up / Page Down in text fields (flutter/flutter#105497)

* 77c06c2 0075e10bc Move gclient var property to ci.yaml (flutter/engine#37351) (flutter/flutter#114828)

* 378387b when getting xcworkspace, exclude hidden files (flutter/flutter#114099)

* e901832 4e03d059d [Android] Speed up the method 'FlutterRenderer.getBitmap' (flutter/engine#37342) (flutter/flutter#114833)

* 3cde69e Revert "Revert "Scribble mixin (#104128)" (#114647)" (flutter/flutter#114698)

* e1adc96 feat: provide a way to set the initial child's alignment (flutter/flutter#114745)

* fe5eb2d ee48c0392 Roll Fuchsia Mac SDK from 5XOj9l5e2wkSpMKT1... to sa5bVGimNo3JwLV27... (flutter/engine#37386) (flutter/flutter#114836)

* 5628ebf [RawKeyboard] Allow inconsistent modifiers for Web (flutter/flutter#114499)

* f1cdfa2 Use AppBar.systemOverlayStyle to style system navigation bar (flutter/flutter#104827)

* e4e902d [flutter_tools] add compilation failure tests for new cases added in impellerc (flutter/flutter#114757)

* 7640f31 a81a715ce Revert "Remove deprecated calls to updateSemantics in `PlatformDispatcher` (#36673)" (flutter/engine#37388) (flutter/flutter#114842)

* 585d445 Roll Flutter Engine from a81a715ce6b2 to df602070ac4b (3 revisions) (flutter/flutter#114847)

* 1ca2e0b Fix `CastError` in `StadiumBorder.lerpTo` and  `StadiumBorder.lerpFrom` when using `BorderRadiusDirectional` (flutter/flutter#114826)

* 2e85e74 004a30516 [fuchsia] embedding-flutter test (flutter/engine#37052) (flutter/flutter#114854)

* 139b8f4 Roll Flutter Engine from 004a305166d5 to e7d7edab98ad (2 revisions) (flutter/flutter#114855)

* 53e6876 Allow Flutter golden file tests to be flaky (flutter/flutter#114450)

* a1432a9 Refactor fix_data.yaml (flutter/flutter#114192)
adam-harwood pushed a commit to adam-harwood/flutter_plugins that referenced this pull request Nov 21, 2022
* 04d6fd2 Roll Plugins from a279b9d to 3ca3410 (4 revisions) (flutter/flutter#114813)

* 151c831 92d9ad27f Roll Skia from 513f0fd34590 to da9fad017aee (2 revisions) (flutter/engine#37379) (flutter/flutter#114816)

* d6a8e92 Revert "Adds support for the Material Badge widget, BadgeTheme, BadgeThemeData (#114560)" (flutter/flutter#114819)

* 7de60bb 334549704 Roll buildroot to d13d64086f5e301bd0415eede895b34af220ef42 (flutter/engine#37380) (flutter/flutter#114821)

* 496cf62 Delegate TestWindow.updateSemantics to the wrapped SingletonFlutterWindow (flutter/flutter#114733)

* 497a528 Fix TextField/CupertinoTextField hint style overflow not work. (flutter/flutter#114335)

* 7e36cf1 Mac Page Up / Page Down in text fields (flutter/flutter#105497)

* 77c06c2 0075e10bc Move gclient var property to ci.yaml (flutter/engine#37351) (flutter/flutter#114828)

* 378387b when getting xcworkspace, exclude hidden files (flutter/flutter#114099)

* e901832 4e03d059d [Android] Speed up the method 'FlutterRenderer.getBitmap' (flutter/engine#37342) (flutter/flutter#114833)

* 3cde69e Revert "Revert "Scribble mixin (#104128)" (#114647)" (flutter/flutter#114698)

* e1adc96 feat: provide a way to set the initial child's alignment (flutter/flutter#114745)

* fe5eb2d ee48c0392 Roll Fuchsia Mac SDK from 5XOj9l5e2wkSpMKT1... to sa5bVGimNo3JwLV27... (flutter/engine#37386) (flutter/flutter#114836)

* 5628ebf [RawKeyboard] Allow inconsistent modifiers for Web (flutter/flutter#114499)

* f1cdfa2 Use AppBar.systemOverlayStyle to style system navigation bar (flutter/flutter#104827)

* e4e902d [flutter_tools] add compilation failure tests for new cases added in impellerc (flutter/flutter#114757)

* 7640f31 a81a715ce Revert "Remove deprecated calls to updateSemantics in `PlatformDispatcher` (#36673)" (flutter/engine#37388) (flutter/flutter#114842)

* 585d445 Roll Flutter Engine from a81a715ce6b2 to df602070ac4b (3 revisions) (flutter/flutter#114847)

* 1ca2e0b Fix `CastError` in `StadiumBorder.lerpTo` and  `StadiumBorder.lerpFrom` when using `BorderRadiusDirectional` (flutter/flutter#114826)

* 2e85e74 004a30516 [fuchsia] embedding-flutter test (flutter/engine#37052) (flutter/flutter#114854)

* 139b8f4 Roll Flutter Engine from 004a305166d5 to e7d7edab98ad (2 revisions) (flutter/flutter#114855)

* 53e6876 Allow Flutter golden file tests to be flaky (flutter/flutter#114450)

* a1432a9 Refactor fix_data.yaml (flutter/flutter#114192)
shogohida pushed a commit to shogohida/flutter that referenced this pull request Dec 7, 2022
Adds support for Mac/iOS's behavior of scrolling (but not moving the cursor) when using page up/down in a text field.
gspencergoog pushed a commit to gspencergoog/flutter that referenced this pull request Jan 19, 2023
Adds support for Mac/iOS's behavior of scrolling (but not moving the cursor) when using page up/down in a text field.
mauricioluz pushed a commit to mauricioluz/plugins that referenced this pull request Jan 26, 2023
* 04d6fd2 Roll Plugins from a279b9d to 3ca3410 (4 revisions) (flutter/flutter#114813)

* 151c831 92d9ad27f Roll Skia from 513f0fd34590 to da9fad017aee (2 revisions) (flutter/engine#37379) (flutter/flutter#114816)

* d6a8e92 Revert "Adds support for the Material Badge widget, BadgeTheme, BadgeThemeData (#114560)" (flutter/flutter#114819)

* 7de60bb 334549704 Roll buildroot to d13d64086f5e301bd0415eede895b34af220ef42 (flutter/engine#37380) (flutter/flutter#114821)

* 496cf62 Delegate TestWindow.updateSemantics to the wrapped SingletonFlutterWindow (flutter/flutter#114733)

* 497a528 Fix TextField/CupertinoTextField hint style overflow not work. (flutter/flutter#114335)

* 7e36cf1 Mac Page Up / Page Down in text fields (flutter/flutter#105497)

* 77c06c2 0075e10bc Move gclient var property to ci.yaml (flutter/engine#37351) (flutter/flutter#114828)

* 378387b when getting xcworkspace, exclude hidden files (flutter/flutter#114099)

* e901832 4e03d059d [Android] Speed up the method 'FlutterRenderer.getBitmap' (flutter/engine#37342) (flutter/flutter#114833)

* 3cde69e Revert "Revert "Scribble mixin (#104128)" (#114647)" (flutter/flutter#114698)

* e1adc96 feat: provide a way to set the initial child's alignment (flutter/flutter#114745)

* fe5eb2d ee48c0392 Roll Fuchsia Mac SDK from 5XOj9l5e2wkSpMKT1... to sa5bVGimNo3JwLV27... (flutter/engine#37386) (flutter/flutter#114836)

* 5628ebf [RawKeyboard] Allow inconsistent modifiers for Web (flutter/flutter#114499)

* f1cdfa2 Use AppBar.systemOverlayStyle to style system navigation bar (flutter/flutter#104827)

* e4e902d [flutter_tools] add compilation failure tests for new cases added in impellerc (flutter/flutter#114757)

* 7640f31 a81a715ce Revert "Remove deprecated calls to updateSemantics in `PlatformDispatcher` (#36673)" (flutter/engine#37388) (flutter/flutter#114842)

* 585d445 Roll Flutter Engine from a81a715ce6b2 to df602070ac4b (3 revisions) (flutter/flutter#114847)

* 1ca2e0b Fix `CastError` in `StadiumBorder.lerpTo` and  `StadiumBorder.lerpFrom` when using `BorderRadiusDirectional` (flutter/flutter#114826)

* 2e85e74 004a30516 [fuchsia] embedding-flutter test (flutter/engine#37052) (flutter/flutter#114854)

* 139b8f4 Roll Flutter Engine from 004a305166d5 to e7d7edab98ad (2 revisions) (flutter/flutter#114855)

* 53e6876 Allow Flutter golden file tests to be flaky (flutter/flutter#114450)

* a1432a9 Refactor fix_data.yaml (flutter/flutter#114192)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a: text input Entering text in a text field or keyboard related problems f: scrolling Viewports, list views, slivers, etc. framework flutter/packages/flutter repository. See also f: labels.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

PageUp/PageDown in a text field Page up/down support on desktop text fields
5 participants