<?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: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-1432305160270992760</id><updated>2012-01-18T06:21:10.833-08:00</updated><title type='text'>KDE Hugo</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>13</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-507218233997948533</id><published>2012-01-17T01:56:00.000-08:00</published><updated>2012-01-17T07:05:36.448-08:00</updated><title type='text'>Oxygen-gtk3 1.0 is out</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/-XdD3nmh2sJA/TxVGBiwqrBI/AAAAAAAAAqU/3Zg-4bnvGuc/s1600/gnome.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 128px; height: 128px;" src="http://4.bp.blogspot.com/-XdD3nmh2sJA/TxVGBiwqrBI/AAAAAAAAAqU/3Zg-4bnvGuc/s400/gnome.png" alt="" id="BLOGGER_PHOTO_ID_5698537895831972882" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The first release of KDE's Oxygen widget theme, ported to GTK 3.X applications, has been uploaded to kde ftp servers on Tuesday January 17 2012 and is available for download &lt;a href="http://download.kde.org/download.php?url=stable/oxygen-gtk3/1.0.0/src/oxygen-gtk3-1.0.0.tar.bz2"&gt;here&lt;/a&gt;. It is called &lt;span style="font-weight:bold;"&gt;oxygen-gtk3&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;This release is still experimental, notably due to the small amount of GTK 3 applications it has been tested on. Still, since snapshots of the running git repository were already being circulated around for some time, we deemed it appropriate to release the current code, if only because it would make book-keeping and bug tracking easier. Also, we expect rapid progress as bug reports are being filled by users.&lt;br /&gt;&lt;br /&gt;The result is already quite satisfactory, as illustrated on the screenshot below.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-H5pEWArWxCQ/TxVItGzwPvI/AAAAAAAAAqg/6g8Yyg7UqMg/s1600/gedit.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 340px;" src="http://4.bp.blogspot.com/-H5pEWArWxCQ/TxVItGzwPvI/AAAAAAAAAqg/6g8Yyg7UqMg/s400/gedit.png" alt="" id="BLOGGER_PHOTO_ID_5698540843266227954" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;All  the features of the GTK 2.x version have successfully been ported to the GTK 3.x version, and a large fraction of the code base is actually shared between the two. This includes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;grabbing windows from empty areas; &lt;/li&gt;&lt;li&gt;smooth animations on mouse hover and focus change&lt;/li&gt;&lt;li&gt;on fly update of the style appearance when the configuration is changed (via KDE's system settings, or oxygen-settings)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Bug reports should preferentially be filled on KDE's bug tracker, &lt;a href="https://bugs.kde.org/"&gt;here&lt;/a&gt;, rather than on this blog, or on the kde-look web site. This ensures easier interactions with the reporting users.&lt;br /&gt;&lt;br /&gt;Like for the GTK 2.x version, there will be one minor bug-fix release every month, and one major feature release every 6 month, more or less in sync with newest KDE release.&lt;br /&gt;&lt;br /&gt;The third major release (v1.2.0) of the GTK 2.x port has also been released on the same day and is available for download &lt;a href="http://download.kde.org/download.php?url=stable/oxygen-gtk2/1.2.0/src/oxygen-gtk2-1.2.0.tar.bz2"&gt;here&lt;/a&gt;. The package name has been changed to oxygen-gtk2, to avoid confusion with the GTK 3.x version. It includes all the bug fixes that were applied to the 1.1 series, together with visual improvements that match the Qt version shipped by KDE 4.8.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-507218233997948533?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/507218233997948533/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2012/01/oxygen-gtk3-10-is-out.html#comment-form' title='18 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/507218233997948533'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/507218233997948533'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2012/01/oxygen-gtk3-10-is-out.html' title='Oxygen-gtk3 1.0 is out'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-XdD3nmh2sJA/TxVGBiwqrBI/AAAAAAAAAqU/3Zg-4bnvGuc/s72-c/gnome.png' height='72' width='72'/><thr:total>18</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-6294056664308008521</id><published>2011-06-16T06:40:00.000-07:00</published><updated>2011-06-16T07:36:11.684-07:00</updated><title type='text'>Oxygen-gtk 1.1 is out</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-wTCb8EUgY2g/TfoKAInzYtI/AAAAAAAAApI/8faKJAu5GYI/s1600/gnome.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 128px; height: 128px;" src="http://4.bp.blogspot.com/-wTCb8EUgY2g/TfoKAInzYtI/AAAAAAAAApI/8faKJAu5GYI/s400/gnome.png" alt="" id="BLOGGER_PHOTO_ID_5618814482528821970" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The first major release of Oxygen-gtk has been uploaded to kde ftp servers on Wednesday June 15 and is available for download &lt;a href="http://download.kde.org/download.php?url=stable/oxygen-gtk/1.1.0/src/oxygen-gtk-1.1.0.tar.bz2"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This release comes with many improvements over the 1.0 series, which include:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;animations (smooth glow on mouse-over and focus for virtually all widgets, similar with what exists for the Qt version), controlled using the same configuration options as the Qt version, via &lt;span style="font-style: italic;"&gt;oxygen-settings&lt;/span&gt;;&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;on-fly&lt;/span&gt; update of the applications when configuration options are changed, via interfacing of the style to dbus;&lt;/li&gt;&lt;li&gt;improvement of the rendering of many widgets to have better consistency with the Qt version of oxygen, and remain in sync with latest design changes that will be shipped with KDE4.7. This affects notably scrollbars, sliders, groupboxes (Aka GtkFrames), etc;&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;real&lt;/span&gt; inner shadows for lists, icon views and other text edition widgets (thanks to Ruslan for making this possible);&lt;/li&gt;&lt;li&gt;better integration with oxygen's window decoration (effective only with kde 4.7), in the sense that the decoration will detect applications for which the window background gradient cannot be rendered (such as Firefox, Thunderbird, open-office, etc.), and consistently paint itself flat;&lt;/li&gt;&lt;li&gt;support for KWin's new shadow system, that applies to menus, drop-down lists and tooltips;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;a dedicated &lt;span style="font-style: italic;"&gt;demo&lt;/span&gt; application, called &lt;span style="font-style: italic;"&gt;oxygen-gtk-demo&lt;/span&gt;, which is similar (though not identical) to its &lt;span style="font-style: italic;"&gt;oxygen-demo&lt;/span&gt; Qt counterpart, as illustrated in the screenshot below.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-6E-Ifc4qqDk/TfoNszAwuDI/AAAAAAAAApQ/pJvtaYym3AM/s1600/oxygen-gtk-demo.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 365px;" src="http://4.bp.blogspot.com/-6E-Ifc4qqDk/TfoNszAwuDI/AAAAAAAAApQ/pJvtaYym3AM/s400/oxygen-gtk-demo.png" alt="" id="BLOGGER_PHOTO_ID_5618818548356921394" border="0" /&gt;&lt;/a&gt;&lt;span style="font-style: italic;"&gt;oxygen-gtk-demo&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;This release is meant to be used with KDE SC 4.7, which should become available some time this summer, due to the redesign of some Qt widgets that will be shipped with it. In the meanwhile, users will experience some visual inconsistencies (nothing dramatic though), and might prefer to stick to the 1.0 version.&lt;br /&gt;&lt;br /&gt;As for the 1.0 series, we (Ruslan, Cédric and I) will provide some monthly bugfix releases of the 1.1 version, based on bugs reported to us at &lt;a href="https://bugs.kde.org/"&gt;bugs.kde.org&lt;/a&gt;. In parallel we will work on the next major release (1.2), focusing notably (and without any warranty) on the gtk3 port as well as on making oxygen-gtk a more standalone gtk widget style, that can also be used seamlessly outside of KDE.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-6294056664308008521?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/6294056664308008521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2011/06/oxygen-gtk-11-is-out.html#comment-form' title='32 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/6294056664308008521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/6294056664308008521'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2011/06/oxygen-gtk-11-is-out.html' title='Oxygen-gtk 1.1 is out'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-wTCb8EUgY2g/TfoKAInzYtI/AAAAAAAAApI/8faKJAu5GYI/s72-c/gnome.png' height='72' width='72'/><thr:total>32</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-6863752300777063241</id><published>2011-04-17T01:35:00.000-07:00</published><updated>2011-04-28T01:05:47.657-07:00</updated><title type='text'>User experience, one pixel at a time</title><content type='html'>&lt;ul&gt;&lt;li&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-5fOqIavMlZc/Tartk6jswAI/AAAAAAAAAmE/1rYjLLfSXgo/s1600/picture.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 187px; height: 200px;" src="http://4.bp.blogspot.com/-5fOqIavMlZc/Tartk6jswAI/AAAAAAAAAmE/1rYjLLfSXgo/s400/picture.jpg" alt="" id="BLOGGER_PHOTO_ID_5596546705411325954" border="0" /&gt;&lt;/a&gt;A couple of weeks ago, I've been attending 2011 user experience Sprint, in Berlin.  That was interesting and nice and productive and everything, and above all it was my first live encounter with other KDE people, including Nuno.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;There's been (notably) quite some discussions about how information and functionality should be presented to users, organized and formulated, in order to be complete but not overwhelming, sexy, gratifying, and elegant.&lt;br /&gt;&lt;br /&gt;Now, no matter how well organized resources, features, and information are, a significant fraction of the above can be wasted if every single brick of the UI is not rendered perfectly.&lt;br /&gt;&lt;br /&gt;So Nuno (finger above) and I have been focusing on the remaining UI elements for which we are not fully satisfied, pretty much disregarding how these elements are used later on.&lt;br /&gt;&lt;br /&gt;Two screenshots to illustrate the progress we've made during these few days.&lt;br /&gt;&lt;br /&gt;First screenshot is Dolphin:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-US-LhCcBVKk/TbkafidkosI/AAAAAAAAAnM/HzNhfl7PUao/s1600/dolphin.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 276px;" src="http://2.bp.blogspot.com/-US-LhCcBVKk/TbkafidkosI/AAAAAAAAAnM/HzNhfl7PUao/s400/dolphin.png" alt="" id="BLOGGER_PHOTO_ID_5600536740741030594" border="0" /&gt;&lt;/a&gt;Things one notices:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;more visible pressed tool buttons at the top&lt;br /&gt;&lt;/li&gt;&lt;li&gt;new slider at the bottom&lt;/li&gt;&lt;li&gt;and new folder icons (quite unrelated with this post actually), on which Nuno has been working lately (and I'm sure he would blog better than I about it).&lt;/li&gt;&lt;/ul&gt;Things one does not notice (but with which we are happy):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;improved holes for the scrollbars, progressbars, and main view (note notably how the main view bottom corners are better rounded)&lt;/li&gt;&lt;li&gt;improved (well, bug fixed) rendering of the capacity bar at the bottom.&lt;/li&gt;&lt;/ul&gt;To give proper credit to whom it belongs, some of the improvements above have been primarily instigated by Peter Penz, Dolphin dev.&lt;br /&gt;&lt;br /&gt;Second screenshot is K3B:&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-UUOo05t2rLg/Tbkb5qPdH5I/AAAAAAAAAnU/IZN-VQ5oCbg/s1600/k3b.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 271px;" src="http://3.bp.blogspot.com/-UUOo05t2rLg/Tbkb5qPdH5I/AAAAAAAAAnU/IZN-VQ5oCbg/s400/k3b.png" alt="" id="BLOGGER_PHOTO_ID_5600538289017528210" border="0" /&gt;&lt;/a&gt;K3B is using nice &lt;span style="font-style: italic;"&gt;title &lt;/span&gt;&lt;span&gt;frames all over the place for quite some time now (the icons and text over a blue background on the picture above), but which have not been rendered properly by oxygen so far (notably, there was one or two pixel between the frame shadow and the blue content, that was pretty much wasting all the effort). So we finally took some time to fix it, resulting in the above, which is closer, I think, to what was originally intended.&lt;br /&gt;&lt;br /&gt;We've made other changes here and there and we still have some in the pipe before KDE 4.7 is out. Most of them are barely noticeable but we believe it will make oxygen look sharper, more polished and pleasant to the eye, one pixel at a time.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-6863752300777063241?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/6863752300777063241/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2011/04/user-experience-one-pixel-at-time.html#comment-form' title='24 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/6863752300777063241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/6863752300777063241'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2011/04/user-experience-one-pixel-at-time.html' title='User experience, one pixel at a time'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-5fOqIavMlZc/Tartk6jswAI/AAAAAAAAAmE/1rYjLLfSXgo/s72-c/picture.jpg' height='72' width='72'/><thr:total>24</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-8217511833717704565</id><published>2011-04-12T06:37:00.000-07:00</published><updated>2011-04-12T07:55:20.447-07:00</updated><title type='text'>A taste of things to come</title><content type='html'>&lt;span style="font-weight: bold;"&gt;&lt;u&gt;1. Oxygen-gtk&lt;/u&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;Oxygen-gtk version 1.1.0 will be out some time in June. It will come with a number of new features listed below:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;interface to dbus that allows &lt;span style="font-style: italic;"&gt;on-fly&lt;/span&gt; update of the applications on configuration changes (as already documented &lt;a href="http://hugo-kde.blogspot.com/2011/01/oxygen-gtk-dbus.html"&gt;here&lt;/a&gt;)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;a complete set of mouse-over and focus animations identical to what is available for the Qt version, and configurable using &lt;span style="font-style: italic;"&gt;oxygen-settings&lt;/span&gt;. This includes smooth highlight effects of buttons, text fields, menu and menubar items, lists, etc.&lt;/li&gt;&lt;li&gt;improved consistency with the Qt style: we finally implemented the same design as in Qt for &lt;span style="font-style: italic;"&gt;named &lt;/span&gt;frames, and Ruslan Kabatsayev did a great job at implementing extended inner shadows in lists and text widgets. This is all illustrated in the screenshot below.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-Ezze7Ar8OQ4/TaRaTjLLh5I/AAAAAAAAAkc/cU1uZDq1WxM/s1600/oxygen-gtk-demo.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 331px;" src="http://4.bp.blogspot.com/-Ezze7Ar8OQ4/TaRaTjLLh5I/AAAAAAAAAkc/cU1uZDq1WxM/s400/oxygen-gtk-demo.png" alt="" id="BLOGGER_PHOTO_ID_5594695929007146898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;three toolkits, one widget style&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;2. Gtk3&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Oxygen-gtk has been ported to the brand new Gtk3 toolkit, with practically no feature loss with respect to its Gtk2 incarnation. Despite GTK3's complete rewrite of the styling API, the porting turned out to be less painful than originally thought, notably thanks to the high segmentation of our code. From the limited set of applications we could test it on so far, this port is working quite well, as also illustrated in the screenshot above. Obviously all three windows are not pixel-perfect identical, and the metrics of various widgets somewhat vary from one toolkit to the other, but the overall consistency is quite satisfying, already, in my humble opinion.&lt;br /&gt;&lt;br /&gt;Now, this is definitely not ready for release yet, notably because of the quite small amount of Gtk3-ready applications we could find on the web, for testing. Also, we had to seriously bypass (hack) the rather limited API of the new theming engine in order to be able to implement all features present in Oxygen's Qt and Gtk2 incarnations. Anyway, the code is available from our git repository using the command:&lt;br /&gt;&lt;/div&gt;&lt;blockquote&gt;git clone -b gtk3 git://anongit.kde.org/oxygen-gtk&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;3. Shadows&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We've been collaborating with KWin dev Martin Graesslin on a new shadow system that let the widget style render the shadows for menus, tooltips, drop-down list, etc. This new feature, also documented &lt;a href="http://blog.martin-graesslin.com/blog/2011/03/new-kwin-shadows/"&gt;here&lt;/a&gt;, allows Oxygen to render the &lt;span style="font-style: italic;"&gt;same&lt;/span&gt; shadows for the widgets listed above as for normal decorated windows, thus improving consistency. The result is illustrated in the next two screenshots, first for a Qt application, second for a famous XUL + Gtk application. Note notably how the menu in the second screenshot have square corners, due to an XUL limitation, and how we adapt the shadow rendering to that case, something which was not possible in the past.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-ArspAae26Eo/TaRiLK_yjQI/AAAAAAAAAkk/vn5tjURKX8c/s1600/qedit.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 371px;" src="http://1.bp.blogspot.com/-ArspAae26Eo/TaRiLK_yjQI/AAAAAAAAAkk/vn5tjURKX8c/s400/qedit.png" alt="" id="BLOGGER_PHOTO_ID_5594704581170990338" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-qGhwxqGiWBU/TaRiZ_e7fQI/AAAAAAAAAks/dXhOeBULhkM/s1600/firefox.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 330px;" src="http://1.bp.blogspot.com/-qGhwxqGiWBU/TaRiZ_e7fQI/AAAAAAAAAks/dXhOeBULhkM/s400/firefox.png" alt="" id="BLOGGER_PHOTO_ID_5594704835778411778" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-weight: bold;"&gt;&lt;u&gt;Finally&lt;/u&gt;&lt;/span&gt;, for the first time I'll meet in person with Nuno in a couple of days, and we'll take this opportunity to revisit (and hopefully improve) the last few UI elements with which he is not so happy today. In the process of doing so, we will notably incorporate some quite useful input from Dolphin dev, Peter Penz.&lt;br /&gt;&lt;br /&gt;All the above should become available to everyone by the time KDE-4.7 is out, so stay tune.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-8217511833717704565?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/8217511833717704565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2011/04/taste-of-things-to-come.html#comment-form' title='15 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/8217511833717704565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/8217511833717704565'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2011/04/taste-of-things-to-come.html' title='A taste of things to come'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-Ezze7Ar8OQ4/TaRaTjLLh5I/AAAAAAAAAkc/cU1uZDq1WxM/s72-c/oxygen-gtk-demo.png' height='72' width='72'/><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-5201986339467533245</id><published>2011-01-08T07:38:00.000-08:00</published><updated>2011-01-08T08:11:31.375-08:00</updated><title type='text'>Oxygen + Gtk + DBus</title><content type='html'>&lt;div&gt;Definitions:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Gtk: one of the most widely used toolkit to write opensource applications for your desktop, the second one being Qt, used notably for all KDE applications;&lt;/li&gt;&lt;li&gt;Oxygen: refers (notably) to KDE's default widget's style, originally written for Qt/KDE applications only;&lt;/li&gt;&lt;li&gt;DBus: inter-process communication system used for applications to communicate between each-other. In KDE it is used notably for propagating configuration changes (such as the color scheme) to KDE applications.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;a href="http://hugo-kde.blogspot.com/2010/11/oxygen-gtk.html"&gt;This post&lt;/a&gt; introduced oxygen-gtk, a native port of the KDE's default widget style to the Gtk toolkit, which allowed applications such as Gimp, Inkscape, and many others, to integrate seamlessly in the KDE desktop. This style was written to follow most of KDE configuration options, such as the icon theme, icon sizes, fonts, etc. However any change to the KDE configuration was only accounted for by GTK applications after the latter were restarted.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Today, we added DBus support to oxygen-gtk, so that Gtk applications keep track of modifications to KDE's configuration and update themselves &lt;i&gt;on fly&lt;/i&gt;. This is best illustrated by the screencast below, during which color scheme and font size are changed in KDE's system settings, and Gimp updates accordingly without restart.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/SctOxEEnptY?hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/SctOxEEnptY?hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This feature is already available for testing in oxygen-gtk's &lt;a href="https://projects.kde.org/projects/playground/artwork/oxygen-gtk"&gt;git repository&lt;/a&gt;. It will be included in the next &lt;i&gt;feature&lt;/i&gt; release of oxygen-gtk (version 1.1.0), some time in June.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;mmm... recording a screencast in KDE. Which application should I use ? qt-recordmydesktop, or gtk-recordmydesktop: &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_A3bDTdsdVYQ/TSiMUTzgopI/AAAAAAAAAkE/GrwZ3tf3WXY/s1600/recordmydesktop.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 348px; height: 400px;" src="http://4.bp.blogspot.com/_A3bDTdsdVYQ/TSiMUTzgopI/AAAAAAAAAkE/GrwZ3tf3WXY/s400/recordmydesktop.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5559848020530471570" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-5201986339467533245?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/5201986339467533245/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2011/01/oxygen-gtk-dbus.html#comment-form' title='12 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/5201986339467533245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/5201986339467533245'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2011/01/oxygen-gtk-dbus.html' title='Oxygen + Gtk + DBus'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TSiMUTzgopI/AAAAAAAAAkE/GrwZ3tf3WXY/s72-c/recordmydesktop.png' height='72' width='72'/><thr:total>12</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-8293326933531356316</id><published>2010-11-26T02:47:00.000-08:00</published><updated>2010-12-17T11:57:36.209-08:00</updated><title type='text'>Oxygen + Gtk</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_A3bDTdsdVYQ/TQu_E411l4I/AAAAAAAAAis/tugMrr3um-s/s1600/gnome.png"&gt;&lt;img style="float:left; margin:0 0px 0px 0;cursor:pointer; cursor:hand;width: 128px; height: 128px;" src="http://2.bp.blogspot.com/_A3bDTdsdVYQ/TQu_E411l4I/AAAAAAAAAis/tugMrr3um-s/s400/gnome.png" alt="" id="BLOGGER_PHOTO_ID_5551741056362846082" border="0" /&gt;&lt;/a&gt;For the past few month, Ruslan Kabatsayev, Cédric Bellegarde and I have been working on writing (yet another) Gtk port of KDE's oxygen widget style.&lt;br /&gt;&lt;br /&gt;Unlike previous attempts we decided to&lt;br /&gt;&lt;ul&gt;&lt;li&gt;start a new gtk-engine from scratch (as opposed to re-using an existing one). All painting is performed using Cairo; there is no hidden interfacing to Qt, nor hard-coded pixmaps.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;stick as close as possible to KDE's and oxygen's options. Amongst other things, the engine loads kde palette, icons, and fonts; it respects the color &lt;span style="font-style: italic;"&gt;contrast&lt;/span&gt; setting, and a number of oxygen's display options (such as the tab style, the list's expander style, the scrollbar width, etc.)&lt;/li&gt;&lt;li&gt;try implement at least some of the fancy features of KDE's Oxygen style. Amongst other things, we added mouse-over effects on almost all widgets; support for ARGB colormap (in order to have nice non-pixelated corners for menus, combo boxes or tooltips), and full support for grabbing windows from empty areas (a feature that is in KDE's Oxygen since KDE SC 4.5). We also have plans for adding a large number of the animations found in KDE's Oxygen style, but that will be for the next release.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;The primary goal of this port is to improve significantly the integration of Gtk/Gnome applications in KDE. However, we also aim to provide Oxygen as a modern, professional and polished theme for other desktop environments, that works seamlessly without having KDE even installed.&lt;br /&gt;&lt;br /&gt;Some screenshots are available at the end of this post.&lt;br /&gt;&lt;br /&gt;The sources for this first release are available on &lt;a href="http://download.kde.org/download.php?url=stable/oxygen-gtk/1.0.0/src/oxygen-gtk-1.0.0.tar.bz2"&gt;KDE ftp servers&lt;/a&gt;. We plan to follow the same release plan as KDE:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;one minor &lt;span style="font-style: italic;"&gt;bug-fixing&lt;/span&gt; release every month,&lt;/li&gt;&lt;li&gt;one major &lt;span style="font-style: italic;"&gt;feature&lt;/span&gt; release every 6 month&lt;/li&gt;&lt;/ul&gt;Daring users can also get the latest sources from the git repository directly. We are hosted by &lt;a href="https://projects.kde.org/projects/playground/artwork/oxygen-gtk"&gt;git.kde.org&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Bug reports and feature requests can be sent to &lt;a href="https://bugs.kde.org/"&gt;KDE bug tracking system&lt;/a&gt;. When doing so one should select product=Oxygen, and component=gtk-engine.&lt;br /&gt;&lt;br /&gt;One can also talk to the developers and give direct feedback on IRC, channel #oxygen (ask for hugo).&lt;br /&gt;&lt;br /&gt;Now for the screenshots:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_A3bDTdsdVYQ/TO-SCxBVK6I/AAAAAAAAAiE/HXqei-nnRrA/s1600/nautilus.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 307px;" src="http://2.bp.blogspot.com/_A3bDTdsdVYQ/TO-SCxBVK6I/AAAAAAAAAiE/HXqei-nnRrA/s400/nautilus.png" alt="" id="BLOGGER_PHOTO_ID_5543810242532682658" border="0" /&gt;&lt;/a&gt;Nautilus (front) and Dolphin (back)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_A3bDTdsdVYQ/TO-SXmRmjuI/AAAAAAAAAiM/JpRi9tHCk98/s1600/gedit.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 314px;" src="http://2.bp.blogspot.com/_A3bDTdsdVYQ/TO-SXmRmjuI/AAAAAAAAAiM/JpRi9tHCk98/s400/gedit.png" alt="" id="BLOGGER_PHOTO_ID_5543810600425393890" border="0" /&gt;&lt;/a&gt;GEdit (front) and Kate (back)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_A3bDTdsdVYQ/TO-S06BIFbI/AAAAAAAAAiU/CWwojVvU8vo/s1600/ccsm.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 249px;" src="http://1.bp.blogspot.com/_A3bDTdsdVYQ/TO-S06BIFbI/AAAAAAAAAiU/CWwojVvU8vo/s400/ccsm.png" alt="" id="BLOGGER_PHOTO_ID_5543811103941203378" border="0" /&gt;&lt;/a&gt;Compiz Config Settings Manager (CCSM)&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_A3bDTdsdVYQ/TO-TO_enhrI/AAAAAAAAAic/VNxD1vTwNxI/s1600/mandriva-urpmi.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 284px;" src="http://4.bp.blogspot.com/_A3bDTdsdVYQ/TO-TO_enhrI/AAAAAAAAAic/VNxD1vTwNxI/s400/mandriva-urpmi.png" alt="" id="BLOGGER_PHOTO_ID_5543811552083674802" border="0" /&gt;&lt;/a&gt;Mandriva's RPM manager (urpmi)&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_A3bDTdsdVYQ/TO-Tc_9yOYI/AAAAAAAAAik/GZOxyYGh8OA/s1600/firefox.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 320px;" src="http://3.bp.blogspot.com/_A3bDTdsdVYQ/TO-Tc_9yOYI/AAAAAAAAAik/GZOxyYGh8OA/s400/firefox.png" alt="" id="BLOGGER_PHOTO_ID_5543811792732567938" border="0" /&gt;&lt;/a&gt;Firefox (unthemed)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-8293326933531356316?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/8293326933531356316/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2010/11/oxygen-gtk.html#comment-form' title='66 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/8293326933531356316'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/8293326933531356316'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2010/11/oxygen-gtk.html' title='Oxygen + Gtk'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_A3bDTdsdVYQ/TQu_E411l4I/AAAAAAAAAis/tugMrr3um-s/s72-c/gnome.png' height='72' width='72'/><thr:total>66</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-7008488433237291502</id><published>2010-09-09T21:57:00.000-07:00</published><updated>2010-12-25T00:48:24.857-08:00</updated><title type='text'>Performance issues, one script, and call for testers</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_A3bDTdsdVYQ/TInDLHQp3EI/AAAAAAAAAW0/0SHatBEHfL0/s1600/preferences-system.png"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 128px; height: 128px;" src="http://1.bp.blogspot.com/_A3bDTdsdVYQ/TInDLHQp3EI/AAAAAAAAAW0/0SHatBEHfL0/s400/preferences-system.png" alt="" id="BLOGGER_PHOTO_ID_5515153814386760770" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Since kde4.5 is out, a number of users with various NVidia graphic cards suffer from performance issues when using the oxygen style:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Lag, when scrolling some large views, like, e.g. in Dolphin&lt;/li&gt;&lt;li&gt;system becoming unresponsive over time&lt;br /&gt;&lt;/li&gt;&lt;li&gt;etc.&lt;/li&gt;&lt;/ul&gt;It is hard for me to anticipate such issues, as well as to fix them, since I have an integrated Intel graphic card, and none of these are present (believe me, my oxygen is snappy, I would not commit the changes otherwise).  The curl pit appears to be the number of pixmaps that oxygen allocates, and stores in caches, to perform its animations. The fuller the caches would become the more unresponsive the system would be. I'm not 100% sure about it, but so it seems.&lt;br /&gt;&lt;br /&gt;So I've been trying to optimize the code, and reduce the number of allocated pixmaps. Its a bit like shooting in the dark, since I can't see much difference here, from one change to the other.&lt;br /&gt;&lt;br /&gt;Last night I made a decisive step in this direction by applying some discretization to the various animations, effectively reducing the number of cached pixmaps by a factor 10 to 20 (it's configurable), normally without any noticeable difference to the eye.&lt;br /&gt;&lt;br /&gt;Now, well, I need testers (with an NVidia graphic card, and with a driver for which some of the problems above are present).&lt;br /&gt;&lt;br /&gt;For users willing to help, I wrote a script available &lt;a href="http://hugo.pereira.free.fr/Misc/oxygen-setup.pl"&gt;here&lt;/a&gt; that allows one to checkout, configure, compile, and install oxygen sources from kde svn trunk, without the need for compiling anything else of kde.&lt;br /&gt;&lt;br /&gt;It should work against any kde4.4 and kde4.5 version, as well as trunk, naturally.&lt;br /&gt;&lt;br /&gt;To use the script one must:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;create a clean directory&lt;/li&gt;&lt;li&gt;run the script and follow instructions&lt;/li&gt;&lt;/ul&gt;One needs to have the necessary &lt;span style="font-style: italic;"&gt;development&lt;/span&gt; packages installed for the sources to compile. They are: gcc-c++, subversion, cmake, kdebase-workspace-devel, libxrender-devel, libx11-devel (note that the names might change from one linux distribution to the other).&lt;br /&gt;&lt;br /&gt;Once the code is successfully compiled and installed, any newly launched application should use the latest oxygen as opposed to the one provided by your distribution (which gets erased in the process).&lt;br /&gt;&lt;br /&gt;I'll be available for debugging, in case of trouble.&lt;br /&gt;&lt;br /&gt;If the patches I committed to trunk recently  are effectively fixing the issues above, I'll backport them to the kde4.5 branch (and to oxygen-transparent), so that hopefully kde4.5.2 can benefit from it.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Notes:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;kde anonymous svn is sometimes not very responsive and the  checkout or update will fail. Just take a deep breath, wait 5 minutes,  and retry.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;in case one wants to revert to the 4.5 version of oxygen, one can  run the same script (in a separate directory), with the additional  argument &lt;span style="font-style: italic;"&gt;--branch 4.5&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span&gt;&lt;span style="font-weight: bold;"&gt;Edit:&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span&gt;Since the feedback on the recent commits is largely positive, last night I backported the changes to the kde4.5 branch. So that hopefully this oxygen+nvidia issue will all be fixed in kde4.5.2. You can run &lt;span style="font-style: italic;"&gt;oxygen-setup.pl --branch 4.5&lt;/span&gt; to get this code, instead of the one from trunk (which has many other unrelated changes).&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;I also backported the change to oxygen-transparent&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-7008488433237291502?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/7008488433237291502/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2010/09/performance-issues-one-script-and-call.html#comment-form' title='66 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/7008488433237291502'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/7008488433237291502'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2010/09/performance-issues-one-script-and-call.html' title='Performance issues, one script, and call for testers'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_A3bDTdsdVYQ/TInDLHQp3EI/AAAAAAAAAW0/0SHatBEHfL0/s72-c/preferences-system.png' height='72' width='72'/><thr:total>66</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-1841580343280366264</id><published>2010-08-23T21:43:00.000-07:00</published><updated>2010-12-25T00:49:13.426-08:00</updated><title type='text'>Oxygen rewrite and Dragging tabs around</title><content type='html'>This is a technical post, with a small video for entertainment.&lt;br /&gt;&lt;br /&gt;Today, a major change to the oxygen code was committed to SVN, so that the style now derives from QCommonStyle as opposed to KStyle in the past. This is the first (and most difficult) step towards writing a fork of the oxygen widget style that would depend on Qt only, and not on KDE, so that one could, for instance, use oxygen natively on Windows (TM) for all Qt applications. Additionally, this change also results in better performances in painting widgets, and a more maintainable code.&lt;br /&gt;&lt;br /&gt;This effectively constitutes a quasi-complete rewrite of the oxygen core code, as illustrated by the number of lines removed and added, from the svn commit log:&lt;span style="font-family:monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;M  +6227 -5224 oxygenstyle.cpp   &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;M  +886 -310  oxygenstyle.h    &lt;/span&gt;&lt;/blockquote&gt;Hopefully no functionality have been lost and no regression introduced, although to be honest, further testing is needed, and more pairs of eyes than just mine (hence the commit).&lt;br /&gt;&lt;br /&gt;While rewriting, some of the remaining oxygen visual bugs that I know of have been fixed, concerning notably how tabs are displayed when the active tab is being dragged around. (Tab widgets are by far the most difficult Qt widgets to render properly in the style). The result is illustrated in the following screencast.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/uuoLjLcWuJc&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/uuoLjLcWuJc&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Notes:&lt;/b&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;the animation itself is provided by Qt, not by oxygen;&lt;/li&gt;&lt;li&gt;it was already supported in kde4.4 and kde4.5. Unfortunately it had some visual glitches that are now fixed;&lt;/li&gt;&lt;li&gt;the application used for the demonstration is &lt;span style="font-style: italic;"&gt;oxygen-demo&lt;/span&gt;, from kde svn trunk (it has been modified since kde4.5 to handle movable tabs). It is available from the command line since KDE4.5.0, serves as a showcase on how widgets are rendered with oxygen (or any other style), and as a visual debugging tool for me;&lt;/li&gt;&lt;li&gt;the same feature is available in e.g. Dolphin, and kmail;&lt;/li&gt;&lt;li&gt;unfortunately (in my opinion), other applications such as konqueror and konsole, use their own private mechanism to drag tabs around. I wish they would rely on Qt only instead, for consistency across applications, and since it is a 'one line of code', literally, namely: &lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;tabBar-&gt;setMovable( true );&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-1841580343280366264?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/1841580343280366264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2010/08/oxygen-rewrite-and-dragging-tabs-around.html#comment-form' title='17 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/1841580343280366264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/1841580343280366264'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2010/08/oxygen-rewrite-and-dragging-tabs-around.html' title='Oxygen rewrite and Dragging tabs around'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><thr:total>17</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-4766053411422655400</id><published>2010-07-18T09:40:00.000-07:00</published><updated>2010-08-23T22:47:13.048-07:00</updated><title type='text'>some oxygen screenshots in kde SC 4.5</title><content type='html'>KDE SC 4.5 (release candidate) is out, so I figured I could post some screenshots of how oxygen looks like in this release. We payed a lot of attention to detail polishing, fixing 1 pixel here and there at a time, to&lt;br /&gt;&lt;ul&gt;&lt;li&gt;improve alignment between widgets&lt;/li&gt;&lt;li&gt;make borders sharper, visible notably in menus, comboboxes, MDI windows (although they are largerly unused)&lt;/li&gt;&lt;li&gt;fix glitches where widgets would interact one with another (notably in tabbed view)&lt;/li&gt;&lt;/ul&gt;So, not much innovation &lt;i&gt;graphics wise&lt;/i&gt; in kde4.5 with respect to kde4.4, but the former should just feel &lt;i&gt;better&lt;/i&gt; than the latter, without one being able to pinpoint what it really comes from (the devil is in the details).&lt;br /&gt;&lt;br /&gt;Note that we did change the buttons a bit (based on the huge feedback from the previous post), in a subtle way that will for sure not make everyone happy (this you can never achieve), but hopefully won't displease people who liked them already, and will satisfy some of the people who complained.&lt;br /&gt;&lt;br /&gt;As discussed in other posts there are new features though:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;more widget animations&lt;/li&gt;&lt;li&gt;more configuration options, using &lt;i&gt;oxygen-settings&lt;/i&gt; (give a try to &lt;i&gt;follow-mouse&lt;/i&gt; animations for menus, menubars and toolbars, for instance)&lt;/li&gt;&lt;li&gt;the ability to move windows by clicking in empty areas&lt;/li&gt;&lt;/ul&gt;Now the screenshots:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_A3bDTdsdVYQ/TEMumt1YzJI/AAAAAAAAAKI/kqNCNju4u2Q/s1600/screenshot.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 250px;" src="http://4.bp.blogspot.com/_A3bDTdsdVYQ/TEMumt1YzJI/AAAAAAAAAKI/kqNCNju4u2Q/s400/screenshot.png" alt="" id="BLOGGER_PHOTO_ID_5495287212995562642" border="0" /&gt;kcalc and desktop settings&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_A3bDTdsdVYQ/TEMu5i65XJI/AAAAAAAAAKQ/MH_fS9VdF2E/s1600/screenshot1.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 250px;" src="http://1.bp.blogspot.com/_A3bDTdsdVYQ/TEMu5i65XJI/AAAAAAAAAKQ/MH_fS9VdF2E/s400/screenshot1.png" alt="" id="BLOGGER_PHOTO_ID_5495287536483392658" border="0" /&gt;Dolphin and Amarok&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_A3bDTdsdVYQ/TEMzA2qK_GI/AAAAAAAAAKg/bEH1vCZKx8A/s1600/screenshot2.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 250px;" src="http://3.bp.blogspot.com/_A3bDTdsdVYQ/TEMzA2qK_GI/AAAAAAAAAKg/bEH1vCZKx8A/s400/screenshot2.png" alt="" id="BLOGGER_PHOTO_ID_5495292060087549026" border="0" /&gt;Konsole and Kate&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;What we have in mind for kde4.6 (in arbitrary order of preference, and without any guaranty of having any of these actually implemented):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;support for consistent transparency (+blur) in the style and the decoration&lt;/li&gt;&lt;li&gt;support for sideways decoration title&lt;/li&gt;&lt;li&gt;having a Qt-only oxygen style (because I wish my Qt apps running on windows could use oxygen without having to install the entire kde suite)&lt;/li&gt;&lt;li&gt;on the tech-side: optimization of pixmaps caching in the style (because it seems to cause problems to some users)&lt;/li&gt;&lt;li&gt;and of course (with highest priority): bug fixing and optimization&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-4766053411422655400?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/4766053411422655400/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2010/07/some-oxygen-screenshots-in-kde45.html#comment-form' title='38 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/4766053411422655400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/4766053411422655400'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2010/07/some-oxygen-screenshots-in-kde45.html' title='some oxygen screenshots in kde SC 4.5'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TEMumt1YzJI/AAAAAAAAAKI/kqNCNju4u2Q/s72-c/screenshot.png' height='72' width='72'/><thr:total>38</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-7019052274904130495</id><published>2010-06-15T15:04:00.000-07:00</published><updated>2010-06-15T15:13:01.717-07:00</updated><title type='text'>What's wrong with oxygen buttons ?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf5JiXsW-I/AAAAAAAAAE4/B85ngWhfh80/s1600/oxygen-demo.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 400px; height: 343px;" src="http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf5JiXsW-I/AAAAAAAAAE4/B85ngWhfh80/s400/oxygen-demo.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5483125013587188706" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Since there are recurring complains about how oxygen buttons look like, and requests to make them more &lt;span style="font-style:italic;"&gt;beautiful&lt;/span&gt;, whereas, on the other hand, both Pinheiro and I are quite happy with them (we are, really), I'd like to gather some more details about what's really wrong with them.&lt;br /&gt;&lt;br /&gt;Picture on the top-left shows basically all the buttons that oxygen can draw. I'd like to know what's not right with them. Margins? Shadows? Gradients? The way they look when pressed? &lt;br /&gt;&lt;br /&gt;Things like: "they're ugly", and without any constructive idea to counterbalance the statement will be ignored. Also, things like "they should look like plastique" (or any other theme) will not help much either (since this is precisely the point of oxygen, not to look like plastique). &lt;br /&gt;&lt;br /&gt;Other than that, if anyone has comments on these, or even better: mockups, feel free.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-7019052274904130495?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/7019052274904130495/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2010/06/whats-wrong-with-oxygen-buttons.html#comment-form' title='75 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/7019052274904130495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/7019052274904130495'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2010/06/whats-wrong-with-oxygen-buttons.html' title='What&apos;s wrong with oxygen buttons ?'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf5JiXsW-I/AAAAAAAAAE4/B85ngWhfh80/s72-c/oxygen-demo.png' height='72' width='72'/><thr:total>75</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-3283820221040676264</id><published>2010-06-13T12:31:00.001-07:00</published><updated>2010-06-13T20:43:51.561-07:00</updated><title type='text'>Moving windows around</title><content type='html'>A new feature added to Oxygen for KDE SC 4.5 is the possibility to move windows around by clicking (with left mouse button) in any of its 'empty' area and dragging it around, in a way that is similar to what one usually does with the window decoration titlebar. &lt;br /&gt;&lt;br /&gt;How this works is illustrated in the following screencast (sorry for the poor quality of the video):&lt;br /&gt;&lt;br /&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/N2PeL8WAifs&amp;hl=en_US&amp;fs=1&amp;rel=0"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/N2PeL8WAifs&amp;hl=en_US&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;This feature has been present in &lt;a href="http://kde-look.org/content/show.php/Bespin?content=63928"&gt;bespin&lt;/a&gt; (another kde4 widget style) for quite a while. It has been ported (and largely rewritten) to Oxygen, on popular demand. &lt;br /&gt;&lt;br /&gt;It is believed to be very useful, notably on touch-screens, for which dragging windows from the sometimes tiny decoration titlebar might end up being problematic. &lt;br /&gt;&lt;br /&gt;Now, this is still quite experimental and conflicts might exist between dragging the window and some other mouse actions for some applications. I hope we can identify, and fix, most of these conflicts in KDE SC 4.5 beta cycle, so that a well crafter and fully functional feature can be delivered to users with the first release candidate.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-3283820221040676264?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/3283820221040676264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2010/06/moving-windows-around.html#comment-form' title='20 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/3283820221040676264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/3283820221040676264'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2010/06/moving-windows-around.html' title='Moving windows around'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><thr:total>20</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-2198050718437546640</id><published>2010-06-13T11:49:00.000-07:00</published><updated>2010-06-13T12:09:57.816-07:00</updated><title type='text'>oxygen-settings</title><content type='html'>Since KDE SC 4.4 many hidden options have been added to oxygen to 'fine-tune' the appearance of widgets and window decorations. At the time, they have been made hidden, in order not to scare normal users by facing them with a large number of choices with most of which they would have no idea what to do.&lt;br /&gt;&lt;br /&gt;As a drawback, there was a number of bug reports and wishes from advanced users asking for features and configure options which in fact were already there, but not easily accessible. The answer to such reports have been: "edit your configuration file (usually $HOME/.kde4/share/config/oxygenrc), and add this or that line, in this or that section". Not very satisfactory.&lt;br /&gt;&lt;br /&gt;For KDE SC 4.5, a new application has been added to remedy the above. It is called oxygen-settings (it runs from either krunner or one's favorite terminal), and provides access to all the previously hidden options. The other advantage of oxygen-settings is that all options for both the widget style and window decoration are regrouped at the same place, fewer clicks away one from the other. &lt;br /&gt;&lt;br /&gt;Hopefully this addition will make advanced users happy, without scaring normal users, who would not care about all the functionalities offered here. &lt;br /&gt;&lt;br /&gt;Below are a few screenshots of this application.&lt;br /&gt;&lt;br /&gt;The first page, corresponding to widgets' style configuration:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_A3bDTdsdVYQ/TBUp4Ho1a9I/AAAAAAAAACk/V0rb_Ycy0KA/s1600/oxygen-settings-1.png"&gt;&lt;img style="cursor: pointer; width: 400px; height: 320px;" src="http://1.bp.blogspot.com/_A3bDTdsdVYQ/TBUp4Ho1a9I/AAAAAAAAACk/V0rb_Ycy0KA/s400/oxygen-settings-1.png" alt="" id="BLOGGER_PHOTO_ID_5482334165493181394" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The animations page:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_A3bDTdsdVYQ/TBUqMq5RebI/AAAAAAAAACs/sIPhlWn0tKA/s1600/oxygen-settings-2.png"&gt;&lt;img style="cursor: pointer; width: 400px; height: 379px;" src="http://3.bp.blogspot.com/_A3bDTdsdVYQ/TBUqMq5RebI/AAAAAAAAACs/sIPhlWn0tKA/s400/oxygen-settings-2.png" alt="" id="BLOGGER_PHOTO_ID_5482334518554753458" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It allows to customize each animation used in the widget style independently from the other.&lt;br /&gt;&lt;br /&gt;The window decoration page:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_A3bDTdsdVYQ/TBUq7s7bIpI/AAAAAAAAAC0/ECdv8W1be8o/s1600/oxygen-settings-3.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 381px;" src="http://1.bp.blogspot.com/_A3bDTdsdVYQ/TBUq7s7bIpI/AAAAAAAAAC0/ECdv8W1be8o/s400/oxygen-settings-3.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5482335326554497682" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It is very similar to what's available in KDE's configuration tool (systemsettings) but includes a number of additional, otherwise hidden, options&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-2198050718437546640?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/2198050718437546640/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2010/06/oxygen-settings.html#comment-form' title='17 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/2198050718437546640'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/2198050718437546640'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2010/06/oxygen-settings.html' title='oxygen-settings'/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_A3bDTdsdVYQ/TBUp4Ho1a9I/AAAAAAAAACk/V0rb_Ycy0KA/s72-c/oxygen-settings-1.png' height='72' width='72'/><thr:total>17</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1432305160270992760.post-2877587323532767808</id><published>2010-06-13T09:06:00.000-07:00</published><updated>2010-08-23T22:44:30.956-07:00</updated><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBUDkl6ioyI/AAAAAAAAACM/leSkPQCE9R4/s1600/oxygen.png"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 128px; height: 128px;" src="http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBUDkl6ioyI/AAAAAAAAACM/leSkPQCE9R4/s320/oxygen.png" alt="" id="BLOGGER_PHOTO_ID_5482292048581272354" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;After about a year coding for KDE's Oxygen widget style and window decoration, and because KDE SC 4.5 is around the corner (first two beta versions are already out), I finally decided to start a blog to:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;advertise new features&lt;/li&gt;&lt;li&gt;gather comments&lt;/li&gt;&lt;li&gt;get feedback&lt;/li&gt;&lt;/ul&gt;This is &lt;span style="font-weight: bold;"&gt;not&lt;/span&gt; about oxygen icons (icons are &lt;a href="http://pinheiro-kde.blogspot.com/"&gt;Nuno's&lt;/a&gt; realm), this is about how widgets and window decorations look like, how they animate, and how to make it all look better.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1432305160270992760-2877587323532767808?l=hugo-kde.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hugo-kde.blogspot.com/feeds/2877587323532767808/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hugo-kde.blogspot.com/2010/06/after-about-year-and-half-coding-for.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/2877587323532767808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1432305160270992760/posts/default/2877587323532767808'/><link rel='alternate' type='text/html' href='http://hugo-kde.blogspot.com/2010/06/after-about-year-and-half-coding-for.html' title=''/><author><name>Hugo Pereira Da Costa</name><uri>http://www.blogger.com/profile/09467841190488432608</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBf7f3mXa_I/AAAAAAAAAFA/oWHq49CBANU/S220/hugo-128x128.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_A3bDTdsdVYQ/TBUDkl6ioyI/AAAAAAAAACM/leSkPQCE9R4/s72-c/oxygen.png' height='72' width='72'/><thr:total>4</thr:total></entry></feed>
