Lancelot 1.0 Feature Freeze
Well, after today, I really will not add any features to the 4.1 branch. I know I said this before, but this time I really mean it! This is now a hard feature freeze.
What does this mean?
This means that from now on only bugfixes will be introduced, but Lancelot will look and behave the same as it does at the moment of writing. There are a couple of things in line for fixing (for example a bit more polished click-on-the-button-close-the-menu). So, you can consider it as a Release Candidate 1.
This also implies that the trunk version is now where all future and feature development will occur. (BTW, I’ve got some great news concerning Kopete’s D-Bus) So, in a sense, this marks the beginning of the era of Lancelot 2.0 development. Bugfixes will obviously be shared between the 4.1 branch and the trunk (for a specified period of time), but that will be all.
What’s new since M4?
The latest addition is the ability to drag the items from the application browser. Now you can drag the applications to the desktop to make icons of them, you can drag application categories to show them as folderviews etc.
You can drag them from the lists, but from the breadcrumb bar as well. If you drag the Favourite applications from the breadcrumb bar, it will be shown as a Lancelot part.
One side-effect of having all that is that now, if you want, you could show a folder in a Lancelot Part instead of FolderView. It is not meant to replace the FolderView, since it lacks any file manager functions, but if you just want to create a launcher with a custom set of applications, Lancelot Part is a perfect solution.
p.s. If you drag an application category to the desktop but you only see a list of directories (or subcategories) and not the applications, it’s not my fault, but a fault of applications:/ KIO service.
















