On Thu, Jun 26, 2014 at 6:33 PM, Martin Gräßlin <mgraess...@kde.org> wrote:
> On Thursday 26 June 2014 18:31:06 PCMan wrote:
>> On Thu, Jun 26, 2014 at 12:56 PM, PCMan <pcman...@gmail.com> wrote:
>> > Hello,
>> > I have some good news again.
>> > I just started porting lxqt-panel to qt5 and it's nearly finished now.
>> > Previously Alexis Lopez Zubieta contributed some code in this area.
>> > However, the naming of headers and some APIs are changed dramatically
>> > in the last few months.
>> > Merging azubieta's branch with current code base is difficult.
>> > So I did it from scratch and tried to integrate the changes done in
>> > azubieta's branch as much as possible. Now, the result is in the "qt5"
>> > branch of lxqt-panel.
>> > Most of the plugins are already successfully migrated to Qt5.
>> > The only things that do not work in Qt5 "yet" are kbindicator and
>> > systray plugins.
>> > Hence I turned them off temporarily and everything works.
>> > Now you can build lxqt-panel with Qt5 by passing USE_QT5=ON to cmake.
>> >
>> > There are still some problems in the CMake rules and I intend to leave
>> > this part to Luis and other experts. At least I finished the C++ parts
>> > which I know better. :-)
>> > Please help test lxqt-panel with Qt5 and soon we can have a fully Qt5 DE.
>> >
>> > Cheers!
>>
>> Update:
>> Now all plugins build correctly with both Qt4 and Qt5.
>> I already opened a PR for it so please help test and review.
>> The port is consider 99% complete.
>> Things that do not work:
>> 1. system tray plugin does not work. (I think there is a bug in Qt5 so
>> we never get ClientMessage from X11)
>
> as you wrote "ClientMessage" and not client_message: the code needs to be
> ported from XLib to xcb. Plasma btw. skipped that part and gave the xembed
> systray the boot.
>
> Cheers
> Martin

Well, I fixed the tray plugin already.
It's my fault. I did not notice that we need to do apply ~0x80 bit
mask to event->response_type in xcb.
This is never documented, but all existing code does that.
When checking the type of the event in xcb, we need to do ~0x80 first
and check the result.
It's pretty weird but this is how xcb works.
Now, lxqt-panel is fully working in Qt5 mode.
Hooray!

------------------------------------------------------------------------------
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
_______________________________________________
Lxde-list mailing list
Lxde-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lxde-list

Reply via email to