-
Notifications
You must be signed in to change notification settings - Fork 41
Various backports for Xserver/mi/miexpose (esp. miPaintWindow rewrite) #424
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: 3.6.x
Are you sure you want to change the base?
Conversation
f07cc05 to
206b677
Compare
And... Remove override for miPaintWindow from hw/nxagent/NXmiexpose.c,
use the version that we ship in Xserver/mi/miexpose.c.
commit 06d27f8045966c1fb154eafaff308a01b93f265b
Author: Keith Packard <keithp@koto.keithp.com>
Date: Wed Sep 12 23:57:30 2007 +0100
Try again to fix drawable and tile offsets in miPaintWindow
Many coordinate spaces are hard. Let's go drinking.
commit dd3992eb86377684a5dbe86fa19c756a9e53cda2
Author: Keith Packard <keithp@koto.keithp.com>
Date: Wed Sep 12 22:39:31 2007 +0100
miPaintWindow draw to window for background.
Instead of drawing to window pixmap for everything, draw to window for
background as that works for Xnest and Xdmx; draw to pixmap for borders
which neither of those X servers use.
commit 257c8ed17f4f908e0d0d5e53aaf13aa3b1313f50
Author: Keith Packard <keithp@koto.keithp.com>
Date: Wed Sep 12 12:11:49 2007 +0100
Rewrite miPaintWindow to draw to window pixmap.
miPaintWindow was drawing to the root window, or (sometimes) drawing to the
window after smashing the window clip list. This is losing, and easily fixed
by just drawing to the window pixmap.
Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
commit 1e56b2dfc6377234ffdcdf206528d476b04d13af
Author: Adam Jackson <ajax@redhat.com>
Date: Fri Sep 12 12:51:13 2014 -0400
mi: Move pScreen->SendGraphicsExpose up to dix
No DDX is overriding this and it's fairly absurd to expose it as a
screen operation anyway.
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
…tRelative windows.
commit 244a635fcdc9e0a7212d51b26d74f49d8e1b071f
Author: Fredrik Höglund <fredrik@kde.org>
Date: Mon Aug 18 19:27:34 2008 +0200
Fix the tile offset in miPaintWindow for ParentRelative windows.
Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
…ntRelative
commit b4061cf5f76241157b2dc81dec053012075311c0
Author: Peter Harris <pharris@opentext.com>
Date: Tue May 12 14:19:15 2015 -0400
Fix border tile origin when background is ParentRelative
According to
http://www.x.org/releases/X11R7.7/doc/xproto/x11protocol.html#requests:CreateWindow
"The border tile origin is always the same as the background tile
origin."
ChangeWindowAttributes goes to some effort to make sure it repaints
the border tile whenever the background origin may have changed, but
ChangeWindowAttributes goes to some effort to make sure it repaints
the border tile whenever the background origin may have changed, but
miPaintWindow was ignoring the background origin.
Found by xts XChangeWindowAttributes-3
Signed-off-by: Peter Harris <pharris@opentext.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
…f32449724eeb9b95d93. Move some fb code to mi code. Allows for easier changes afterwards, because the diffs reference the new actual files.
d6d54b9 to
2d23e8a
Compare
| RegionValidate(&totalReg, &overlap); | ||
| (*pScreen->SendGraphicsExpose)( | ||
| client, &totalReg, stuff->dstDrawable, X_CopyArea, 0); | ||
| SendGraphicsExpose(client, &totalReg, stuff->dstDrawable, X_CopyArea, 0); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any reason why you haven't formatted this as upstream did here and below?
| extern Bool ClientIsAsleep( | ||
| ClientPtr /*client*/); | ||
|
|
||
| extern void SendGraphicsExpose(ClientPtr /*client */ , |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could also directly use the current style here as well.
|
|
||
| tile_x_off = 0; | ||
| tile_y_off = 0; | ||
| tile_x_off = pWin->drawable.x - draw_x_off; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This backport might be meant well, but won't actually fix anything. With the current code, the behavior will at best be unchanged (since the new expressions should evaluate to zero anyway) and in the worst case break completely due to underflows.
For this to actually work correctly, we'll need a partial or full backport of e4d11e58ce349dfe6af2f73ff341317f9b39684c first - but that one is HUGE!
|
see also #440 |
No description provided.