Tired of window clutter and manual adjustments? GNOME is brainstorming an automated and user-friendly window management system. Here’s everything you need to know.
Window management, a crucial aspect of desktop computing, has been a topic of fascination and exploration for decades. However, despite numerous attempts, no one has yet managed to crack the code for the perfect window management solution. The GNOME developers have now embarked on a mission to revolutionize window management, aiming to improve productivity and user experience.
GNOME developer Tobias Bernard published a detailed write-up on how the devs are thinking about innovating the GNOME desktop for the future.
The Challenges of Traditional Windowing Systems
The conventional windowing system has served us well, allowing apps to spawn rectangular windows that can be manually moved and resized. However, as the number and size of windows increase, problems start to arise. Overlapping windows can quickly become a mess, making it challenging to access specific applications without hiding others. Maximizing a window can obscure everything else on the desktop, causing clutter and inefficiency.
Over the years, various operating systems have introduced workarounds like workspaces, taskbars, and switchers to deal with these issues. Yet, the core problem of window management remains unsolved. Particularly for newcomers to computing, such as children and older adults, manually arranging windows can be cumbersome and tedious.
Introducing Tiling Window Managers
Tiling window managers have offered an alternative solution by preventing windows from overlapping. While they work well in certain scenarios, they have their limitations. Tiling windows can lead to inefficiencies, as apps are often designed for specific sizes and aspect ratios. Additionally, these managers lack knowledge about window content and context, leading to additional manual adjustments and defeating the purpose of a streamlined workflow. Not to mention remembering a lot of keyboard shortcuts.
GNOME’s Current Tiling Functionality
GNOME has already experimented with basic tiling functionality in the GNOME 3 series. However, the existing implementation has some limitations. It’s a manual process, supports only two windows, lacks extensibility for complex layouts, and does not group tiled windows together in the window stack.
A New Vision for Window Management
The team proposes a fresh approach to window management, focusing on an automated system that aligns with users’ expectations and needs. Their concept involves three potential layout states for windows: Mosaic, Edge Tiling, and Floating.
Mosaic will be the default behaviour, intelligently positioning and sizing windows based on user preferences and available screen space. As new windows are opened, existing ones will adjust to accommodate the newcomers. If a window doesn’t fit the current layout, it will be placed in its own workspace. When the screen is nearly full, windows will automatically tile.
Users can also manually tile windows by dragging them over existing tiles or empty spaces. This system provides flexibility and convenience, making it easier to multitask efficiently.
Maintaining User-Friendly Floating Windows
While tiling offers several benefits, the GNOME developers understand that there will always be cases where users prefer to position windows manually. Therefore, the classic floating behaviour will still be available for those specific situations, but it’s likely to be less common with the introduction of the new mosaic system.
Leveraging Window Metadata for Enhanced Performance
GNOME aims to optimize the tiling experience to gather more information from windows about their content. This includes details such as the maximum desired size of a window and the range of ideal sizes where an app functions best. By using this metadata, the system can tailor the window layout to suit users’ needs, improving overall usability.
While the GNOME developers are excited about this new window management direction, they acknowledge the risks associated with such a novel approach. They plan to conduct user research to validate their assumptions and refine the interactions. Although there is no concrete implementation timeline, the project will likely span multiple development cycles and be part of GNOME 46 or later.
As of publishing this, there are no draft merge requests for this where you can participate with your feedback.
Via Tobias’s blog
Recent articles from DebugPoint.com
- How to Upgrade to KDE Plasma 6 [Complete Guide]on February 29, 2024
- KDE Plasma 6: Greatest New Featureson February 28, 2024
- Tiny Core Linux 15: Faster, Smaller and Packed with Improvementson February 27, 2024
- 50 Best Ubuntu Apps for Everyone on 2024on February 25, 2024
- Best Remote Desktop Clients for Ubuntu and Other Linux on February 25, 2024