Commit Graph

10260 Commits

Author SHA1 Message Date
Peter Hutterer
df6559237a dix: add MASTER_ATTACHED as allowed type for GetMaster().
In some cases, we don't know/care whether we want the master pointer or keyboard
for a device. Add a new type MASTER_ATTACHED to return the master this
device is attached to.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Peter Hutterer
dc57f89959 Switch to use IsFloating()
This is not a straightforward search/replacement due to a long-standing
issue.

dev->u.master is the same field as dev->u.lastSlave. Thus, if dev is a master
device, a check for dev->u.master may give us false positives and false
negatives.
The switch to IsFloating() spells out these cases and modifies the
conditions accordingly to cover both cases.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Peter Hutterer
e48bf3b640 xfree86: replace two inputInfo.pointer uses with device loops.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Peter Hutterer
703baece7e dix: Add IsFloating(device) wrapper.
Simplifies check for floating devices.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Peter Hutterer
77af45ebc3 dix: Simplify retrieving the master device.
GetMaster() returns NULL for floating slaves.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Peter Hutterer
dc32a23890 Fix two incorrect checks for master devices.
These two were sideeffects of lastSlave being in the same field as the
master. For devices generated by the master device directly, lastSlave was 0
and the device would (with the old checks) be interpreted as floating.

