>> That's not a problem. That's an advantage, which says that the protocol has such a good design that being old still works and supports all the modern features.
> No, it doesn't.
> For example, there's a long-standing problem with language switching by alt-shift keypress (not possible due to X quirks with modifier keys processing).
First, I'm not sure what's the problem you're talking about, can you explain in details?
Next, what a strange choice for the keyboard layout hotkey, there're plenty of keys on a keyboard (CapsLock, Menu...) that are less used and easier to hit.
And finally this has nothing to do with the protocol, in worst case it would be a bug in xkb (or whatever you use for layout switching), not X11 protocol.
> Then there's the whole full-screen rendering fiasco. There's no good way for an app to switch to a full screen and make sure the previous resolution is restored when the app exits.
First, it's a bad idea anyway, because if I changed resolution with `xrandr` I don't want it to change back when `xrandr` exits. Next, Xorg is able to "restore" whatever resolution you configure using Ctrl+Alt+GrayPlus and Ctrl+Alt+GrayMinus since forever. Also Xorg allows you to bind `xrandr` call with your favourite resolution to any hotkey. And finally, it STILL has nothing to do with X11 protocol.
> Then there's a problem with OpenGL-based compositors - they don't always synchronize rendering correctly.
That's not a bug, but optional feature. You can turn vsync off and see how many FPS you get. Good for benchmarks and regression testing. And this is still about compositing WMs, but it's not a bug of Xorg or X11 protocol.