Commit graph

6654 commits

Author SHA1 Message Date
David Reveman
ea4520ac30 Avoid destroying still attached back-end server pictures in
dmxBEDestroyResources.
2008-10-30 03:37:19 -04:00
David Reveman
152b5940c9 Only use XInput Extension if 2.0 or greater. 2008-10-30 03:37:18 -04:00
David Reveman
a2646f4f88 Improved system for tracking key/button state. 2008-10-30 03:37:18 -04:00
David Reveman
e82a24c0b9 Don't automatically add input devices of from back-end servers
with virtual frame buffers.
2008-10-30 03:37:17 -04:00
David Reveman
c596e2a03e Allow server to be started without any input devices. 2008-10-30 03:37:17 -04:00
David Reveman
442a1cce7a Add initial support of back-end XInput extension. 2008-10-30 03:37:16 -04:00
David Reveman
96322ebffc Add dmxCloseDisplay and make dmxOpenDisplay properly initilize
syncCookie and use AddEnableDevice.
2008-10-30 03:37:16 -04:00
David Reveman
bfd41ad4cb Use XCB for much more efficient sync batching.
Collect sync request for during the sync interval time just
like before but instead of using XSync to send get-input-focus
requests and block for replies when the sync interval timer
fires, we're now just sending get-input-focus requests using
XCB and give each back-end server the sync-interval time to
respond before we block.

This provides significantly better performance, especially
with high latency connections.

The default sync batch interval of 100ms provides good
performance for back-ends servers with round-trip times
somewhat less than 100ms and is not long enough to make
the batch processing noticeably on low latency connections.
2008-10-30 03:37:15 -04:00
David Reveman
4d692bd15b Don't trigger the sync timer in block handler. Just flush output
buffers.
2008-10-30 03:37:15 -04:00
David Reveman
07c6aca7d7 Avoid drawing to pixmaps without back-end resources. 2008-10-30 03:37:15 -04:00
David Reveman
1c93025aa4 No need for this anymore. 2008-10-30 03:37:14 -04:00
David Reveman
cdca74c1ba Avoid creating window tree on back-end servers with virtual
framebuffers.
2008-10-30 03:37:14 -04:00
David Reveman
810e522b9c Make dmxProcRenderCompositeGlyphs handle source pictures properly. 2008-10-30 03:37:14 -04:00
David Reveman
f9d92e5dd3 Add more efficient implementation of source pictures. 2008-10-30 03:37:13 -04:00
David Reveman
8bd46e7189 Add better PanoramiX handling of source pictures. Source pictures
are screen independent so avoid creating multiple picture
resources for them.
2008-10-30 03:37:13 -04:00
David Reveman
7eeadac317 The back-end resource in the backing store pixmaps created by the composite extension is always set by DMX to the backing pixmap on the back-end server. Avoid to create an initial resource for these pixmaps. 2008-10-30 03:37:13 -04:00
David Reveman
191e921c57 Glyph pictures are never used by DMX so avoid create back-end resources for them. 2008-10-30 03:37:12 -04:00
David Reveman
fa53ca5772 Store glyph data in glyph private so we don't have to fetch it from a back-end server when attaching a new screen. 2008-10-30 03:37:12 -04:00
David Reveman
7ea245b7a4 Fix a number of issues with how client message events were handled. 2008-10-30 03:37:12 -04:00
David Reveman
f273c1f691 Pass correct size to memcpy. 2008-10-30 03:37:12 -04:00
David Reveman
72ceaa9acf Set property data to 0 when translation failed to avoid having the data accidentally reference some other existing resource. 2008-10-30 03:37:11 -04:00
David Reveman
7f01e9694c Increment j. 2008-10-30 03:37:10 -04:00
David Reveman
1c87f129eb Include translation of _COMPIZ_WINDOW_DECOR properties by default. 2008-10-30 03:37:10 -04:00
David Reveman
33ea398c24 Make property translation system configurable from the command line. 2008-10-30 03:37:10 -04:00
David Reveman
e77fb301e1 Grab server while creating window tree and window properties. 2008-10-30 03:37:09 -04:00
David Reveman
61483024d0 Make sure back-end server events are properly forwarded to all screens. 2008-10-30 03:37:09 -04:00
David Reveman
4be9b69713 Only the visuals that are in use need to match. 2008-10-30 03:37:09 -04:00
David Reveman
0e7c60051e Avoid DirectColor visuals for all screens when using PANORAMIX. 2008-10-30 03:37:08 -04:00
David Reveman
573c23d041 Hackish virtual framebuffer detection. 2008-10-30 03:37:08 -04:00
David Reveman
cbfbee6bf4 Add virtualFb screen parameter. 2008-10-30 03:37:08 -04:00
David Reveman
63a2f0cbfd Set window cursor attribute properly. 2008-10-30 03:37:07 -04:00
David Reveman
aa029fad6b Make sure all resources that might need to be translated
are created before we create window properties.
2008-10-30 03:37:07 -04:00
David Reveman
f21d878774 Translate resources in property data. 2008-10-30 03:37:07 -04:00
David Reveman
5d4d4e3dc5 SubstructureNotifyMask doesn't mean that a WM is running. 2008-10-30 03:37:06 -04:00
David Reveman
3645429c8b Add forwarding of window properties to back-end servers. 2008-10-30 03:37:06 -04:00
David Reveman
305f6f0c00 Forward client messages from back-end servers. 2008-10-30 03:37:06 -04:00
David Reveman
3e06a808fe Use SubstructureRedirectMask event mask for all windows. 2008-10-30 03:37:05 -04:00
David Reveman
257fa2406b Add basic window management. 2008-10-30 03:37:05 -04:00
David Reveman
96357e860f Mask input events properly. 2008-10-30 03:37:05 -04:00
David Reveman
33c109931e Don't let dmxBECreateGlyphSet fail. 2008-10-30 03:37:04 -04:00
David Reveman
95106e7245 Select for SubstructureRedirectMask on screen window and make sure
no WM is running when using back-end server root window.
2008-10-30 03:37:04 -04:00
David Reveman
d23a64fb67 Pass vtXX argument to default back-end server. 2008-10-30 03:37:04 -04:00
David Reveman
3078ea3bfd Add support for using back-end server root window. 2008-10-30 03:37:04 -04:00
David Reveman
ffeb2ade90 Add support for manual compositing on back-end servers. 2008-10-30 03:37:03 -04:00
David Reveman
07fba8b1f7 Use PanoramiXSaveCompositeVector where possible. 2008-10-30 03:37:03 -04:00
David Reveman
2fef256a38 Proper management of back-end server glyph resources. 2008-10-30 03:37:03 -04:00
David Reveman
3832beb6a0 Export ProcCompositeVector. 2008-10-30 03:37:02 -04:00
David Reveman
75f9b98af3 Move composite panoramix support into separate functions. 2008-10-30 03:37:02 -04:00
David Reveman
c90b5657e6 Allow colormap_size and bits_per_rgb to be greater or equal. 2008-10-30 03:37:02 -04:00
David Reveman
e776efc2b7 Fix typo. 2008-10-30 03:37:01 -04:00