All posts by Dominik

Dominik is a PhD student at the Control Theory and Robotics Lab, TU Darmstadt, as part of the Research Training Group GKMM (GRK1362). My research focuses on state estimation in distributed systems. As hobby, I contribute to the KDE project and work on the Kate application and editor component.

Mercurial Support in Project Plugin

Christoph already wrote several blog posts about the upcoming projects plugin. In his last blog, he mentioned that a project can now be created on-the-fly by reading the git or subversion output: All the files under version control are automatically listed as files in the project.

However, this is restricted to git and subversion. If you always wanted to contribute to Kate, you can give other version control systems a try, such as Mercurial (command: hg manifest). Just quickly build Kate, and send us a patch!

Update (2013-10-31): Support was added in commit on 2013-03-02 and is available in KDE 4.10.5 and later versions.

RFC: Data Recovery

Currently, we use our own passive notification bar to show a recovery bar when a swap file was found:

Since version 4.7 we have a class called KMessageWidget (api documentation). Using KMessageWidget, the notification could also look like this:

Imo, the new one looks nicer, as it much better distinguishes the notification popup from the rest of the ui. However, it several drawbacks:

  • the minimum width is now 800 pixel due to the label (too large, might break layout in apps)
  • the title “Data Recovery” was omitted
  • the “Help” link, showing a tool tip with further information, can not be added anymore (the api does not allow it)

Possible solutions:

  • put the buttons under the label, as it was in the old version (currently, the api does not allow it, so we’d need something like setButtonsUnderText(bool))
  • wrap the text in the label (looks aweful, since the buttons appear then between two lines of text)
  • to get the “Help” label back, the api would need to forward the QLabel’s signal linkActivated(const QString&)

I’m not sure whether the API can be extended in the 4.x line, though…

Comments?