Switched to Lancelot recently and like it a lot. But I have to say that it’s just play weird going back and forth between Lancelot’s zero-click interface and my KDE logout screen which actually requires me to click!
Comment by atomopawn — 21 August 2008 @ 20:29
@atomopawn
I know what you mean… but that is out of Lancelot’s range
Comment by Ivan Čukić — 21 August 2008 @ 20:51
Just wondering, isn’t it possible nowadays just tell ksmserver via DBUS to do the shutdown etc. actions or has it been removed because of possible misuse?
Comment by teprrr — 21 August 2008 @ 21:34
It definitely is possible to control ksmserver via dbus, I have a small script to log out + hibernate in a single click (so when the pc is turned on again, it has a clean slate and starts at kdm, but boots faster), and it talks to ksmserver to do the logging off.
Comment by IAnjo — 21 August 2008 @ 22:07
Yes it is possible, and there is a chance that I’ll rely on it in some future versions.
Comment by Ivan Čukić — 21 August 2008 @ 22:12
Congratulations Ivan!
And thank you very much for your hard work. Looking forward for the final 1.0 release!
Comment by Poldark — 21 August 2008 @ 22:35
After mere minutes of trying Lancelot I kicked Kickoff to the curb. A week later and I’m convinced Lancelot should be the default launcher for KDE, if not in 4.2 then certainly in 4.3.
I have three questions. Fortunately for you I forgot one of them (but I’ll be back).
Are the session buttons at the bottom using Plasma’s theme or are they custom rendered? I’m using the Oxygen Plasma theme and Lancelot’s buttons don’t quite look Oxygen-y to me; that is, not like the buttons on the panel’s settings bar (also, Lancelot’s border resize widgets when moused over don’t match the style used by the resizer on the panel’s settings bar).
Are you planning a panel/part containing a list of recently launched apps? That’s the only thing Kickoff had that I miss in Lancelot.
Comment by Sterling — 22 August 2008 @ 01:01
Thanks all!
@Sterling
The buttons (like everything else in Lancelot) are from Lancelot’s theme. I agree that the buttons stick out, but I haven’t found a good replacement – the buttons for the panel settings just don’t fit here (IMO).
I completely forgot about that. My initial intention was to have a more advanced Favourites section, but it somehow slipped my mind. The idea was to have something like Amarok’s scoring system… well, I hope I’ll remember it for the next version
Comment by Ivan Čukić — 22 August 2008 @ 06:26
I still can’t remember my other question, but I thought of a couple of suggestions that should make the overall appearance of Lancelot even more clean.
1) For lists which aren’t long enough to be scrollable the scroll buttons should be permanently hidden
2) For lists which are scrollable the scroll buttons should remain hidden unless the list is moused over (there shouldn’t be a delay before hiding/unhiding is initiated, but a slow fadeout/fadein effect would probably work nicely)
In addition to streamlining the aesthetics there’s a practical reason behind these suggestions. Some menu entries have names long enough to be partially obscured by the scroll buttons, and even though the buttons are very minimalistic transparency overlays, you really can’t superimpose anything on top of text (especially relatively small text, say 10pt) without causing some measure of unreadability/cognitive friction. So if the aesthetics rely on this superimposition then you can at least minimize its negative effects using the suggestions described above. (One alternative is to superimpose the text on top of the scroll buttons, and use a blur filter on the buttons to help the text remain legible — basically the opposite of kwin’s “blur text under transparency” effect.)
Comment by Sterling — 22 August 2008 @ 07:42
Just a question about conception. I tried it and got that to click is then move mouse to the small rect. I know I could use clicks here, but just interested, do zero click interface have any advantures?
Comment by AlexeiSergeev — 22 August 2008 @ 07:46
i meant to click is faster
Comment by AlexeiSergeev — 22 August 2008 @ 07:47
@Sterling
The scroll buttons will be replaced in 2.0 with real scrollbars. There are multiple usability issues with the current solution beside those you mentioned. (and yes, the scrollbars will be only visible on list hover, and you’ll be able to use the keyboard to navigate)
I wanted to make a usable release in a ‘release early, release often’ fashion, and I haven’t had the time to finish the /new/ lists. (you could have noticed the “ActionListView is deprecated” warnings while compiling)
@Alexei
It works for meTM.
Apart from that, it reduces RSI, and is a bliss to use with a stylus for example.
Once you get used to it, it becomes pretty natural (and I have had the time to get more than used to it in the ‘drink your own medicine’ fashion
)
Comment by Ivan Čukić — 22 August 2008 @ 08:00
nice jobs, ony one questio: watch your screencast and you add easy lancelot_part to the desktop, how do you do that ???, only “click” in some part and then click the desktop and “voala”, what are the key combination ???
Comment by rudoolph — 22 August 2008 @ 16:40
@rudolph
Just drag and drop. Make sure that your desktop is not locked when you do it.
Comment by Ivan Čukić — 22 August 2008 @ 16:44
Hi, i’ve just tried the lancelot applet and it seems really nice, however i’ve got one question. Lancelot is working with removable device, letting users mount them directly from the lancelot menu. Is there a way to unmount them direcly from the lancelot menu ?
Thanks for your answer
Comment by romain — 23 August 2008 @ 09:40
@romain
To be honest, I haven’t had the reason for it – when you open the device, you can umount it from Dolphin. (will probably add it at some point)
That is one of those things I forgot to do
Comment by Ivan Čukić — 23 August 2008 @ 12:04
Yes, i know you can do it in Dolphin, but i don’t use it (use konqueror). So i hoped that unmount in lancelot was possible
.
How hard would it be to implement ?
Comment by romain — 23 August 2008 @ 12:20
@romain
Should be very easy… I just need to find the time to do it… does tomorrow sound ok?
Comment by Ivan Čukić — 23 August 2008 @ 12:25
Tomorrow sounds perfect
In fact I was asking because I may have done it myself… but not for tomorrow! thanks
Comment by romain — 23 August 2008 @ 12:30
@romain
check the latest version from SVN.
Or even today
If you (or anyone else for that matter) want to contribute to Lancelot, you are welcome
(obviously, on the trunk version from now on)
In order to see the magnitude of this change, this is what was changed to add the context menu with unmount/eject option:
models/Devices.h L_Override virtual bool hasContextActions(int index) const; L_Override virtual void setContextActions(int index, QMenu * menu); L_Override virtual void contextActivate(int index, QAction * context); models/Devices.cpp bool Devices::hasContextActions(int index) const { Q_UNUSED(index); return true; } void Devices::setContextActions(int index, QMenu * menu) { if (index > m_items.size() - 1) return; QString udi = m_items.at(index).data.toString(); Solid::Device device(udi); if (device.is<Solid::OpticalDisc>()) { menu->addAction(KIcon("media-eject"), i18n("Eject")) ->setData(QVariant(0)); } else { menu->addAction(KIcon("media-eject"), i18n("Unmount")) ->setData(QVariant(0)); } } void Devices::contextActivate(int index, QAction * context) { if (!context) { return; } QString udi = m_items.at(index).data.toString(); Solid::Device device(udi); if (device.is<Solid::OpticalDisc>()) { Solid::OpticalDrive *drive = device.parent().as<Solid::OpticalDrive>(); drive->eject(); } else { Solid::StorageAccess *access = device.as<Solid::StorageAccess>(); if (access->isAccessible()) { access->teardown(); } } }Comment by Ivan Čukić — 23 August 2008 @ 15:35
Hi,
.
sorry for answering this late, I’ve just tried and it works. Just removed kickoff and the device notifier applet
If I find bugs, will
try to fix them.
Thanks for your hard work.
Comment by romain — 24 August 2008 @ 19:03
@romain
Cool
Comment by Ivan Čukić — 24 August 2008 @ 20:35
Lancelot will be included in Mandriva 2008.1 !
Comment by vincent — 25 August 2008 @ 10:17
@Vincent
Great news
Comment by Ivan Čukić — 25 August 2008 @ 10:23
Hi,
I’ve modified the Device.cpp file to allow to mount removable device without opening the file manager at the same time.
Does it interest you or I keep it for myself ?
Comment by romain — 25 August 2008 @ 17:53
@romain
I will not add it to 1.0 though (I promised a feature freeze, right?
), possibly in 1.1…
Send it
Comment by Ivan Čukić — 25 August 2008 @ 17:58
Lancelot will not be included in Mandriva 2008.1 but in Mandriva 2009. I don’t know what deposit will be used but you can make a comment on the Mandriva’s forum.
http://forum.mandriva.com/index.php?sid=8988e930b94a3b9993f4fb2d392a901f?&op=En
Comment by vincent — 26 August 2008 @ 11:55
@vincent
)
Ok, I posted it on the packaging request for Mandriva. (the package, as they said there, is available in some repository… I’m not familiar with Mandriva’s terms though
Comment by Ivan Čukić — 26 August 2008 @ 12:00