Add the required checks to safeguard against master devices.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Peter Hutterer
d63c979c7f dix: replace direct master access with GetMaster and temp. device.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Peter Hutterer
c2a9e0a969 mi: simplify a "check for keyboard" condition
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Peter Hutterer
3a6160b408 mi: remove if 0 code.
Note sure why this is in if 0 but it's been that way since 2007.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Peter Hutterer
d9987c8c45 mi: Add a few comments explaining various cursor move functions.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Peter Hutterer
15fe86e69f mi: remove static GenerateEvent variable.
Push into the respective devices. This should have no functional changes
since we never warp more than one device at a time. In the glorious future
with true multithreading, still the better thing to do.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:43 +10:00
Peter Hutterer
93a7399370 test: write some event → XI1 conversion tests.
Don't test everything, but hey, life is short and I'm trying to have one.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
2011-02-22 08:08:55 +10:00
Peter Hutterer
4cdf101377 dix: a valuator number of 0 is valid (#34510)
For all but motion and proximity events, having no valuators is ok.
Regression from 1.9, keyboard events are not converted to protocol events.

X.Org Bug 34510 <http://bugs.freedesktop.org/show_bug.cgi?id=34510>

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Tested-by: Timo Aaltonen <timo.aaltonen@canonical.com>
2011-02-22 08:08:55 +10:00
Maarten Maathuis
b4ef34d466 Revert "exa/mixed: Exclude frontbuffer from deferred pixmap handling."
This reverts commit 541b25038a.

- It turns out that the high latency was a driver problem.
- catting a large amount of text turns out to look prettier when the
  throughput is lower, but it's not worth the loss for a minor
  improvement that may not even exist on someone else's computer.

Reviewed-by: Michel Dänzer <michel@daenzer.net>
Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-02-20 08:44:38 -08:00
Keith Packard
443d75446b Version bumped to 1.9.99.902 (1.10 RC2)
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-02-18 14:46:33 -08:00
Keith Packard
2c77aeb39f Merge remote branch 'jcristau/for-keith' 2011-02-18 14:29:32 -08:00
Keith Packard
816d67de2b Merge remote branch 'whot/for-keith' 2011-02-18 12:20:26 -08:00
Justin Dou
a73c28f0bd Replace malloc with calloc to initialize the buffers[] as NULL in do_get_buffers function
The calling for allocate_or_reuse_buffer may fail due to some reason, e.g. out of memory.
If the buffers[] were not initialized to be NULL, the following err_out may try to access an illegal memory, which will cause X crash afterward.

Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Justin Dou <Justin.Dou@intel.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-02-18 12:16:15 -08:00
Keith Packard
0bc9b15a62 Merge remote branch 'ajax/for-keithp' 2011-02-18 12:04:41 -08:00
Keith Packard
d1123b66eb Merge remote branch 'jturney/master' 2011-02-18 11:59:25 -08:00
Peter Hutterer
3bbb70a1a7 xfree86: fix up an out-of-date comment.
InitInput simply initialises all input devices now.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
2011-02-16 08:17:25 +10:00
Julien Cristau
402b329c3a glx: Work around wrong request lengths sent by mesa
mesa used to send too long requests for GLXDestroyPixmap,
GLXDestroyWindow, GLXChangeDrawableAttributes, GLXGetDrawableAttributes
and GLXGetFBConfigsSGIX.

Fixes a regression introduced in ec9c97c6bf
X.Org bug#33324 <https://bugs.freedesktop.org/show_bug.cgi?id=33324>

Reported-by: xunx.fang@intel.com
Signed-off-by: Julien Cristau <jcristau@debian.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
2011-02-15 12:19:59 +01:00
Julien Cristau
1137c11be0 glx: fix BindTexImageEXT length check
The request is followed by a list of attributes.

X.Org bug#33449

Reported-and-tested-by: meng <mengmeng.meng@intel.com>
Signed-off-by: Julien Cristau <jcristau@debian.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
2011-02-15 12:19:59 +01:00
Julien Cristau
a883cf1545 glx: fix request length check for CreateGLXPbufferSGIX
The request is followed by an attribute list.

Signed-off-by: Julien Cristau <jcristau@debian.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
2011-02-15 12:19:59 +01:00
Peter Hutterer
c9f7b303a3 xfixes: calloc, not malloc the cursorScreenRec
Debugging NULL pointers is significantly easier than random memory.
Plus, if new fields (such as pointer barriers) are added they may just be
properly initialised.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
2011-02-14 09:13:19 +10:00
Peter Hutterer
d3499556d8 xkb: if the keymap failed to compile, load the default keymap instead.
We really need symbols, compat, keynames, vmods and types for a sensible keymap.

Try this in your xorg.conf.d snippets for all keyboards:
        Option "XkbLayout" "us"
        Option "XkbVariant" "nodeadkeys"

us(nodeadkeys) doesn't exist so xkbcomp provides everything but the symbols
map. We say we want everything but don't _need_ anything, the server happily
gives us a keymap with every key mapped to NoSymbol. This in turn isn't what
we want after all.

So instead, require symbols, compat, keynames, vmods and types from the
keymap and if that fails, load the default keymap instead. If that fails
too, all bets are off.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
2011-02-14 09:12:59 +10:00
Peter Hutterer
47d1d2fed6 xkb: split out keymap compilation.
Refactoring for simpler double-use in the next patch. No functional changes.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
2011-02-14 09:12:59 +10:00
Carlos Garnacho
787ba25a8a Xi: make XIQueryPointer return the current modifiers/group as documented.
The previous XKB info was being returned instead of the current
one, producing inconsistent results between the latest events
and the modifiers/group returned by this call.

Signed-off-by: Carlos Garnacho <carlosg@gnome.org>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>`
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-02-14 09:12:59 +10:00
Ander Conselvan de Oliveira
85f9017393 ProcXkbGetXkbByName: fix use of uninitialised bytes valgrind error.
==9999== Syscall param writev(vector[...]) points to uninitialised byte(s)
==9999==    at 0x4AB5154: writev (writev.c:51)
==9999==    by 0x7C7C3: _XSERVTransWritev (Xtrans.c:912)
==9999==    by 0x61C8B: FlushClient (io.c:924)
==9999==    by 0x62423: WriteToClient (io.c:846)
==9999==    by 0xCE39B: XkbSendMap (xkb.c:1408)
==9999==    by 0xD247B: ProcXkbGetKbdByName (xkb.c:5814)
==9999==    by 0x4AB53: Dispatch (dispatch.c:432)
==9999==    by 0x205BF: main (main.c:291)
==9999==  Address 0x557eb68 is 40 bytes inside a block of size 4,096 alloc'd
==9999==    at 0x48334A4: calloc (vg_replace_malloc.c:467)
==9999==    by 0x62567: WriteToClient (io.c:1065)
==9999==    by 0x452EB: ProcEstablishConnection (dispatch.c:3685)
==9999==    by 0x4AB53: Dispatch (dispatch.c:432)
==9999==    by 0x205BF: main (main.c:291)
==9999==  Uninitialised value was created by a stack allocation
==9999==    at 0xD1910: ProcXkbGetKbdByName (xkb.c:5559)

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Oliver McFadden <oliver.mcfadden@nokia.com>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan-de-oliveira@nokia.com>
2011-02-14 09:12:59 +10:00
Ander Conselvan de Oliveira
8a34d7a853 XkbSendNames: fix use of uninitialised bytes valgrind error.
==537== Syscall param writev(vector[...]) points to uninitialised byte(s)
==537==    at 0x4AB7154: writev (writev.c:51)
==537==    by 0x8935B: _XSERVTransWritev (Xtrans.c:912)
==537==    by 0x6C55F: FlushClient (io.c:924)
==537==    by 0x6CCF3: WriteToClient (io.c:846)
==537==    by 0xD51D3: XkbSendNames (xkb.c:3765)
==537==    by 0xD8183: ProcXkbGetKbdByName (xkb.c:5825)
==537==    by 0x27B7B: Dispatch (dispatch.c:432)
==537==    by 0x205B7: main (main.c:291)
==537==  Address 0x55899f2 is 154 bytes inside a block of size 1,896 alloc'd
==537==    at 0x4834C48: malloc (vg_replace_malloc.c:236)
==537==    by 0xD47AF: XkbSendNames (xkb.c:3642)
==537==    by 0xD8183: ProcXkbGetKbdByName (xkb.c:5825)
==537==    by 0x27B7B: Dispatch (dispatch.c:432)
==537==    by 0x205B7: main (main.c:291)
==537==  Uninitialised value was created by a heap allocation
==537==    at 0x4834C48: malloc (vg_replace_malloc.c:236)
==537==    by 0xD47AF: XkbSendNames (xkb.c:3642)
==537==    by 0xD8183: ProcXkbGetKbdByName (xkb.c:5825)
==537==    by 0x27B7B: Dispatch (dispatch.c:432)
==537==    by 0x205B7: main (main.c:291)

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Oliver McFadden <oliver.mcfadden@nokia.com>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan-de-oliveira@nokia.com>
2011-02-14 09:12:59 +10:00
Ander Conselvan de Oliveira
87fbef9157 ProcRRCreateMode: fix use of uninitialised bytes valgrind error.
==543== Syscall param writev(vector[...]) points to uninitialised byte(s)
==543==    at 0x4AB7154: writev (writev.c:51)
==543==    by 0x8935B: _XSERVTransWritev (Xtrans.c:912)
==543==    by 0x6C55F: FlushClient (io.c:924)
==543==    by 0x6D013: FlushAllOutput (io.c:668)
==543==    by 0x27A83: Dispatch (dispatch.c:453)
==543==    by 0x205B7: main (main.c:291)
==543==  Address 0x556dc8c is 12 bytes inside a block of size 4,096 alloc'd
==543==    at 0x48334A4: calloc (vg_replace_malloc.c:467)
==543==    by 0x6CE37: WriteToClient (io.c:1065)
==543==    by 0x223A7: ProcEstablishConnection (dispatch.c:3685)
==543==    by 0x27B7B: Dispatch (dispatch.c:432)
==543==    by 0x205B7: main (main.c:291)
==543==  Uninitialised value was created by a stack allocation
==543==    at 0xA3350: ProcRRCreateMode (rrmode.c:289)

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Oliver McFadden <oliver.mcfadden@nokia.com>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan-de-oliveira@nokia.com>
2011-02-14 09:12:59 +10:00
Ander Conselvan de Oliveira
0ef5973860 ProcRRQueryVersion: fix use of uninitialised bytes valgrind error.
==9999== Syscall param writev(vector[...]) points to uninitialised byte(s)
==9999==    at 0x4AB5154: writev (writev.c:51)
==9999==    by 0x7C7C3: _XSERVTransWritev (Xtrans.c:912)
==9999==    by 0x61C8B: FlushClient (io.c:924)
==9999==    by 0x62743: FlushAllOutput (io.c:668)
==9999==    by 0x4AA5B: Dispatch (dispatch.c:453)
==9999==    by 0x205BF: main (main.c:291)
==9999==  Address 0x55711b9 is 1 bytes inside a block of size 4,096 alloc'd
==9999==    at 0x48334A4: calloc (vg_replace_malloc.c:467)
==9999==    by 0x62567: WriteToClient (io.c:1065)
==9999==    by 0x452EB: ProcEstablishConnection (dispatch.c:3685)
==9999==    by 0x4AB53: Dispatch (dispatch.c:432)
==9999==    by 0x205BF: main (main.c:291)
==9999==  Uninitialised value was created by a stack allocation
==9999==    at 0x160E78: ProcRRQueryVersion (rrdispatch.c:37)

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Oliver McFadden <oliver.mcfadden@nokia.com>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan-de-oliveira@nokia.com>
2011-02-14 09:12:59 +10:00
Peter Hutterer
81daba8ce9 Xi: constify XIChangeDeviceProperty()
We don't modify "value", make it official.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan-de-oliveira@nokia.com>
2011-02-14 09:12:58 +10:00
Adam Jackson
93cd4b1034 shadow: Remove hw/xfree86/ from includes
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:41:32 -05:00
Adam Jackson
0c230728f3 rootless: Remove hw/xfree86/ from includes
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:41:25 -05:00
Adam Jackson
505defd270 damage: Remove hw/xfree86/ from includes
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:41:20 -05:00
Adam Jackson
59d8e3cbdb fb: Remove hw/xfree86/ from includes
Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:41:13 -05:00
Adam Jackson
994b7b3dc9 xfree86: warning fix
Did you know that anonymous enums with function scope will not only
override the enum values from global scope, but will be treated as
entirely different types?  C's type system just rules.

xf86Crtc.c: In function 'handle_detailed_monrec':
xf86Crtc.c:1555:33: warning: comparison between 'enum det_monrec_source' and 'enum <anonymous>'
xf86Crtc.c:1562:33: warning: comparison between 'enum det_monrec_source' and 'enum <anonymous>'

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:41:04 -05:00
Adam Jackson
ae16c5796f fbdevhw: Remove the non-sysfs hack for mapping from PCI to fbdev
It's broken for devices with BARs above 4G, and the sysfs method should
work everywhere anyway.  As a pleasant side effect, this fixes some
warnings:

fbdevhw.c: In function 'fbdev_open_pci':
fbdevhw.c:333:4: warning: cast from pointer to integer of different size
fbdevhw.c:334:4: warning: cast from pointer to integer of different size
fbdevhw.c:336:4: warning: cast from pointer to integer of different size
fbdevhw.c:337:4: warning: cast from pointer to integer of different size

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:40:55 -05:00
Adam Jackson
f1b7c9cead int10: warning fix
helper_exec.c: In function 'pciCfg1in':
helper_exec.c:507:4: warning: passing argument 2 of 'pci_device_cfg_read_u32' from incompatible pointer type
/usr/include/pciaccess.h:153:5: note: expected 'uint32_t *' but argument is of type 'CARD32 *'

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:40:49 -05:00
Adam Jackson
be186586e5 xf86vidmode: warning fix
xf86VidMode.c: In function 'VidModeGetMonitorValue':
xf86VidMode.c:637:19: warning: 'ret.i' may be used uninitialized in this function

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:40:14 -05:00
Jon TURNEY
f6e4ace9ea Cygwin/X: Fix for Canadian Multilingual Standard keyboard layout handling
Add a keycode mapping for VK_OEM_8 as RCtrl, which is issued by Canadian
Multilingual Standard layout

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2011-02-05 20:54:49 +00:00
Jon TURNEY
b421f5e512 Cygwin/X: Ignore MappingNotify events sent to clipboard integration client
Ignore MappingNotify events sent to clipboard integration client,
xmodmap changes aren't of interest to it, but there is no mechanism
to express that disinterest.

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2011-02-05 20:54:20 +00:00
Jon TURNEY
e930aa7bbc Cygwin/X: Add Turkish keyboard layouts to keyboard layout mapping table
0x0000041f "Turkish Q" => layout tr
0x0001041f "Turkish F" => layout tr variant f

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2011-02-05 20:53:52 +00:00
Jon TURNEY
ae99a6f895 Cygwin/X: Make the keyboard layout detection logging a bit clearer
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2011-02-05 20:53:24 +00:00
Jon TURNEY
57ca09441e Cygwin/X: Update mapping for Canadian keyboard layouts
0x00000c0c "Canadian French (legacy)" => layout ca variant fr-legacy
0x00001009 "Canadian French" => layout ca variant fr
0x00011009 "Canadian Multilingual Standard" => layout ca variant multix

Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2011-02-05 20:52:55 +00:00
Jon TURNEY
be3e5bb501 Cygwin/X: Better keycode debugging output
Replace useless #if 0/ErrorF/#endif with winDebug

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2011-02-05 20:52:19 +00:00
Jon TURNEY
81892bf6b7 Cygwin/X: Generate X keycodes for multimedia keys
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
2011-02-05 20:50:58 +00:00
Pauli Nieminen
5d020c3135 xf86/xv: Only register PostValidateTree hook when there is work to do
If none of Xv ports were affected by window tree modifications we don't
want scan the port list. To avoid useless scanning of port list
PostValidateTree hook is only registered when ClipNotify was called for
any port.

Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:38:42 +02:00
Pauli Nieminen
ddf32df5cc xf86/xv: Use PostValidateTree to do reput
ValidateTree calls first ClipNotify and later might call
WindowExposures. To avoid useless double reput ClipNotify delays reput
to WindowExposures or PostValidateTree.

PostValidatTree checks all ports if there is clip changes. On clip
changes reput is done to move or scale the overlay.

Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:38:36 +02:00