Skip to content
  • Alexey Min's avatar
    Implement XCB framebuffer plugin (port from x11) · b2cb3e82
    Alexey Min authored and Albert Astals Cid's avatar Albert Astals Cid committed
    Previously used x11 plugin does not compile with Qt5, because Qt5 does
    not use Xlib, it uses xcb. Rewrite screen capture plugin from Xlib to
    xcb.
    
    I made xcb libs compile required dependency, but availability of X
    shared memory extension is checked at runtime. It is used to effectively
    get image pixels data, instead of transfering 8Mb over the wire. Xdamage
    is used to limit image getting operations only within actually changed
    rectangles of screen.
    
    BUG: 377998
    
    Tested on single-monitor system and dual-monitor, where primary monitor
    does not start at (0,0) coordinate. Image transfer works fine.
    Dual-monitor only has problems with receiving mouse cursor position and
    clicks, but this should be fixed outside of framebuffer plugin.
    
    Differential Revision: https://phabricator.kde.org/D5211
    b2cb3e82