Re: [Usability] window manager configuration
- From: Gregory Merchan <merchan phys lsu edu>
- To: Havoc Pennington <hp redhat com>
- Cc: usability gnome org, gnomecc-list gnome org
- Subject: Re: [Usability] window manager configuration
- Date: Fri, 7 Dec 2001 18:10:44 -0600
On Fri, Dec 07, 2001 at 06:25:05PM -0500, Havoc Pennington wrote:
>
> Gregory Merchan <merchan baton phys lsu edu> writes:
> > Once this is done there may be things yet unseen that should be available
> > and it might be worthwhile to find them. Window-in-window MDI applications
> > provide some functions that I've not seen (by default) in any window
> > manager, such as the ability lay two windows half-maximized and
> > side-by-side and use a pane handle to shift the allocation. (Think of
> > HTML frames.)
>
> Too experimental IMO to be relevant right now. I have no idea how all
> the details would work. I'm happy to see someone experiment with WM
> implementation and figure it out though.
"Once this is done . . ." It hasn't been done yet. It will probably take time
and iterations with user testing.
I've attached two functions for sawfish which nearly accomplish part of the
paning operation. (They're still buggy.)
> > I have one of the more unusual configurations I've known. I have a laptop
> > with an pencil-eraser-like mouse in the middle of the keyboard, and a small
> > (800x600 10.4") screen. It's hard to accidentally move the mouse and screen
> > space is precious. I use focus-follows-mouse mode and my window frames
> > (when present) are a one-pixel blue border. The functions that are
> > ordinarily accessed from a title bar I access through keybindings; when I
> > need to see the title of the window I use the tasklist applet. For
> > maximized windows I remove even that one-pixel border; I only use it so
> > that text does not bleed between windows.
>
> No-borders mode bad, IMO. It effectively disables the computer for
> many users if they accidentally turn it on.
Before sawfish allowed for compound functions to be done with the config tool,
I'd implemented it in my ~/.sawfishrc. The benefit of borderless mode is deep
screen edges. I'm not suggesting that my configuration be standard or even
readily available. I offer it as an example of something that might seem odd,
but that I find genuinely useful.
> If it exists this is a "powertweak" kind of option, not in the default
> control center. Of course Sawfish's current capplet gives us a free
> "powertweak" tool for it without doing any work.
I would have preferred to keep my scripts rather than using the config tool.
Some part of the code changed and for fear of having to maintain my scripts
I decided to use the config tool.
Incidently, there is an app called "powertweak" which deals with hardware.
(I think there's a gtk front-end to it also.)
> I believe the typical use-pattern a windows user would have on your
> small-screen system is to always keep their windows maximized, and use
> Alt+Tab or tasklist to move between them.
Maybe, but would he like it and might he find something else more to his
liking?
> > I use PointerRoot. I can understand click-to-focus. I've yet to grasp why
> > anyone uses sloppy focus; I'm interested to know.
>
> Because unfocusing all windows when your mouse is over the desktop is
> just pedantic and not useful.
Pedantic? I don't understand how that applies at all.
I usually have the root covered by a window, such as Xchat right now. I tried
sloppy focus, but since the panel does not accept focus I was often confused
when I moved to it. Maybe on a larger screen I'd find sloppy useful.
> However I believe this may be one of those not-worth-fighting points,
> it's only about 3 lines of code to implement the third mode in the
> window manager.
The only thing I'm fighting about is the approach. I described my setup hoping
that it might show in part why some things are useful and not indicative of
drug abuse.
OTOH, if someone decided that only click-to-focus mode or some other option
become a requirement, I might start fighting about that. More likely I'd
suggest that the person fork the project or start his own. X is basic enough
that it could be used to implement any GUI. If someone were so inclined he
might use it to make a MacOS GUI, but he'd have to make clear that he's using
X primarily as a hardware abstaction and not attempting to make an X desktop;
then he could ignore all the conventions, require extensions, require a
specialized OS, and require specialized hardware. He might even succeed.
Cheers,
Greg Merchan
;; pane-side-by-side
;; Takes two windows as arguments - one for the left, one for the right.
;; One way to invoke is: (pane-side-by-side (select-window) (select-window))
(require 'sawfish.wm.windows)
(require 'sawfish.wm.state.maximize)
(define (pane-side-by-side wl wr)
(define (resize-hpane w)
(resize-window-to w (/ (screen-width) 2) (cdr (window-dimensions w)))
(maximize-window-vertically w))
(resize-hpane wl)
(resize-hpane wr)
(move-window-to wl 0 (cdr (window-position wl)))
(move-window-to wr (/ (screen-width) 2) (cdr (window-position wr))))
;; pane-top-and-bottom
;; Takes two windows as arguments - one for the top, one for the bottom.
;; One way to invoke is: (pane-top-and-bottom (select-window) (select-window))
(require 'sawfish.wm.windows)
(require 'sawfish.wm.state.maximize)
(define (pane-top-and-bottom wt wb)
(define (resize-vpane w)
(resize-window-to w (/ (screen-height) 2) (car (window-dimensions w)))
(maximize-window-horizontally w))
(resize-vpane wl)
(resize-vpane wr)
(move-window-to wt (car (window-position wl)) 0)
(move-window-to wb (cdr (window-position wr)) (/ (screen-height) 2)))
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]