Vertical panel mode(s)

Nick Schermer nickschermer at
Thu Oct 27 09:41:36 CEST 2011

On Thu, Oct 27, 2011 at 7:55 AM, Andrzej <ndrwrdck at> wrote:
> Hi,
> I've recently started using a laptop with a wide screen (difficult to
> find anything else these days) and so I started looking closer into
> the vertical panel mode. It looks to me that in XFCE the "vertical
> mode" means a "rotated panel placed along the left or right edge of
> the screen". However, in many use cases it would make sens to use a
> wide "panel (dock?) placed along the left or right edge of the screen
> with items arranged horizontally".
> I've noticed some work on making panel items work in both scenarios
> has already been done (e.g. "Rotate buttons in vertical panel" in
> "Window buttons") but most other items are hard-coded for the "rotated
> panel" use case. If other panel items were to follow this path,
> similar options would have to be added to almost all of them. This
> would not only be tricky to configure but also would also make
> difficult to switch between panel orientations (the user would have to
> reconfigure all the panel items after the change).
> My proposal is:
> 1. Acknowledge that there are two very distinct use cases for vertical
> panel mode and add an option to panel preferences.
>   Specifically, "Orientation" panel property could have three values:
>     - Vertical,
>     - Horizontal,
>     - Vertical (dock).     (The name is not very good, I know. Please
> propose something better)
>   In "Vertical (dock)" mode all items should arrange themselves horizontally.

This can also be simulated by send a horizontal orientation to the
plugins. I think I prefer a checkbox to enable this behaviour.

> 2. Add an "icon size" property only active in "vertical (dock)" mode
> (in other modes "icon size" should IMHO be derived from the panel
> size, as it is now).
>   Currently many icons become very large when panel size is e.g. 128
> pixels. This might be a desired behavior but I think most users would
> expect icon sizes of e.g. 24 pixels (like icon sizes used in "Window
> buttons" or "Notification area" items).

My idea was to add a packing/container plugin to add for example 3
launchers in a vertical row. Is still on the 4.10 roadmap, but I'm not
sure if I can complete it mostly because I doubt it's a solution for
the problem and might be complicated to work with.

> I've been fiddling with these ideas in my private git repository but
> would like to hear from you whether you like these changes or not
> (this work only makes sense if at least the 2 ideas above make their
> way into Xfce repository).
> Also, another (related) question. I've noticed there are multiple
> enums defining the orientation of panel w.r.t. the screen, like:
>    XFCE_SCREEN_POSITION_NW_V,          /* North West Vertical   */
>    XFCE_SCREEN_POSITION_W,             /* West                  */
>    XFCE_SCREEN_POSITION_SW_V,          /* South West Vertical   */
> Are they only for API compatibility with older XFCE versions? I didn't
> notice anything in XFCE-4.8 GUI that would rely on these enums. Should
> I follow this convention for new enums or is it OK to simplify them
> (e.g. *_E_VD, *_W_VD)?

They are not used in the panel, but for plugins only. Not many plugins
inside the panel use these, but for example the menu positioning does.
Adding the dock mode here is a bad idea, because the place on the
screen does not change, I even not completely agree with the _H and _V
in there; floating and the cardinal directions would've been better;
but that's a leftover of previous versions.

Personally I love the Haiku deskbar and wouldn't mind if Xfce4-panel
could behave in the same way. It's not that complicated, because a lot
of plugins are already capable of this in some extend, but it requires
a lot of testing and tiny adjustments.


More information about the Xfce4-dev mailing list