qt6-bb10/src/plugins/platforms/xcb
Marc Mutz d86e101d1b xcb: fix (negative) coordinate handling
For some reason, XCB accepts positions as unsigned
integers, even though the X protocol explicitly
allows negative values (windows overlapping the
left/top screen border).

After discussion with Samuel and Laszlo, use a
reinterpret_cast to convert from the signed
representation to the unsigned one.

I also extended the clipping of the extents to
the position. I guess if X can't handle widths
beyond XCOORD_MAX, it won't be happy with
x-coordinates exceeding that limit, either.

Change-Id: I2fa0e61f823b6cd45dad6471eaa55f38bb3c3e52
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
2012-03-24 09:15:00 +01:00
..
README Improves configure checks for XCB. 2012-03-19 20:16:04 +01:00
main.cpp Fix naming of plugins for QPA plugins and use new plugin system. 2012-02-17 08:23:02 +01:00
qdri2context.cpp Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qdri2context.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qglxintegration.cpp Properly read back the actual format in xcb and xlib plugins. 2012-02-10 16:24:47 +01:00
qglxintegration.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbbackingstore.cpp Fix compilation: std::min is in <algorithm> 2012-03-22 18:59:45 +01:00
qxcbbackingstore.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbclipboard.cpp Cleaned up debug and warning output in xcb plugin. 2012-03-02 23:16:25 +01:00
qxcbclipboard.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbconnection.cpp XCB: Implement native events for for windows. 2012-03-10 22:16:05 +01:00
qxcbconnection.h xcb: Check for SHAPE extension before using it 2012-03-02 21:33:08 +01:00
qxcbconnection_maemo.cpp Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbcursor.cpp QCursor: Associate cursor with screen. 2012-03-07 22:43:43 +01:00
qxcbcursor.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbdrag.cpp xcb: Check for SHAPE extension before using it 2012-03-02 21:33:08 +01:00
qxcbdrag.h Refactor the QPA dnd interface. 2012-02-29 20:10:30 +01:00
qxcbeglsurface.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbimage.cpp Cleaned up debug and warning output in xcb plugin. 2012-03-02 23:16:25 +01:00
qxcbimage.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbintegration.cpp Fix compiling with --no-accessibility 2012-03-15 14:51:47 +01:00
qxcbintegration.h Fix compiling with --no-accessibility 2012-03-15 14:51:47 +01:00
qxcbkeyboard.cpp Remove stale references to Qtopia 2012-03-12 13:14:05 +01:00
qxcbkeyboard.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbmime.cpp Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbmime.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbnativeinterface.cpp XCB: Implement native events for for windows. 2012-03-10 22:16:05 +01:00
qxcbnativeinterface.h XCB: Implement native events for for windows. 2012-03-10 22:16:05 +01:00
qxcbobject.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbscreen.cpp Fixed QScreen::name() return value on xcb. 2012-03-22 18:59:45 +01:00
qxcbscreen.h QCursor: Associate cursor with screen. 2012-03-07 22:43:43 +01:00
qxcbsharedbuffermanager.cpp Cleaned up debug and warning output in xcb plugin. 2012-03-02 23:16:25 +01:00
qxcbsharedbuffermanager.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbsharedgraphicscache.cpp Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbsharedgraphicscache.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
qxcbwindow.cpp xcb: fix (negative) coordinate handling 2012-03-24 09:15:00 +01:00
qxcbwindow.h Defer window activation if the window hasn't beenn mapped yet. 2012-03-08 16:06:59 +01:00
qxcbwmsupport.cpp Cleaned up debug and warning output in xcb plugin. 2012-03-02 23:16:25 +01:00
qxcbwmsupport.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
xcb.json Fix naming of plugins for QPA plugins and use new plugin system. 2012-02-17 08:23:02 +01:00
xcb.pro Take into account input shaping in findRealWindow 2012-03-01 19:00:15 +01:00

README

Requires libxcb >= 1.5.

Required packages:
libxcb1 libxcb1-dev libx11-xcb1 libx11-xcb-dev libxcb-keysyms1 libxcb-keysyms1-dev libxcb-image0 libxcb-image0-dev libxcb-shm0 libxcb-shm0-dev libxcb-icccm1 libxcb-icccm1-dev libxcb-sync0 libxcb-sync0-dev libxcb-render-util0 libxcb-render-util0-dev libxcb-xfixes0-dev libxrender-dev libxcb-shape0-dev

On Ubuntu 11.10 icccm1 is replaced by icccm4 and xcb-render-util is not available:
libxcb1 libxcb1-dev libx11-xcb1 libx11-xcb-dev libxcb-keysyms1 libxcb-keysyms1-dev libxcb-image0 libxcb-image0-dev libxcb-shm0 libxcb-shm0-dev libxcb-icccm4 libxcb-icccm4-dev libxcb-sync0 libxcb-sync0-dev libxcb-xfixes0-dev libxrender-dev libxcb-shape0-dev
The packages for xcb-render-util can be installed manually from http://packages.ubuntu.com/natty/libxcb-render-util0 and http://packages.ubuntu.com/natty/libxcb-render-util0-dev