Re: [PATCH 0/4] Native dockapp support

On Tue, May 25, 2010 at 08:19:22AM +0900, Teika Kazura wrote:
> Wait a minute. The objective is to support *one* specific application,
> "dockapp". (Or one class of applications?)
I'll try to explain it below.

> And C part does too much. "Withdrawn & iconic must be dockapp."
> crosses the line, and can affect other people.
I wouldn't go so far to call this "too much".  I made an
assumption, that dockapp is "withdrawn, with icon _window_".  And
I don't really think that it will affect any of existing

> If necessary, implement some mechanism which allows
> wm.ext.dockapp to react when a dockapp appears.
You know, you are right.  My implementation sucks, not because it
makes wrong assumptions, it just sucks.  Implementing the whole
"appicon" and "miniwindows" stuff (as a separate module, yes)
will be better, but I guess I'll need some help.

BTW, this could be used as dock replacement.

For those who cares, let me show you appicon description from
NeXT docs:

Every running application is represented on-screen by an icon.
This icon lets the user choose the application to work in.  To
choose an application, the user simply double-clicks its icon.

An application icon can be either freestanding or docked.  Docked
icons line up along the right edge of the screen.  They stay
on-screen even when the applications they represent aren't
running; this makes it easy to start up commonly used
applications (by double-clicking the docked icon).  A
freestanding icon stays on-screen only as long as the application
is running.  Users can customize their environment by dragging
application icons into and out of the application dock.

Let's imagine, that we have 'sawfish.wm.ext.appicon module (since
dockapp is just a special case of an appicon).  Then for every
application, appicon is created.  On this appicon will be drawn
client-supplied Window, Pixmap or user-supplied Pixmap.

First of all, how do I know that particular windows belong to
particular applications?  For example, Tool and Image windows
belongs to one Gimp application, while two xterm windows belongs
to two different xterm application,

Next, I'm not sure that I can create fully-manageable windows
from librep code.  These windows should be managed by sawfish,
since I want to reuse keymaps, frames and stuff.

before-add-window-hook is a good place to start.  I guess I need
to copy-paste big parts of add_window() into add_dockapp, since
add_window() does a bit too much.

I need to think about all this.

Regards,    --
Sir Raorn.   ---

Attachment: signature.asc
Description: Digital signature

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