[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Ayatana] Yet another discussion on window resizing



Here is yet another discussion on resizing windows, this time driven
by status bars!

MacOS has a similar situation to us, with very narrow window borders.
In its case, they don't even _try_ to offer resizing by the window
edge. (The idea being, I suppose, that any control less than five
pixels in any direction will be very difficult to reliably use).
Rendering that resizing situation less of an issue, MacOS has the very
unusual functionality for expanding windows, and pretty well every
window has a client-owned resizing grip in the bottom right.

Gnome has a _similar_ solution in place. We don't have the cool
maximize behaviour (and it would probably anger a great number of
people if it was implemented), but any window that happens to have a
status bar will probably have a resize grip as well. Unfortunately,
this resize grip is not a widget you can just drop in easily; it's
fused to the status bar widget. (Further demonstrating that the darn
things have no objective and should stop being called status bars).

So, here is the problem: there's a plan to get rid of of status bars
and replace them with ephemeral hint bars.

And now, I'll bring your attention back to everyone's favourite bug,
lp:160311 (“Resizing windows by grabbing window borders is
difficult”).
https://bugs.edge.launchpad.net/ubuntu/+source/metacity/+bug/160311

The status bar work shouldn't make that bug worse, but in the current
direction it will.



I discussed a possible solution for this somewhere, and nobody really
gathered what I was babbling about. To fix that, I finally made a
quick mockup today…

http://people.ubuntu.com/~dylanmccall/mockups/metacity-resize-control/mockup.html

That describes a visible resize control drawn by the window manager.
It should fade in when the user moves the mouse near a window's bottom
right corner. It should only appear for the window that is in the
foreground. Clicking it would do the same thing as clicking and
dragging the corner of a window's border, except there's a lot more to
click and much more meaningful visual feedback.
It does miss a critical detail, of course, but I, err, never saved the
SVG. The resize control should go _behind_ the window, not in front of
it. That way it sticks out from the window but doesn't interfere with
anything in the client area. (As drawn there, it would become very
difficult for some people to use scroll bars).



I'm sure there are some other clever solutions here! Maybe even some
plans attached to the Windicators / Hint bars work :)
So, I am curious to know: is there anything happening in this space?
Should there be?



Thanks!
Dylan