Hello Linux Geeksters. As you may know, Xfdashboard is a dash for XFCE (similar to the Unity 7 Dash) that displays an overview of open applications enabling the users to switch between apps easily, a workspace selector, an app launcher and a search tool. Also, shortcuts can be easily created.
The latest version available is Xfdashboard 0.4.0, which has been recently released, coming with the below changes:
- Notice: Raised minimum version of Glib to 2.32 as too much macros are used that were introduce with this version
- Notice: Replaced dependency on libray libwnck-1.0 with libwnck-3.0 (minimum version 3.0). I’m afraid of mixing GTK+2 and GTK+3.
- Notice: As xfdashboard has moved to Xfce a lot of URLs have changed. Bugs can now reported at Xfce’s bugzilla or at Github like before. Homepage, manual and FAQ moved to Xfce’s goodies Wiki. Releases are now hosted at Xfce.
- New features: Effects. The theme description file can have a new line “Effects=…” with a semi-colon separated list of XML files describing the effects. Each effects must have a unique ID. The basic actor (XfdashboardActor) implements a new property called “effects” which describes a space-separated list of effect IDs to set at this actor. This new property is themable via CSS and all XfdashboardActor derived classes inherit this feature.
- New feature: Workaround for minimized window to get the window content which is displayed in windows view. This workaround is turned off by default. To turn it on you have to set the property “/enable-unmapped-window-workaround” of channel xfdashboard in Xfconf to true.
- New feature: CSS parser was improved to allow defining constant variables, to use built-in functions for color or file operations and a command @import() to include external CSS resources.
- New feature: A theme can now style how to draw mininized or unmapped window. These new properties in XfdashboardLiveWindows are prefixed with “unmapped-window-icon-“
- New feature: A new layout manager called XfdashboardDynamicTableLayout which is mainly be used for views using the icon mode to stop layout problem which are cause by using ClutterFlowLayout before. This new XfdashboardDynamicTableLayout is a layout manager which layouts children in a dynamic table grid. Rows and columns are inserted and deleted automatically depending on the number of visible child actors. Usually it will prefer more columns over rows.
- New feature: A new layout manager called XfdashboardBoxLayout which is derived from ClutterBoxLayout and inherits all functions and properties. It only disregards text direction settings to enforce a horizontal left-to-right layout of its children always.
- New feature: Implemented configurable key-bindings. So there are no more hard-coded keys in xfdashboard anymore, except for ESC to clear search-box and quitting application. The application will first lookup a user-defined keyboard binding configuration file ‘xfdashboard/bindings.xml’ at user’s configuration folder which is ${HOME}/.config/xfdashboard/bindings.xml usually. If this file is not found, it will lookup a system-wide keyboard configuration file which is a default one – usually installed at /usr/share/xfdashboard/bindings.xml. The application will quit with error if none was found.
- New feature: Allow changing theme at run-time by modifying the xfconf property “/theme”. As soon as this value changes the new theme is applied. Sadly this also breaks current theme API. All references in CSS and XML files to class XfdashboardStage have to be replaced with new actor XfdashboardStageInterface. The new actor shares the same stylable properties and all changes will be applied to the old actor on-the-fly. So consider XfdashboardStageInterface is a one-to-one in-place replacement for XfdashboardStage.
- New feature: The stage can now show the real desktop’s background instead of being just transparent. The behaviour could be managed via the CSS property ‘background-image-type’ with can be ‘none’ (the default) or ‘desktop’ (new feature).
- New feature: Implemented a settings application which can be executed as a standalone application or via Xfce’s settings manager. The settings application allows to modify nearly all settings which were only accessible with xfconf-query or Xfce’s settings editor previously.
- New feature: Added command-line parameter “–restart” to application to allow replacing a running daemon instance
- New feature: XfdashboardDesktopAppInfo is a new class wrapping a GarconMenuItem and a string for the desktop ID. It also implements the GAppInfo interface. So it can be used – more or less – as a drop-in replacement for GDesktopAppInfo. By wrapping GarconMenuItem it gains all it’s advantages over GDesktopAppInfo, e.g. supporting desktop file of type “Link” to start a web-browser with the url specified in desktop file. Also a “Link” desktop filecan be added to quicklaunch. It emits a “changed” signal if the desktop file was modifed. So all icons in xfdashboard representing an application will be updated immediately
- New feature: XfdashboardApplicationDatabase is a new class combining all sources for applications. It wraps the GarconMenu instance for the root menu which contains all sub-menus and menu items and is used by applications view. It also loads all desktop files of installed application from system-wide paths and user directories. It notices all modifications to these desktop files (even if a user desktop file overrides a system-wide and vice versa) and sends a “changed” signal which causes the XfdashboardApplicationButton to update its title, description and icon. It hopefully speeds up searching applications
- New feature: Implemented multi-monitor support. This also added a new interface ID “secondary” to themes which specifies how the stage for non-primary monitors looks like.
- New themes: Thanks to lacios a bunch of new themes are added.
- Fixed reflecting geometry changes of a window in window view by ensuring that XfdashboardWindowContent returns always the right size of window.
- Fixed command-line parameter “–help” to show help again when Glib version 2.40 or higher is used.
- Fixed memory corruption when releasing lower-case coverted strings in applications search provider. This bug was seen when someone tried to lookup more than one keyword in search – when space was pressed.
- Fixed higher CPU usage when a new window appears on screen while xfdashboard is running in daemon mode and is suspended (hidden) at that moment.
- Fixed issue that changed view icons in view selector at a theme will not be applied by revalidating views on creation.
- Fixed handling CSD windows by skipping finding window frame.
- Fixed case-insensitive search for applications.
- Allow icon of search provider in search view result container to be themable.
- Replaced GTK+ stock icons with named icons.
- Enforce X11 backend at Clutter to prevent start-up crashes when using Clutter 1.21.4 or higher which uses GDK backend by default. xfdashboard uses some X11 related function at Clutter.
- Clear startup-notification when application enters main loop.
- Fixed crashes seen at systems running Fedora when an error message was thrown because neither the requested icon nor the fallback icon could be found.
- Tons of fixed compiler warnings, fixes to build system and other smaller bug fixes.
In this article I will show you how to install Xfdashboard 0.4.0 on Ubuntu 15.04 Vivid Vervet, Ubuntu 14.10 Utopic Unicorn, Ubuntu 14.04 Trusty Tahr, Linux Mint 17.1 Rebecca, Linux Mint 17 Qiana, using XFCE as the default desktop environment.
Because it is available via PPA, installing Xfdashboard on Ubuntu and Linux Mint systems using XFCE is easy. All you have to do is add the ppa to your system, update the local repository index and install the xfdashboard package. Like this:
$ sudo add-apt-repository ppa:xubuntu-dev/extras
$ sudo apt-get update
$ sudo apt-get install xfdashboard
Optional, to remove xfdashboard, do:
$ sudo apt-get remove xfdashboard