minimal mode
- Dominant language
- Python
- Stars
- 869
- Forks
- 106
- PR merge metrics
- No merged PRs in 30d
Description
## Requested feature
A minimal, no distraction mode for the UI, where only the canvas is shown, no bar or anything. This could be useful if you want to bind _drawing_ to a hotkey, and bring just a canvas to quickly sketch something.
### Possible drawbacks
None, not even time consuming, since this is already implemented, just not realized.
### Possible alternatives
I say this feature is already implemented because fullscreen mode does exactly that, but it also, unfortunately, makes the window fullscreen.
### Implementation
Bind a button to the minimal mode, which hides the top, bottom and left bar.
The most important thing to this feature is a COMMAND LINE OPTION, something like "-m, --minimal", to allow opening _drawing_ with everything already hidden. It would make sense to suppress the "unsaved modification" prompt if opened with this option, although you can always sigkill the program if you opened it this way. It would be nice if the scrollbars only showed up for a few seconds when you drag the canvas on this mode too, but not necessary, since I only plan to use this with a matching window/canvas size.
Some images to illustrate how it should look like.
Normal mode:

Minimal mode:

## Use case
My use case would be: quickly bring a floating window with _drawing_ to practice japanese writing, or to do some quick math. The top, left and bottom bar are useless and distracting on this case, even if I need any of the tools, I would prefer to bind them to a hotkey.
Contributor guide
Research direction
Start by locating the existing fullscreen behavior and the command-line option parsing entry point. Trace how the top, bottom, and left bars are shown or hidden, then determine how startup in minimal mode should interact with unsaved changes. Done means a button and a command-line option can open the canvas with those bars hidden without changing the window to fullscreen.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, desktop
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100