beeware / beeware/toga

Add the ability to be able to hook up a custom action to Undo and Redo commands

Open
#4,015 5 comments 0 reactions 0 assignees View on GitHub
enhancement not quite right
Dominant language
Python
Stars
5.4k
Forks
827
Avg merge
15h 39m
Merged PRs (30d)
40

Description

### What is the problem or limitation you are having?

On platforms like macOS and Qt there is an Undo / Redo action. Recently, I've been making a game in which there will be a concept of Undoing that I want to hook up Cmd+Z to, but I cannot because the Undo / Redo actions are registered already.

### Describe the solution you'd like

A way to call other custom handlers on Cmd+Z and Cmd+Shift+Z (and the like on other platforms). If appropriate, the menubar actions should do the same. Expose Undo / Redo actions for individual textfields os the override can call the default implementation of stuff depending on the focussed widget.

I'm wondering if Cmd+Z etc. may be managed by the system on some platforms, though, making this impossible.

### Describe alternatives you've considered

Not have the override option.

### Additional context

_No response_

Contributor guide

Open the contributing guide

Research direction

No files or tests are named. Start by locating how Undo and Redo actions are currently registered for macOS, Qt, and text fields, then check how platform command handling affects overrides. Done means custom handlers can receive the platform Undo/Redo shortcuts and, where appropriate, menubar actions while retaining default textfield behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, python
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.