diff options
| author | Quentin Carbonneaux | 2018-02-28 15:05:41 -0500 |
|---|---|---|
| committer | Quentin Carbonneaux | 2018-02-28 15:05:41 -0500 |
| commit | ee62f95569841f016025198dabf379eaa816c1dc (patch) | |
| tree | 32857195dc3cceef4344f0a1fdb02497c14a2b63 | |
| parent | 323d49b68c5e804ed3b8cada0e2274f1589b3484 (diff) | |
fix long-standing UI bug
This has been annoying me on and off for YEARS! (Literally.)
In some (quite rare) settings, there was an annoying UI bug
where it would look like some updates were not propagated to
the UI when they had to.
After spending a couple of days investigating this, it turns
out that it is not a bug in the editor, but in xserver (maybe).
Experiments and frustration revealed that the bug seems to be
in some backing store-related logic. So, here, I remove our
request to get a backing store.
This backing store option was here to help performance, but X
implementations really should be smart enough to use one even
when clients don't ask for it. Even if X servers are dumb,
removing the option should not cause a noticeable performance
degradation.
| -rw-r--r-- | x11.c | 3 |
1 files changed, 1 insertions, 2 deletions
@@ -58,9 +58,8 @@ init() /* create the main window */ win = XCreateSimpleWindow(d, root, 0, 0, Width, Height, 0, 0, WhitePixel(d, screen)); - swa.backing_store = WhenMapped; swa.bit_gravity = NorthWestGravity; - XChangeWindowAttributes(d, win, CWBackingStore|CWBitGravity, &swa); + XChangeWindowAttributes(d, win, CWBitGravity, &swa); XStoreName(d, win, "ED"); XSelectInput(d, win, StructureNotifyMask|ButtonPressMask|ButtonReleaseMask|Button1MotionMask|KeyPressMask|ExposureMask|FocusChangeMask); |
