BTextView: Update word-wise/line-wise shortcuts

... and set alternates. This is updated because we can now set
shortcuts without B_COMMAND_KEY. Setup Alt for Win/Linux mode.

* Word-wise shortcuts Option+arrows.
* Line-wise shortcuts Alt+arrows AND Ctrl+arrows for
  Win/Linux mode and for when there's a conflict.

Otherwise these shortcuts are not expected to conflict.

Add shortcuts for Alt+Backspace and Alt+Delete to delete to
the beginning or end of line instead of word.

Split out vertical and horizontal shortcuts so that if one is
used by an app we at least get the other one.

Fixes #9913

Change-Id: I0124fec7df4585a70ded8d3e7bf2aa8cb4acecb4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7289
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: John Scipione <[email protected]>
Haiku-Format: Haiku-format Bot <[email protected]>
This commit is contained in:
John Scipione
2025-02-02 19:18:35 +00:00
parent 58339b6be4
commit 74ef92bc55
2 changed files with 330 additions and 211 deletions
+13 -9
View File
@@ -470,19 +470,23 @@ private:
LayoutData* fLayoutData;
int32 fLastClickOffset;
bool fInstalledNavigateCommandWordwiseShortcuts : 1;
bool fInstalledNavigateOptionWordwiseShortcuts : 1;
bool fInstalledNavigateOptionLinewiseShortcuts : 1;
bool fInstalledNavigateHomeEndDocwiseShortcuts : 1;
bool fInstalledSelectCommandWordwiseShortcuts : 1;
bool fInstalledSelectOptionWordwiseShortcuts : 1;
bool fInstalledSelectOptionLinewiseShortcuts : 1;
bool fInstalledSelectHomeEndDocwiseShortcuts : 1;
bool fInstalledRemoveCommandWordwiseShortcuts : 1;
bool fInstalledRemoveCommandLinewiseShortcuts : 1;
bool fInstalledRemoveOptionWordwiseShortcuts : 1;
bool fInstalledNavigateCommandHorizontalLinewiseShortcuts : 1;
bool fInstalledNavigateCommandVerticalLinewiseShortcuts : 1;
bool fInstalledNavigateControlHorizontalLinewiseShortcuts : 1;
bool fInstalledNavigateControlVerticalLinewiseShortcuts : 1;
bool fInstalledSelectCommandHorizontalLinewiseShortcuts : 1;
bool fInstalledSelectCommandVerticalLinewiseShortcuts : 1;
bool fInstalledSelectControlHorizontalLinewiseShortcuts : 1;
bool fInstalledSelectControlVerticalLinewiseShortcuts : 1;
bool fInstalledNavigateHomeEndDocwiseShortcuts : 1;
bool fInstalledSelectHomeEndDocwiseShortcuts : 1;
uint32 _reserved[6];
};