Xfce4-panel starting from version 4.9.0 supports multiple rows and 2 vertical modes. At the moment indicator plugin arranges icons in a single row and doesn't rotate labels in when panel is oriented vertically (this coincides with the deskbar mode but looks wrong in the vertical mode). More information: https://wiki.xfce.org/dev/panel-deskbar-mode
Created attachment 4263 A patch for changing label orientation. This is the first step toward 4.9+ compatibility. Because I have decided to refactor the code quite a bit (I've abstracted out the button handling code) I'd like to hear your opinion on it before moving further. Perhaps setting up a branch in the repo would be a better way of working on these features. Patch tested with panel 4.9 (git).
It has a minor issue with 4.8 at least: if a button has an image and a label like this: <icon> <text> (horizontal panel) after switching to vertical and back to horizontal makes the button look like this: <icon> <text> until the next panel restart. Maybe we're missing a signal here?
Created attachment 4264 Added a fix for the error mentioned in comment #2
Created attachment 4267 Use resizeable icons The icons can shrink following the panel size (4.8) or row size (4.9+). They are still laid out in a single row. Fixed some errors. In particular the issue from comment #2 could have still been reproduced in both 4.8 and 4.9.
Created attachment 4270 Support for multi-row layout. This patch adds support for multi-row/multi-column layout of indicator icons. "buttonbox" is now implemented using a custom container (XfceIndicatorBox class). For compatibility with 4.8, I didn't scale the icons *up* to the row size. This may look weird if someone is using multiple row layout with large icons but this isn't a very usable setup anyway. For the same reason, icons are placed on the left side of the label in the vertical panel orientation (unless they don't fit). But for better visual effect the icon is placed above the label if multiple panel rows are used.
changes released in 0.5