xfwm: support for 2d pagers

Paramjit Oberoi param at cs.wisc.edu
Fri Sep 24 22:31:27 CEST 2004

> yuck.  this means you're changing a current behavior, since scrolling with
> a single mousewheel has always scrolled horizontally.  does anyone even
> have a mouse with two scroll wheels?  i've never heard of such a thing.  but
> yeah, if it's configurable, i guess it's ok.

I agree with you - scroll horizontally by default; vertically with a
modifier key.  And have configurable modifiers for both actions.

> a couple other ideas:
> * a single scroll wheel scrolls horizontally, but when you get to the
>   rightmost (or leftmost) workspace, you wrap to the leftmost (rightmost)
>   workspace in the next (previous) row.
> * scroll horizontally, but only in the current row.  if we're doing wrapping,
>   just wrap back to the WS on the opposite side, same row.
> i think i'm in favor of the first of my two ideas.

The first is just current behavior, modified to take into account the
possibility that the workspaces may not be numbered starting at top-left
corner in row major order.

The second arguably makes more sense given a 2d model.

It comes down to the question of whether "next workspace" and "previous
workspace" are meaningful concepts when dealing with a 2d layout.  In
you I think we've found someone who thinks that, yes, those are
meaningful concepts.

> i also think that making this too configurable is starting to walk
> down the road of featuritis.

How easy/difficult is it to map mouse events to keyboard events?  That
way the user can easily configure what the scroll wheel means to them,
and code is simplified as well.

In other words, the rootScrollButton() function, instead of implementing
anything itself, calls handleKeyPress() with the appropriate arguments.


More information about the Xfce4-dev mailing list