Skip to content

Some modifier keys do not follow platform conventions on macOS #8884

Open
@hyuri

Description

@hyuri

Bug Description

Currently, the Command and Option modifier keys do not behave as expected when navigating and manipulating text on macOS — at least within both the Slint Widget Gallery web demo and the new Material Component Set web demo (I haven't tested running native directly on macOS yet).

The examples I encountered (there might be more):

  • Option + Left has no effect;
  • Option + Right has no effect;
  • Option + Up has no effect;
  • Option + Down has no effect;
  • Option + Delete has no effect;
  • Fn + Option + Delete has no effect;
  • Command + Left moves the caret to the beginning of the previous word;
  • Command + Right moves the caret to the end of the following word;
  • Command + Up moves the caret to the beginning of the paragraph;
  • Command + Down moves the caret to the end of the paragraph;
  • Command + Delete deletes the previous word;
  • Fn + Command + Delete deletes the following word.

Solution

Follow macOS conventions when running on macOS:

  • Option + Left should move the caret to the beginning of the previous word;
  • Option + Right should move the caret to the end of the following word;
  • Option + Up should move the caret to the beginning of paragraph;
  • Option + Down should move the caret to the end of the paragraph;
  • Option + Delete should delete the previous word;
  • Fn + Option + Delete should delete the following word;
  • Command + Left should move the caret to the beginning of the line;
  • Command + Right should move the caret to the end of the line;
  • Command + Up should move the caret to the beginning of the whole text (position zero, so to speak);
  • Command + Down should move the caret to the end of the whole text;
  • Command + Delete should delete the entire line;
  • Fn + Command + Delete should do nothing (plays the system alert sound, to tell the user no action can be performed).

Reproducible Code (if applicable)

Environment Details

  • Slint Version: ??
  • Platform/OS: [Web Demos on Brave] on macOS
  • Programming Language: ??
  • Backend/Renderer: ??

Product Impact

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions