FreeCAD / FreeCAD/FreeCAD

[Problem] the built-in windowing system is unintuitive, has limited functionality

Open
#11,278 1 comment 1 reaction 0 assignees View on GitHub
Mod: Core Requires: UI/UX review Topic: User Interface Type: Feature
Dominant language
C++
Stars
33.6k
Forks
6k
Avg merge
3d 17h
Merged PRs (30d)
196

Description

### Is there an existing issue for this?

- [X] I have searched the existing issues

### Problem description

Currently you can open multiple tabs at the same time by making use of the built-in windowing system. Controls for it are located in the "windows" menu. Issues:
- to activate the windowing system you need to select "tile" or "cascade" in the submenu. This is quite "hidden" and hard for a new user to discover intuitively. Then there's no option in the menu to revert back to normal operation, instead you have to maximize one of the windows.
- Three different (pointless) ways to switch windows: Who uses these when you can simply click the right tab / window?
- _Windows > next / previous_
- _Windows > select one of the open tabs_
- _Windows > Windows... > choose windows > activate_
- windows are restricted to the main viewport area, which is pretty limited in space
- windows cant be easily tiled by slamming them against edges

Then there's a similar but unrelated feature: _Right click > Document window > docked / undocked / fullscreen_.

Proposed solution: imitate how modern web browsers work: be able to drag tabs to open new **os-provided** windows. This would be easier for a new user to discover, even "by accident", since it's similar to how other apps work. And you would be able to take advantage of your desktop windows functionality, how it's meant to be used.

### Full version info

```shell
latest
```

### Subproject(s) affected?

None

### Anything else?

_No response_

### Code of Conduct

- [X] I agree to follow this project's Code of Conduct

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.