Projects/Plasma/FAQ

From KDE TechBase
Revision as of 20:16, 19 July 2008 by Einar (talk | contribs) (Credit where it's due)


Projects/Plasma/FAQ


Note: The information presented here covers Plasma in KDE 4.1. For older versions you can turn to the KDE 4.0 specific page

Introduction

Plasma is one of the key technologies of KDE 4 (also known as the "Pillars of KDE"), and one of the most visible to users. As Plasma treats the user interface differently than a traditional desktop, there may be confusion on what Plasma is, what it does, and how to perform common tasks.

This document attempts to address these problems by providing answers to the most common questions.

General Questions

What does Plasma do?

Plasma is the component that is "in charge" of the desktop interface; the desktop, panel (often referred simply as the task bar), and related elements. However, Plasma goes a bit further than these common pieces to the interface puzzle. The "Desktop" has not changed much since originally conceived; it typically consists of shortcuts, a panel, and icons for currently running applications. Plasma aims to change that, incorporating semantic application elements, and bringing cooperating technologies to the user's fingertips in a way that is visually appealing while easing work flow.

What is wrong with the current desktop technology?

Today's desktops are static. Typically they are tied to a folder in which one can find icons (application launchers), or user-placed documents and folders. Along with pictures and images as backgrounds, the current desktop doesn't go any further, or work for the user. Plasma takes a different approach, engaging the user by creating a dynamic and highly customizable environment.

I don't think it's such a good idea...

With Plasma, you can let your desktop (and accompanying support elements) act like it always did. You can have a task bar, a background image, shortcuts, etc. If you want to, however, you can use tools provided by Plasma to take your experience further, letting your desktop take shape based on what you want and need.

How does Plasma work?

Plasma's components are widgets called Plasmoids. Plasmoids can take on a variety of functions, ranging from displaying your desktop and associated wallpaper, showing your laptop's battery level, displaying your plugged in devices, and drawing the taskbar: basically, they are small applications that live on the desktop. Plasmoids can be grouped together in "containers" called containments. On a default desktop, there are two main elements: the Panel and the desktop itself. Both are containments in the Plasma sense.

It doesn't sound too new... other operating systems have done that.

The key difference here is that plasmoids can interact together. You want a better view of your laptop battery in order to find out when you are running low? You just drag it away from the taskbar and put it on the desktop. Also, applets can be resized and rotated at will, thanks to the use of Scalable Vector Graphics (SVGs). As you can see, the desktop not only interacts with you, as the user, but also with itself in new and interesting ways. You are now able to control how your workspace behaves and what it displays, in a visually pleasing and user-friendly manner. Since Plasma is the sum of its plasmoids, every element, even the desktop itself, is a widget. This allows you to move your desktop anywhere with respect to the windows (back and forward). It is no longer rooted behind everything and becomes instead another element of real interaction.

Kicker and Kdesktop were working fine in KDE 3! Why did you have to change that?

Especially regarding kicker, there was the important issue of maintainability. The code was in place since the KDE 2 days, and it was difficult to add new features without breaking others. In the end, to proceed forward the only viable option was to start anew from scratch.

I can't find my favorite <insert feature here>!

Don't forget that Plasma is still in heavy development and that KDE 3 was an extremely polished codebase: it took seven years to get to that, while Plasma is much younger. With time, the Plasma developers plan on reintroducing features that are missing and fix regressions. As KDE progresses through the KDE4 cycle, Plasma will improve with it.

Why on earth did you decide to change the way the desktop operates?

The idea of a Desktop folder is fundamentally a broken concept. It assumes that everything you will access there resides on a single physical directory on your disk. It may be convenient, but at the same time it greatly limits what you can do. For example, you can't use custom layouts for different desktops, as everything would be read from the directory. Also, quite often a desktop structured like that becomes a dumping ground for files and folders, without any other function.

I heard there are no more icons on the desktop in KDE 4.1...

That is not entirely correct. You can have icons and launchers (shortcuts) by dragging them from Dolphin or the K-menu. What has changed is that the desktop will no longer display the contents of the Desktop folder. However, you can show an arbitrary number of folders (local or remote) on your desktop view, instead of being forced to display only the contents of the "Desktop" folder. To do so, a new applet has been introduced, the Folder View applet.

What is the Folder View applet?

The Folder View applet, like its name says, is used to display items (folders, files) from a directory. Such a directory can be either a local one residing on your computer, but also a remote FTP, SSH, or SMB share. In the future, it will even contain results from Nepomuk searches and tagging.

You can choose to view either all files, or filter for specific patterns using regular expressions (there is discussion on using filters based on file types for future versions of KDE).

This applet also supports basic file management properties (moving, copying, cutting and pasting for example), and you can have as many as you want on your desktop.

In KDE 4.2 you will be also able to use the Folder View as your desktop, replicating the "old style" paradigm.

What's the deal with the K menu? It's big and ugly!

During the development of KDE 4.0, different approaches for a K menu (application launcher) were tried. Some projects, like Raptor, were ambitious but there was no way they could be completed on time. At the time, one developer ported SUSE Linux's application launcher (Kickoff) to the new KDE architecture. As it was the most ready and feature complete (not to mention the product of usability testing) it was chosen to be the default menu. If you don't like it, the traditional K-menu is available as well. Also, some alternative menu systems have been announced (Lancelot, Raptor), but at the time of writing they're still in development.

What is KRunner?

KRunner is the versatile mini-command line you can activate by pushing "Alt-F2" or by selecting "Run Command" from the desktop contextual menu. It can search for applications, bookmarks, even sessions basing on your input, show system activity and even do simple arithmetic calculations.

KRunner's functionality can be extended through the use of plugins ("runners").

What are the "cashews"?

What is commonly referred as "cashew" is the Plasma logo you can find on the default desktop, on the upper right corner, and on the panel, on the right hand side. By clicking on them, you can access other configuration options, such as panel configuration and the Zooming User Interface (ZUI). Some of these, like the panel cashew, only appear if the widgets aren't locked (see below).

Please provide an option to disable the upper right cashew.

Although putting an option to disable the cashew for desktops sounds reasonable, from a coding point of view it would introduce unnecessary complexity and would break the design. What has been suggested is, since the destkop itself (a containment) is handled by plugins, to write a plugin that would draw the desktop without the cashew itself. Currently some work ("blank desktop" plugin) is already present in KDE SVN. With containment type switching expected by KDE 4.2, it is not unreasonable to see alternative desktop types developed by then.

What is the Zooming User Interface (ZUI)?

The Zooming User Interface, or ZUI, is another component of Plasma. It enables the user to group different groups of plasmoids together, and to quickly switch between one and another using a zoom-and-pan approach. Notice that at the time, although significant improvements have been made in KDE 4.1, this feature is still under heavy development and may be fully functional only with later KDE 4.x releases.

How does the ZUI work?

Suppose you have three groups of plasmoids (such as widgets, application launchers, etc.) which you want arranged in specific combinations depending on what you want to do. You first group them according to your tastes, then you can switch between them by zooming out (getting a preview of all the groups) and then back in on the specific group you want to use. Notice that it is different from traditional X11 virtual desktop switching, as there is a higher degree of flexibility by using this approach, as the groups can be totally different from each other.

A very good example of this behavior is shown by this image courtesy of Half-Left from #kde on freenode.

Configuration

Can I place icons on the desktop?

Of course you can. Dragging an icon from Dolphin or Konqueror to the desktop will work. Notice that dragging on the desktop will not actually create a file there, just a link to it.

To display the contents of your Desktop folder, or any other folder, use the Folder View applet.

I am using two screens, and I used to have kicker over the two displays. Can I do that with Plasma?

No. The reason is that having a panel over two displays adds a great deal of complexity, especially when the two displays have different resolution. As a result of this added complexity, this feature would not be guaranteed to work in all cases. As a result it was not implemented.

How can I add applets to the panel?

Method 1: Open the Add Widgets dialog in the Plasma cashew (upper right corner of the screen) then select the widget of your liking and drag it directly (don't double click or use the Add Widget button) to the panel.

Method 2: Drag an applet from the desktop to the panel. This is also shown briefly on a video on Lydia Pintscher's blog.

Can I move the applets on the panel?

Just before KDE 4.1 RC1, a change has been introduced in Plasma to allow movement of the applets on the panel. To do so, open up the panel controller (by clicking on the cashew or by right clicking on the panel and selecting "Panel Settings") and hover the mouse cursor over the applets. Its shape will turn into four arrows, and you'll be able to rearrange the applets as you wish.

Lydia Pintscher's blog has a video showing movement in action. Another one is available on Aikurn's blog.

How do I move, rotate or resize an applet on the desktop?

First of all, hover over the applet you want to resize. The applet handle will appear.

The applet handle takes care of resize, rotate and move.

  • To move an applet: Click on the handle, then drag the applet around.
  • To rotate an applet: Click on the curved arrow then drag to rotate
  • To resize an applet: Click on the square icon and then drag to resize the applet. You can constrain the resize operation to the applet's aspect ratio by holding down the Ctrl key.

How can I change the height and the size of the panel?

Click on the panel cashew (the small icon on the right side of the panel), then click and drag, adjusting panel size and position to your choosing. Click again on the cashew (or on the red X) to close the panel configuration interface.

How can I remove a panel?

Click on the panel cashew and select "Remove this Panel". Alternatively you can right click on the panel itself and choose "Remove this Panel".

I heard that you can use OS X's widgets with Plasma. Is this true?

Yes, Plasma can use OS X's widgets, but only the HTML ones.

My widgets are hidden under the windows. How can I show them?

You can bring all the widgets to the front by pushing Ctrl-F12, which will bring the Plasma Dashboard to the front.

How can I lock the positions of the widgets?

Method 1: Right click on an empty area of the desktop and select "Lock Widgets" from the contextual menu. If you want to reverse that, right click again and select "Unlock Widgets". The same option is available if you right-click on the panel.

Method 2: Select "Lock Widgets" from the Plasma cashew on the upper right corner or from the panel controller.

How do I remove widgets?

If they're on the panel, right click on the widget and select "Remove this...". If the widgets are on the desktop, you have different options:

  • If you hover over them, clicking the red X will remove them;
  • If you use the Add Widget dialog, you can click on the minus symbol icon next to the widget name to remove it.

How can I add/remove an activity?

Adding an activity: Zoom out from your current desktop view by clicking on the desktop view cashew (the icon in the top right corner) and selecting Zoom out. Hovering again on the cashew will show a new button, "Add Activity". Click on it to create a new desktop view.

Removing an activity: Zoom out from your current desktop view, make sure it's not the current activity (otherwise select another one), then right-click on the activity you want to remove and choose the appropriate option.

Are there any keyboard shortcuts for Plasma?

In addition to the mouse, there is a number of shortcuts available:

  • Add widgets:  Ctrl-A
  • Lock widgets: Ctrl-L
  • Zoom out: Ctrl- -
  • Zoom in: Ctrl- = or Ctrl-+
  • Next applet: Ctrl-N
  • Previous applet: Ctrl-P
  • Add activity: Shift-Ctrl-A
  • Next activity: Shift-Ctrl-N
  • Previous activity: Shift-Ctrl-P
  • Applet settings: Ctrl-S
  • Containment settings: Shift-Ctrl-S
  • Remove applet: Ctrl-R

Unfortunately, changing these shortcuts is not possible in KDE 4.1, but it is planned for KDE 4.2.

Theming

I don't like the default look of the panel and other Plasma components. Can I change that?

Yes, the ability to change the look of Plasma was planned since the beginning. Plasma can use "themes", which are essentially a number of SVG images and files specifying the colors, to change its appearance. Some themes have already appeared on popular sites like kde-look.org.

Is there a GUI option available to change the theme?

Yes. Right click on your current desktop, select "Desktop Settings" and you will find an option to change the theme in the dialog that will appear. You can also download new themes directly from there.

Step by step instructions (including screenshots) are available on Aikurn's blog.

Troubleshooting

My panel is gone, how do I get it back?

kquitapp plasma; rm $KDEHOME/share/config/plasma-appletsrc; plasma

This deletes your plasma settings, so you'll get the default configuration back. The panel-vanishing-on-crash issue was fixed just after 4.0.0's release. If running all the 3 commands at once doesn't work, try typing them in manually and wait a few seconds before running the next command.

Some GTK+ applications show wrong system tray icon sizes.

That is unfortunately a problem in the Freedesktop.org system tray specification, which does not define the sizes for system tray icons properly.

I experience extreme slowness when using Plasma with the NVIDIA binary driver.

This is NVIDIA's fault entirely, due to their driver not supporting correctly the XRender X11 extension, and it also affects other parts of KDE such as Konsole. See this blog entry on how to report issues upstream to NVIDIA. This page contains a few suggestions on how to improve performance until an updated driver is released.

Folder View and other plasmoids look badly rendered with an ATI video card and the open source radeon driver.

To work around this issue, you have to change the 2D acceleration method from XAA (X Acceleration Architecture) to the newer EXA. As this involves editing your xorg.conf file, bear in mind that such a modification may damage your system. Do it at your own risk.

To make the switch, edit your xorg.conf file (make a backup just in case) and locate the Device section for your graphics card. Add the line

Option "AccelMethod" "EXA"

before the "EndSection" line. If there is already a line with AccelMethod, change it from XAA to EXA. Save the file and restart the X server.

Notice that EXA is still marked as unstable, and that some other applications such as some KDE3 programs may render incorrectly.

Glossary

  • Containment: A container for different plasmoids. The desktop and the panel are examples of containments.
  • Panel: The place where the K-menu, taskbar, system tray and other componenents reside. Often called taskbar.
  • Plasmoid: A component of Plasma. Often referred as widget, or applet.
  • Activity: An organized group of widgets and an associated desktop view. Users can have an arbitrary number of activities.

Thanks

  • Daniel Laidig & Simon St.James - thanks for the umeet IRC logs!
  • Marco Martin - thanks for the information on panels!
  • Sebas - thanks for letting me use information from your blog entries!
  • Half-Left - great example of ZUI usage!

Contributors