Whisker Menu 2.2.0 released

This release is all about improving the feel of using Whisker Menu. To that end, I have made the search results slide in and out instead of just appearing. I also tweaked the logic for sizing the panel button so that it shouldn’t be so tiny anymore. And lastly, I added back loading applications in a thread, which allows the panel button to appear more quickly.

What’s New?

General

  • Disable opacity option when non-composited
  • Rename option for including favorites in recent
  • Load applications in a thread (bug #12903)
  • Slide out search results
  • Require GTK+ version 3.22

Bug Fixes

  • Fix panel icon size not following theme

Translation Updates

  • Amharic, Belarusian, Bulgarian, Catalan, Chinese (China), Chinese (Taiwan), Croatian, Czech, Danish, Dutch, Esperanto, French, German, Lithuanian, Nepali, Polish, Portuguese, Portuguese (Brazil), Romanian, Russian, Slovak, Slovenian, Turkish

Downloads

Source tarball (md5, sha1, sha256)

Advertisements

Whisker Menu 2.1.7 released

I’ve decided to make my release announcements a little more structured, so I am going to mimic the style from the Xfce blog. This relase of Whisker Menu is pretty small, mostly just to fix a memory leak and update some translations.

What’s New?

General

  • Use HTTPS for plugin website

Bug Fixes

  • Fix memory leak when recreating window

Translation Updates

  • Bulgarian, French, Turkish

Downloads

Source tarball (md5, sha1, sha256)

Theming Whisker Menu redux

I still get questions about how to theme Whisker Menu from time to time, but now they are about the GTK+3 version. Which makes sense, because the information in my previous blog post is about how to theme the GTK+2 version and none of that applies anymore. If you are using Whisker Menu 2.0.0 or newer, this is what you need.

So! How to do it? It is surprisingly easy, actually. You need to modify the file ~/.config/gtk-3.0/gtk.css (create it if it doesn’t exist), and just start putting things in there. It uses GTK+’s CSS, with properties you can read about on gnome.org. To apply your theme changes you need to either log out and log in, or restart your panel by running:

xfce4-panel -r

To modify only Whisker Menu, make sure to put #whiskermenu-window at the start of each section. That will restrict the styling to just Whisker Menu, and leave the rest of your GTK+3 programs alone. Here is a quick and dirty example (which I am sure could be done much more cleanly) to match the theming from the original blog post:

#whiskermenu-window {
	background-color: #404040;
	color: #ccc;
}

/* Make sidebar buttons match */
#whiskermenu-window button {
	background-color: #404040;
	color: #ccc;
}
#whiskermenu-window button:hover {
	background-color: #808080;
	color: #fff;
}
#whiskermenu-window button:checked {
	background-color: #606060;
	color: #fff;
}

/* Make treeview match */
#whiskermenu-window treeview {
	background-color: #404040;
	color: #ccc;
}
#whiskermenu-window treeview:hover {
	background-color: #808080;
	color: #fff;
}

Whisker Menu dark tree GTK+3

The panel button is also named. If for some reason you want the Whisker Menu panel button to not match the rest of your panel, just use #whiskermenu-button at the start of a section.

CSS is quite powerful, and you can do a lot more with it than I have done here. This is just to get you started! Please don’t ask me for more help beyond this, though. I don’t have much experience with using CSS for GTK+ styling, and I don’t really expect to. I don’t theme my own menu. 😉

More releases!

I just realized I forgot to announce the releases I made at the beginning of the month! Oops. This poor, neglected blog.

I updated all of my projects, and for the most part it was a very minor release that fixed an installation bug in Linux or updated the translations. Of course, FocusWriter had a few more fixes than the rest, but that is to be expected as it is a much more complicated program. And Tanglet actually had a feature release, thanks to Markus Enzenberger. If you have not yet updated, enjoy!

Minor Whisker Menu release

Not much to announce here, because there were only two small bugs fixed in my newest Whisker Menu release, version 1.7.2 (and version 2.1.2 for those using GTK+3). Both bugs were related to the category names turning off, so it is an important but small release. Enjoy!

Releases galore!

Over the past week and a half, I have made releases for all of my projects. Most of them were pretty minor, and just amounted to updating the translations (and fixing an issue where the Qt-supplied translations were not being properly loaded). Packagers will now need to depend on lrelease, because I no longer include the precompiled binary .qm files.

The projects with actual feature releases were CuteMaze, Hexalate, Tanglet, and Tetzle. For the most part, the features added will not be obvious unless you have a 4K monitor, because the biggest thing I added was support for high-DPI displays. I did also finish moving my projects to be Qt 5 only, and to use C++11.

As usual, report any issues you have. Enjoy!

New Whisker Menu!

I am happy to announce that I have finally at long last made a new feature release of Whisker Menu, version 1.6.0! There aren’t a whole lot of new features, but that is because the menu is pretty much complete at this point. Some of the features have been sitting in git for quite a long time now (oops), like the ability to navigate categories using the arrow keys. Another new feature is the option to show tooltips on the application launchers. I also tweaked the search results to put results from favorites and recent before the rest.

