Commit Graph

8236 Commits

Author SHA1 Message Date
Maarten Maathuis 3943df7f76 exa: one can never be too careful 2009-08-07 20:38:14 +02:00
Maarten Maathuis 1548e8ae5d exa: fix a potential loophole in "mixed"
- Always free sys_ptr before setting the pixmap to pinned.
2009-08-07 20:38:14 +02:00
Dave Airlie e94c7c42ce parser: make libxf86config_internal.la not installed. 2009-08-07 13:36:52 +10:00
Dave Airlie 5fb188b547 ddx: fix xf86Config.a generation
We were generating a shared library, but this lib is foobar, the parser
requires some symbols from the X server or from the program its being linked
into. If the program its being linked into (say a python .so) has symbol
visibility enabled then it will fail to dynamic link, also if this .so has
symbol visiblity enabled it will fail to dynamic link.

Screw it go back to a .a file really unless someone cleans it up properly.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-08-07 12:05:51 +10:00
Maarten Maathuis 3047bd0674 exa: delay malloc for "mixed" 2009-08-06 23:48:14 +02:00
Maarten Maathuis e8ac2ed5dc exa: implement exaMoveInPixmap for "mixed"
- This can be used to force creation of driver pixmap.
- Not for 1 or 4 bpp.
- Driver can still fail (driver) pixmap creation.
2009-08-06 23:48:14 +02:00
Maarten Maathuis 9d2a7128d3 exa: Use damage to optimise away useless copies. 2009-08-06 23:48:14 +02:00
Maarten Maathuis 03ecb164f2 exa: A simple 3rd backend implementation.
- Based on driver pixmaps with some changes (completely transparent to driver).
- It helps with the problem of known software fallbacks, such as trapezoids.
- exaDoMigration is now called for all cases that provide a do_migration hook.
- exa_migration.c is renamed to exa_migration_classic.c
2009-08-06 23:48:14 +02:00
Maarten Maathuis ac7ac913fd exa: Split out some classic and driver allocated pixmap code into seperate files
- Create a few seperate functions and a few private function pointers.
- Replace a few if conditions with a check for pExaPix->pDamage instead.
- This is in preperation of a third scheme that lies somewhere in between.
- Code clarity would have suffered (i started working on it and didn't like the mess).
2009-08-06 23:48:13 +02:00
Peter Hutterer 3abbd327f4 dix: detach SD during XI2 grabs only.
XI1 grabs on slave devices leave the device attached - just like in earlier
versions of XI.

Tested-by: Thomas Jaeger
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-06 10:05:12 +10:00
Peter Hutterer c29aa7da22 Revert "dix: Remove temporary detachment of slave devices."
This reverts commit 0c0ef42292.

Tested-by: Thomas Jaeger
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-06 10:05:12 +10:00
Jeremy Huddleston 931160fcf3 XQuartz: AIGLX: Provide empty __glXAquaDrawableResize to avoid crashing in DoMakeCurrent
(cherry picked from commit 60a1d2c2764f2f02c0751940a264588717afce79)
2009-08-05 16:17:47 -07:00
Jeremy Huddleston 0fe639a314 XQuartz: Only save lastpt on mouse/tablet events
(cherry picked from commit 552be074e5be6492df3e290e8b7d9daff1a2cb34)
2009-08-05 16:17:33 -07:00
Jeremy Huddleston 491c2d74c1 XQuartz: Use mouseLocation rather than locationInWindow when setting lastpt
I don't understand the *why* ... I just see that it works better this way for games like Quake2 through wine.  It *should* be better the other way, but somehow it's not.

I guess this will go in my list of puzzles to unravel.
(cherry picked from commit 65ae2d00e1a53f97f2ff9522406ab69d50bf3199)
2009-08-05 16:17:22 -07:00
Jeremy Huddleston df6c013524 XQuartz: Don't use location delta for tablets since NSEvent does not give a precise delta.
(cherry picked from commit 6c5bf756a7f5389cdfe2e43a339d7c31a3e522e9)
2009-08-05 16:17:09 -07:00
Jeremy Huddleston e360104880 XQuartz: Purge redundant QuartzBell
(cherry picked from commit de14a63d20095e1537fd74352850c734d900031d)
2009-08-05 16:17:01 -07:00
Tiago Vignatti 8c0085c715 xfree86: remove more RAC junky
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-08-05 22:52:35 +03:00
Tiago Vignatti 444723273a xfree86: reorganize pci code
- xf86PciVideoInfo doesn't need to be global
- remove unused macros

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-08-05 22:48:02 +03:00
Tiago Vignatti 20169414e1 xfree86: remove unused functions
RAC trash.

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-08-05 22:44:19 +03:00
Alan Coopersmith 95b678e6dc Correct modifier map built when ProcSetModifierMapping is called
Fixes xmodmap changes to modifiers to stop corrupting modifier maps

Previous code had two bugs:
 - the code to increment mod was after the code to continue if no
   modifier was set, so mod wouldn't be incremented for modifiers
   with no keys mapped to them (such as if you called
   xmodmap -e 'clear Lock')
 - the value it set in the modifier map was the raw modifier number,
   not the bitmask value for that modifier

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 11:15:54 +10:00
Peter Hutterer 4ca305956e Re-enable Xnest by default.
Xnest was disabled in 82fc102568 due do build
errors. These errors have since been fixed.

Re-enable Xnest by default to increase coverage by default builds.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 10:45:20 +10:00
Peter Hutterer 5904ef2ccd xnest: restore xnestUpdateModifierState
The meat of xnestUpdateModifierState was ifdef'd out in
6ef46c40e6. This resulted in stuck modifiers
when a modifier key release event wasn't sent to Xnest (e.g. Alt-Tab away).

See X.Org Bug 3664 <https://bugs.freedesktop.org/show_bug.cgi?id=3664> for
the original bug report.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 10:45:20 +10:00
Peter Hutterer 44afc7577a xnest: include exevents.h for XIGetKnownProperty.
Silences compiler warning.
Pointer.c: In function ‘xnestPointerProc’:
Pointer.c:64: warning: implicit declaration of function ‘XIGetKnownProperty’
Pointer.c:64: warning: nested extern declaration of ‘XIGetKnownProperty’

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 10:45:20 +10:00
Peter Hutterer 32ce5c83a5 xnest: use AllocDevicePair for Xnest device initalization
All Xnest needs is a single pointer+keyboard pair. AllocDevicePair sets them
up nicely with the name assigned etc.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 10:45:17 +10:00
Peter Hutterer 26b83ad4a2 dix: require PointerProc and KeyboardProc to be passed into AllocDevicePair.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 09:33:15 +10:00
Peter Hutterer 6a500fdd4d dmx: include exglobals.h for DeviceKeyPress and friends.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 08:02:17 +10:00
Peter Hutterer 591c2f8758 dmx: typecast to InternalEvent* before mieqEnqueue.
Silences a few compiler warnings.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 08:01:55 +10:00
Peter Hutterer 15b425b5a6 dmx: move 'state' around to silence compiler warning.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 08:01:45 +10:00
Peter Hutterer e10f802c82 dmx: include inputstr.h for inputInfo.pointer
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 08:01:37 +10:00
Peter Hutterer 9ffc3f280b dmx: don't call InitKbdFeedbackClassDeviceStruct - doesn't exist anymore.
InitKeyboardDeviceStruct does the same task now.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 08:01:28 +10:00
Peter Hutterer 63155cf985 dmx: pass button/axis labels into the init functions (currently unset)
Currently only None labels are passed in, in the future these labels should
be whatever the respective buttions/axes are.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 08:00:08 +10:00
Peter Hutterer af85973a0a dmx: remove now-useless defines.
XI is mandatory so we can expect both to be defined.
2009-08-05 07:59:45 +10:00
Peter Hutterer 654d7a0260 Revert "dmx: claim we support XI 2."
XQueryInputVersion doesn't exist anymore and for now XI 1 support is good
enough.

This reverts commit 8da8a0fec4.
2009-08-05 07:59:39 +10:00
Peter Hutterer e7c950c627 dmx: fix a call to XkbSetRulesDflts, takes XkbRMLVOSet now. 2009-08-05 07:59:33 +10:00
Peter Hutterer 2cde9208ff dmx: Enable/DisableDevice take a boolean variable now.
We want to send events here, so pass in TRUE.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 07:59:16 +10:00
Peter Hutterer 1e210d6d10 xkb: remove now-unused XkbGetKeysym.
XkbGetKeysyms was only used by the now-removed Keysym grabs.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-05 07:59:07 +10:00
Michel Dänzer a6ce6c70cf EXA: Simplify exaGetPixmapFirstPixel using GetImage. 2009-08-04 23:23:21 +02:00
Michel Dänzer 842373104d Add support for RENDER BGRA formats. 2009-08-04 23:23:21 +02:00
Alan Coopersmith 0bf7eaf305 Ansify function arguments in VTsw_noop.c
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-08-03 23:16:17 -07:00
Paul Bender 736f2d6472 Bug 16832: XDMCP related build error when --disable-xdmcp is used
X.Org Bugzilla #16832: http://bugs.freedesktop.org/show_bug.cgi?id=16832
Patch #27279: http://bugs.freedesktop.org/attachment.cgi?id=27279
2009-08-03 20:58:37 -07:00
Lee Leahu b159a98f7f seg fault when initializing DMX screens
X.Org Bugzilla #18086: http://bugs.freedesktop.org/show_bug.cgi?id=18086
Patch #19837: http://bugs.freedesktop.org/attachment.cgi?id=19837
2009-08-03 20:23:33 -07:00
Alan Coopersmith 5da9b255a6 Fix blddir != srcdir builds of solaris-*.il files
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=17509

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-08-03 19:54:57 -07:00
Peter Hutterer 1e69fd4a60 xnest: fix up parameters to InitKeyboardDeviceStruct.
IKDS takes a DeviceIntPtr as first argument, and an RMVLO struct as second.
The keysyms stuff is long gone now.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-03 12:04:11 +10:00
Peter Hutterer 008658049c xnest: silence compiler warnings by typecasing properly.
Events.c: In function ‘xnestQueueKeyEvent’:
Events.c:112: warning: passing argument 2 of ‘mieqEnqueue’ from incompatible
pointer type
../../mi/mi.h:203: note: expected ‘union InternalEvent *’ but argument is of
type ‘struct xEvent *’
Events.c: In function ‘xnestCollectEvents’:
Events.c:141: warning: passing argument 2 of ‘mieqEnqueue’ from incompatible
pointer type
../../mi/mi.h:203: note: expected ‘union InternalEvent *’ but argument is of
type ‘struct xEvent *’
Events.c:150: warning: passing argument 2 of ‘mieqEnqueue’ from incompatible
pointer type
../../mi/mi.h:203: note: expected ‘union InternalEvent *’ but argument is of
type ‘struct xEvent *’
Events.c:160: warning: passing argument 2 of ‘mieqEnqueue’ from incompatible
pointer type
../../mi/mi.h:203: note: expected ‘union InternalEvent *’ but argument is of
type ‘struct xEvent *’
Events.c:193: warning: passing argument 2 of ‘mieqEnqueue’ from incompatible
pointer type
../../mi/mi.h:203: note: expected ‘union InternalEvent *’ but argument is of
type ‘struct xEvent *’

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-03 12:01:23 +10:00
Peter Hutterer 664ac92d8b xfixes: backup the DisplayCursor/CloseScreen proc before restoring it (#23034)
The screen's DisplayCursor func is wrapped as
AnimCurDisplayCursor -> CursorDisplayCursor -> miPointerDisplayCursor.

Calling CursorDisplayCursor while an animated cursor was currently displayed
would remove AnimCurDisplayCursor from the wrap stack. Thus, the next call
to ChangeToCursor wouldn't update the animated cursor state. The block
handler for animated cursors would then continuously overwrite the actual
cursor, leaving an animated cursor everywhere on the screen.

X.Org Bug 23034 <http://bugs.freedesktop.org/show_bug.cgi?id=23034>
2009-08-03 10:11:48 +10:00
Peter Hutterer f48dfcc1b7 xfixes: allocate CurrentCursor for all devices.
XFixes requires cursor notifies to clients when the cursor changes. This
should work on the ClientPointer and then on all master pointers. Hence
change CurrentCursor to a MAXDEVICES array.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-03 10:11:48 +10:00
Peter Hutterer d3e5629fac dix: call SetFocusOut and LeaveWindow when disabling a device.
PointerWindows[x] would be set after removing a master pointer. Destroying
this window then crashed the server.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-03 10:11:48 +10:00
Peter Hutterer 97ed946cfc dix: SetFocusOut and LeaveWindow don't need parameters other than dev.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-03 10:11:48 +10:00
Peter Hutterer d040940efe xfixes: FixesHideCursor should work on all master pointers.
Presumably, a client calling HideCursor doesn't want any cursor displayed.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-08-03 10:11:48 +10:00
Oliver McFadden b83c682e7e xf86Xinput: xf86PostButtonEventP must set POINTER_ACCELERATE for relative events.
Thanks to Peter Hutterer for spotting this bug.
2009-08-03 02:50:01 +03:00