Prepare the CMakeLists.txt files for building with Qt5.
Prepare for Qt5

* Use portable header names & disable QT_EXPORT_PLUGIN2() when needed.
* Use xcb_generic_event_t instead of XEvent for x11EventFilter() in Qt5.
Qt5 fixes

* Fix broken API compatibility for Qt5.
* Disable plugins that do not work with Qt5.
* Use fixx11h.h hack from KDE to workaround name clashes between Xlib and Qt.
* Fix showdesktop and desktopswitch plugins by enabling xcb event filter.
Add missing plugin metadata to make them loadable in Qt5.
Fix taskbar plugin for Qt5.
Try to fix tray plugin.
Fix building kbindicator plugin with Qt5 and XCB (not fully working).
Fix incorrect handling of xcb event, fixing tray plugin.
Set _NET_WM_WINDOW_TYPE_DOCK to the panel to workaround a bug in Qt5.