Author Archives: Marco Martin

On panel thinghie again

Software

KDE 4.1 is out from not too much but feature addition for 4.2 are in a really fast pace already, by the way 4.2 will be the answer to Life, Universe and everything (ok, bad pun but couldn’t resist :P)

As for Plasma, the changelog published by a certain KDE hacker (welcome back Aaron:D) is already pretty impressive, i wanted to talk about a feature that should really clarify the why of a thinghie that is present in KDE 4.1:

...
Plasma Desktop Shell
--------------------
* Features
   * Panel
       * resizes itself when an applet changes its sizehint
           according to its maximum and minimum size
...

KDE 4.1 has the possibility to resize/edit/move the panel with a widget that pops up over it, to decide the size you use a thing that resembles the wordprocessor paragraph rules, and there are 3 of them, because you can decide the position, maximum and minimum size. The difference between the maximum and minimum sizes in kde 4.1 is used only when adding/removing applets.

Since some time (and writing about it only now because i’m laaazy:)) the new behaviour, that was the intended one since day zero is:

When you move the minimum slider, the panel resizes itself until a size it consider somewhat “optimal” to fit all its applets without whitespaces. When an applet wants to grow (or shrink) it notifies the panel, which will resize itself according the chosed maximum and minimum size.

The white slider instead represents the “origin point”, so for instance if you have the panel aligned to the left and the white slider moved by 100 pixels you will always be sure that the x coordinate of the panel will be 100 pixels, even if it grows or shrink.

Of course (well, at least i think:)) the default setup will still be a panel with 100% maximum and minimum width, so will look as now, but will be very easy to obtain different behaviours 🙂

This is a video that shows the standard panel that is being centered, grows and then shrinks:

Theora version

Widgets party

Software

A target i have for Plasma in KDE 4.2 is to have a set of widgets that
integrates nicely with the Plasma theme to be reused across multiple plasma
applets.

We need this to minimize the amount of code required to write a fully
functional applet, and also we need them to be well integrated with the
Plasma theme, they must be as fast as possible and look as good as possible.
So (at least for the most common widgets like the buttons) we need to
reimplement them as pure QGraphicsWidgets that will be SVG themed as the
other Plasma elements.

Now i have mostly finished two widgets the first is a generic button with a
nice halo around it that appears with a fade in effect when the mouse pases
over it.

The other widget i’m writing is a tabbar also SVG-themed. The first place where it will be used will be the weather applet as you can see in this beautiful sneak peek by Nuno.

When the active tab
changes it slides to the new one and also the page displayed changes with a
nice sliding animation. These two widgets for now lives in playground but i
hope to move them into the main trunk for general usage as soon as possible.
here is a video that shows the animations of both the button and the tabbar,
the last part of the video shows quick switching of tabs with the mouse wheel.


More decent Ogg

Update of Polyester 2

Graphics

Published an updated version of the polyester widget style for Qt4/KDE4. Actually it was a pretty long time i didn’t touch that, but was too lazy to release the last state somewhere 🙂

Now i’m pretty happy with it, it seems to work pretty well, and is good, because i really don’t want to spend much time on it, it has a really high amount of hacks in it and i get bored quickly of things 🙂 however, how does it look? here it is:

Polyester 2

There will still be some updates for the time being, to correct most annoying bugs etc, btw 🙂

Waiter, there is a web browser in my Plasma!

BlaBla

Long time that i didn’t felt like to blog, in the past days of storm others have sait way more insightful things that i would have been able to say. I can only say i felt really bad for Aaron and that sometimes the intertubes really can expose the very worst of people, bleach 🙁 (ok, not really an original thing, but still…)

Aaaanyways, this time i wanted to blog on a very embrional plasmoid that i have started some weeks ago just for fun…
a web browser. A what? yes, a web browser.

Plasma web browser

At the moment it has a basic addressbar and toolbar buttons that works pretty much as expected, the browser window pretty much works apart some qt issues and there is a very embrional support for bookmarks.

It won’t be something much more complex than that, i want to keep it simple (stupid:) as much as possible.

