Tokamak3 and Widget Explorer evolution

Hello there! :)
It’s been a couple of days that i’ve been willing to write this post, but I hadn’t find enough time yet. Since I missed a lot of classes when I went to Tokamak3 (which, btw, was completely, totally worth it), my life at university has been crazy since I arrived here.

Well, to begin with, Tokamak3 was great – one of the most significant/exciting/pleasant/enriching experiences I’ve had. It is impressive how few people can get together and be so, so, so productive in so short time, and, at the same time, get along so well, having fun, laughing and being friends. Yes, it’s beatiful to see the friendship going on inside this community. They are all so cool! :)
Every single one that was there impressed me on your own specific way – each one with your peculiar personality, but all of you with your great technical skills (the same to you, Mario, with your cooking technical skills ;-) . That was quite inspiring to me, the fresh new member. Yes. That was VERY inspiring… …
Damn, I miss Tokamak!

Ok, but now for the news: after Tokamak3, the new widgets explorer is now merged with trunk! And now it is not the New Widgets Explorer anymore, is THE Widgets Explorer! :)

On the first day at Tokamak3, we all did a presentation about what we were going to work during the next days, and after that we wrote on postits the tasks we were going to accomplish during Tokamak. That was a pretty interesting idea, cause this way we could keep the track of our work, knowing what we have done and what’s left to be done.

Before going to Tokamak and writing my tasks, I compiled all the hints, criticism and ideas I’d received with my last post and discussed them with the people at the chalet. Some were incorporated, some were saved, some were not.

The first immediate idea was to solve a problem one pointed out: it isn’t so obvious that I have to drag and drop the applet to add it. Ok, I agree. So the solution was to change the mouse cursor to a little opened hand when hovering the icon, and changing it to a little closed hand when clicking on the icon. Nice and easy, huh? Task solved!

hand cursor screenshot2

Another task was to highlight in the list, somehow, the already running applets. It’s nice to know what are the applets that you have running while browsing throught the list. The old widgets explorer had this functionality, but the indicator of running applets was “-” sign, which was also a button to delete those applets – this was pointed out to be an usability problem. The solution to that was to paint a “tick” blue sign on the left-bottom corner of the running applets icons. This “tick” sign is also the icon to the “running” categories, so the user knows what that tick means. Task solved!

running screenshot

Another set of tasks was to fix a few layout problems – I called it the crazy layouts, but now they are under control.
Task solved!

We also had some discussion about the problem of removing applets through the widgets explorer. How to do that? If we had some kind of remove button for each icon of running applet in the list, then we would go back to the problem of the old widget explorer: the remove button simply removes ALL of the widgets, which is not nice and not expected. And if we had a remove something for each single plasmoid of every desktop, than we would maybe get to an usability issue. The solution, then, was to not implement this functionality inside the widget explorer. To remove a plasmoid you can simply remove it through the plasmoid handle. :)
Task solved!

Other interesting task was to find a way of showing the brand new kind of widgets: the remote ones (Rob’s summer project). The idea is simple: show the list of widgets that are available on the network. We find one solution that was: create a “remote widgets” category. But there are still a few questions to be answered: do I want to filter the remote widgets with categories too? If so, remote widgets can’t be a category itself. Do I wan’t the remote widgets to be showed among the local ones? Do we want to publish/unpublish widgets on the network through the widgets explorer? Ok, this question has been answered: no, we don’t. But now all we need to do is to answer these other questions and implement it. Task partially solved!

The most polemic non-technical task was to figure out a better way of displaying the vertical version of the widget explorer. There is something not right with the list of categories… And no, we DON’T want a combobox! Aaron came with the idea of a “kind of” combobox, that expands with mouse hover, and doesn’t hide when choosing a category (cause a combobox hides after selection), so we can filter quickly more than once in a row. How about that? Actually, after writing it down, I found it a very nice idea! I can already visulize it, it’s a new better kind of combobox that may actually work. But I open it for suggestions. Any?! Ok, this task was not solved.

I think we’ve reached the last task: merge the widget explorer with plasma! This is the most important task – put the widget explorer inside the panel controller. Yes, that was where we were going to begin the merge – clicking add widgets on the panel controller, the widgets explorer would appear. Aaron helped me out with the beggining of the task, and then the most time of Tokamak was spent to make this merge work. I was facing a lot of layout, dinamic resizing problems, but the task to put the explorer inside the panel controller was solved! You can build trunk and test it :) But there are still quite a few tasks to be done to make it usable and prettier. And we still have to figure out and make it work when right-clicking on desktop and when calling the up-right corner button to reach “add widgets”.

widgetexplorerscreenshot

There is a list of remaining tasks to be accomplished and i’m going to quickly list them.
Feel free to add some to this list ;)

  • Put a “close” and “back” button on the widget explorer
  • Make the panel controller wider when clicking on “add widgets” (so the icons won’t appear too small)
  • Maybe make it possible to the user to resize the widget explorer
  • List the remote widgets
  • Make it possible to uninstall an applet through the widget explorer
  • Figure out the whole vertical list
  • Make it work when right-clicking on desktop and when calling the up-right corner button to reach “add widgets”
  • The arrows button looks disabled, I know (with air, at least). Need to figure that out.
  • How about making the panel controller a little more translucent? :)
  • Yes, I know the name of the applet is clipped, I’mma fix it :)
  • put an info button inside the plasmoids handle to show more info about the plasmoid (author, version, etc), since we removed it from the widget explorer.

