On Oct 18, 2009, at 3:21 AM, Richard Frith-Macdonald wrote:
On 18 Oct 2009, at 05:31, Sheldon Gill wrote:
Actually, I think it would simplify things a great deal if we
dropped the miniwindow entirely.
I believe the fundamental problem here is one of design and the
flaw is trying to get -gui to handle miniwindows. For any
compatibility desktop we want to consider (GNOME, KDE, MS-WIN...)
the answer is conceptually straight-forward:
a window sets its state to whatever, including MAXIMIZED,
ICONIFIED/MINIMISED
the desktop environment does the display
It seems like a really good idea. There's some wear beginning to show
in Gnome, where people are starting to want to draw on icons, and
there's a move to client-side windows for a lot of things. I think
this is a good thing.
Window managers need a way to deal with miniwindows, and I think it's
time to solve this in a cross-platform way. The time's really ripe to
get a spec that works for Gnome and Gnustep both.
I happen to like minwindows (they were great in NeXTstep), though I
agree that the world has standardised on a less functional mechanism
and the advantage of the miniwindow (allowing user interaction with
a minimised window) is, as a consequence, practically never used.
On the other hand, maintaining OpenStep backward compatibility is
not the issue here.
I like the concept of miniwindows, but I'd love to see some evolution
that lets us have a MacOS-style dock that really works.
I'd also really love to be able to use Metacity as a window manager.
There's also a move toward application-handled decoration, and specs
are being built for this. I think it's ripe time for Gnustep to get
involved there, too.
The actual problem is that X doesn't differentiate between a window
being mapped and a window being de-iconified, so you can't know
when a window is de-iconified in order to send the notification
mandated by the OSX NSWindow API. In fact, this problem does not
occur with miniwindows (since when X tells us a miniwindow has been
mapped, we know that the normal window has been miniaturised, and
when X tells us it is unmapped, we know the normal window has been
deminiaturized). The problem ONLY occurs when we are using the
standard X mechanism/architecture you describe.
Indeed, though modern window managers do give some better messages.
_______________________________________________
Gnustep-dev mailing list
Gnustep-dev@gnu.org
http://lists.gnu.org/mailman/listinfo/gnustep-dev