Skip to content

Draft: Remove layered Windows from GTK3

Isopod requested to merge Isopod/gtk:win32-nolayered into gtk-3-24

This is purely experimental. For now I just forward-ported !3331 to the latest gtk-3-24 branch. All the actual work has been done by @lrn. This branch is now a fusion of one of my own, earlier experiments and the repaint improvements from !3331.

What it does:

  • Remove layered windows from the GDK Win32 backend, use regular windows instead
  • Remove low-level keyboard hook
  • Use native aero snap
  • Optimize repainting (it's a lot less laggy than before)

Known bugs:

  • For now, all CSD stuff has been removed, so CSD windows have an additional titlebar.
  • For now, I removed constraints and increments from the window resizing code.
  • Sometimes there are warnings about widgets size allocation. (But they are getting rarer)
  • (animated) widgets are randomly not invalidated This seems to be fixed now. I think?

image

Other than that it seems to work.

Edited by Isopod

Merge request reports