It definitely can have its utility also in a today desktop, since it automatically restores the last url visited when plasma starts it could be useful for instance for a quick check on some website for updates that either don’t have a rss form for updates or the html view is somehow preferred for whatever reasons…

But this thing is more as a research thing on what plasma can do beside the desktop, like, it will be possible to build full blown applications with plasma?

Or, how it should look and what functionalities must offer on devices that potentially could have only plasma as their main interface and for all their functionalities? (yes, the idea comes from the amazing progress of the Marijn’s gsoc about plasma on mobile devices)

Sooo, if you want to check it out it’s in playground as usual (plasma/applets/webbrowser), all the disclaimers about alpha quality of the thing of course do apply (you know, like blowing out the pc or running away after marrying your dog…)

Oh, and btw:
Edit: yes, Pinheiro striked again 🙂I am going to Akademy

Salute to an icon

Software

Ok, it’s the new trendy thing of the planet and it’s quite funny 🙂

when the mouse left, the old icon faded away
casting a long shadow in the sunset of its way
into the autumn of the old desktop implementation
preparing the sunrise of a new sweet temptation

that’s right: a very bold way to say text with dropshadows and the background only fading in icon-based applets 🙂

4.1 times more Prettyness

Graphics

Ladies and gentlemen, let me introduce you the brand new shiny Plasma theme that will be used for KDE 4.1:

Plasma theme for KDE 4.1

Here you can see the new applet and krunner backgrounds, the new panel, our brand-new carbon fiber clock and some items that once upon a time weren’t themed at all, like the pager and the taskbar.

This is the wonderful work of Nuno, i did some work in the code in the last month to make the theme support even more extensive, to have all your nice plasma widgets with more SVG prettiness, so let’s start thing by thing 🙂

  • The pager: the mini-desktops now have 3 different backgrounds, and when the mouse goes over the widget the mini desktops fades in and out with a neat animation
  • The panel: when composite is disabled his borders must be nice even if we don’t have antialiasing and when its width is the 100% of the screen it’s really a different beast, so a different svg it’s used, one different for each edge of the screen the panel can be
  • Dialogs and krunner: they have the same styleas the applets, but when composite is disabled we don’t have antialiasing for border, so it’s drawn in a nice retro-style
  • Taskbar: it now supports SVG backgrounds for several task states, there was some performance issues but we hope we will be able to enable the neat animations on mouse over also here 🙂
  • System tray: yeah even that now has a SVG background to make it look coherent with the other panel plasmoids like the taskbar (and the pager, if the size is enough)
  • The analog clock: KDE4 is all about analog clocks, right? 😛 so how could we neglect it? Absolutely not, so it now has cool drop shadows under each hand, that are always projected in the right position when the hands rotate
  • The folder view: due to its very nature it must have a more translucent background, to be easier on the eyes. Do you want to use that background on your applet? just call setBackgroundHints(TranslucentBackground) et voil

rain rain rain

BlaBla

It’s some days that it doesn’t happen anything but rain, rain and also well, rain. Starting to get pissed off and the rivers are starting to get hmm, “interesting”…
massive Chisone

Enlarge your panel

Software

Plasma for KDE 4.1 is coming along nicely, probably it won’t have everything we wanted to but i think it’s an huge improvement already compared to 4.0.x series.
A feature i did for 4.1 is to make panels really easy to configure and make exactly how you want, even an insane layout like that:

whacky panels setup

The panel configuration dialog that was in 4.0.x was killed and replaced with that strange thing that appears when you click on the little panel toolbox that spots a wordprocessor-like ruler complete with paragraph alignment buttons:

Panel controller

This would seem quite complex, but it’s the most powerful way that catches the future development of the panel even beyond 4.2. Why?
in KDE 4.1 the panels will be able to automatically grow/shrink when you add and remove applets (in the future also applets like the task manager will be able to make the panel grow or shrink, that’s 4.2 stuff), so you could want to set where the panel starts, the direction where it grows and a maximum and minimum sizes that limits the growth/shrink of the panel. so it’s like a paragraph aligned to the left, center or right of the page, so here we go with the three paragraph alignment buttons 🙂

