[openbeos] Application launching and activation...

Hello all,

In BeOS if you try to launch a B_[SINGLE | EXCLUSIVE]_LAUNCH 
application that is already running and the window is not active, the 
system will activate it (bring it to the front and/or move to the 
workspace it is at and make it the focus app.) This works from the 
DeskBar, Tracker and Terminal. Haiku does not do this. Was this an 
active decision or is this a bug?

In addition from what I can tell the registrar has no involvement in 
app activation, even though there is code related to activation in it. 
Right now BRoster::ActivateApp sends a message to the app server. Also 
no B_APP_ACTIVATED ('_ACT') or B_SOME_APP_ACTIVATED ('BRAW') messages 
are sent to the application on activation or deactivation (only to the 
window/view.)

Also you may know of the bug on BeOS where BApplication::AppActivated 
is never called because B_APP_ACTIVATED is never sent to the 
application, which is what would trigger AppActivated to be called. 
B_APP_ACTIVATED is only sent to the window on activation. But in fact 
B_SOME_APP_ACTIVATED is sent to the application, but this message is 
not set up to call the AppActivated hook function (though that is 
fairly easy to overcome.) So my question is do we want to mimic this 
buggy behavior of BeOS or actually follow the documentation? Does 
anyone have any idea how many applications may have been programmed 
around this bug or might depend on it?

Anyhow I would like to fix these issues, but any input from the gurus 
would be good, as usual. FYI 'll be out of town and without a BeOS (or 
Linux) machine for almost two weeks, so I won't be able to develop in 
that time. But I'll be back :)

Regards,
Ryan



Other related posts: