Is a unified approach for window management in the Wayland ecosystem needed? (i.e how can the end user or system designer control the size, position, and layer of top level application windows).
Wayland's design emphasizes security, simplicity, and a clear separation of responsibilities between the compositor and client applications. This has no doubt paved the way for a more secure and stable desktop environment. Yet, as users and developers navigate this shift, especially those handling applications with specific window management needs, they face challenges due to the absence of standardized control over window size and position within the current protocol. Acknowledging these challenges, I would like to initiate a conversation around the potential benefits and feasibility of introducing a standardized API or protocol, which could be designed as an intrinsic part of Wayland or as an independent, interoperable specification running alongside it. This is crucial for those transitioning from X11 to Wayland, where the ability to directly manage window properties is an essential feature. Certain applications and workflows, particularly those involving complex window arrangements, dynamic window resizing, and precise positioning (e.g., tiling window managers, graphical editing tools, and presentation software), can greatly benefit from having a measure of control over their window geometry and stacking. Currently, attempts at providing this are being done by a variety of compositor-specific protocols and extensions, which can lead to fragmentation and inconsistent user and developer experiences across different environments. A standard API or protocol would only serve the needs of these applications and would also aim to prevent the proliferation of inconsistent and ad hoc solutions. Some goals of a standardized approach: - Maintain the security and stability principles of Wayland. - Allow applications with legitimate needs to manage their window geometry in a way that is consistent across different compositors. - Provide a clear and unified direction for developers, which could encourage wider adoption and smoother transitions from other systems to Wayland.