D13488: Make XDGShellV5 co-compilable with XDGWMBase

David Edmundson noreply at phabricator.kde.org
Mon Jun 11 22:42:19 UTC 2018


davidedmundson created this revision.
davidedmundson added a reviewer: Plasma.
Restricted Application added a project: Frameworks.
Restricted Application added a subscriber: kde-frameworks-devel.
davidedmundson requested review of this revision.

REVISION SUMMARY
  When we add WMBase (the new name stable XdgShell)  we get a clash with
  XDGShellV5. This clash consists of all functions in the generated C file
  which clashes at linker time, as well as multiple xdg_blah_interface
  structs which would get redefined.
  
  XDGShellV5 in practice is used by literally no-one (Qt never defaulted
  to it if wl-shell was available) and has been dropped from GTK when
  they added v6. But it's used by some kwin unit tests so breaking
  would cause issues for stable kwin release tests... so it's a pain.
  
  We can't mod the XML as we need the strings sent down the wire to remain
  the same and we need the same names for our forward declared structs
  that the client code can cast to.
  
  This patch copies the generated files and modifies them manually.
  Hacky, but we know this code will never change again - and IMHO this
  task isn't one worth investing too much time into.

TEST PLAN
  Finished my XDG WM Base patch (see next phab) and things compile \o/
  
  Unit test still passes
  
  Ran: QT_WAYLAND_SHELL_INTEGRATION=xdg-shell-v5 dolphin --platform wayland and verified it worked

REPOSITORY
  R127 KWayland

REVISION DETAIL
  https://phabricator.kde.org/D13488

AFFECTED FILES
  src/client/CMakeLists.txt
  src/client/registry.cpp
  src/client/xdgshell_v5.cpp
  src/compat/wayland-xdg-shell-v5-client-protocol.h
  src/compat/wayland-xdg-shell-v5-protocol.c
  src/compat/wayland-xdg-shell-v5-server-protocol.h
  src/server/CMakeLists.txt
  src/server/xdgshell_v5_interface.cpp

To: davidedmundson, #plasma
Cc: kde-frameworks-devel, michaelh, ngraham, bruns
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20180611/0672fe82/attachment.html>


More information about the Kde-frameworks-devel mailing list