<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-591179528445148028</id><updated>2013-01-19T22:20:03.497+01:00</updated><category term='KDE'/><category term='Openismus'/><title type='text'>ppenz</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default?start-index=26&amp;max-results=25'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>35</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-4590408994393347148</id><published>2012-06-26T12:37:00.000+02:00</published><updated>2012-06-26T13:17:26.285+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Dolphin 2.1</title><content type='html'>&lt;br /&gt;Dolphin 2.1 will be released as part of KDE applications 4.9 on the first of August and to me this is a very special release: After 6 years of development, around 2700 commits and a lot of fun I'll be forwarding the maintainership to &lt;a href="http://freininghaus.wordpress.com/"&gt;Frank Reininghaus&lt;/a&gt;. Frank did a great job during the last years to improve Dolphin and I'm really glad that he accepted the maintainership.&lt;br /&gt;&lt;br /&gt;For me forwarding the maintainership also means that I won't provide any bugfixes or features for Dolphin anymore. Probably this step is quite surprising for most readers and I think I owe an explanation. Before going into details it might be useful to first describe the reasons for developing Dolphin at all.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt; &lt;span style="background-color: white;"&gt;The first steps&lt;/span&gt;&lt;/h2&gt;&lt;span style="background-color: white;"&gt;At the beginning of 2006 I wanted to gain some experience with Qt and I've been looking for a small project. I liked the functionality of Konqueror but was not happy with the user interface - I thought that writing a small and fast file manager fitting just for my own needs and to learn Qt should not be that hard (if somebody would have told me that I'll be spending at least 6 years on this project I probably would have given up immediately). Thanks to some great classes in kdelibs I was able to browse through directories only a few hours later and my (wrong) assumption "this should not be that hard" got tightened.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Around mid of 2006 I've released the 0.5 version of Dolphin at &lt;a href="http://kde-apps.org/"&gt;kde-apps.org&lt;/a&gt;. Making a long story short: Matthias Ettrich called me and asked whether I want to help contributing to the filemanager for KDE 4.0. David Faure was very busy with porting parts of kdelibs to that time and more interested in doing the tricky and challenging parts instead of the "boring user interface programming" (I cannot remember anymore the exact words Matthias has used, but it was something like this). Well, suddenly I was part of the KDE community, got great support from Aaron J. Seigo and it started to get a great experience for me to contribute to such a large project. Learning Qt was secondary then, it was more about learning how the whole development for such a big project works and how decisions are made.&lt;br /&gt;&lt;br /&gt;It is quite interesting to compare a screenshot from Dolphin 6 years ago to the recent version:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-oPkg7w5jEC8/T-mLPU2_e4I/AAAAAAAACCM/wrdtgFhKO4A/s1600/dolphin-3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="263" src="http://2.bp.blogspot.com/-oPkg7w5jEC8/T-mLPU2_e4I/AAAAAAAACCM/wrdtgFhKO4A/s320/dolphin-3.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-oX4YhxL_IEQ/T-mLTO5lMdI/AAAAAAAACCU/OoN5fCrAbRk/s1600/dolphin-4-9.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="244" src="http://3.bp.blogspot.com/-oX4YhxL_IEQ/T-mLTO5lMdI/AAAAAAAACCU/OoN5fCrAbRk/s320/dolphin-4-9.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;h2&gt; &lt;span style="background-color: white;"&gt;What has changed since then?&lt;/span&gt;&lt;/h2&gt;&lt;span style="background-color: white;"&gt;The KDE community is still great and there are enough things left to make Dolphin better, so what has changed since then for me?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;One thing is that the time required to keep Dolphin in good shape increased during the last years. I'm doing this project in my spare-time and usually have spend around one evening per week on Dolphin. Especially during the last 2 years this time has increased. In the longterm especially the (for me absolutely necessary) step to port Dolphin to QtQuick2 is something I won't be able to do within a sane timeframe. The interesting thing is that porting the new view-engine to QtQuick2 is probably the easiest part: There is a clean seperation of the representation and the model and exchanging the representation should be doable within a reasonable amount of time. I guess with Qt 5.1 or 5.2 (I don't know) there will be desktop-components for QtQuick2 and porting Dolphin to this components will be a very timeconsuming and boring task: All the settings-pages, the URL-navigator, the information-panel, the search-interface, the tooltips, ... - this is just not doable anymore in my spare-time.&lt;br /&gt;&lt;br /&gt;Of course you might ask whether a port to QtQuick2 is really necessary. But to me in the scope of KDE QtQuick2 is the only solution to be able to compete with the other big desktop environments out there in terms of a responsive and beautiful interface.&lt;br /&gt;&lt;br /&gt;So would it help if other developers would join the Dolphin project and take care for doing the QtQuick2 port? Sadly for me this still would not be enough to keep on maintaining Dolphin, as there is another reason to quit contributing: I'm using KDE since version 1.2 and I never cared what market share KDE or Linux on the desktop has. However to me it was important that the desktop-environment I'm using and spending time for can compete with the desktops-environments from Microsoft and Apple. As user I always had the impression that I can do my regular tasks like reading e-mails, browsing, managing my photo- and music-collection, rarely writing a document, maintaining my contacts, adding calendar-entries... in a more efficient and comfortable way than on the other desktop-environments.&lt;br /&gt;&lt;br /&gt;But at least for my regular tasks as user this has changed during the last couple of years. It is tricky to give examples without pointing fingers to parts of KDE where I think we are not competitive anymore, so I won't do this.&lt;br /&gt;&lt;br /&gt;I don't have a good explanation why this gap has increased during the last years (at least from my perspective). One guess I have is that the kind of complexity of applications has changed during the last years:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="background-color: white;"&gt;The user interfaces tend to become simpler and easier to the eye, while the functionality of the application itself has increased. Hiding a complex functionality behind an easy to use interface are not known strengths of "typical" developers ;-)&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="background-color: white;"&gt;The complexity of the non-user-interface-parts of applications has increased a lot. Web-browsers are a good example: While the interface got simplified during the last years, the engines showing web-pages got really complex and are maintained mostly by fulltime-developers in the meantime. There seems to be a similar trend in PIM-applications ("cloud"), chat-clients (one simple user-interface, a various number of protocols) and for desktop-search-engines (simple user-interface, really complex stuff going on behind the scenes).&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="background-color: white;"&gt;Working on the non-user-interface parts of applications can be challenging and this is not something that most freetime-contributors are striving for. But if there are not enough contributors for the complex stuff behind the scenes and if no company is willing to invest fulltime-developers to work on this... - well then we are losing ground. And even if Gnome seems to get more support from companies, I don't see a big difference to KDE here.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Probably my explanation/guess/theory is nonsense and utterly wrong. But this does not change my point of view that at least for my tasks I can work in a more efficient and comfortable way on other desktop environments in the meantime. And this aspect makes it hard to keep up the motivation for investigating a lot of spare-time into KDE.&lt;br /&gt;&lt;br /&gt;I hope this does not sound like a blog-entry from a "frustrated developer" - this is not the case :-) I'm leaving the project at a stage where I still liked to contribute and where I enjoyed being part of KDE. I wish KDE all the best for the future and I'm proud that I got the chance during the last years being part of this community!</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/4590408994393347148/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=4590408994393347148' title='117 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/4590408994393347148'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/4590408994393347148'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2012/06/dolphin-21.html' title='Dolphin 2.1'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-oPkg7w5jEC8/T-mLPU2_e4I/AAAAAAAACCM/wrdtgFhKO4A/s72-c/dolphin-3.png' height='72' width='72'/><thr:total>117</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-4792421541260985909</id><published>2012-06-03T12:34:00.001+02:00</published><updated>2012-06-03T12:36:37.096+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Improved Views</title><content type='html'>Until now Dolphin could display metadata like rating, tags, comments, image-sizes, album-name, ... only inside tooltips and the information panel:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-LyhA1rRs8ng/T8s9I9CBaBI/AAAAAAAACBE/npkGm0OYPVg/s1600/tooltips-4.9.0.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="194" src="http://4.bp.blogspot.com/-LyhA1rRs8ng/T8s9I9CBaBI/AAAAAAAACBE/npkGm0OYPVg/s320/tooltips-4.9.0.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;With the release of Dolphin 2.1 (as part of KDE applications 4.9) this kind of information can now also be shown inside the views. I'll just let some screenshots speak for themselves:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-tFZK0aa8hX4/T8s9V959IbI/AAAAAAAACBM/U0g4sNJQUcI/s1600/dolphin-images.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="244" src="http://4.bp.blogspot.com/-tFZK0aa8hX4/T8s9V959IbI/AAAAAAAACBM/U0g4sNJQUcI/s320/dolphin-images.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-szdLlDpZS5k/T8s9ZhFCscI/AAAAAAAACBU/9qDcWEfJZ-c/s1600/dolphin-audio-files.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="190" src="http://2.bp.blogspot.com/-szdLlDpZS5k/T8s9ZhFCscI/AAAAAAAACBU/9qDcWEfJZ-c/s320/dolphin-audio-files.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-OQKFsUaKkqc/T8s9cZlUfoI/AAAAAAAACBc/-mCKq6fK6iE/s1600/dolphin-audio-files-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="232" src="http://3.bp.blogspot.com/-OQKFsUaKkqc/T8s9cZlUfoI/AAAAAAAACBc/-mCKq6fK6iE/s320/dolphin-audio-files-2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-suwZXkocfIc/T8s9foAhRgI/AAAAAAAACBk/fS1J7jaga3o/s1600/dolphin-documents.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://2.bp.blogspot.com/-suwZXkocfIc/T8s9foAhRgI/AAAAAAAACBk/fS1J7jaga3o/s320/dolphin-documents.png" width="315" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/4792421541260985909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=4792421541260985909' title='25 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/4792421541260985909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/4792421541260985909'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2012/06/improved-views.html' title='Improved Views'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-LyhA1rRs8ng/T8s9I9CBaBI/AAAAAAAACBE/npkGm0OYPVg/s72-c/tooltips-4.9.0.png' height='72' width='72'/><thr:total>25</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-2547847213822225986</id><published>2012-04-12T16:16:00.001+02:00</published><updated>2012-04-12T17:24:36.120+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><category scheme='http://www.blogger.com/atom/ns#' term='Openismus'/><title type='text'>Plasma Active and Maliit</title><content type='html'>&lt;br /&gt;&lt;a href="http://www.openismus.com/"&gt;Openismus&lt;/a&gt; gave me the opportunity to check how good or bad &lt;a href="https://wiki.maliit.org/"&gt;Maliit&lt;/a&gt; works together with &lt;a href="http://plasma-active.org/"&gt;Plasma Active.&lt;/a&gt; As I've never installed Maliit nor Plasma Active until now I expected some pitfalls, but in the end I got both of them running on a &lt;a href="http://wetab.mobi/"&gt;WeTab&lt;/a&gt; tablet:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-429pVgSkCwo/T4bhlTxSFfI/AAAAAAAAAmo/0mIwdWss25U/s1600/plasma-active.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="285" src="http://3.bp.blogspot.com/-429pVgSkCwo/T4bhlTxSFfI/AAAAAAAAAmo/0mIwdWss25U/s400/plasma-active.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Most &lt;a href="http://planetkde.org/"&gt;Planet KDE&lt;/a&gt; readers are of course familiar with Plasma Active, but what is Maliit?&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;     Maliit&lt;/h2&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Maliit provides a cross-platform input method framework for mobile text input including a virtual keyboard. Maliit is the input methods solution used in &lt;a href="http://swipe.nokia.com/"&gt;Nokia's N9 MeeGo phone&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-c-50ZVfp2kU/T4bh9-WSvdI/AAAAAAAAAmw/dhSIcpSMS7k/s1600/maliit-n9.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-c-50ZVfp2kU/T4bh9-WSvdI/AAAAAAAAAmw/dhSIcpSMS7k/s1600/maliit-n9.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Providing a virtual keyboard seems to be straight forward in the first sight, but it is very challenging if things like predictive input, error-correction, cut/copy/paste, multitouch, context-sensitivity or languages like Chinese and Arabic should be supported.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;   &lt;/h2&gt;&lt;h2&gt;     Current State&lt;/h2&gt;&lt;br /&gt;The combination of Plasma Active and Maliit works together better than I expected initially: Focusing an input field automatically pops up the Maliit keyboard and entering a key results in showing the output without delay on the WeTab tablet. This sounds self-evident, but the performance is very critical for a virtual keyboard: Even a minor delay after touching the device gets noticed by users - the acceptable delay seems to be a lot lower than the usual "keep it below 300 ms and it will be perceived as fast" user interface objective.&lt;br /&gt;&lt;br /&gt;At the moment there are at least two open issues that need to get fixed in Maliit:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;When entering a key the 'key magnifiers' (= the orange 't' in the first screenshot) don't disappear. The &lt;a href="https://bugs.maliit.org/show_bug.cgi?id=18"&gt;issue is tracked&lt;/a&gt; on the Maliit bug tracker and investigations are ongoing.&lt;/li&gt;&lt;li&gt;Currently Maliit requires compositing for providing the virtual keyboard as overlay.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;h2&gt;   Installation&lt;/h2&gt;&lt;br /&gt;I've installed Plasma Active and Maliit from the sources on the master-branch to be sure being on track with the latest state of both frameworks. For Plasma Active the &lt;a href="http://community.kde.org/Plasma/Active/Installation#Installation_of_Plasma_Active_from_sources_.28developer_only.29"&gt;installation guide&lt;/a&gt; and the &lt;a href="http://community.kde.org/Plasma/Active/Development"&gt;development guide&lt;/a&gt; are sufficient for building Plasma Active. I've added a few notes to the &lt;a href="https://wiki.maliit.org/Maliit_on_Plasma"&gt;Maliit on Plasma wiki&lt;/a&gt; to document the approach I've taken.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://wiki.maliit.org/Documentation/Installing"&gt;Installing Maliit&lt;/a&gt; is straight forward. On the first screenshot above word prediction is enabled. For this &lt;a href="http://presage.sourceforge.net/"&gt;Presage&lt;/a&gt;&amp;nbsp;is required, one &lt;a href="http://gitorious.org/maliit/maliit-plugins/merge_requests/52"&gt;pending merge-request&lt;/a&gt; must be used and qmake must be called with &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;CONFIG+=enable-presage&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The progress of integrating Maliit into Plasma Active is tracked at &lt;a href="https://bugs.maliit.org/show_bug.cgi?id=51"&gt;https://bugs.maliit.org/show_bug.cgi?id=51&lt;/a&gt; - I cannot judge the final outcome of this, but I think from a technical point of view it is a benefit for both frameworks if they are interacting well. Whether Maliit might be a candidate for being the default input method for Plasma Active also involves some non-technical topics like the general maintenance of Maliit and whether there are enough resources to make the integration with Plasma Active really perfect. We'll see :-)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/2547847213822225986/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=2547847213822225986' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/2547847213822225986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/2547847213822225986'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2012/04/plasma-active-and-maliit.html' title='Plasma Active and Maliit'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-429pVgSkCwo/T4bhlTxSFfI/AAAAAAAAAmo/0mIwdWss25U/s72-c/plasma-active.png' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-5400895727963092482</id><published>2012-03-04T14:13:00.001+01:00</published><updated>2012-03-04T14:15:22.453+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Taking Care for Details</title><content type='html'>&lt;br /&gt;Frank Reininghaus already wrote about all the &lt;a href="http://freininghaus.wordpress.com/2012/02/29/dolphin-bug-fixes-in-kde-4-8-1/"&gt;4.8.1 Dolphin-bugfixes&lt;/a&gt; we've done, so I'd like to talk about just one specific fix: It is "only" about some visual improvements regarding the layout of items when turning on the grouping-feature, but the interesting thing is what happened behind the scenes.&lt;br /&gt;&lt;br /&gt;It started when Martin Zilz from &lt;a href="http://kreativkonzentrat.de/"&gt;kreativkonzentrat&lt;/a&gt; wrote me an e-mail a few weeks ago with some suggestions how to improve the look of group-headers. The base of discussion was the following state:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-FTI_fwIwOh0/T1NokzZp5YI/AAAAAAAAAlI/YiGICrlhNZ0/s1600/Dolphin+2+icons-grouping-1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="173" src="http://1.bp.blogspot.com/-FTI_fwIwOh0/T1NokzZp5YI/AAAAAAAAAlI/YiGICrlhNZ0/s200/Dolphin+2+icons-grouping-1.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Beside the group-headers Martin also recognized other issues with the layout and it required several internal adjustments in the view-engine to achieve what Martin suggested. But after sharing a lot of e-mails with updated screenshots and doing some finetuning in the code I'm really happy with the end-result:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-cHke_NRKsuM/T1NotvCjYpI/AAAAAAAAAlQ/5BLlednN5tg/s1600/Dolphin+2+icons-grouping-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="173" src="http://1.bp.blogspot.com/-cHke_NRKsuM/T1NotvCjYpI/AAAAAAAAAlQ/5BLlednN5tg/s200/Dolphin+2+icons-grouping-2.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;But beside the icons-view we also adjusted the group-header for the other views. Before the changes the compact view looked like this:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-mLqLgLzSK4U/T1NoytZayGI/AAAAAAAAAlY/aeKZ7oczBnM/s1600/Dolphin+2+compact-grouping-1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="66" src="http://3.bp.blogspot.com/-mLqLgLzSK4U/T1NoytZayGI/AAAAAAAAAlY/aeKZ7oczBnM/s320/Dolphin+2+compact-grouping-1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;After following Martin's suggestions it looks like this:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-jYLCkv-ZPXM/T1No_b3ZBFI/AAAAAAAAAlg/TUxYd3IQkHM/s1600/Dolphin+2+compact-grouping-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="72" src="http://3.bp.blogspot.com/-jYLCkv-ZPXM/T1No_b3ZBFI/AAAAAAAAAlg/TUxYd3IQkHM/s320/Dolphin+2+compact-grouping-2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The details-view is something where I'm still not 100 % happy, as the alternate backgrounds don't work well together with the grouping from my point of view. However I'd say the look still has improved from:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-qCq4Yr5aVis/T1NpEUyj3lI/AAAAAAAAAlo/xs7KvdB99C8/s1600/Dolphin+2+details-grouping-1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://4.bp.blogspot.com/-qCq4Yr5aVis/T1NpEUyj3lI/AAAAAAAAAlo/xs7KvdB99C8/s200/Dolphin+2+details-grouping-1.png" width="182" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;to:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-r3rT7RT2yhU/T1NpJpn8xDI/AAAAAAAAAlw/IfybixcbqRA/s1600/Dolphin+2+details-grouping-2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://3.bp.blogspot.com/-r3rT7RT2yhU/T1NpJpn8xDI/AAAAAAAAAlw/IfybixcbqRA/s200/Dolphin+2+details-grouping-2.png" width="183" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The main reason why I've written a blog-entry about this bugfix is that it should be an example of how an application can get improved when working together with skilled designers. As developer it is tricky to think outside the boundaries of your own implementation. E.g. I never thought about the vertical lines in the compact-view as the height of the group-header widget was only around 20 pixels. Martin was able to think outside those boundaries and in the end it was not tricky to implement. I had similar experiences when working together with Nuno and Hugo from the Oxygen team. Although many users probably won't see the difference in the first sight I believe those details matter to have a comfortable user experience.</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/5400895727963092482/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=5400895727963092482' title='24 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/5400895727963092482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/5400895727963092482'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2012/03/taking-care-for-details.html' title='Taking Care for Details'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-FTI_fwIwOh0/T1NokzZp5YI/AAAAAAAAAlI/YiGICrlhNZ0/s72-c/Dolphin+2+icons-grouping-1.png' height='72' width='72'/><thr:total>24</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-1805078603192884353</id><published>2012-01-03T22:48:00.000+01:00</published><updated>2012-01-03T23:16:56.589+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Dolphin 2.0 - Status Update</title><content type='html'>&lt;br /&gt;&lt;span style="font-size: large;"&gt;Grouping Support&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;When &lt;a href="http://ppenz.blogspot.com/2011/08/introducing-dolphin-20.html"&gt;introducing Dolphin 2.0&lt;/a&gt;&amp;nbsp;I talked about &amp;nbsp;grouping support for all view modes. But I could not offer any screenshots, as this feature was not ready yet at that time. So here we go showing the same folder grouped by the file type in the icons-mode (which is already available since Dolphin 1.2):&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-PoJSqMNeFDA/TwN1YXJvNLI/AAAAAAAAAkM/GyUuBqhgqkY/s1600/Dolphin+2+icons-grouping.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-PoJSqMNeFDA/TwN1YXJvNLI/AAAAAAAAAkM/GyUuBqhgqkY/s1600/Dolphin+2+icons-grouping.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;... in the compact-mode:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-3-d40ic97R0/TwN12dY7kNI/AAAAAAAAAkY/yf6-FsDmJCM/s1600/Dolphin+2+compact-grouping.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-3-d40ic97R0/TwN12dY7kNI/AAAAAAAAAkY/yf6-FsDmJCM/s1600/Dolphin+2+compact-grouping.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;... and in the details-mode:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-azab-91Lka4/TwN1_bU7dQI/AAAAAAAAAkk/eKQlhk7gycw/s1600/Dolphin+2+details-grouping.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-azab-91Lka4/TwN1_bU7dQI/AAAAAAAAAkk/eKQlhk7gycw/s1600/Dolphin+2+details-grouping.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;I think there is a lot of room for visual improvements of the group-headers especially in the combination with the details-mode. However this is something that needs to be discussed with our Oxygen-gurus Nuno and Hugo and will hopefully be improved in the next version.&lt;br /&gt;&lt;br /&gt;Still I'm quite happy with the new implementation. It fixes performance issues that occured with the previous implementation, fixes keyboard-navigation issues and provides a solid base for future extensions like grouping by rating, tags, comments or any arbitrary grouping-category.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;General Status&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The rewrite of the Dolphin view-engine was a lot of work and resulted in changing of much code. The benefits are an improved performance, getting rid of a lot of bugs that could not be solved with the old view-engine and a better maintainable code-base. But it would be illusionary to expect that there will be only benefits and zero regressions: Dolphin 2.0 will be a typical "dot zero" release where minor issues will popup after the release. However based on the current feedback on bugs.kde.org there seem to be no showstopper bugs left. The currently known regressions and missing Dolphin 1.x features can be seen on the&amp;nbsp;&lt;a href="http://community.kde.org/Dolphin/Dolphin-2.0-Status"&gt;Dolphin 2.0 Status&lt;/a&gt;&amp;nbsp;page and I'm confident that during the 4.8.x release cycle most regressions can be fixed.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;Outlook for Dolphin 2.1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;As the development-focus will be to fix the regressions and making the fixes available for the 4.8.x cycles, there is not much room for big features in Dolphin 2.1. But there is one feature that I miss since Dolphin 1.0 and that could not be implemented with the old view-engine: The showing of any arbitrary meta-data of a file in the views. The tooltips and the information panel already can show things like rating, tags, album-name, image-size and a lot more:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-ft0xKyMscSo/TwN2hO9UUpI/AAAAAAAAAkw/qbwrwa8cUi0/s1600/Dolphin+2+info-panel.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-ft0xKyMscSo/TwN2hO9UUpI/AAAAAAAAAkw/qbwrwa8cUi0/s1600/Dolphin+2+info-panel.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Now in Dolphin 2.1 it will be possible to show all this kind of meta-data as part of a file or directory in all view-modes (this also includes sorting and grouping). The view-engine internally already supports this but I could not finalize the user interface for the 2.0 version.&lt;br /&gt;&lt;br /&gt;This makes it e.g. possible to configure a kind of "Music view" where for each song the artist, album-name and the rating is shown. Another usecase might be images, where showing the image-width and -height as part of each image might be useful.&lt;br /&gt;&lt;br /&gt;Finally I'd like to say thanks especially to Frank Reininghaus, who helped a lot to get the new view-engine in shape. Frank told me he probably wants to give some development-updates on Planet KDE in future, but I think I need to create some public pressure by mentioning this here to make it happen ;-)&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/1805078603192884353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=1805078603192884353' title='72 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1805078603192884353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1805078603192884353'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2012/01/dolphin-20-status-update.html' title='Dolphin 2.0 - Status Update'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-PoJSqMNeFDA/TwN1YXJvNLI/AAAAAAAAAkM/GyUuBqhgqkY/s72-c/Dolphin+2+icons-grouping.png' height='72' width='72'/><thr:total>72</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-6678184106008871467</id><published>2011-08-01T08:45:00.000+02:00</published><updated>2011-08-01T08:45:57.241+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Introducing Dolphin 2.0</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-_UQDwt6fib4/TjRcpU0dI8I/AAAAAAAAAiY/xyr9eJKnQ4o/s1600/dolphin-2.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-_UQDwt6fib4/TjRcpU0dI8I/AAAAAAAAAiY/xyr9eJKnQ4o/s1600/dolphin-2.png" /&gt;&lt;/a&gt;&lt;/div&gt;During the last months I've been working on Dolphin 2.0 which is planned to get released with the 4.8 release of KDE Applications. Dolphin 2.0 will get a new "view-engine" that will have several improvements in comparison to the current version.&lt;br /&gt;&lt;br /&gt;Well, what means "view-engine" in the scope of Dolphin? The view-engine is responsible for showing the directory content as icons and text. In a very simplified form it can be seen as the sum of Dolphin's "icons mode", "details mode" and "columns mode".&lt;br /&gt;&lt;br /&gt;The current version 1.7 of Dolphin is based on &lt;a href="http://doc.trolltech.com/4.0/qt4-interview.html"&gt;Qt's Interview Framework&lt;/a&gt;. Regarding the quality of the Interview Framework I'd like to quote a Qt developer from the &lt;a href="http://labs.qt.nokia.com/2008/10/24/itemviews-the-next-generation/"&gt;Qt Labs Itemviews - The Next Generation&lt;/a&gt;&amp;nbsp; article:&lt;br /&gt;&lt;blockquote&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;"Not surprising. If you are using Qt, chances are you are using the item views. And if you are using the item views, you are likely to have an opinion about them. While using these classes you may have even form the opinion that they are not exactly the most shining example of Qt quality framework and API design. Let’s just say that there is room for improvement, lots of room! The symptoms are clear: the framework is generally too slow, unstable and the API is difficult to use. A clear case of overly complex design."&lt;/i&gt;&lt;/div&gt;&lt;/blockquote&gt;Having worked with the Interview Framework during the last four years I fully agree to this (... and probably would not have phrased it as friendly as in this quote ;-)). As an alternative for the Interview Framework a research project called &lt;a href="http://qt.gitorious.org/qt-labs/itemviews-ng"&gt;Itemviews-NG&lt;/a&gt;&amp;nbsp;has been created. After comparing Itemviews-NG with the view-engines-related code from &lt;a href="http://meego.gitorious.org/meegotouch/libmeegotouch"&gt;libmeegotouch&lt;/a&gt;&amp;nbsp;and &lt;a href="http://qt.gitorious.org/qt-components"&gt;Qt-Components&lt;/a&gt; it was clear that currently for Dolphin the Itemviews-NG would be the best choice. So the new view-engine for Dolphin 2.0 is build on a (very) modified subset of Itemviews-NG. In the longterm (probably with Qt 5) it is planned to integrate &lt;a href="http://qt.nokia.com/qtquick/"&gt;Qt-Quick&lt;/a&gt; but this affects only a non-critical minor part of the view-engine and has not high priority at the moment.&lt;br /&gt;&lt;br /&gt;So much talk about the new base of the view-engine, but which benefits get the users of Dolphin by this?&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Improved Performance&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The new view-engine has been tested on a computer with a very slow hard-disk and developed with corner-cases in mind where the current view-engine had serious performance troubles. Now switching view-modes, zooming, resizing, ... is done with nearly no delay no matter how many items a directory has.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Unclipped Filenames&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;With Qt's Interview Framework having dynamic item-heights the way Dolphin required it was not possible. As workaround Dolphin used a fixed grid-size where the user could configure the maximum number of textlines. No matter which value has been used: Either the item-height got too large or the text got clipped like this:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-bjBEKCAyNv0/TjRXZaVpEiI/AAAAAAAAAiE/KCj19IBBXhE/s1600/dolphin-clipped-filename.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-bjBEKCAyNv0/TjRXZaVpEiI/AAAAAAAAAiE/KCj19IBBXhE/s1600/dolphin-clipped-filename.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Like most other filemanagers now also Dolphin is able to have dynamic item-sizes:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-0uQjx778G-U/TjRXk9PObpI/AAAAAAAAAiI/vgC6NN_h2uY/s1600/dolphin-unclipped-filename.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-0uQjx778G-U/TjRXk9PObpI/AAAAAAAAAiI/vgC6NN_h2uY/s1600/dolphin-unclipped-filename.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;As a side-effect Dolphin 2.0 wastes less space and can show more items in parallel when using the same icon-size as the current Dolphin version.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Nonrectangular Item Boundaries&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The Interview Framework only supports rectangular item boundaries. This means that moving the mouse above the position marked as red spot...&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-P0NtA-94Zow/TjRYNA-Fn-I/AAAAAAAAAiM/9zchz-8PP-4/s1600/dolphin-rectangular-bounds.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-P0NtA-94Zow/TjRYNA-Fn-I/AAAAAAAAAiM/9zchz-8PP-4/s1600/dolphin-rectangular-bounds.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;... results already in hovering the whole item:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-UazJVcw8_AI/TjRYSXOngwI/AAAAAAAAAiQ/9syatIs9FyI/s1600/dolphin-rectangular-bounds-hovered.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-UazJVcw8_AI/TjRYSXOngwI/AAAAAAAAAiQ/9syatIs9FyI/s1600/dolphin-rectangular-bounds-hovered.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The new view-engine provides optimized non-rectangular item boundaries:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-20OHyOKs02o/TjRYZ8hxVkI/AAAAAAAAAiU/SM7uh_NkgBo/s1600/dolphin-non-rectangular-bounds.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-20OHyOKs02o/TjRYZ8hxVkI/AAAAAAAAAiU/SM7uh_NkgBo/s1600/dolphin-non-rectangular-bounds.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;So the hovering only takes place when the mouse pointer is above the the icon or text like in KDE 3&amp;nbsp;(Note that the look of the hovering is just a prototype and might change)&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Grouping Support For All View Modes&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Currently the "grouping" feature is only supported for the icons mode but will be available for all view-modes in Dolphin 2.0. I could not provide a screenshot yet as the code for grouping is still in a very early alpha-stage. In opposite to the current version of Dolphin grouping will not slow down the performance at all.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Animated Transitions&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;At the moment when removing or inserting items, changing the zoom-level or resizing the window the item-positions change magically from the original position to the new position. This sometimes makes it tricky for users to follow the new location of the items. With Dolphin 2.0 the layout-engine is fast enough to make those transitions animated. I don't like animations that slow-down the usage of an application so I took care to make them fast and unobtrusive.&lt;br /&gt;&lt;br /&gt;From a developers point of view the new engine simplifies the maintenance a lot and lowers the barrier for developers to contribute patches for Dolphin. The code has been pushed to master today. Please note that the code is in an early alpha-stage and although the most tricky parts have been implemented already very basic things like drag and drop or selections have not been pushed yet. Those things are rather trivial to implement but it is still a lot of work and takes some time to have back the original feature-set. But I'm confident that everything will be ready until the 4.8 release of KDE Applications and hope that the new view-engine will justify the 2.0 version number :-)&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://desktopsummit.org/"&gt;&lt;img border="0" height="105" src="http://2.bp.blogspot.com/-wOvSAhLy0lE/TjRtT2FkFsI/AAAAAAAAAic/V-TQBhYqxvk/s320/DS2011banner.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/6678184106008871467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=6678184106008871467' title='86 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/6678184106008871467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/6678184106008871467'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2011/08/introducing-dolphin-20.html' title='Introducing Dolphin 2.0'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-_UQDwt6fib4/TjRcpU0dI8I/AAAAAAAAAiY/xyr9eJKnQ4o/s72-c/dolphin-2.png' height='72' width='72'/><thr:total>86</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-1548560315649705690</id><published>2011-03-27T20:56:00.004+02:00</published><updated>2011-03-27T21:06:31.858+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Menu Bars</title><content type='html'>The &lt;a href="http://en.wikipedia.org/wiki/Menu_bar"&gt;menu bar&lt;/a&gt; has always been a kind of "holy grail" of user interface elements for me. It contains all application commands and allows the user to discover the application capabilies and to learn the keyboard shortcuts. Often used commands are placed into the toolbar for faster access.&lt;br /&gt;&lt;br /&gt;I did no scientific research about this, but I think first it was Microsoft with Windows Vista which started to put the menu bar into question for some applications:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The &lt;a href="http://de.wikipedia.org/wiki/Ribbon"&gt;ribbon&lt;/a&gt; replaced the traditional menu bar for their office suite.&lt;/li&gt;&lt;li&gt;The menu bar is hidden per default in the Internet Explorer and the Windows Explorer. To still be able accessing all commands a kind of menu-button has been added to the toolbar.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Until I tried those applications I've been a strong opponent of those "menu bar violations". But after working a while with both approaches it seems that ribbons work very well for applications with a huge number of commands. I'm not sure whether the Internet Explorer or Google Chrome has been the first browser without menu bar, but as user of Chrome since around two years I was surprised that I never missed the menu bar and liked the well-arranged menu button.&lt;br /&gt;&lt;br /&gt;I got the impression that the menu button as replacement works well for applications with quite less commands. In the meantime even Firefox 4 has switched to a default setup where no menu bar is shown; so I asked myself whether this might be an option for Dolphin and simply gave it a try. Since the release of Dolphin with 4.5 I try to strive for a cleaner and less cluttered default setup and now with having no menu bar I think the default setup is quite OK [1]:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-9ujy04d0LMc/TY-FyUfXOuI/AAAAAAAAAeA/e6QxAfTjTXM/s1600/dolphin-default-4-6.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="260" src="http://3.bp.blogspot.com/-9ujy04d0LMc/TY-FyUfXOuI/AAAAAAAAAeA/e6QxAfTjTXM/s320/dolphin-default-4-6.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;It gets move obvious when comparing this with the default setup in 4.5:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-kPUWm70BiTk/TY-F2-nHhyI/AAAAAAAAAeE/4-qYD5yJVk8/s1600/dolphin-default-4-5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="209" src="http://2.bp.blogspot.com/-kPUWm70BiTk/TY-F2-nHhyI/AAAAAAAAAeE/4-qYD5yJVk8/s320/dolphin-default-4-5.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Before the complaints "I want my menu bar back" start: Of course it is possible to enable the traditional menu bar :-)&lt;br /&gt;&lt;br /&gt;Back to the new default setup of Dolphin. Beside the missing menu bar a lot of smaller updates have been done too:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The Information Panel on the right is hidden.&lt;/li&gt;&lt;li&gt;Toolbar items where the icon is sufficient for knowing the command don't have a text. By the way: In 4.7 this can be changed by a simple right-click.&lt;/li&gt;&lt;li&gt;If the Places Panel is shown (like in both screenshots on the left) the "places selector" left from the Home &amp;gt; Pictures &amp;gt; Wallpapers path is hidden as it is duplicated functionality provided by the Places Panel.&lt;/li&gt;&lt;li&gt;The Panels are "locked" per default like in Amarok and don't have a headline and two buttons.&lt;/li&gt;&lt;li&gt;The search bar at the top right has been integrated into the view when executing the "Find" command.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Please note that those points just talk about default settings, no functionality has been taken away. For me it was - and still is - one of the main goals of Dolphin that it is easy and efficient to use without cutting too many features. I somehow like it that despite the added functionality during the last years this is not reflected in additional visual clutter. When looking back at the &lt;a href="http://dolphin.kde.org/news.html"&gt;history of Dolphin screenshots&lt;/a&gt; it is somehow funny that for the upcoming 4.7 release Dolphin looks more similar to the old KDE 3 version than the 4.5 version :-)&lt;br /&gt;&lt;br /&gt;[1] Please ignore the current look of the zoom-icons in the bottom-right of the screenshot. They will be replaced by a more decent version created by Nuno before 4.7.</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/1548560315649705690/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=1548560315649705690' title='82 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1548560315649705690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1548560315649705690'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2011/03/menu-bars.html' title='Menu Bars'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-9ujy04d0LMc/TY-FyUfXOuI/AAAAAAAAAeA/e6QxAfTjTXM/s72-c/dolphin-default-4-6.png' height='72' width='72'/><thr:total>82</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-185949052969915001</id><published>2011-03-05T15:18:00.015+01:00</published><updated>2011-03-06T09:55:40.286+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Don't Crash When Reading Metadata</title><content type='html'>&lt;div&gt;&lt;div&gt;Each time a tooltip is shown in Dolphin or the Information Panel is enabled the metadata of a file must be retrieved:&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-7B-fPp5GbLY/TXJGhU4NjJI/AAAAAAAAAbw/R3LdyZzQ9B0/s1600/tooltips-4-6-0.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 211px;" src="http://3.bp.blogspot.com/-7B-fPp5GbLY/TXJGhU4NjJI/AAAAAAAAAbw/R3LdyZzQ9B0/s400/tooltips-4-6-0.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5580600426619571346" /&gt;&lt;/a&gt;&lt;div&gt;&lt;b&gt;History&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When Dolphin has been written for KDE &lt;strike&gt;SC&lt;/strike&gt; 3 this was straight forward: The class &lt;a href="http://api.kde.org/4.x-api/kdelibs-apidocs/kio/html/classKFileMetaInfo.html"&gt;KFileMetaInfo&lt;/a&gt; has been used and the metadata was read in the context of the application within a short period of time. The fast retrieving was possible by using the hint KFileMetaInfo::Fastest that assured only up to 64 KByte of the file are read. This limit was sufficient for getting the most important metadata.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;With the transition to KDE SC 4.0 KFileMetaInfo internally has been rewritten to use &lt;a href="http://de.wikipedia.org/wiki/Strigi"&gt;Strigi&lt;/a&gt; for getting the metadata. Like Dolphin and other components in KDE SC 4.0 also KFileMetaInfo and some metadata analyzers of Strigi had rough edges:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;The KFileMetaInfo::Fastest hint simply has been ignored. Hovering a big video file resulted in reading the whole file. As this reading has been done in the context of the application Dolphin was completely blocked during that period of time.&lt;/li&gt;&lt;li&gt;When implementing the KFileMetaInfo::Fastest hint later it turned out that a few analyzers of Strigi simply decided to ignore this limit.&lt;/li&gt;&lt;li&gt;To bypass a blocking Dolphin I've moved the reading of the metadata into a thread. This worked well until it turned out that some analyzers are not reentrant and yet-another-workaround was required to prevent two threads using a similar analyzer.&lt;/li&gt;&lt;li&gt;Sebastian Trüg (although not responsible for this part of the code) investigated some cool work into KFileMetaInfo and found a way to let all Strigi analyzers respect the 64 KByte limit without changing the analyzers. I was very happy about this until it turned out that some analyzers crash when they get streams ending after 64 KByte...&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Current State&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The following things work now in KDE SC 4.6:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;The quality of a lot of Strigi analyzers has been improved during the last years and most of them work very reliable.&lt;/li&gt;&lt;li&gt;The analyzers work fast by getting only 64 KByte to read.&lt;/li&gt;&lt;li&gt;In comparison to KDE &lt;strike&gt;SC&lt;/strike&gt; 3 the metadata is read in a custom thread which makes the user interface even more responsive.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Still open:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Some analyzers are not reentrant. This is not a big showstopper as reading metadata in parallel is anyhow quite rare so the workaround to serialize the access won't result in a noticable slowdown from a users point of view.&lt;/li&gt;&lt;li&gt;Some analyzers crash (and hence also Dolphin crashes).&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;From a users point of view it is not important whether Dolphin crashes because of an analyzer or because of an issue in the Dolphin code. Although most of the analyzers are very stable in the meantime it is still a pain for users that e.g. have some Powerpoint-files where the corresponding analyzer simply cannot scope with the 64 KByte limit.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;KDE SC 4.7&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I understand that writing metadata analyzers can be very tricky, but I was always convinced that not crashing when reading data is not difficult. But no matter whether I'm right or wrong with this assumption: Fact is that more than 3 years after the release of KDE SC 4.0 a few analyzers still crash and seem to be without maintainers that care about this.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Well, with KDE SC 4.7 those crashes will not result in crashing Dolphin anymore. I've moved the reading of the metadata into a custom process. If an analyzer crashes then the worst thing that happens is that no metadata is retrieved. The nice thing is that this also solves crashes for other components that read metadata: E.g. the fileproperties-dialog or overwrite-dialog of kdelibs. In retrospective I should have done this already a lot earlier, but the fact that the old approach worked so well in KDE &lt;strike&gt;SC&lt;/strike&gt; 3 just made me resist to use a dedicated process for this. In the meantime I'm convinced that this approach is the right way in the longterm: It is simply risky if the stability of an application or some kdelibs-dialogs depend from external plugins where the quality of the code varies a lot.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So let's hope this is my last metadata-related post and that this topic is solved finally :-)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Update&lt;/b&gt;: Carsten Pfeiffer pointed out that in KDE 3 the KFileMetaInfo::Fastest hint did not restrict the parsing to 64 KByte. Instead it was up to the analyzers itself how they provide metadata that can be calculated cheaply. Too sad that most of the current Strigi analyzers don't support this.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/185949052969915001/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=185949052969915001' title='15 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/185949052969915001'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/185949052969915001'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2011/03/dont-crash-when-reading-metadata.html' title='Don&apos;t Crash When Reading Metadata'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-7B-fPp5GbLY/TXJGhU4NjJI/AAAAAAAAAbw/R3LdyZzQ9B0/s72-c/tooltips-4-6-0.png' height='72' width='72'/><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-9185995728678033287</id><published>2010-12-22T08:39:00.003+01:00</published><updated>2010-12-22T10:56:29.515+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Dropbox Integration for Dolphin</title><content type='html'>Thomas Richard contacted me recently and told me that he is working on a &lt;a href="http://trichard-kde.blogspot.com/2010/12/introducing-dropbox-integration-for.html"&gt;Dropbox integration for Dolphin&lt;/a&gt;. I tried the plugin already and it looks very promising - any testing would be very welcome!</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/9185995728678033287/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=9185995728678033287' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/9185995728678033287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/9185995728678033287'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/12/dropbox-integration-for-dolphin.html' title='Dropbox Integration for Dolphin'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-1624910115180696673</id><published>2010-11-20T11:29:00.010+01:00</published><updated>2010-11-20T12:04:39.031+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Dolphin Improvements for KDE SC 4.6</title><content type='html'>&lt;div style="text-align: left;"&gt;As usual after the KDE feature freeze, I'd like to give an overview which improvements have been done in Dolphin for the next KDE SC.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;Searching&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;I wrote already about the &lt;a href="http://ppenz.blogspot.com/2010/07/search-improvements.html"&gt;search improvements&lt;/a&gt; some months ago. In the meantime Sebastian Trüg has extended Nepomuk by &lt;a href="http://trueg.wordpress.com/2010/09/08/308"&gt;facets&lt;/a&gt; and integrated them as "Filter Panel" into Dolphin:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_zDPqioLuxns/TOejaF3MeyI/AAAAAAAAAaM/9x2UgqVcQf0/s700/nepomuksearch.png"&gt;&lt;img src="http://2.bp.blogspot.com/_zDPqioLuxns/TOejaF3MeyI/AAAAAAAAAaM/9x2UgqVcQf0/s700/nepomuksearch.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 308px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5541577535148292898" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;The facets provide a very comfortable way for the user to shrink the number of search results. From a developers point of view those facets are a great thing too: It is easy to integrate them into an application. A lot of default facets are offered by Nepomuk, but it is also possible to embed custom facets.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;As &lt;a href="http://ppenz.blogspot.com/2010/07/search-improvements.html"&gt;mentioned earlier&lt;/a&gt; Dolphin now allows to search for files even if Nepomuk is disabled, however the "Filter Panel" is a feature that only works in combination with Nepomuk and indexed files (at least for KDE SC 4.6). &lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Beside this improvements also other finetuning has been done for searching:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul&gt;&lt;li&gt;The default view has been changed to show the path.&lt;/li&gt;&lt;li&gt;The context menu allows to open the search result in a new tab or window.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;Column View&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Some long overdue improvements have been done for the column view:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul&gt;&lt;li&gt;The column width can be changed by the user.&lt;/li&gt;&lt;li&gt;The column width automatically is extended to the longest filename.&lt;/li&gt;&lt;li&gt;Rubberband selection like in the icons-view and details-view is possible.&lt;/li&gt;&lt;li&gt;Neighbor columns are always aligned in a way that it is possible to navigate through all columns without using the horizontal scrollbar.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a href="http://1.bp.blogspot.com/_zDPqioLuxns/TOemdbBmujI/AAAAAAAAAac/kSn0HgUEoSM/s700/columnview.png"&gt;&lt;img src="http://1.bp.blogspot.com/_zDPqioLuxns/TOemdbBmujI/AAAAAAAAAac/kSn0HgUEoSM/s400/columnview.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 205px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5541580890903591474" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;Git Plugin&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Sebastian Dörner and Johannes Steffen have implemented a Git plugin for Dolphin. It is part of the kdesdk-package.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;a href="http://1.bp.blogspot.com/_zDPqioLuxns/TOejgdSm3gI/AAAAAAAAAaU/StSBboCnEG0/s700/gitplugin.png"&gt;&lt;img src="http://1.bp.blogspot.com/_zDPqioLuxns/TOejgdSm3gI/AAAAAAAAAaU/StSBboCnEG0/s400/gitplugin.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 205px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5541577644516498946" /&gt;&lt;/a&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;Other Improvements&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;ul&gt;&lt;li&gt;Folders Panel: Improved automatic horizontal scrolling (can be disabled now too).&lt;/li&gt;&lt;li&gt;Improved context-menu when no file is selected&lt;/li&gt;&lt;li&gt;Multiple renaming: It is now possible to provide leading zeros if wanted (patch implemented by Matthias Fuchs)&lt;/li&gt;&lt;li&gt;&lt;a href="http://ppenz.blogspot.com/2010/11/improved-service-menus.html"&gt;Service menus&lt;/a&gt;&lt;/li&gt;&lt;li&gt;... and of course &lt;a href="https://bugs.kde.org/buglist.cgi?query_format=advanced&amp;amp;short_desc_type=allwordssubstr&amp;amp;short_desc=&amp;amp;product=dolphin&amp;amp;long_desc_type=substring&amp;amp;long_desc=&amp;amp;bug_file_loc_type=allwordssubstr&amp;amp;bug_file_loc=&amp;amp;keywords_type=allwords&amp;amp;keywords=&amp;amp;bug_status=RESOLVED&amp;amp;bug_status=VERIFIED&amp;amp;bug_status=CLOSED&amp;amp;resolution=FIXED&amp;amp;emailassigned_to1=1&amp;amp;emailtype1=substring&amp;amp;email1=&amp;amp;emailassigned_to2=1&amp;amp;emailreporter2=1&amp;amp;emailcc2=1&amp;amp;emailtype2=substring&amp;amp;email2=&amp;amp;bugidtype=include&amp;amp;bug_id=&amp;amp;votes=&amp;amp;chfieldfrom=2010-08-01&amp;amp;chfieldto=2010-12-31&amp;amp;chfield=[Bug+creation]&amp;amp;chfieldvalue=&amp;amp;cmdtype=doit&amp;amp;order=Reuse+same+sort+as+last+time&amp;amp;field0-0-0=noop&amp;amp;type0-0-0=noop&amp;amp;value0-0-0="&gt;a lot of bug fixes&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/1624910115180696673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=1624910115180696673' title='27 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1624910115180696673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1624910115180696673'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/11/dolphin-improvements-for-kde-sc-46.html' title='Dolphin Improvements for KDE SC 4.6'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_zDPqioLuxns/TOejaF3MeyI/AAAAAAAAAaM/9x2UgqVcQf0/s72-c/nepomuksearch.png' height='72' width='72'/><thr:total>27</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-5224392642289500202</id><published>2010-11-02T16:56:00.003+01:00</published><updated>2010-11-02T17:14:31.728+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Improved Service Menus</title><content type='html'>Dolphin and Konqueror offer so called "services-menus", which are shown when opening a context-menu of a file or directory. For example the context-menu for a JPG-file will show the menu entries "Convert to PNG", "Convert to GIF", ... - those entries are service-menus.&lt;br /&gt;&lt;br /&gt;It is very easy to &lt;a href="http://techbase.kde.org/index.php?title=Development/Tutorials/Creating_Konqueror_Service_Menus"&gt;create a service-menu&lt;/a&gt;. In a nutshell it is just a text-file that allows to start an application with the selected files as parameters.&lt;br /&gt;&lt;br /&gt;But service-menus also have some restrictions: Only the MIME-type is used as criteria to define which entries are shown. So it is not possible to show a service-menu only if e.g. exactly two files are selected or to create dynamic service-menus dependent on some meta-data of the selected files.&lt;br /&gt;&lt;br /&gt;Sebastian Trüg has written an interface called &lt;a href="http://api.kde.org/4.x-api/kdelibs-apidocs/kio/html/classKFileItemActionPlugin.html"&gt;KFileItemActionPlugin&lt;/a&gt; &lt;plugin-interface&gt;that bypasses those restrictions. The interface will be available in KDE SC 4.6.0 and is supported by Dolphin and Konqueror.&lt;br /&gt;&lt;br /&gt;Some developers might notice the similarity to the &lt;a href="http://api.kde.org/4.x-api/kdebase-apps-apidocs/lib/konq/html/classKonqPopupMenuPlugin.html"&gt;KonqPopupMenuPlugin&lt;/a&gt;, that has been available since ages, but is not supported by Dolphin. The reason why it is not supported in Dolphin are some interface-issues when using the plugin outside the scope of the Konqueror context-menu. After discussing this with David Faure and Sebastian Trüg we decided to cleanup the interface, call it KFileItemActionPlugin and mark the KonqPopupMenuPlugin as deprecated.&lt;br /&gt;&lt;br /&gt;Sadly there are not much applications for KDE 4 that take usage of the KonqPopupMenuPlugin interface. On one hand this is good as this means less efforts to port it to the new KFileItemActionPlugin interface. But on the other hand for the users out there this means a not so tight interaction of the KDE file-managers with applications.&lt;br /&gt;&lt;br /&gt;So this is a kind of invitation to all application developers out there: Possibly the KFileItemActionPlugin is also a benefit for your application to get integrated in a better way into the KDE file-managers :-)&lt;/plugin-interface&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/5224392642289500202/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=5224392642289500202' title='13 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/5224392642289500202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/5224392642289500202'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/11/improved-service-menus.html' title='Improved Service Menus'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><thr:total>13</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-29021454574887842</id><published>2010-07-24T16:44:00.029+02:00</published><updated>2010-07-24T21:02:53.514+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Search Improvements</title><content type='html'>&lt;div style="text-align: left;"&gt;KDE SC 4.5 will be out soon and as mentioned in an &lt;a href="http://ppenz.blogspot.com/2010/01/internal-cleanups.html"&gt;earlier blog entry&lt;/a&gt;, for Dolphin this release has been used to do bugfixing, polishing and internal cleanups of the code. I'm quite happy with the result, however last week I decided to have some fun again and have started to improve the search interface of Dolphin (will be part of KDE SC 4.6).&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;History&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;In KDE SC 4.3 a searchbox has been added to Dolphin's toolbar. It used &lt;a href="http://nepomuk.semanticdesktop.org/"&gt;Nepomuk&lt;/a&gt; to do the searching:&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_zDPqioLuxns/TEsAUwf9NEI/AAAAAAAAALo/aFv8NdJ3O4g/s700/search1.png"&gt;&lt;img src="http://2.bp.blogspot.com/_zDPqioLuxns/TEsAUwf9NEI/AAAAAAAAALo/aFv8NdJ3O4g/s600/search1.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5497488126752142402" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Although it was already possible to search also for tags, ratings and other kind of data, it was nearly unfeasible for users to discover this functionality. In KDE SC 4.4 I tried to improve this by showing some search options as soon as the user clicks into the searchbox:&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://4.bp.blogspot.com/_zDPqioLuxns/TEsBbhfY_2I/AAAAAAAAALw/d4_bTW4kAwQ/s700/search2.png"&gt;&lt;img src="http://4.bp.blogspot.com/_zDPqioLuxns/TEsBbhfY_2I/AAAAAAAAALw/d4_bTW4kAwQ/s600/search2.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5497489342493949794" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;By clicking on the green (+)-button, it was possible to specify the searching in a very detailed manner:&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a href="http://2.bp.blogspot.com/_zDPqioLuxns/TEsBz1u1CFI/AAAAAAAAAL4/_X4IjuEdkRU/s700/search3.png"&gt;&lt;img src="http://2.bp.blogspot.com/_zDPqioLuxns/TEsBz1u1CFI/AAAAAAAAAL4/_X4IjuEdkRU/s600/search3.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5497489760244271186" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;Problem #1&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;When I started to write this (quite complex) user interface, &lt;a href="http://trueg.wordpress.com/"&gt;Sebastian Trüg&lt;/a&gt; already told me about his concerns, that this kind of user interface might not be the best approach. Well, I still thought that I need to provide something for the users to allow them more specific searches; the feature freeze for 4.4 was near and so I finalized the implementation for this interface.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;But Sebastian was right: It turned out, that nearly nobody uses this (+)-button at all. It just takes way too many clicks to specify a query. A better approach is something like &lt;a href="http://www.chimera-bellerofonte.eu/"&gt;Alessandro Sivieri&lt;/a&gt; implemented in his &lt;a href="http://kde-apps.org/content/show.php/Sembrowser?content=117692&amp;amp;PHPSESSID=0d3b67d4126d276dcc69c827fe773c9e"&gt;semantic browser&lt;/a&gt;: Just provide basic filters, that allow the user gradually to decrease the number of found files if necessary.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;Problem #2&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Another issue is the distinction between searching indexed files with Nepomuk by the searchbox...&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a href="http://1.bp.blogspot.com/_zDPqioLuxns/TEsGZgfxZqI/AAAAAAAAAMA/Zf-NMX9X8Pk/s700/search1.png"&gt;&lt;img src="http://1.bp.blogspot.com/_zDPqioLuxns/TEsGZgfxZqI/AAAAAAAAAMA/Zf-NMX9X8Pk/s600/search1.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5497494805425514146" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;... and searching non-indexed files with the KFind shortcut in Dolphin:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a href="http://1.bp.blogspot.com/_zDPqioLuxns/TEsHCJ8v9nI/AAAAAAAAAMI/DhTbtVqXjoo/s635/search4.png"&gt;&lt;img src="http://1.bp.blogspot.com/_zDPqioLuxns/TEsHCJ8v9nI/AAAAAAAAAMI/DhTbtVqXjoo/s600/search4.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5497495503747675762" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Most users out there don't care about whether a file is indexed or not, so I tried to solve those two problems during the last week.&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;Improvements&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;When pressing the Strg+F shortcut (I don't know yet, whether "Find" should be part of the default toolbar setup), Dolphin changes from:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a href="http://2.bp.blogspot.com/_zDPqioLuxns/TEsJ-y7JT2I/AAAAAAAAAMQ/xWURQ2k3sgY/s785/search5.png"&gt;&lt;img src="http://2.bp.blogspot.com/_zDPqioLuxns/TEsJ-y7JT2I/AAAAAAAAAMQ/xWURQ2k3sgY/s600/search5.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5497498744562208610" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;to:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://2.bp.blogspot.com/_zDPqioLuxns/TEsKL_6xczI/AAAAAAAAAMY/EQnzH1qKfCw/s785/search6.png"&gt;&lt;img src="http://2.bp.blogspot.com/_zDPqioLuxns/TEsKL_6xczI/AAAAAAAAAMY/EQnzH1qKfCw/s600/search6.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5497498971388605234" /&gt;&lt;/a&gt;&lt;div style="text-align: left;"&gt;Not really revolutionary of course, but I like it that the breadcrumb gets replaced by the searchbox and hence no space is required anymore in the toolbar for the searchbox. The nice thing is that this searchbox integrates the KFind functionality and the Nepomuk searching in one interface. It is automatically detected internally, whether the current folder is indexed or not. Needless to say that for non-indexed folders it takes longer to query for e. g. all texts that have the word "test" inside, but it works. Also without Nepomuk it is of course not possible to query for files, that have a specific rating. But as soon as Nepomuk is available and the current folder is in the index, a filter-button is available on the right side. When pressing the filter-button, the searchbox gets extended:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a href="http://3.bp.blogspot.com/_zDPqioLuxns/TEsKd9fe3AI/AAAAAAAAAMg/ulYnj1Q7GGE/s785/search7.png"&gt;&lt;img src="http://3.bp.blogspot.com/_zDPqioLuxns/TEsKd9fe3AI/AAAAAAAAAMg/ulYnj1Q7GGE/s600/search7.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" border="0" alt="" id="BLOGGER_PHOTO_ID_5497499279974915074" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;The interface of those extensions is just a prototype currently, but the basic idea is similar to Alessandro Sivieri's semantic browser: Just allow the user with less clicks to minimize the search results &lt;i&gt;after&lt;/i&gt; doing a search by activating a filter. E. g. pressing on the "Home" tag will limit the search result to files that have been tagged with "Home". Although this does not sound very different in the first sight, it is a huge difference when trying it out yourself.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;For me personally the ability to search also on non-indexed folders is a big win: In my development environment I don't have indexed my sources, still I often require to grep for some strings in source files. So instead of using the terminal I now can use Dolphin for it :-)&lt;/div&gt;&lt;meta equiv="content-type" content="text/html; charset=utf-8"&gt;&lt;span class="Apple-style-span"   style="  -webkit-border-horizontal-spacing: 4px; -webkit-border-vertical-spacing: 4px; font-family:Verdana, 'Bitstream Vera Sans', Arial, Helvetica, Sans, 'Bitstream Vera Serif';font-size:12px;"&gt;&lt;a class="avatarname" href="http://www.blogger.com/usermanager/search.php?username=siv&amp;amp;PHPSESSID=0d3b67d4126d276dcc69c827fe773c9e" style="color: rgb(102, 102, 102); font-family: Verdana, 'Bitstream Vera Sans', Arial, Helvetica, Sans, 'Bitstream Vera Serif'; font-size: 7pt; text-decoration: none; font-weight: bold; z-index: 100000; "&gt;&lt;/a&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/29021454574887842/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=29021454574887842' title='26 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/29021454574887842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/29021454574887842'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/07/search-improvements.html' title='Search Improvements'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_zDPqioLuxns/TEsAUwf9NEI/AAAAAAAAALo/aFv8NdJ3O4g/s72-c/search1.png' height='72' width='72'/><thr:total>26</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-6102706203832276975</id><published>2010-06-02T19:07:00.006+02:00</published><updated>2010-06-02T19:24:36.607+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><title type='text'>Version Control Support in Dolphin</title><content type='html'>&lt;div&gt;&lt;div&gt;In KDE SC 4.4 Dolphin &lt;a href="http://ppenz.blogspot.com/2009/12/version-control-support.html"&gt;got support for Subversion&lt;/a&gt;:&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_zDPqioLuxns/TAaQJreiyoI/AAAAAAAAAJ0/3IvsdZugSlU/s1600/version_control_2.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 281px;" src="http://1.bp.blogspot.com/_zDPqioLuxns/TAaQJreiyoI/AAAAAAAAAJ0/3IvsdZugSlU/s400/version_control_2.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5478224492706843266" /&gt;&lt;/a&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;The Subversion support has been implemented as plugin, which is part of the kdebase package and loaded automatically after starting Dolphin.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For the upcoming KDE SC 4.5 two changes have been done:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;The Subversion plugin has been moved from kdebase to kdesdk. If you are updating to KDE SC 4.5 and don't have installed the kdesdk package, the old Subversion plugin from KDE SC 4.4 will of course still work. However it is recommended to install the kdesdk package to get an updated version.&lt;/li&gt;&lt;li&gt;The version control plugins are not enabled by default. Although the loading of the version control plugins is done asynchronously, it still consumes memory and (a little) performance. So if you are updating to KDE SC 4.5 and want to have version control support, you must enable the plugins once inside &lt;i&gt;Configure Dolphin... &gt; Services&lt;/i&gt;.&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;A very basic version of a Git plugin is already part of kdesdk. It only shows the version state of files and does not offer any context menu yet, but a group of students works already to improve this. The outcome will hopefully be merged to kdesdk until KDE SC 4.6 (oh dear: KDE SC 4.5 is not out yet and I'm already talking about 4.6 :-/)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/6102706203832276975/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=6102706203832276975' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/6102706203832276975'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/6102706203832276975'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/06/version-control-support-in-dolphin.html' title='Version Control Support in Dolphin'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_zDPqioLuxns/TAaQJreiyoI/AAAAAAAAAJ0/3IvsdZugSlU/s72-c/version_control_2.png' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-7616981015083033010</id><published>2010-04-21T16:23:00.003+02:00</published><updated>2010-04-22T12:49:05.325+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='KDE'/><category scheme='http://www.blogger.com/atom/ns#' term='Openismus'/><title type='text'>Autotools Support for Qt Creator</title><content type='html'>&lt;div&gt;&lt;a href="http://www.openismus.com/"&gt;Openismus&lt;/a&gt; gave me the opportunity to write a autotools plugin for &lt;a href="http://qt.nokia.com/products/developer-tools"&gt;Qt Creator&lt;/a&gt;. The plugin is available for download at &lt;a href="http://www.gitorious.org/qtcreator-autotools-plugin"&gt;http://www.gitorious.org/qtcreator-autotools-plugin&lt;/a&gt;. Please check the README file for installation instructions.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The plugin allows to load an autotools project and offers the following functionality:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Syntax highlighting for Makefile.am files&lt;/li&gt;&lt;li&gt;Automatic project tree update if a Makefile.am file or the configure.ac file has been changed&lt;/li&gt;&lt;li&gt;Out of source builds&lt;/li&gt;&lt;li&gt;Configuration of build steps&lt;/li&gt;&lt;li&gt;Code completion&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;The project is in a very early state and has not been tested yet by a broad user base. Any feedback would be very welcome!&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/7616981015083033010/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=7616981015083033010' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/7616981015083033010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/7616981015083033010'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/04/autotools-support-for-qt-creator.html' title='Autotools Support for Qt Creator'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-8924159573149688580</id><published>2010-03-11T11:17:00.003+01:00</published><updated>2010-03-11T17:24:46.801+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Openismus'/><title type='text'>Git</title><content type='html'>The question which version control system is "the best", is often the base for endless discussions. I'm quite pragmatic in this regard: I've used &lt;a href="http://en.wikipedia.org/wiki/IBM_Rational_ClearCase"&gt;Rational Clearcase&lt;/a&gt; during the last 9 years and worked with &lt;a href="http://www.cvshome.org/"&gt;CVS&lt;/a&gt; and &lt;a href="http://subversion.tigris.org/"&gt;Subversion&lt;/a&gt; during the last 4 years. From my experience the acceptance of a version control system depends a lot on how it matches to the software development workflow of a company/community.&lt;br /&gt;&lt;br /&gt;Personally I prefer the straight forward approach of Subversion over the (technically) powerful Clearcase. Still Subversion is cumbersome when working with temporary development branches and I was curious when I heard about the concepts used in &lt;a href="http://git-scm.com/"&gt;Git&lt;/a&gt;. After reading about Git I thought that it unites the benefits of Clearcase and Subversion without introducing any drawbacks.&lt;br /&gt;&lt;br /&gt;At &lt;a href="http://www.openismus.com/"&gt;Openismus&lt;/a&gt; I got the chance to work with Git on a real project. The first impression was ambivalent: On one hand Git is extremely powerful, fast and does not limit the developer how to work with branches or doing merges. On the other hand the learning curve is higher than expected and it requires a different mind set in comparison to centralized version control systems. Because of the huge amount of new possibilities a ruleset for projects using git is highly recommended. Git reminds me to C++: You can do wonderful things with it in a clever way, but it's very easy to shoot oneself in the foot.&lt;br /&gt;&lt;br /&gt;I still need to learn a lot about Git, but after a few weeks of working with it I already prefer it over Subversion a lot. More and more projects switch to Git, so this does seem to be a common experience.</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/8924159573149688580/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=8924159573149688580' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/8924159573149688580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/8924159573149688580'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/03/git.html' title='Git'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-8296332328532043599</id><published>2010-03-04T15:41:00.005+01:00</published><updated>2010-03-05T07:43:41.792+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Openismus'/><title type='text'>Packaging</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_zDPqioLuxns/S4_G12X6sTI/AAAAAAAAAJg/n2EiUCyFfwg/s1600-h/application-x-deb.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 128px; height: 128px;" src="http://3.bp.blogspot.com/_zDPqioLuxns/S4_G12X6sTI/AAAAAAAAAJg/n2EiUCyFfwg/s320/application-x-deb.png" alt="" id="BLOGGER_PHOTO_ID_5444789102945415474" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Before I joined &lt;a href="http://www.openismus.com/"&gt;Openismus&lt;/a&gt;, I never created RPM- or Debian-package for my sources. After releasing an early version of the &lt;a href="http://dolphin.kde.org/"&gt;Dolphin&lt;/a&gt; sources at &lt;a href="http://www.kde-apps.org/"&gt;www.kde-apps.org&lt;/a&gt;, friendly people stepped up and created RPM- or Debian-packages for them. When Dolphin got part of &lt;a href="http://www.kde.org/"&gt;KDE&lt;/a&gt;, the packaging anyhow was no problem anymore as it had been done by the Linux distributions.&lt;br /&gt;&lt;br /&gt;At Openismus one of my first tasks was the prepare Debian packages for &lt;a href="http://www.glom.org/"&gt;Glom&lt;/a&gt; and the Qt frontend &lt;a href="http://gitorious.org/qlom/qlom"&gt;Qlom&lt;/a&gt;. Beside preparing packages for Ubuntu Karmic, also packages for &lt;a href="http://maemo.org/"&gt;Maemo&lt;/a&gt; had to be created.&lt;br /&gt;&lt;br /&gt;I always thought developing software can be tricky, but now I know that creating a package is also very challenging and requires a very focused style of working. As there are many traps for beginners, I'd like to provide some useful links that helped me to fulfill this task (beside the help of my colleagues at Openismus of course):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.debian.org/doc/maint-guide/"&gt;Debian New Maintainers' Guide&lt;/a&gt;: Is a must-read if you need to create a package from scratch.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.murrayc.com/blog/permalink/2006/04/21/building-modified-debian-packages/"&gt;Building Modified Debian Packages&lt;/a&gt;: Provides a good overview for the case where a source package is available, which should be updated by some patches.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://wiki.maemo.org/Documentation/Maemo_5_Developer_Guide/Packaging%2C_Deploying_and_Distributing#Creating_Debian_Packages"&gt;Creating Debian Packages for Maemo&lt;/a&gt;: When creating a Debian package for Maemo, some things from the Debian New Maintainer's guide can be skipped, other additional steps are required. Beside step by step instructions to create a Maemo package from scratch, the differences to a default Debian package are explained well there.&lt;/li&gt;&lt;/ul&gt;Still there is a lot of room to fail at the beginning. There have been some traps I fell into and I'd like to summarize them as long as I can remember them:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Don't modify a decompressed version of a file that is part of the *.orig.tar.gz file, without updating the *.orig.tar.gz. This sounds (and is) obvious, but it is easy to fall into this trap when modifying e. g. a configure.ac file for testing. The result of doing such changes is that the local installation of the generated package might behave different in comparison to the official package created by a PPA.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Beside the build dependencies take care to verify the runtime dependencies. It is easy to forget this, as the local system most probably will already contain the needed packages.&lt;/li&gt;&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/8296332328532043599/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=8296332328532043599' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/8296332328532043599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/8296332328532043599'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/03/packaging.html' title='Packaging'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_zDPqioLuxns/S4_G12X6sTI/AAAAAAAAAJg/n2EiUCyFfwg/s72-c/application-x-deb.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-1602170401850188071</id><published>2010-02-22T19:05:00.004+01:00</published><updated>2010-02-22T19:19:20.903+01:00</updated><title type='text'>Profiling</title><content type='html'>Although I like &lt;a href="http://www.cbs.com/primetime/criminal_minds/"&gt;Criminal Minds&lt;/a&gt;, this blog entry is less thrilling: it's about profiling applications like Dolphin.&lt;br /&gt;&lt;br /&gt;When I faced a performance issue in Dolphin, I usually used &lt;a href="http://valgrind.org/"&gt;valgrind&lt;/a&gt; in combination with &lt;a href="http://valgrind.org/info/tools.html#callgrind"&gt;callgrind&lt;/a&gt; to find the bottleneck (valgrind --tool=callgrind dolphin -nofork). The output can be visualized by &lt;a href="http://kcachegrind.sourceforge.net/html/Home.html"&gt;KCacheGrind&lt;/a&gt; in a nice way:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_zDPqioLuxns/S4LIh7Oii5I/AAAAAAAAAJY/duSYQLTYzE8/s1600-h/kcachegrind.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 248px;" src="http://2.bp.blogspot.com/_zDPqioLuxns/S4LIh7Oii5I/AAAAAAAAAJY/duSYQLTYzE8/s320/kcachegrind.png" alt="" id="BLOGGER_PHOTO_ID_5441131784976894866" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;One big benefit of Valgrind is that it gives 100 % coverage of user-space code. But as usual there are rarely benefits without drawbacks: As valgrind is a kind of virtual machine, that uses just-in-time compiling, the application runs around 5 times slower. This can get a problem if timers are involved in the application. Also performance issues in combination with threads are tricky to identify, because valgrind does not give a non-obtrusive performance overview of the overall system.&lt;br /&gt;&lt;br /&gt;So I started to get familiar with &lt;a href="http://oprofile.sourceforge.net/news/"&gt;OProfile&lt;/a&gt; during the last week. OProfile is a non-obtrusive system-wide profiler, which means that the application runs (nearly) at the same speed as without profiler. OProfile gives an overview about the workload of all processes in the system. This is very useful for Dolphin, as the overall performance of Dolphin depends also on e. g. &lt;a href="http://nepomuk.semanticdesktop.org/xwiki/bin/view/Main1/"&gt;Nepomuk&lt;/a&gt; and asynchronous operations to e. g. get file previews. It is possible to convert the OProfile output to a readable KCachegrind file by 'opreport -gdf | op2calltree'.&lt;br /&gt;&lt;br /&gt;Dependent on the usecase, both tools are really helpful. The next thing on my TODO-list is to get more familiar to locate I/O bound bottlenecks: When reading the number of sub directories for 20000 directories, the bottleneck is definitely not on the CPU side (in this case neither Valgrind nor OProfile can detect the bottleneck). All in all I hope that I find the time during the KDE SC 4.5 cycle to improve the Dolphin performance in some areas with the help of these tools.</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/1602170401850188071/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=1602170401850188071' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1602170401850188071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1602170401850188071'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/02/profiling.html' title='Profiling'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_zDPqioLuxns/S4LIh7Oii5I/AAAAAAAAAJY/duSYQLTYzE8/s72-c/kcachegrind.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-1882878097322494556</id><published>2010-02-15T15:19:00.005+01:00</published><updated>2010-02-15T15:24:42.407+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Openismus'/><title type='text'>Visiting Openismus in Berlin</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_zDPqioLuxns/S3lYpEvEspI/AAAAAAAAAIo/sLzELQfBsAM/s1600-h/B_F_2_basic.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 200px; height: 150px;" src="http://4.bp.blogspot.com/_zDPqioLuxns/S3lYpEvEspI/AAAAAAAAAIo/sLzELQfBsAM/s200/B_F_2_basic.jpg" alt="" id="BLOGGER_PHOTO_ID_5438475487695647378" border="0" /&gt;&lt;/a&gt;On February the 1st I started my new job at &lt;a href="http://www.openismus.com/"&gt;Openismus&lt;/a&gt;. Most of the time I can work at home in Austria, but last Wednesday I got the chance to meet the Openismus team at their office in Berlin. Beside my first visit of Openismus, it was also my first visit of Berlin. I was very impressed by both of them: the team and Berlin.&lt;br /&gt;&lt;br /&gt;I got the chance to do some trials with Qt on Maemo and to get familiar with what is working well and which parts still need a lot of investigations. All developers at Openismus are Gnome people, being the only one using KDE is not always easy ;-) But maybe it helped that Dolphin does not look so much different in comparison to Nautilus - I even got a KDE-sticker from an Openismus colleague.&lt;br /&gt;&lt;br /&gt;I'm learning a lot of new stuff currently and will have less time during the next weeks for Dolphin. However this will change after mastering the usual time that is needed to get really productive. In the end I hope that I can apply the knowledge I gathered through KDE development with Dolphin for Openismus and also that Dolphin will benefit from the new things I learn at Openismus.</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/1882878097322494556/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=1882878097322494556' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1882878097322494556'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1882878097322494556'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/02/visiting-openismus-in-berlin.html' title='Visiting Openismus in Berlin'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_zDPqioLuxns/S3lYpEvEspI/AAAAAAAAAIo/sLzELQfBsAM/s72-c/B_F_2_basic.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-3993730017429037125</id><published>2010-01-31T12:42:00.015+01:00</published><updated>2010-01-31T14:07:33.386+01:00</updated><title type='text'>Internal Cleanups</title><content type='html'>&lt;span style="font-style: italic;"&gt;Warning: This might be a quite boring blog entry for non-developers - no fancy screenshots and no new features... ;-)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Beside taking care to keep Dolphin simple and efficient for users, it is also very important for me to do the same for the code: It should be simple and easy to maintain for developers.&lt;br /&gt;&lt;br /&gt;Sometimes this works quite well, but it also happens that parts of the code need to be refactored. It is quite common in commercial companies that developers don't get the chance to refactor the code: The user does not recognize it in the first sight and there is definitely a risk of having regressions.&lt;br /&gt;&lt;br /&gt;I'm convinced that in the long-term keeping the code base clean pays off and results in less bugs and easier maintenance. Although some features like &lt;a href="http://ppenz.blogspot.com/2009/11/searching.html"&gt;improved searching&lt;/a&gt; or &lt;a href="http://ppenz.blogspot.com/2009/12/version-control-support.html"&gt;version control support&lt;/a&gt; have been added for Dolphin in KDE SC 4.4, I also did some internal cleanups.&lt;br /&gt;&lt;br /&gt;For KDE SC 4.5 I want to completely concentrate on fine-tuning the code base of Dolphin, so that some long standing bugs can be fixed in a clean manner:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Information Panel&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_zDPqioLuxns/S2VtkynJ-TI/AAAAAAAAAII/GdQW3m-LydI/s1600-h/information_panel.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 122px; height: 244px;" src="http://4.bp.blogspot.com/_zDPqioLuxns/S2VtkynJ-TI/AAAAAAAAAII/GdQW3m-LydI/s400/information_panel.png" alt="" id="BLOGGER_PHOTO_ID_5432869004321093938" border="0" /&gt;&lt;/a&gt;I totally underestimated the complexity of the Information Panel before KDE SC 4.0 had been released and was never happy with the code-base. I tried to fix things from release to release (which can also be seen visually when looking at the screenshots from the &lt;a href="http://dolphin.kde.org/news.html"&gt;Dolphin-News&lt;/a&gt;). Now with KDE SC 4.4 the code-base is a lot better, although there is still some work until it can be moved to kdelibs to get shared with other applications (I blogged about it already in &lt;a href="http://ppenz.blogspot.com/2009/11/information-panel-and-tooltips.html"&gt;Information Panel and Tooltips&lt;/a&gt;). One issue that needs definitely to be solved for KDE SC 4.5 is a non-blocking fallback solution for showing meta information even when Nepomuk and Strigi indexing are turned off &lt;a href="https://bugs.kde.org/show_bug.cgi?id=193592"&gt;(bug 193592&lt;/a&gt;). Also fixing the missing meta information in the properties dialog (&lt;a href="https://bugs.kde.org/show_bug.cgi?id=190588"&gt;bug 190588&lt;/a&gt;) is a must.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Column View&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_zDPqioLuxns/S2Vt1cvXV4I/AAAAAAAAAIQ/JBnQ9_nuSf4/s1600-h/columns.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 381px; height: 179px;" src="http://4.bp.blogspot.com/_zDPqioLuxns/S2Vt1cvXV4I/AAAAAAAAAIQ/JBnQ9_nuSf4/s400/columns.png" alt="" id="BLOGGER_PHOTO_ID_5432869290507720578" border="0" /&gt;&lt;/a&gt;The column view has been added shortly before the feature freeze for KDE SC 4.0. I fell into the trap to assume that showing several columns cannot be much more difficult in comparison to the other views. The result was that the column view added a lot of complexity to the code and fixing column view related bugs was tricky. I cleaned up the code base for KDE SC 4.4 and am quite happy now: A lot of interfaces and workarounds could be removed, less code is needed and fixing column view bugs is straight forward. The beta releases and release candidates popped up some regressions, but they could be fixed quite fast.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Location bar ("breadcrumb")&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_zDPqioLuxns/S2Vt-jumavI/AAAAAAAAAIY/0K0VlvTcI0o/s1600-h/breadcrumb.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 258px; height: 27px;" src="http://4.bp.blogspot.com/_zDPqioLuxns/S2Vt-jumavI/AAAAAAAAAIY/0K0VlvTcI0o/s400/breadcrumb.png" alt="" id="BLOGGER_PHOTO_ID_5432869447002385138" border="0" /&gt;&lt;/a&gt;Long before KDE SC 4.0 had been released, the location bar was only meant as prototype. It happened too fast, that we moved it to kdelibs to make it available for the file dialog... It was my fault not taking care to cleanup up the public interface of this widget before KDE SC 4.0 (honestly speaking: There really where more serious problems to solve to that time ;-)). I could not manage to do a cleanup for KDE SC 4.4, but a refactored version is already available on trunk. There are two nice "side effects" of this cleanup:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Dolphin can now easily remember the expansion state of detail-view trees when going back in history (I've to thank Frank Reininghaus a lot for his contributions in this area).&lt;/li&gt;&lt;li&gt;The Dolphin code could be simplified, as it is very easy now to remember history states.&lt;/li&gt;&lt;/ol&gt;There are also a lot of minor things I wanted to fix since KDE SC 4.0 already. For example in the icons view the wrapping of file names is only done nice on spaces or the minus symbol. Dots and underscores are handled like letters, which might lead to nasty wrappings like:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   my_document.tx&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   t&lt;/span&gt;&lt;br /&gt;instead of&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   my_document.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The searching for Dolphin has already improved in KDE SC 4.4, but still needs a lot of work...&lt;br /&gt;&lt;br /&gt;Things like these are what I'd like to fix in Dolphin for KDE SC 4.5, so please don't expect huge, new features :-)&lt;br /&gt;&lt;br /&gt;BTW: I'm very happy to announce that on February the 1st I'll start working fulltime at &lt;a href="http://www.openismus.com/"&gt;Openismus&lt;/a&gt;. Most probably I'll get the chance to work with Qt for Maemo 6 (Harmattan).</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/3993730017429037125/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=3993730017429037125' title='16 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/3993730017429037125'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/3993730017429037125'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2010/01/internal-cleanups.html' title='Internal Cleanups'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_zDPqioLuxns/S2VtkynJ-TI/AAAAAAAAAII/GdQW3m-LydI/s72-c/information_panel.png' height='72' width='72'/><thr:total>16</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-7717856102392556487</id><published>2009-12-12T16:50:00.005+01:00</published><updated>2009-12-12T18:13:09.850+01:00</updated><title type='text'>Version Control Support</title><content type='html'>Before a feature is added in Dolphin, it is checked whether the feature is mandatory for &lt;a href="http://dolphin.kde.org/philosophy.html"&gt;Dolphin’s target user group&lt;/a&gt;. If this is not the case, it does not mean that the feature cannot be added; first it must be clarified whether the feature might be non-intrusive and adds a value for users outside the primary target user group. &lt;span style="font-style: italic;"&gt;Non-intrusive&lt;/span&gt; is mainly related to the user interface. A feature that adds a lot of clutter to the main menu, context menus or toolbar might harm the target user group. In this case the feature will not be added.&lt;br /&gt;&lt;br /&gt;A good example of a feature that is non-intrusive is the embedded terminal in Dolphin. It only requires one entry inside a sub menu, but adds great value for a lot of people that are not in the scope of Dolphin’s target user group.&lt;br /&gt;&lt;br /&gt;Another kind of non-intrusive feature will be available for Dolphin in KDE SC 4.4: version control support. In KDE 4.4 at least a plugin for Subversion is given:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_zDPqioLuxns/SyO8NIFGnkI/AAAAAAAAAH4/V7wu05i-JXU/s1600-h/version_control_2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 281px;" src="http://4.bp.blogspot.com/_zDPqioLuxns/SyO8NIFGnkI/AAAAAAAAAH4/V7wu05i-JXU/s400/version_control_2.png" alt="" id="BLOGGER_PHOTO_ID_5414378110722678338" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The version state emblems and additional entries in the context menu will only be shown if a directory is under version control, so this feature fulfills the requirements for being non-intrusive. The plugin still has a lot of rough edges and has mainly been written for testing the plugin interface. Still I use it regularly and it fulfills most of my needs.&lt;br /&gt;&lt;br /&gt;It is possible for developers to write other version control plugins for Git, Mercurial or whatever, just by following the instructions given in the &lt;a href="http://websvn.kde.org/trunk/KDE/kdebase/apps/lib/konq/kversioncontrolplugin.h?view=markup"&gt;plugin interface&lt;/a&gt;. In KDE SC 4.5 it is planned to embed the plugins as part of the kdevplatform package, but this has not been finally decided yet. The benefit to offer the plugins as part of kdevplatform will be, that the existing infrastructure for version control integration can be reused by the plugins.&lt;br /&gt;&lt;br /&gt;Big thanks go to Nuno Pinheiro, who created icons for the version control states!</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/7717856102392556487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=7717856102392556487' title='27 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/7717856102392556487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/7717856102392556487'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2009/12/version-control-support.html' title='Version Control Support'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_zDPqioLuxns/SyO8NIFGnkI/AAAAAAAAAH4/V7wu05i-JXU/s72-c/version_control_2.png' height='72' width='72'/><thr:total>27</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-3084242284346477546</id><published>2009-11-14T13:31:00.010+01:00</published><updated>2009-11-14T13:59:14.858+01:00</updated><title type='text'>Searching</title><content type='html'>If I compare the number of files on my current hard disk with the number of files I had 10 years ago, I'm quite amazed. How to deal with this increased number of files is topic of a lot discussions. Tagging, searching, filtering, relations, virtual folders... - terms, where from a KDE-developer's point of view Nepomuk comes to mind, which provides already all the technical base. Still there is the task to integrate Nepomuk into applications, so that users out there are able to benefit from this great technology.&lt;br /&gt;&lt;br /&gt;It's a small step only, but at least one step further: During the last week I've integrated &lt;a href="http://www.thekidder.com/2009/08/22/gsoc-2009-wrap-up"&gt;Addam Kidder's GSoC 2009 work&lt;/a&gt; into Dolphin. I know that some people don't see searching and filtering as "the solution" to deal with the increased number of files and I agree. Nepomuk offers a lot more, still the searching and filtering is a basic feature, that I personally require quite often during my workflow. The current state of the code is far from finished, still the basics are there now. As soon as the search-bar at the top gets focused, the search configurations pop up below as shown here:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_zDPqioLuxns/Sv6j1Y548ZI/AAAAAAAAAHg/XLSyabEI33w/s1600-h/searching0.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 336px;" src="http://2.bp.blogspot.com/_zDPqioLuxns/Sv6j1Y548ZI/AAAAAAAAAHg/XLSyabEI33w/s400/searching0.png" alt="" id="BLOGGER_PHOTO_ID_5403936740504826258" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Searching for files having the tag "Tree" is very simple. Selecting "Equal to" and the corresponding tag in the combo-boxes beside "Tag:" has the following result:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_zDPqioLuxns/Sv6kwQUpsRI/AAAAAAAAAHo/TtAKDTvYJg0/s1600-h/searching1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 336px;" src="http://3.bp.blogspot.com/_zDPqioLuxns/Sv6kwQUpsRI/AAAAAAAAAHo/TtAKDTvYJg0/s400/searching1.png" alt="" id="BLOGGER_PHOTO_ID_5403937751813435666" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;One goal of the interface was to minimize the number of clicks that are required to specify a search query. That's the reason why per default at least three (hopefully) commonly used search criterions are visible. For sure it is possible to create very complex queries with more criterions too:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_zDPqioLuxns/Sv6myDP6XZI/AAAAAAAAAHw/7XPDplyoXLY/s1600-h/searching3.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 336px;" src="http://3.bp.blogspot.com/_zDPqioLuxns/Sv6myDP6XZI/AAAAAAAAAHw/7XPDplyoXLY/s400/searching3.png" alt="" id="BLOGGER_PHOTO_ID_5403939981686889874" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Still I think users will use such complex search queries quite rarely. I had some discussions with Sebastian Trüg and Alessandro Sivieri regarding the &lt;a href="http://www.chimera-bellerofonte.eu/2009/11/nepomuk-meeting-results-and-plans"&gt;faceted panel&lt;/a&gt;, that exists as prototype currently. The discussion convinced me that a common workflow for users might be:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Fill the search-bar with some keywords and trigger the searching.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Only if the number of returned files is too high, start a filtering step by step on those files.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;This might sound obvious, but has implications on the user interface:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;The number of clicks to activate a filter must be minimized.&lt;/li&gt;&lt;li&gt;It should still be powerful: The kind of filters should not be limited.&lt;/li&gt;&lt;li&gt;Doing filtering step by step means that the user interface may not get hidden after triggering the first filter.&lt;/li&gt;&lt;/ol&gt;Especially the combination of point 1 and 2 have requires doing some compromises. Limiting the number of clicks requires more screen space. As there is only a limited screen space, the number of shown filters must be decreased. Finding a balanced solution is quite tricky.&lt;br /&gt;&lt;br /&gt;I'm also unsure which data the breadcrumb should show: Visualizing a string like "nepomuksearch:/+lastModified&lt;2009-11-13 +rating&lt;8 +tag:Peter" to the user is something where I doubt Apple would do. Any suggestions would be welcome.&lt;br /&gt;&lt;br /&gt;That's also one purpose to write this blog entry: Please let me know your daily problems when trying to search and filter files from your hard disk. I hope that I can integrate your input until KDE 4.4... Thanks!</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/3084242284346477546/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=3084242284346477546' title='18 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/3084242284346477546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/3084242284346477546'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2009/11/searching.html' title='Searching'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_zDPqioLuxns/Sv6j1Y548ZI/AAAAAAAAAHg/XLSyabEI33w/s72-c/searching0.png' height='72' width='72'/><thr:total>18</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-2358355005500017706</id><published>2009-11-06T20:12:00.002+01:00</published><updated>2009-11-06T20:17:45.447+01:00</updated><title type='text'>Information Panel and Tooltips</title><content type='html'>Dolphin for KDE 4.4 will provide a refactored information panel and refactored tooltips. The goals of the refactoring have been:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Show the same data in the information panel and the tooltips. Up to now the information panel did not provide any information about the permissions or the owner of a file. The tooltips have shown this kind of information already, but they did not provide informations like rating, comments or tags.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Prevent a possible blocking of the user interface, even when a slow Nepomuk backend or a buggy Strigi analyzer is installed. Although in KDE 4.3 some improvements had been done already, there have been still problems in this regard especially for tooltips.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Improve the layout of the information. The rating, comment and tags information are not handled in a special manner anymore.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Simplify the interface for editing tags and comments.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Although there is still a lot of finetuning necessary until KDE 4.4, it is obvious already that the tooltips...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_zDPqioLuxns/SvR1T1EEqZI/AAAAAAAAAHY/JqruXlGWa9Y/s1600-h/tooltip.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 334px;" src="http://2.bp.blogspot.com/_zDPqioLuxns/SvR1T1EEqZI/AAAAAAAAAHY/JqruXlGWa9Y/s400/tooltip.png" alt="" id="BLOGGER_PHOTO_ID_5401070836646193554" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;... show the same information as the information panel:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_zDPqioLuxns/SvR1PUo_beI/AAAAAAAAAHQ/Rm5ykHAqBXM/s1600-h/information_panel.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 336px;" src="http://3.bp.blogspot.com/_zDPqioLuxns/SvR1PUo_beI/AAAAAAAAAHQ/Rm5ykHAqBXM/s400/information_panel.png" alt="" id="BLOGGER_PHOTO_ID_5401070759223193058" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Originally it was planned to move the refactored widget to kdelibs, so that applications like Mailody, Gwenview and Okular can show the informations in a similar way. However there have been some usecases especially in combination with Gwenview, where the interface of widget was not sufficient yet. So we decided to leave the widget in Dolphin for KDE 4.4, but I'm confident that we find a good solution until KDE 4.5.</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/2358355005500017706/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=2358355005500017706' title='21 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/2358355005500017706'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/2358355005500017706'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2009/11/information-panel-and-tooltips.html' title='Information Panel and Tooltips'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_zDPqioLuxns/SvR1T1EEqZI/AAAAAAAAAHY/JqruXlGWa9Y/s72-c/tooltip.png' height='72' width='72'/><thr:total>21</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-1684571571282853982</id><published>2009-06-24T16:10:00.004+02:00</published><updated>2009-06-24T16:39:16.804+02:00</updated><title type='text'>Nepomuk and Dolphin</title><content type='html'>Sebastian Trüg already &lt;a href="http://trueg.wordpress.com/2009/06/23/the-first-nepomuk-workshop-its-a-wrap/"&gt;blogged&lt;/a&gt; about the Nepomuk Coding Sprint that happened last weekend in Freiburg. It was great to meet all the guys in person and to share ideas face to face. Sebastian was a great host and I liked the general spirit of the meeting :-)&lt;br /&gt;&lt;br /&gt;I just wanted to give a short summary from a Dolphin point of view. On the weekend the following things have been improved for KDE 4.3:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The labels for Nepomuk meta information have been fixed.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;The usability of the comment widget in the Information Panel has been improved.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Performance problems when renaming several hundreds of items have been fixed. Originally I thought this has been caused by Nepomuk, but it was a Dolphin internal issue.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;We could track down the root cause for freezes when a tooltip is shown for huge PDF files and MPEG files. Originally we wanted to  discuss whether we want to use Nepomuk instead of Strigi to get the meta information, but it turned out that only two Strigi analyzers need to be fixed to respect a maximum size setting.&lt;/li&gt;&lt;/ul&gt;Well, I was not as productive as I wanted to be. The main cause was that my development environment on the Notebook was not setup properly and it took me some time to fix it (until this sprint I did not use my Notebook for development).&lt;br /&gt;&lt;br /&gt;The more interesting thing is what we’ll try to improve  for KDE 4.4:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Better search integration&lt;/span&gt;. Although Dolphin for KDE 4.3 offers a search box, this is just a first start. We did some discussions and Dolphin for KDE 4.4 will offer a user interface element to configure the search query in an easy manner. Maybe this interface element can be used by other applications too if it works well.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Fix usability issues of the tag rating widget&lt;/span&gt;. The tag rating widget in the Information Panel has some usability issues. Gwenview goes into the right direction I think and the goal is to have a common widget for KDE 4.4.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Sebastian introduced his &lt;span style="font-weight: bold;"&gt;Formatting Rule System&lt;/span&gt; which might be very useful for the Information Panel. It requires a lot of work as it is still in draft, so it’s unclear whether we can integrate this to KDE 4.4 already.&lt;/li&gt;&lt;/ul&gt;Generally I was impressed how much potential Nepomuk offers. I think it will take quite some time, but I’m convinced that real innovative things can be done in future by using Nepomuk (especially in combination with PIM related applications).</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/1684571571282853982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=1684571571282853982' title='12 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1684571571282853982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/1684571571282853982'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2009/06/nepomuk-and-dolphin.html' title='Nepomuk and Dolphin'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><thr:total>12</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-687449731857853630</id><published>2009-05-01T22:59:00.003+02:00</published><updated>2009-05-01T23:21:31.613+02:00</updated><title type='text'>Qt Creator</title><content type='html'>In the office I use Microsoft Visual Studio and Eclipse for the C++/Java development. For developing Dolphin I used an editor and the shell, but honestly speaking in comparison to an IDE this is very inefficient especially when it comes to debugging.&lt;br /&gt;&lt;br /&gt;After reading &lt;a href="http://blog.cryos.net/archives/218-Qt-Creator,-CMake-and-C++Qt-Development.html"&gt;Qt Creator, CMake and C++/Qt Development&lt;/a&gt; I gave &lt;a href="http://www.qtsoftware.com/products/developer-tools"&gt;Qt Creator&lt;/a&gt; a try and was highly impressed. Although it currently cannot compete with the functionality of an IDE like Visual Studio or Eclipse it is a pleasure to work with Qt Creator. The user interface is very clean and polished and I have high expectations for future releases...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_zDPqioLuxns/SftnmSRRCII/AAAAAAAAAHI/eQwbm9tMhpM/s1600-h/qtcreator.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 387px;" src="http://4.bp.blogspot.com/_zDPqioLuxns/SftnmSRRCII/AAAAAAAAAHI/eQwbm9tMhpM/s400/qtcreator.png" alt="" id="BLOGGER_PHOTO_ID_5330968491360061570" border="0" /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/687449731857853630/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=687449731857853630' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/687449731857853630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/687449731857853630'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2009/05/qt-creator.html' title='Qt Creator'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_zDPqioLuxns/SftnmSRRCII/AAAAAAAAAHI/eQwbm9tMhpM/s72-c/qtcreator.png' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-591179528445148028.post-134986909723095539</id><published>2009-04-12T21:48:00.006+02:00</published><updated>2009-04-12T21:59:08.067+02:00</updated><title type='text'>Information Panel</title><content type='html'>Dolphin for KDE 4.3 will have some improvements for the Information Panel. One improvement is that Nepomuk is used to get the meta data, which allows to show a lot more information:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_zDPqioLuxns/SeJFxvJy_TI/AAAAAAAAAHA/V51nNWOWqbA/s1600-h/info1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 325px; height: 400px;" src="http://1.bp.blogspot.com/_zDPqioLuxns/SeJFxvJy_TI/AAAAAAAAAHA/V51nNWOWqbA/s400/info1.png" alt="" id="BLOGGER_PHOTO_ID_5323894430278810930" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Currently the meta data titles are internal names used by Nepomuk (e. g. "audioCodec"), but this (hopefully) will be improved until KDE 4.3 so that it is written as "Audio Codec:".&lt;br /&gt;&lt;br /&gt;It is also possible now to configure which informations should be shown:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_zDPqioLuxns/SeJFteDVlPI/AAAAAAAAAG4/Kk2_EbTb4MI/s1600-h/info2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 361px;" src="http://3.bp.blogspot.com/_zDPqioLuxns/SeJFteDVlPI/AAAAAAAAAG4/Kk2_EbTb4MI/s400/info2.png" alt="" id="BLOGGER_PHOTO_ID_5323894356968838386" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Because of Phonon it is possible to play audio files:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_zDPqioLuxns/SeJFo3DilvI/AAAAAAAAAGw/Nhd0WuoCipg/s1600-h/info3.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 325px; height: 400px;" src="http://2.bp.blogspot.com/_zDPqioLuxns/SeJFo3DilvI/AAAAAAAAAGw/Nhd0WuoCipg/s400/info3.png" alt="" id="BLOGGER_PHOTO_ID_5323894277781231346" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;... or even videos:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_zDPqioLuxns/SeJFlKtrbiI/AAAAAAAAAGo/h3q8-FxqMaM/s1600-h/info4.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 325px; height: 400px;" src="http://4.bp.blogspot.com/_zDPqioLuxns/SeJFlKtrbiI/AAAAAAAAAGo/h3q8-FxqMaM/s400/info4.png" alt="" id="BLOGGER_PHOTO_ID_5323894214338768418" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Please note that it is not the intention to convert Dolphin into an audio-player or video-player. The current functionality is just meant as improved preview for media files.&lt;br /&gt;&lt;br /&gt;Final remark: Until KDE 4.2 it was possible that Dolphin got blocked for several seconds when reading the meta data of specific files (huge videos, compressed files). The nice thing about using Nepomuk is that no blocking occurs anymore, as the meta data parsing has been done already outside the context of Dolphin.</content><link rel='replies' type='application/atom+xml' href='http://ppenz.blogspot.com/feeds/134986909723095539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=591179528445148028&amp;postID=134986909723095539' title='18 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/134986909723095539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/591179528445148028/posts/default/134986909723095539'/><link rel='alternate' type='text/html' href='http://ppenz.blogspot.com/2009/04/information-panel.html' title='Information Panel'/><author><name>Peter Penz</name><uri>https://plus.google.com/116373175087394443469</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-66CyIybZqOM/AAAAAAAAAAI/AAAAAAAACf8/rmhf5IShLeg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_zDPqioLuxns/SeJFxvJy_TI/AAAAAAAAAHA/V51nNWOWqbA/s72-c/info1.png' height='72' width='72'/><thr:total>18</thr:total></entry></feed>