1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Why Wayland & Weston Were Forked

Scott Moreau

Published on 29 March 2013
Written by Scott Moreau
Page 3 of 4 - 131 Comments

The other case is Live Minimized Window Previews. This is a pretty big deal to users and that means it's a pretty big deal to me. I want to make absolutely sure that there are no problems using this feature in a wayland compositor. This is one of the key features that others may not realize I am very passionate about.

The confusion in this particular instance was that:

1) I was trying to express my point that we need to consider this specific feature when discussing the minimize protocol.
2) Pekka had the answer all along but the solution he gave must be implemented. There is an apparent technical problem with implementing eglSwapInterval() as well. Kristian and at least one other mesa developer have expressed that the current patch expected to work, deadlocks.
3) I was trying to spend time addressing each individuals' concerns but I think some lost site of the fact that the solution is already known but must be implemented in the mesa EGL implementation.

Ultimately, I am trying to solve the problems that I noticed the compiz developers had when trying to implement certain features that would have made compiz even that much better. The timing is critical here, since we have the chance now in this new built-from-scratch implementation. In a way, I learned about X protocol limitations indirectly, by watching other developers struggle to solve certain problems in compiz using (or rather, fighting with) the X protocol.

A side note here is that compiz is a compositing window manager for X. It uses a special GLX extension to use X pixmaps as GL textures which opens the door for features found throughout compiz. The shell plugin is analogous to a window manager, but the shell plugin API interfaces alone do not permit the rendering control that makes certain compiz graphical features possible.

The Live Minimized Window Preview problem is one of many that I might not have otherwise noticed if it weren't for Sam Spilsbury, furiously hacking to solve such problems. He went so far as to try and hack the X server itself to support some features in compiz, that were inherently impossible with the current X protocol. Your works have not gone unnoticed Sam, thanks for driving compiz all the way.

The important thing here is that minimize is not alongside maximize where it ought to be in the core wayland protocol. Not only do I want to see it in place but there is additional maximize protocol to allow the compositor to suggest (un)maximize and create a more unified interface for both of these basic window management features while at the same time, preserving the possibility for future graphical effect possibilities.

In addition, the current maximize shell plugin implementation is defined as type, not state. Maximized is not a type of surface, it is a state that a surface can be in. When you do actually add minimize into the mix, you will quickly see that maximize and minimize state must be handled separately. If you have maximize and minimize both as type, this means it can be minimized or maximized, but never both at the same time. This problem stems from the fact that maximize is defined as type and not state, in the shell plugin. This is not a show-stopper, because it can be fixed in a shell plugin. The point here is, that I noticed this problem through my minimize work and would like to see it fixed upstream weston before minimize is implemented and it becomes an issue.

Latest Linux Hardware Reviews
  1. Intel Xeon E5-1680 v3 & E5-2687W v3 Compared To The Core i7 5960X On Linux
  2. Intel 120GB 530 Series SSD Linux Performance
  3. Btrfs/EXT4/XFS/F2FS RAID 0/1/5/6/10 Linux Benchmarks On Four SSDs
  4. AMD's Windows Catalyst Driver Remains Largely Faster Than Linux Drivers
Latest Linux Articles
  1. NVIDIA vs. Nouveau Drivers With Linux 3.18 + Mesa 10.4-devel
  2. Is The Open-Source NVIDIA Driver Fast Enough For Steam On Linux Gaming?
  3. Linux 3.18 File-System Performance Minimally Changed But Possible Regressions
  4. AMD Radeon Gallium3D Is Catching Up & Sometimes Beating Catalyst On Linux
Latest Linux News
  1. Linux 3.18-rc6 Released, A Worrisome Regression Remains
  2. HandBrake 0.10 Brings H.265 & VP8 Encoders
  3. Gngr: A New Web Browser Focused On Privacy
  4. Linux 3.18 Kernel: Not Much Change With Intel Haswell Performance
  5. More File-System Tests Of The Linux 3.18 Kernel
  6. Using NVIDIA's NVENC On Linux With FFmpeg
  7. There's Talk Again About An "Open To The Core" Ubuntu Laptop
  8. PowerVR SGX Driver Code Gets Leaked
  9. V2 Of KDBUS Published For Linux Kernel Review
  10. VirtualBox 4.3.20 Arrives, Still No Sign Of VirtualBox 4.4
Latest Forum Discussions
  1. PulseAudio 6.0 Is Coming & Other Linux Audio Plans For The Future
  2. Debian Developer Resigns From The Systemd Maintainership Team
  3. Roadmap to Catalyst 14.10 ?
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. Cant get working Kaveri APU - A10-7850k
  6. Script for Fan Speed Control
  7. Debian Init System Coupling Vote Results
  8. The Slides Announcing The New "AMDGPU" Kernel Driver