Netbook: Search and Launch

The last week I started playing with SAL: the “Search and Launch” containment for the netbook project. It was really nice as I played with Runners and could finally understand some bits that were still inside a black box for me. It’s sooo easy to use Runners on your applications!

So, the main idea behind this containment is that instead of using a regular menu like Kickoff you would be able to just search for what you’re looking for. The regular desktop already uses this feature inside KRunner but just advanced users and a few beginners know about it and how to use it properly (besides the fact that it’s trivial to use) – it’s hidden and is only triggered by a shortcut or by the menu entry “Run Command” that is not so visible.

Right now, as you can see in the screenshot below (sorry, no videos as I need to recompile some stuff to make recordMyDesktop work again) I put an edit line widget to type the queries but later this will be inside the panel. The user just types whatever he wants to do: it can be the name of an application, category (web browser), contact, calculation, unit conversion, etc.. (we’re thinking of a way to teach the user everything he is able to query – but suggestions are welcome).

Search and Launch Containment

Search and Launch Containment

There is also the “Favourites Strip”. When you mouse hover one of the results you’re able to add it to the Favourite Strip clicking on the “star icon”. Add as much favourites as you want and you can scroll between them in a “carousel” like widget. Maybe in the future we can make it more beautiful with Kinetic and add some bling πŸ™‚ Right now I want something that really works and we can add blings later (using Kinetic – and yes we may use animated layouts too \o/ hehe). Ah, and I really wished that we already had anchor layouts while developing SAL. It would be so easy and I would not have a lot of problems that I had to layout the widgets =/.

Now I need to make it persistent (so we are able to restore the favourites) and also remove the edit line widget and put in the panel as it was planed first.

Cheers,

Vacations, netbooks and…anchors ?

Vacations are great (and probably nobody will disagree on that, right ? πŸ˜› ). It’s a time when you can relax, think about your life, check your health (doctor, dentist, etc..), set new work goals, evaluate the old ones and also visit your family: I’m spending all the time at my girlfriend’s house and that’s awesome!

However this vacation is special because I can also work on KDE a little bit more than usual, giving GSoC students a little bit more of attention, bug fixing here and there, triaging bugs and working on our new baby project “Plasma for Netbooks”. Aaron already talked a little bit about this and we have been discussing this a lot through mailing list and IRC. Right now we have a pretty solid plan and some code in playground. Marco did a great job with one of the containments and already has a screenshot for that (come on Marco! I’ll let you have the pleasure on this one hehe).

Basically we’ll have a new desktop shell that is lighter than current’s plasma-desktop and we’ll provide two basic containments: newspaper layout and SAL (Search and Launch – I keep writing search and locate for some reason all the time =P). These two containments reflects the ideas that we have to solve some problems and to bring innovation. As soon as we have more code for that I’ll post details about this ideas (maybe Marco or Aaron will do that also :P). In the end I think we’ll end up with a very nice solution that will make users happierΒ  and also more productive while using their notebooks (besides the fact of being much more beautiful thanks to our artwork team hehe).

The last three days I spent time working on my paper for Akademy and I’ll post it as a serie of posts in this blog after it’s reviewed by some native english speakers :). This paper talks mainly about the research I did regarding “desktop-shell” solutions out there for netbooks. However no more spoiler here =P. Anyway if the paper get approved you can read it at Akademy and you can also check my talk about this subject and even see some real live demos. I hope vendors see all the potential around this and don’t make silly moves like this one. With all the features and bug fixing around 4.3 and 4.4 I really see a possibility of KDE coming to a larger audience in the next years…

Before Akademy I’ll attend FISL (unfortunately my paper was not approved) and meet old good friends there. Brazilian KDE community will be there with the Live Blue guys and the other brazilian guys that always have posts in planet KDE πŸ˜› .

News from work (yes, I still read my e-mail while on vacations hehe): as Qt is in the public repository now we are able to release the code we have been working the last months: animated layouts and also anchor layouts! Animated layouts needs some fixing toΒ  reflect some new API on Qt but it’ll come just after anchors. Some co-workers should post about anchor layouts and as soon as they post I’ll tell you ;)…Qt is going to rock even more with all this new layout stuff! Please, don’t forget to check this presentation during Akademy to learn more !

I'm going!

I'm going!

Demo showing the use of animated layouts…

This example shows an implementation of a custom QGraphicsLayout that tries to keep the layout as much “squared” as possible.

But the main thing being shown here is that the layout deals with a QGraphicsLayoutProxy, making it transparent for someone who is just adding or removing items from the layout, so all items are automatically animated when they change a position inside the layout or we change the size of the layout.

Jeez has more explanations here, but if you want to just watch the demo, take a look at Openbossa channel or just watch it below:

More news from Plasmaland

Well, it seems to be the season when Plasma developers are blogging again about their progress =)…so..here I go =)

The weeks befora Bossa Conference Sebas started helping me with Pastebin applet as we discussed during Tokamak: it was not as sexy as a plasmoid needs to be. So he just started (re)doing the UI bits and I tried to help him a little bit. We cleaned the code, changed the UI completely and now it’s much better!

New pastebin UI (left default view, right mouse hover view)

Default view (left), Mouse Hovering (right)

Now you can also put it on your panel and have something that looks nice (instead of just a sentence telling you to drop stuff in that region)..We also added tooltips showing the status of the applet.

How it looks on the panel

How it looks at the panel

Today the only thing that was not working was fixed and now notifications are working! So when it finishes posting your stuff, you’ll see a nice kde4 notification telling you that the URL was automatically copied to your clipboard.

pastebin's notification

pastebin's notification

