LXDE-Qt Preview

Many users have read about our recent Qt-related work in prior blog posts.
The GTK+ version of LXDE is still under development, but we did some experiments with Qt, too. Now I have some things to show you. :-)
Here is a preview screenshot for LXDE-Qt.

At the bottom of the screen is lxpanel-qt, the Qt port of lxpanel. Now it basically works, but it’s still rough and needs much polishing. Besides, there are no GUI configuration tools for it yet. Editing the xml config file manually is needed. Later there will be preferences dialogs as the old gtk+ version of lxpanel. Most of the major applets already work. However, don’t expect too much!
It’s still a work in progress and it can be better in the future.

In the middle of the screen is PCManFM-Qt, the Qt port of the PCManFM file manager. It looks very similar to the original gtk+ version. The desktop wallpaper and icons are also managed by PCManFM-Qt, just like what the gtk+ version does.
The memory usage of PCManFM-Qt is slightly higher than that of the gtk+ 2 version, but the difference is not very significant. The overall performance is similar to the original gtk+ 2 version. Now it has most of the features of the original one and is almost ready for daily use. \o/

On the right side of the screen is the new Qt-based image view, LxImage-Qt.
It’s not really a port of the original gtk+ GPicView. I regard it the successor of GPicView in the Qt world. It works better than GPicView and is as fast.

Most of the work demonstrated in the screenshot is still in our git repository and is not ready for a new stable release, but there is really much progress and LXDE-Qt is no more a plan or a concept. It’s a real project that gradually shapes.

OK, back to what most user will concern, the resource usage.
To be honest, migrating to Qt will cause mild elevation of memory usage compared to the old Gtk+ 2 version. Don’t jump to the conclusion too soon. Migrating to gtk+ 3 also causes similar increase of resource usage.
Since gtk+ 2 is no longer supported by its developer and is now being deprecated, porting to Qt is not a bad idea at the moment.
Besides, the slightly higher memory usage is still acceptable for most of the existing old machines. The real resource usage may differ a lot among different Linux distros. For example, Ubuntu-based distros running LXDE tends to use more memory than ArchLinux-based ones. So more testing and real benchmarks are needed before making a conclusion on this.

Anyway, glad to share with you what we already done. Hope that you like it. :-)
Long live LXDE!

Edited on 2013-07-04
Answer the questions in the comments of this blog entry:

  1. Cooperation with razor-qt is going on. We subscribed razor-qt google groups and discussed about possible cooperation earlier. Currently, the ported LXDE components are designed with Razor-Qt in mind. For example, PCManFM-Qt and LxImage-Qt will reads razor-qt config file when running in razor-qt session. We’ll try to keep the interchangeability between the two DEs. Further integration is also possible. Actually, I personally am running a mixed desktop with LXDE-Qt + Razor-Qt components on my laptop. Components from the both DE blends well.
  2. The version of Qt supported now is Qt 4. I’m going to skip Qt 5 and wait for Qt 5.1. Qt4 and Qt5 are compatible in many areas and porting to Qt5 should be easy in most of the cases. Unfortunately, this is not the case when you use X11-related stuff. Qt 5 removed many X11-related APIs and there are no direct equivalent methods. So the porting is not painless for desktop environments. In addition, some freedesktop.org specs are designed to work with X11 only, such as the EWMH/NETWM spec and Xsettings spec. To port to Wayland, these problems need to be solved first. Gnome and KDE guys will fix them so we can just wait. Then why Qt 5.1? Because Qt 5.1 added back the once-removed X11-related APIs. So porting from Qt 4 to Qt 5.1 should be the most smooth path. It takes time for distros to adopt Qt 5.1, though.