So if the panel can enlarge/shrink itself it’a also necessary to setmaximum and minimum boundaries beyond you don’t want the panel to resize (and the default will still be both maximum and minimum witdth to 100%) and here we have the three little ruler handles, that sets respectively:
white: panel position relative to the left, center or roght anchor point
blue: maximum panel size
green minimum size

Since a video is worth more than 1024 words here it is:

And since flash sucks here it is a bigger theora file.

Cashews on a Panel

Software

In the last weeks not many “visible” things were done on Plasma, because we were all busybusybusy with the ginormous api changes and plasma breaking and unbreaking several times :D. As you can see the list has been nearly completely vanished, oh boy, can’t really believe we did it in so little time, my best congratulations to the whole team that worked so hard 🙂

So now the development of new hot features can start again, oh yeah 😀
At the moment I’m working on two little things, one involves svg theming of every aspect of the panel, like the taskbar and the systray, of course powered by Nuno 🙂 more on that in the future when it will be more ready, will keep teasing for now, eheh 🙂

The other thing is that little nifty cashew that infestates the panel since some time and didn’t do anything: with a today commit it has actually came to life 🙂

until now you can configure the panel size by right-clicking on an empty spot on the panel (that is not always present), and an ugly dialog is presented to you, were you must enter the panel size in pixels.

One of the key concept of KDE4 is to give you more control with actually LESS buttons and clumsy configuration options, and Plasma must be no different. Imagine for instance how lame would appear dolphin if for configuring the sidebar icons size you would have to right click on the sidebar and then enter the icons size in pixels? Instead you have a wonderful fluid looking
resize upon drag of the sidebar separator that looks really hot.

Getting inspiration from that (and from Aaron’s good advices eheh :D) when you click on the little cashew you’re presented to this, here with kwin composite awesomeness:

panel toolbox

There are still some necessary buttons, at the moment add widgets and remove panel, there will also be some about the “panel alignment”, that is a concept i’ll blog here in some time when i will have something more definite. To resize the panel you simply drag the upper border of the thingie that appearded, like a normal window, nothing more nothing less.

Its functionality is still incomplete, in some time it will have also a mean to resize the panel width, the position and the location (the centered panel of the screenshot can only be obtained by tweaking
configuration files by now but it’s definitely possible :D).
All of that by drag and drop. Hint: it will have something to do with wordprocessors rulers, because, i’ll explain more, deciding where the panel will go is a process totally like formatting a paragraph in a document.

Tokamak’d

Software

As I’m writting this right now I’m on the train from Milan to Turin heading back from TokamakMKI, unfortunetely i’m leaving early because an old 3vil exam (oh C.E.Shannon, you know i love you, honey:P)

It’s a shame i hadn’t found time to blog about Tokamak until now, but when you can hack all night long with an overdose of astonishing KDE people (and the even more astonishing our overlordness P-man) the internet suddenly becomes a boring useless toy 😛

In this meeting we managed to literally turn Plasma upside-down, well done his WOCiness Alexis! (light hearted readers are advised against trying to compile today’s svn) and other reeeally cool things like wastly improved javascript plasmoids support, add activities interface, start of an awesome looking krunner redesign as pretty as the new Twitter plasmoid, new applets and oh gosh, I’m too tired right now, I’m forgetting a really big bunch of cool stuff, their respective authors are officially authorized to stab
me to death 😀

I did a lot less than I was hoping but i managed to get movable resized panels (no configuration interface for you today:)) that can be seen in this reeeally crappy-looking screenshot:

center panel, oh yeah

Oh and yeah, as you can see a cashew is grown inside the panel, we’ll grow it with care and love, what’s his purpose? we will be able to configure the panel from just here instead of a losy 90’s looking right mouse button config dialog.

Did I mention that this screenshot looks like utter avariated crap? So i have a little spoiler for you: toghether with the Almighty Nuno we have defined how the panel and a new default Plasma theme (and the aspect not necessarily linked with a theme) will look like, and it will blow away pretty much everything you have seen before on any thing (well except for pink flying elephants of course…)

How it will
look like? not so easy, you’ll still have to suffer quite a bit waiting to see that 🙂