I have also released version 2.0.0, which is a like-for-like port to GTK+ 3. There are no new features, just the requisite code changes to support a newer version of GTK+. I have been using the GTK+ 3 port for a while now, and for me it works just fine. It may be a while before users have it, though, because the dependencies are very new. I’m also not going to maintain backported libraries, so I will still be building GTK+ 2 packages for now.

If you have any issues, please report them. I cannot fix bugs that I do not know about. Anyway, enjoy the updated menu!

Whisker Menu 1.5.0 released!

Yesterday I released a new Whisker Menu, version 1.5.0, which includes the most frequently requested feature: the ability to change the background opacity of the menu. Of course, if you use xfwm4 as your window manager that will remove the drop shadow, but otherwise the feature works nicely.

Another feature added in this release was the inclusion of a small profile picture next to the username. You can set what program is launched to edit your profile when you click it; by default it tries to run the program mugshot.

I also made some changes to make it easier to use. If you add an item to the desktop from the right-click menu it will be made executable by default, so that you can launch it without prompting. Also, when you have the menu hierarchy shown, you can now click on the folders to expand them instead of having to click on the arrows next to the folder names. And finally, you can adjust the amount of recent items shown in the menu if you want more than 10.

In related news, Whisker Menu has become an official Xfce project! You can fetch the release tarballs from archive.xfce.org and the current source from git.xfce.org. It is also now part of the Xfce bug database, so I have closed the GitHub issues.

Enjoy! And, of course, please report any bugs you find.

Whisker Menu 1.3.0 released!

I have just released a new version of Whisker Menu, version 1.3.0. The biggest feature in this release is probably the addition of search actions, which are inspired by the Xfce application finder’s custom actions. These are useful if you want to perform specific actions by typing something into the search field, and included by default are four example actions that you can change or remove. For instance, one of the default actions allows you to open your default web browser and search Wikipedia by starting your search with “!w” (eg, “!wopen source” will show you Wikipedia’s definition of “Open Source”).

This release also has a lot of smaller features, such as the ability to run arbitrary programs from your path by typing the entire program name into the search field. You can also now drag menu items to your panel or desktop if you do not want to use the context menu. Additionally there is more flexibility in configuring the command buttons, as well as the option to hide them if you do not need them. You can also hide the category or menu item icons by setting their size to “None” if you prefer a menu without icons.

I hope you enjoy this release! And, of course, please let me know if you have any issues.

Theming Whisker Menu

Hi there! This post does not apply to styling the GTK+3 Whisker Menu. For that, read my new post.

I have seen several people state that Whisker Menu does not use their GTK theme. This is understandable but completely incorrect. Whisker Menu is a regular window and therefore it matches the GTK theme of regular windows. It can not be a GtkMenu because of the widgets it uses (believe me, I tried), so it does not match the theming of menus.

I did investigate if it would be possible for Whisker Menu to “pick up” the theming of GTK menus and mimic them. Short answer: no. Longer answer: haha, my sanity is worth more than the creaky mess of hacks it would take, and besides I’m fairly certain it still wouldn’t work. So instead I did something much simpler: I named the menu widget itself “whiskermenu-window” so users or theme makers can play with its appearance as much as they want.

I will not be adding any theme configuration settings to Whisker Menu. First, I really have no interest in doing so. Second, modifying the theme from a .gtkrc file gives you much more power than I could ever expose from a GUI. Third, anything I add would probably interfere with .gtkrc theming.

So, how do you theme Whisker Menu? It’s pretty easy, actually. Open up the hidden file named .gtkrc-2.0 in your home directory with any text editor you want. If the file doesn’t exist, create it. Now, if you want to change the background color of the menu window add something like this:

style "darkback"
{
	bg[NORMAL] = "#404040"
	bg[ACTIVE] = "#606060"
	bg[PRELIGHT] = "#808080"
}
widget "whiskermenu-window*" style "darkback"


Whisker Menu darkback

If you want to change the window text color as well, add something like this:

style "darkback"
{
	bg[NORMAL] = "#404040"
	bg[ACTIVE] = "#606060"
	bg[PRELIGHT] = "#808080"
	fg[NORMAL] = "#ccc"
	fg[ACTIVE] = "#fff"
	fg[PRELIGHT] = "#fff"
}
widget "whiskermenu-window*" style "darkback"


Whisker Menu darkback2

If you want to change the background color of the menu items, add something like this:

style "darktree"
{
	base[NORMAL] = "#404040"
	base[ACTIVE] = "#606060"
}
widget "whiskermenu-window*TreeView*" style "darktree"


Whisker Menu darktree

If you want to change the text color of the menu items as well, add something like this:

style "darktree"
{
	base[NORMAL] = "#404040"
	base[ACTIVE] = "#606060"
	text[NORMAL] = "#ccc"
	text[ACTIVE] = "#fff"
}
widget "whiskermenu-window*TreeView*" style "darktree"


Whisker Menu darktree2

These examples just scratch the surface of what you can do with theming from a .gktrc file. I don’t have much experience with it myself, nor do I intend to really look into it further. There are plenty of resources on how to make GTK themes and what they say should be applicable to Whisker Menu as well.