[haiku-development] Re: App idea: Multilaunch / workspace manager

  • From: "François Revol" <revol@xxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Sun, 01 Nov 2009 02:42:31 +0100 CET

Hi,

> Suggestion: Create an application that allows users to predefine a
> workspace
> session with different apps to launch, their window positions,
> documents/folders to open, background image etc. One could for
> example
> create a session for Haiku development with a terminal window for
> compiling,
> 2 tiled PE, a tracker with /develop/headers/be/ open and a browser
> with the
> BeBook in the background. After that this session could be started in
> the
> same way you start a single application. Another possibility would be
> to
> implement cloning sessions, if I wanted to have almost the same
> environment
> for different development projects.

Sorry but this one idea is (c) 2000 by me at least, and probably others
;-)
Well, we all thought about it once at least.

There are several ways to do it, one would be to implement the
BApplication::Archive() method in apps to provide the feature and then
just archive the workspace itself as a whole.
Maybe using the BWindow version would work for separate workspaces.

> User interface: The optimal, that I can think of, but also probably
> difficult to implement would be if the user could press a button and
> all the
> running applications were saved together with their positions and
> open
> documents where applicable. After that he/she would be presented with
> a
> minuature workspace showing the saved windows so application could be
> removed, changed or added (for example by drag and drop).

Ideally it should just be transparent in the session managment when we
have multiuser.

On logout you'd just archive apps, and reinstanciate them on login.

> Potential problems: AFAIK Haiku doesn't control initial positioning
> of
> windows (Which IMO it should, but I'll rant about that some other
> day) but
> maybe that could be solved using message passing.

Actually there is a B_OPEN_IN_WORKSPACE message that is supposed to be
sent to the BApplication on launch, but I never managed to make it
work.
It should be possible to extend it with positions.

If we use the BApp archive ctor it would just archive its windows and
recreate them where they were.

François.

Other related posts: