Hello.

On Mon, Jan 23, 2006 at 03:11:39PM +0100, Jonas Pfenniger wrote:
> Anselm R. Garbe wrote:
> >On Mon, Jan 23, 2006 at 12:39:07PM +0100, Steffen Liebergeld wrote:
> >My current favorit idea is different. I think if a client
> >requests fullscreen size, no additional page should be created,
> >instead it should be raised to the front and cover everything
> >else on the same page. This would only apply if a client
> >requests the window manager to maximize it to the screen size
> >(like in mplayer -fs).
This corresponds to what I would expect to happen. However two questions 
arise here: What to do with multiple fullscreen clients and how to 
handle pop-ups?

> >Additionally I think of a new layout which is called max and
> >consists of a single frame, which takes arbitrary clients and
> >maximizes them to the whole available frame size. Each client
> >can be accessed through tabs.
Hmmm...I don't like those tabs that much, but I think it's just 
another view onto the same principle. I would have thought of 
a layered stack of clients. In principle one might generalize to 
having a (nested) list of clients and the difference is in regard 
of the naming only. 
In this view LarsWM has something like this:
*-+ screen
  |-+ page 1
  | |-+ tiled layer
  | | |- frame 1 (main)
  | | |- frame 2 (aside)
  | | |- frame x (aside)
  | |
  | |-+ floating layer
  |   |- frame 1
  |   |- frame x
  |
  |- page x
Frames in the floating layer may be maximized and it's possible 
to change (and move clients) between the tiled and the floating 
layer.

Tabs provide a way to attach multiple clients to a single frame, 
thus it provides some kind of nesting. The above proposed layout 
looks like this:
*-+ screen
  |-+ page 1 (managed)
  | |- frame 1
  | |- frame 2
  | |- frame x
  |
  |-+ page 2 (maximized)
  | |-+ frame 1
  |   |- client 1
  |   |- client 2
  |   |- client x
  |
  |- page x

An idea I'd favourize would be to have a stack of floating 
(includes maximized) frames (layers) and one (or more) may 
be assigned a management mode to include (sub)frames. Just 
think of stacking the pages as they exist now in one single 
page:
*-+ screen
  |-+ page 1
  | |-+ layer 1 (managed)
  | | |- frame 1
  | | |- frame x
  | |
  | |-+ layer 2 (float/max)
  | | |- frame
  | |
  | |-+ layer x (float/max)
  |   |- frame
  |
  |- page x

The current cycling through frames on a float/max page would 
turn into cycling between layers and within a managed layer 
one could cycle between frames...
I have to admit this is very close to a traditional window 
manager just with the addition of a frame whose subframes 
are managed. On the other hand it's just a generalization of 
having pages, frames, tabs and therein the clients:
The screen has a stack of pages, a page has a stack of layers, 
a layer has a stack of frames (which it might manage or not) 
and a frame may have a stack of tabs...


> You could use the same principle for new pages. When you create 
> the new page, it uses the selected window. And when you close 
> the window, the page is deleted.
Personally I dislike this idea, since it introduces additional 
client resizings and redrawings, which can be annoying on slower 
machines.

Regards,
Stefan

_______________________________________________
[email protected] mailing list
http://wmii.de/cgi-bin/mailman/listinfo/wmii

Reply via email to