Martin Gräßlin
94e4a31370
Port from XLib XSync to xcb sync
2013-07-31 14:05:24 +02:00
Martin Gräßlin
d164e16b56
Use own Xcb::sync() method in main.cpp
...
QApplication::syncX() is a no-op in Qt 5 so we need a replacement.
2013-07-31 07:28:15 +02:00
Martin Gräßlin
8da23f76d3
Delay startup till the manager selection is claimed
...
Moving all the startup code into closure connected to the
claimedOwnership signal.
2013-07-31 07:28:15 +02:00
Martin Gräßlin
dcc273fe0f
KWin core doesn't need to link some XLib libs any more
...
* XExt
* ICE
* SM
* XRender
* XDamage
* XFixes
2013-07-31 07:28:15 +02:00
Martin Gräßlin
728cb09c1c
Oxygen windeco doesn't need to link XRender
2013-07-31 07:28:15 +02:00
Martin Gräßlin
03432b5618
Drop the X11ErrorHandler from KWin
...
The XLib error handler became a little bit useless and we don't get
access to the XCB errors, which get logged as debug messages by Qt.
2013-07-31 07:28:15 +02:00
Martin Gräßlin
7408e36340
Drop X event handling from Group
...
Dead code
2013-07-30 10:11:51 +02:00
Martin Gräßlin
4141c101f1
Enable building of the Oxygen window decoration
...
Demo and config stays disabled - we are only interested in the window
decoration for now.
Seems to work :-)
CCMAIL: hugo@oxygen-icons.org
2013-07-30 07:57:15 +02:00
Martin Gräßlin
0e2b4b39cf
Adjust target link libraries for Oxygen windeco
2013-07-30 07:57:14 +02:00
Martin Gräßlin
eefdc2cedf
Port SizeGrip::embed to use xcb
...
XLib code was throwing compile errors, so just ported it over to xcb
directly.
2013-07-30 07:57:14 +02:00
Martin Gräßlin
2c7e3edcaa
Drop QByteArray argument from DecoHelper ctor
...
Has been removed from Helper parent class.
2013-07-30 07:11:28 +02:00
Martin Gräßlin
ec29f93604
Add missing includes in oxygenclient
2013-07-30 07:09:00 +02:00
Martin Gräßlin
acc6ce9092
Fix no cast from ascii in Oxygen windeco
2013-07-30 07:02:11 +02:00
Martin Gräßlin
9b6ae91011
Fix include of X11Info in Oxygen windeco
2013-07-30 06:57:02 +02:00
Martin Gräßlin
f5819656b6
Q_SLOTS/Q_SIGNALS in Oxygen windeco
2013-07-30 06:56:16 +02:00
Martin Gräßlin
075b0602e9
Get proper event window from xcb event
...
Find the event window and try to get a Client or Unmanaged from it
to pass it through the filter.
2013-07-29 09:00:44 +02:00
Martin Gräßlin
36984d69be
Enable shape and damage notify event handling in Client
2013-07-29 09:00:44 +02:00
Martin Gräßlin
c3760cbe3d
Enable reparent notify and client message event handling in Client
2013-07-29 09:00:44 +02:00
Martin Gräßlin
d47d0b2eb8
Enable focus out event handling in Client
...
Focus out handling used to check the event queue for a matching focus in
event to prevent short flickers when no window is active. This is not
possible with XCB and needs a replacement. Maybe a short timer event.
2013-07-29 09:00:44 +02:00
Martin Gräßlin
6af74b86f4
Enable focus in event handling in Client
2013-07-29 09:00:44 +02:00
Martin Gräßlin
bf775b1c0e
Enable leave notify event handling in Client
...
Still has an XQueryPointer which needs to be ported.
2013-07-29 09:00:44 +02:00
Martin Gräßlin
ed24ac86d2
Enable enter notify event handling in Client
2013-07-29 09:00:44 +02:00
Martin Gräßlin
4e154bdd87
Enable key press/release and mouse event handling in Client
2013-07-29 09:00:43 +02:00
Martin Gräßlin
302c94f280
Enable configure request event handling in Client
...
Still needs to port an XConfigureWindow to XCB.
2013-07-29 09:00:43 +02:00
Martin Gräßlin
58c7617928
Enable map request event handling in Client
2013-07-29 09:00:43 +02:00
Martin Gräßlin
7acfb339b1
Enable destroy notify event handling in Client
2013-07-29 09:00:43 +02:00
Martin Gräßlin
958e47b36c
Enable unmap notify event handling in Client
...
Interestingly the attribute send_event from XUnmapEvent does not exist in
xcb_unmap_notify_event_t and also the X protocol doesn't know anything
about send event.
2013-07-29 09:00:43 +02:00
Martin Gräßlin
df4b43ea78
Enable property notify event handling in Client and Unmanaged
2013-07-29 09:00:43 +02:00
Martin Gräßlin
94f23c1877
Enable X extension event handling in Unmanaged
2013-07-29 09:00:43 +02:00
Martin Gräßlin
188d01567d
Enable configure notify event handling in Unmanaged
2013-07-29 09:00:43 +02:00
Martin Gräßlin
62c044601b
Enable (un)map notify event filtering in Unmanaged
...
The specific methods are dropped as UnmapNotify event is not used at all
and just delegates to another method and map notify was noop.
2013-07-29 09:00:42 +02:00
Martin Gräßlin
ce10105dfc
Enable event handling for the X extension events
...
* Randr still needs XCB adjustments
* Client::syncEvent needs porting to XCB
2013-07-29 09:00:42 +02:00
Martin Gräßlin
59a2da3b1e
Enable visibility notify event handling
2013-07-29 09:00:42 +02:00
Martin Gräßlin
2ec9be5731
Enable expose event handling
2013-07-29 09:00:42 +02:00
Martin Gräßlin
eb17d9b518
Enable client message event handling
2013-07-29 09:00:42 +02:00
Martin Gräßlin
50113e0560
Enable focus in/out event handling
...
Focus in has XLib code which needs to be ported to XCB.
2013-07-29 09:00:42 +02:00
Martin Gräßlin
8a93690216
Enable configure request event handling
...
Still uses XLib configure window, this should be ported but not at
the same time as the event handling.
2013-07-29 09:00:42 +02:00
Martin Gräßlin
70f93c12a8
Enable enter/leave notify event handling
2013-07-29 09:00:42 +02:00
Martin Gräßlin
939c2d14c1
Enable map notify event handling
...
As part of it Unmanaged::windowEvent() takes an xcb_generic_event_t*
instead of XEvent* as argument. Method of course still needs porting.
2013-07-29 09:00:41 +02:00
Martin Gräßlin
c863029b8d
Enable map request event processing
...
Also replaces XMapRaised by xcb equivalent.
2013-07-29 09:00:41 +02:00
Martin Gräßlin
f70208c7c4
Enable unmap, reparent and destroy notify event handling
2013-07-29 09:00:41 +02:00
Martin Gräßlin
69655199cd
Enable create notify event handling
...
Also port from XChangeProperty to xcb_change_property.
2013-07-29 09:00:41 +02:00
Martin Gräßlin
e4415d370c
Enable the event filtering for the movingClient
...
This requires to have the Client::windowEvent() take an
xcb_generic_event_t* instead of XEvent*. Currently functionality is
ifdefed.
2013-07-29 09:00:41 +02:00
Martin Gräßlin
e378cb6dba
Enable configure notify event handling
2013-07-29 09:00:41 +02:00
Martin Gräßlin
334cf10d7d
Enable Key Press/Release events
...
Requires review 373d812a636da898a0f1cc017fa2c9dd4ff50381 on
kdelibs frameworks.
2013-07-29 09:00:20 +02:00
Martin Gräßlin
485f0a3e06
Process mouse events
...
Button Press/Release do no longer fall through to motion notify as
there is no shared mouse event in xcb. Also the methods in Effects and
TabBox are adjusted to process only button press/release or motion
notify.
ScreenEdges are no longer checked for button press/release. They don't
interact on button press/release so there is no need to check it.
2013-07-29 08:58:05 +02:00
Martin Gräßlin
d81c45a810
Disable updating rootInfo for property notify or client message
...
This needs porting in KWindowSystem first.
2013-07-29 08:58:05 +02:00
Martin Gräßlin
206fd10ea8
Pass events through an active window killer
2013-07-29 08:58:05 +02:00
Martin Gräßlin
1c3e0de31d
Stop keyboard event processing if effects have a grab
2013-07-29 08:58:05 +02:00
Martin Gräßlin
f11e3283d7
Introduce an XcbEventFilter and install it in the Application
...
Forwards all xcb events to Workspace::workspaceEvent() which got changed
to process xcb events instead of XEvents. So far all handling is
disabled. Will be re-enabled step by step in the following patches.
2013-07-29 08:58:05 +02:00