Well, I guess that’s it. There’s a lot going on and I’m very happy with the work we are doing with the widget explorer, and the progress we made in Tokamak! Let’s keep working and, please, if everyone wants to help, do it (there is a lot helping already, I just want to make it clear :-) . With ideas, hints, coding, code hints, and so on.
We have to make it work to 4.4 ;)

Oh! I forgot to mention: also during Tokamak 3 I received a very good news! I was accepted as a Speaker on Latinoware 2009 (http://www.latinoware.org) ! My presentation there will be about my GSoC experience, aiming the ways of gathering/working/developing UX in such a “spread” way as Open Source Projects are. It was so nice to see my name on the speakers list (http://www.latinoware.org/node/40) ! Hope to make it well and to see some of you there! :)
(what about a quick kde sprint while we are there?! ;)

And I’d like to finish this post by thanking KDE e.V. and the whole KDE community for every single opportunity on the past few months. You guys _really_ rock!

See ya!

13 Responses

  1. Aaron Seigo Says:

    i’d like to help out with a few of the polishing items as well … like making the selection rect fit properly around the item, making the panel controller bigger when going into Add Widgets (and smaller again when it closes) and connecting the right click on the desktop.

    also .. today i noticed that i really wanted to press and hold the left/right button and have things scroll for as long as it was pressed. so i’ve implemented that as well :)

  2. Andras Says:

    Indeed, the small (well, mostly invisible) icons are a problem, especially with Oxygen:
    http://andras.kdewebdev.org/other/widgetexplorer.png

    Also please look that there is text under and after the arrow buttons on the top. Especially the text after looks bad.

  3. cumulus007 Says:

    I dislike it. It’s too crowded in my opinion.

  4. Burke Says:

    I would like to have pages instead of scroll buttons. That clipping is not very cool and I know how many plasmoids are installed in the specific category. And it is faster to scroll ;)

    Also an indication of how many instances of a plasmoid exists would be nice.

    What do you think?

  5. Hans Says:

    First of all: great work with the project! It’s great to see the result, and very nice that you’ll continue to work on it. How much C++/Qt did you know prior to GSoC? I’ve been thinking of applying for two years, but always skipped it because I felt that I didn’t have enough programming knowledge. Well, seeing the outcome of GSoC projects, I still feel that way. :P

    OnT:
    “To remove a plasmoid you can simply remove it through the plasmoid handle.”

    How do we handle “invisible” plasmoids? One that comes to mind is iHateTheCashew (removes the cashew). OK, it’s pretty counter intuitive to remove it to show the cashew again, but I can imagine that there’ll be more plasmoids that doesn’t behave like normal widgets (that is, add some functionality without showing themselves).

    Some widgets are also problematic and can’t be removed the normal way. I’ve had such problems with Bball, for example.

    “Put a “close” and “back” button on the widget explorer”

    Do we really need a back button?

    Personally I would like slightly bigger icons (32×32; the ones in the screenshot are 22×22 right?). But maybe that’s just me. :P

    I also agree with Burke regarding pages. With nice animations – yeah!

  6. redm Says:

    This is really cool work!! Can’t wait to try it out! :)

    One question: Why implement vertical widget explorers, at all? Especially if it means that they get a somewhat different user interface. What’s the rationale behind it? I guess you want to attach it to the panels…? But as you wrote, that doesn’t work for the desktop either. So why not put a single explorer at the bottom? Kinda like on OS X. Well, just a thought …:)

  7. mat69 Says:

    Please also make sure that the Widget Explorer works if there is no panel present at all.

  8. FiNeX Says:

    Hi! :-)

    You’ve forgot to mention one point :-) :
    - Manage the Widget Explorer even without panels (in this case “back” is not usefull)

    And one question (strictly related to how the previous point will be implemented):
    - when the “add widget” action will be re-implemented on the cashew (and on the desktop RMB) and you have two or more panel, where would the Widget Explorer be painted?

    :-) Good work! :-)

  9. Alvin Says:

    Just a suggestion, for the clipped applet name, perhaps can make the text scrolls horizontally on mouse hover.

    For the vertical explorer, I suggest we design it similar to the horizontal for UI consistency. After all some applications do have vertical tabs.

    Btw, I have some questions:
    1. If I have multiple instances of a plasmoid, will it show multiple tick icons? Wouldn’t it be better to show small number/icon showing how many instances are running?

    2. Is the widget explorer tied to a panel? How if the user does not have any panel on desktop? Unlike the panel resizing UI, adding a plasmoid shouldn’t require user to have panel on the desktop. If it is not tied to panel, there is no need to have a vertical explorer. Perhaps design it similar to OSX dashboard (but improved version of it, of course).

    Just my 2 cents :)

  10. vojacik Says:

    You removed the most important thing which was in old widget explorer: The short description. This is IMHO bad solution. Name only is not enough. Please give into your bar some space for that one-sentence description. Ideally 3 lines under name. Resulting little (that 3 lines of text) higher new-widget-explorer bar will not hurt anyone.

  11. anniec Says:

    @Andras We are going to make the icons bigger by making the panel controller higher :)
    And these buttons at the top are part of the Plasma::Tabbar. We know this problem exists, it’s going to be fixed.

  12. anniec Says:

    @vojacik the short description comes inside the tooltip. That was a decision made some time ago not only by me. There’s no way yo put description under the icons. 3 lines of text e too much text

  13. anniec Says:

    @redm well, yeah… The explorer is attached to the panel, so there must be a vertical version to the vertical panels

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.