HCI-based suggestions for minor feature additions and behaviour updates

Clay Barnes clay at hci-matters.com
Fri Feb 1 01:48:32 EST 2008


I've been playing with the new release of of OB (quality as usual!),
and I thought I'd make a few HCI suggestions for the next release.

 * First, linear menus are accessed far faster (more than double
speed), if, instead of aligning sub-menus with the top edge by the
super-menu entry that holds it, it is centered on said super-menu
entry.

 * Second, an useful option to add to rc.xml (or the theme files)
 would be the ability to set the color of the
 "selected/moving/resizing" box, since the default ones are not highly
 visible with some setups/themes.

 * Third, I would like to propose a new rc.xml setting defining how
edges are considered in movement/resizing.  It would potentially be
called "Consider All Edges" and be boolean.  The effect of enabling it
(which would be off by default, to ease transition) would be to
consider not only the edges of applications aligned with it, but also
all others (see example).

 .___________.____.___________._____________________________.
 |           |    f           i                             |
 |           |    |           |                             |
 a           d    |   ._______|_______________.             |
 |           |    ~~~~g                       m             |
 |           |        |                       |__.          |
 |~~~~~~~~~~~~        ~~~~~~~~~~~~~~~~~~~~|~~~~  |          |
 |                            .______.    |      |          |
 |   .___.    .___________.   |      |    l      n          |
 |   b   c    |           |   j      k    |      |          |
 |   |   |    e           h   |      |    |      |          |
 |   ~~~~~    |           |   ~~~~~~~~    |      |          |
 |            |           |               |      |          |
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In this example, moving window with edges b&c east with the move to
edge key, it would only consider the edges e, h, j, k, l, and n.  The
new behaviour would be to consider every edge (d, e, f, g, h, i/j, k,
l, m, and n).

 * Fourth, I would like to propose that the edge that is currently
"stopping" edge motions should be highlighted along with the entire
line.  In cases where the edge doesn't resize all the way to the
"stopping" edge (such as gvim or an xterm), the relevant edge should
also be highlighted.  In the figure below, the user has moved the
aforementioned window east once and is still holding down a modifier
key.  The highlight line is shown in asterisks.

 .________________.___________._____________________________.
 |           *    f           i                             |
 |           *    |           |                             |
 a           d    |   ._______|_______________.             |
 |           *    ~~~~g                       m             |
 |           *        |                       |__.          |
 |~~~~~~~~~~~*        ~~~~~~~~~~~~~~~~~~~~|~~~~  |          |
 |           *                .______.    |      |          |
 |       .___*.___________.   |      |    l      n          |
 |       b   c|           |   j      k    |      |          |
 |       |   *e           h   |      |    |      |          |
 |       ~~~~*|           |   ~~~~~~~~    |      |          |
 |           *|           |               |      |          |
 ~~~~~~~~~~~~*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The highlighting line also clarifies when things like terminals that
resize in larger-than-pixel increments.  I find that I often overshoot
edges thinking I can squeeze in an extra character-width resize.

Even without the consider all edges option, I think the edge
highlighting would be nice.



Despite the length of this email, I think these suggestions would not
be too difficult to implement.  I would highly appreciate thoughts or
suggestions on these proposals (especially on whether they're likely
to make it into a future release!).


-- 
Clay Barnes

Website:
http://www.hci-matters.com

GPG Public Key (Fingerprint 0xbb14 fce2 1199 c413):
http://www.hci-matters.com/keys/claybarnes_public_key_until20080718.gpg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://icculus.org/pipermail/openbox/attachments/20080131/d53f2cb4/attachment.pgp>


More information about the openbox mailing list