a note on application-based window-management behavior
- From: Jud Craft <craftjml gmail com>
- To: gnome-shell-list gnome org
- Subject: a note on application-based window-management behavior
- Date: Fri, 25 Sep 2009 22:30:21 -0400
GNOME-Shell seems to want to use the application-based paradigm (that
is, group all windows under an application and switch between
Applications as the representation of a program on the Desktop).
Pardon my overanalysis; I am trying to get to one point below. But
first, there are a couple of inconsistencies where the abstraction of
purely window-based grouping for Applications fails:
1. Consistently defining the "open a new window action" [some apps
open tabs, some Apps only have one unique window, some open a
completely new instance, etc.]
2. Integrating application tasks into the environment (possible
solutions: an "application menu" of common tasks ala Shell's intended
plan, or global menu bar via OS X/gnome-global-menu)
3. Application-based window management actions (closing all windows,
hiding the application, etc).
G-Shell (pardon my abbrev.), living in the window-based world, has a
central problem with #3.
-- Open program instances are linked to applications: ex, closing the
last window closes the application (and takes away two advantages, 1)
access to common tasks [see #2] and 2) quick access to new windows
[from being in memory]).
So, closing the last Brasero window means that opening a new one
requires re-launching the App, and any quick tasks such as "Burn
Image..." or whatever Brasero function may be integrated into G-Shell
require the same [or may not even be available, if integrated G-Shell
Application commands are only shown while the App is running].
I have an idea for this #3 problem. The solution is to hide the
window management behind G-Shell's app management. That is, only
G-Shell has full control over when an Application really closes.
This is relatively simple to imagine: when the last window of an app
is "closed" by the window manager, G-Shell merely hides the last
window instead of closing the program instance. It then can mark the
Application internally as "hidden" rather than merely minimized.
And now, G-Shell can quickly relaunch the application (by checking the
"hidden" flag and just restoring the closed main Application window),
and can still access any application-related tasks integrated into
G-Shell quickly (since the instance is still open in the background).
This also requires the strict reservation of the G-Shell command to
Close Application (closes all windows, as opposed to "close window"),
which could be alternately either Ctrl-Q (G-Shell would intercept this
before the program would), or Super-Q, or whatever. In addition,
"close window" on the last window would obviously hide the Application
rather than actually terminate it.
Anyway, that was my thought. Thanks for reading.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]