KDE 4.2 has just been released, after many months of hard work by many people.
In this release the huge potentiality of the 4.0 platform is finally going to show up in the end user visible apps, so it’s where the good plans are starting to come together.
/me did just a tiny part, but nevertheless i like considering myself part of that wonderful community, they are wonderful people, congratulations to each one 😀
This is a tiny plasmoid hacked on a boring sunday afternoon in about 20 mins, perhaps a too silly name but i think the effect is kinda fun 🙂
It’s an on-screen magnifying glass with the difference from the usual ones that it doesn’t actually grab the screen, but it just views the Plasma canvas (just another view on the scene, that is), that gives some peculiarities, shown in this video:
All the windows are totally transparent to it, so while is useful to view/magnify just what there is on desktop it can give a quick access on it, when you need both your windows and stuff on desktop (think about a non-fullscreen dashboard, and then think about drag and drop between dolphin and folderview even when you have a maximized window :P)
And the more cute thing is due to the vector nature of the QGraphicsView, you see all the proper vector-based elements like the text to be smoothly scaled and still looking like text, not that usual pixelated/blurry mess that kinda hinders the utility of screen magnifiers as accessibility applications.
It’s amazing what it’s possible to do in plasma with a really limited amount of lines of code (here about 100, perhaps 20 or so could even still be saved:)
The thing now lives in playground and is still really rough, so not definitely 4.2 material, but who feels like can give it a try anyways:)
Plasma always had this really cute concept of “formfactor”: in brief different areas where plasmoids can reside have different behaviours, for instance a desktop is planar, i.e. the applets can grow anywhere they want.
The panel on the other hand can have a vertical or horizontal form factor, it means the applets in it can grow only in the vertical or horizontal direction, so an applet with a high quantity of content can’t display everything it would want…
In past releases of KDE4 the right behaviour of applets was still not really finished, so some applets like the device notifier were more kind to the panel, displaying the whole device list on the desktop and an icon+popup on the panel, other applets like the twitter applet hmm not soo good 🙂
Now with KDE 4.2 every standard applet distributed with kdewill fully use the form factor concept, so far we have 3 different classes of applets:
Applets that are just the same or with very little differences in different form factors, like simple icons or the taskbar.
Applets that diminishes their information quantity in horizontal or vertical form factors, here are two examples:
when in the panel the now playing applet just displays the control buttons, and the leave note applet switches to an horizontal layout, so it makes enough room for an horizontal panel.
Some other applets, like the device notifier or kickoff wouldn’t mean that much without some of its contents, so in the panel will be an icon+popup and in the desktop the whole plasmoid will be shown. but what about very big panels, so big that the whole plasmoid could fit and a ginormous icon wouldn’t make so much sense?
When the applet knows that it would fit into the panel, the icon goes away and the whole applet content is displayed, and goes back to an icon when the panel is shrinked again.
Now, since Plasma in KDE 4.2 supports also panels not always on top and autohide panels, you could have for instance a thing that looks like a Quake console with plasmoids in it, just like Konsole for terminals 🙂
Just a little thing, but it looked to me it kinda deserved a really short screencast 🙂
Adding applets to the panel with drag and drop in plasma was a bit of a pita, because you had to hit exactly that 4 pixels between an item and the other, so painful that wasn’t really obvious it was possible at all…
so here is how the current trunk behaves 🙂
In other news some days ago something like 7 applets (did i forgot some others?:) were merged for 4.2 release counting what is in the workspace module and in the addons module, so there will be a ton more stuff to play with :).
That’s the reason for the kabooms we are fixing right now, but no fear 🙂
Quick video: this is a proof of concept plasmoid i wrote quite some time ago and then forgotten to talk about 🙂
Is a little tabbar meant to be put in a panel that lists all your desktop activities and lets you switch them in a quick way, as seen in the video it also keeps itself syncronized if something changes, so if you switch with the zoom user interface it switches accordingly, it creates and remove tabs when desktops are created or removed.
The name of the tab is the name of the activity you can set in the desktop wallpaper/theme/etc configuration dialog.
The name it’s just the beginning of the activity concept, in the future the desktops and the applets in it will be aware and will react to their context, like what time is it, is the network attached or not, heck even what is our geographic coordinate…
But that’s another and more exciting story that just a teeeny tab bar :p
Long time no blog as usual, so let’s do some Plasma Quickies:
I’ve decided to do some love to two configuration dialogs, the wallpaper one and my loved ultrascary panel configuration “Thing”.
A while ago the configuration dialog had some problems.
The monitor preview looked ugly and deformed on widescreens, but most annoying thing it wasn’t possible to chose the desired cropping or scaling method when in slideshow mode, so you had to chose between a single image or a series of horribly distorted images 🙂
now the thing looks like this:
Desktop activity and theme before the wallpaper section, because wallpaper configuration will be just one aspect, even secondary behind the concept of activity (oh and now there is a textbox t give them a name), explayned way better by aaron.
the monitor preview looks always good, not important what weird ratio your actual monitor has 🙂
All the controls are better aligned conforming the HIG and making less visual noise.
The folder list in the slideshow mode grows and shrinks when adding/removing folders, so there is no more a big white empty spot when it’s empty 🙂
Now, my favourite configuration little monster, the panel configuration:
The size handles have little arrows that should be a bit more intuitive what is the min and what is the max and
now the move and resize actions are buttons with a label, so should be more obvious how to do to move it and change the height, while the less frequent actions (or dangerous as in the case of remove panel) are moved in a submenu, so it gives a less crowded look.
And oh, now there is a config ui for the quite recent panel autohide too 🙂 you can chose between normal panel always visible as is now, autohide or a panel not always on top, that can go under other windows.
It still looks a bit ugly but will be given a way more plasmalove(tm) look in the next days, stay tuned 🙂
The KDE install in my n810 is still not fully functional, but at least i’ve checked the plasmoids i was more curious and that i think are more interesting on a device like that, so here it is a little pr0n gallery of random stuff plamoids and not:
KDE4 splash screen yeeah, this photo is horrendously blurred, btw looks really nice (and good that looks nice because you will see it for a loong time :P)
Browser applet, i like the idea that on devices like this the browser would be something like an applet
Twitter applet, successfully retrieves and posts items, only two gliches: the proxywidget input bug i talked yesterday and seems to fetch only the user avatar, not the other ones
Weather applet: weell, not really much to see, aanyways works as expected, seems that
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:
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.
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 🙂