From the functionalities point of view, thanks to Davide we now have a context action (right click menu action) that performs a “paste” if you copied something (CTRL+C) and wants to directly paste into the applet. I also made it more “mouse friendly”: you can also middle click it and what you have in your clipboard will be pasted.

Now I’m really looking forward GSoC proposals and I hope to be a good mentor. There are a lot of proposals and the subjects that most interest me are Plasmate, Kinetic and Plasma-MID. Two weeks ago I gave a talk about GSoC and KDE at a local university. It was really good:

Talk about GSoC (left) and students (right)

Talk about GSoC (left) and students (right)

Now I’m planning to really focus on plasma-mid and plasmate that are the running projects (during my free time). As (almost) everybody knows, during work we’re playing with Animated Layouts inside Kinetic.

Videos from Bossa 09 available!

For those who unfortunately were not able to come to Bossa Conference this year, we are uploading the talk’s videos to our “channel” on blip.tv: http://openbossa.blip.tv.

Bossa 09 Logo

There are really interesting talks from Trolls (Qt), python, maemo, e17, kde and lot of other stuff. Check the abstract of the talks here.

Hope you can come next year πŸ˜‰

PS: photos by Sebastian: http://vizzzion.org/?id=gallery&gcat=Bossa2009

Animated Layouts with Qt Kinetic

Last week we finally had the first demo of our current work. We are working on animated layouts with the Qt Software guys. It has been a great great time. We are really happy with this work and the results that will come in the near future.

When we talk about animated layouts, we mean that when you change the layout of your widget you want that to have that change in a fancy and animated way (at least when you talk about Qt Kinetic). So we just finished the basic work to allow that and the next step is to define the API of setting animations between the changes of layout.

Right now we use the concept of states (using QStateMachine), a new way of setting a layout without destroying the old one and also a little hack to use QAnimation (this hack will go away as soon as we define a nice API).

Basically all you have to do is to use our concept of “proxies” and instead of adding your widgets to the layout you add this proxies. Each proxy must be associated with a widget and each proxy is associated with a QAnimation. Each QAnimation makes use of a different QEasingCurve making each widget have a different animation.

What is really nice is the fact that when you put all the concepts together you get a lot of “job done” for free, for example when you insert/remove an item from a layout it does the resizing and moving of the other widgets in an animated way also.

If you want to know more about this solution of Qt Kinetic, join us at #qt-kinetic on Freenode and take a look at my co-worker’s blog also: http://blog.eduardofleury.com/?p=51.

Layout Animations

New QEdje version

Today we released a new version of QEdje and QZion (0.4.0).

This release includes a lot of bug fixing and also the change from qmake to cmake :-). We did some code refactor, fixed a LOT of bugs, improved a little bit the python bindings, improved support for mouse events and even created a signal to help the use of QEdje on Plasma wallpapers…

We also changed our repository and now it’s located at http://code.openbossa.org. We are moving all our open source projects to this host and hopefully we’ll have more projects there in the next weeks ;).

Tokamak II

Last week we went to Porto and had Tokamak II, the plasma’s developers meeting. It was just a wonderful time and it was great to meet some people again and to put faces in some nicks.

I mainly worked on Plasmate, the new “plasma IDE” for writing scripted plasmoids. Specially in the previewer and I used the time to also take a look at some bits of plasma that I didn’t have the chance (time) to look at yet. So now I can say that I can help with plasma even more and that I have a lot of ideas for the upcoming releases.

A lot of good stuff was also showed there like the status of Qt-Kinetic, ideas for the picture frame, improves on extenders, crystal, lion mail, community stuff, etc…

Thanks KDE for this wonderful oportunity and I hope we can keep improving plasma for everybody πŸ˜‰

Plasma devs

Tokamak II

I just finished my small presentation for tomorrow and I’m already at the boarding gate. It looks like that the fligth is empty, just a few people here and most of them are europeans going back home after holidays.

At this time nobody stopped me at the security check, what is a miracle because every time I have to open my handbag. It’s really hot here and very cold at Porto so I’ll problably have what they call ‘thermal shock’ hehe.

I have to board now, so…..see you πŸ˜‰

Ah, almost forgot to say that this is my first post from my n810..

Bossa Conference 2009

It’s coming! Finally! Every year before the conference I have this feeling of happiness mixed with a lot of expectation. This is the third edition of this conference and the other two was just awesome….

It was after the first one that we started working on the base of Canola2, after the second one we started working on QEdje and….what will be this year ? hehe…To be honest I already have some idea of what we are going to do but, I’ll just wait πŸ˜‰

About this edition I can say that we’ll have people from even more open source communities, having the pleasure of receiving KDE people. Who comes to Bossa Conference will have the opportunity toΒ  watch talks about Qt Kinetic, declarative UI’s, Webkit, Plasma, Enlightenment (EFL), software security, HAL/PolicyKit, Python, wireless technologies, free software licenses, Openembedded, VoIP, Maemo…..ouch, a lot of topics πŸ˜‰

Besides that we have hacking times with code camps, discussions inside the pool, parties, beach and a lot of food =) hehe…

Being honest: It’s just great! It worth it =). I hope I can meet some of you guys there (some I already know I’ll meet).

So after a year of conferences: aKademy, Maemo summit, linuxconf.au, Camp KDE, here comes Bossa Conference. Take a look in the video below to see what happened last year….

Bossa Conference 2008

If you want more information just visit the conference’s website or talk to me on IRC / email!

And just a month before this I’m going to Tokamak II (btw, thanks pinheiro πŸ˜‰ )….how wonderful is life =P

See you πŸ˜‰