Application Launch notification ideas (Hourglass)
Application Launch notification ideas (Hourglass)
Every now and then there are requests to, specifically, "show an hour glass" when launching an application.
e.g.
http://www.puppyos.net/forum/azbb.php?1172292766
I've read (and had) the argument that in windows the OS is actually very busy when launching an application. That user's have been conditioned to accept Windows ineficiency is not Linux's fault.
In Linux, specifically Puppy, the OS does not prevent the user from working while launching an application so the OS is actually not waiting so no need for an hour glass.
I want to approach that request from the actual requirement point of view, because I highly doubt that the actual requirement is to show an "hour glass".
My suspicion is that the problem is that users don't know if they clicked the icon correctly, so sometimes they click two or three times on the icon.
Based on that I think that the requirement is actually the following
Notify the user when an application is launching
This thread is to validate (or invalidate) that previous statement. And to gather ideas on how to address this requirement.
Here is my sugestion:
- Create a "Launcher" script that receives as parameter the command to launch the application
- The launcher would show a notification window indicating that the application is starting and close when the process shows in the "ps -e" list.
- Modify all menu entries and desktop Icons to use the launcher.
- If there is really too much emotional attachment to the hourglass, we could even set the window cursor to be an hour glass.
Yes, it is a hack but very easy to implement.
e.g.
http://www.puppyos.net/forum/azbb.php?1172292766
I've read (and had) the argument that in windows the OS is actually very busy when launching an application. That user's have been conditioned to accept Windows ineficiency is not Linux's fault.
In Linux, specifically Puppy, the OS does not prevent the user from working while launching an application so the OS is actually not waiting so no need for an hour glass.
I want to approach that request from the actual requirement point of view, because I highly doubt that the actual requirement is to show an "hour glass".
My suspicion is that the problem is that users don't know if they clicked the icon correctly, so sometimes they click two or three times on the icon.
Based on that I think that the requirement is actually the following
Notify the user when an application is launching
This thread is to validate (or invalidate) that previous statement. And to gather ideas on how to address this requirement.
Here is my sugestion:
- Create a "Launcher" script that receives as parameter the command to launch the application
- The launcher would show a notification window indicating that the application is starting and close when the process shows in the "ps -e" list.
- Modify all menu entries and desktop Icons to use the launcher.
- If there is really too much emotional attachment to the hourglass, we could even set the window cursor to be an hour glass.
Yes, it is a hack but very easy to implement.
[url]http://rarsa.blogspot.com[/url] Covering my eclectic thoughts
[url]http://www.kwlug.org/blog/48[/url] Covering my Linux How-to
[url]http://www.kwlug.org/blog/48[/url] Covering my Linux How-to
Yes, I think it's a problem that people keep clicking, There was a pup for firefox that popped up a box that said firefox is starting, I don't remember which one. That was very helpful, since firefox takes a miniute to start on a 400mhz machine.
Not all applications need a notification, they start very fast, but on slower machines, even I wonder if the app is started, or crashed.
I use a little script for many programs, to bring up a terminal :
this one calls up a script that stops mplayer if needed, and starts the new song. The open terminal allows the keybindings for volume, etc to work.
but I don't know how to close the terminal automatically, say when another GUI finally starts.... My script writing is very basic.
An easily editable script for each program that has a slow start, that people can use on an "as needed" basis would be a hack, but a starting point. If you have a 4ghz machine, none of this matters.
--Karl
Not all applications need a notification, they start very fast, but on slower machines, even I wonder if the app is started, or crashed.
I use a little script for many programs, to bring up a terminal :
Code: Select all
#!/bin/sh
rxvt -bg orange --geometry 60x10 -e anymp3 "$1"
but I don't know how to close the terminal automatically, say when another GUI finally starts.... My script writing is very basic.
An easily editable script for each program that has a slow start, that people can use on an "as needed" basis would be a hack, but a starting point. If you have a 4ghz machine, none of this matters.
--Karl
Re: Application Launch notification ideas (Hourglass)
I remember that I missed an hourglass too when I started to use Puppy but now an hourglass would be almost annoying to me. My computer isn't old and slow, that's true, but now I'm simply used to Puppy behavior.
http://www.murga-linux.com/puppy/viewto ... 381#100381
Yes, I agree. I like to start many programs and tasks by clicking JWM tray buttons. What I really miss is graphical representation that a button is pressed. I started a new tread with this suggestion.rarsa wrote: My suspicion is that the problem is that users don't know if they clicked the icon correctly, so sometimes they click two or three times on the icon.
http://www.murga-linux.com/puppy/viewto ... 381#100381
It seems fine. I only suggest that showing notification window would be optional and user had the chance to turn it off on fast computers.rarsa wrote: Here is my sugestion:
- Create a "Launcher" script that receives as parameter the command to launch the application
- The launcher would show a notification window indicating that the application is starting and close when the process shows in the "ps -e" list.
- Modify all menu entries and desktop Icons to use the launcher.
- If there is really too much emotional attachment to the hourglass, we could even set the window cursor to be an hour glass.
Yes, it is a hack but very easy to implement.
http://puppyfiles.org/dotpupsde/dotpups ... notify.pup (24kb)
Run from dotpups-menu to launch mozilla, or type something like
MU-demo-notify leafpad
It uses this small Gtk based popup that I otherwise use in my drag'n'drop trayicons.
Good thing is, that it does not take the focus.
Someone might write a program, that "paints" a custom text on the supplied background-picture before notify.bin is executed.
Mark
Run from dotpups-menu to launch mozilla, or type something like
MU-demo-notify leafpad
It uses this small Gtk based popup that I otherwise use in my drag'n'drop trayicons.
Good thing is, that it does not take the focus.
Someone might write a program, that "paints" a custom text on the supplied background-picture before notify.bin is executed.
Mark
see: http://www.murga-linux.com/puppy/viewtopic.php?&t=15298
Firefox has a built in splash screen, but i find that a gxmessage popup is simple and fast ... my start wrapper script also include code that causes double clicks to be ignored
Firefox has a built in splash screen, but i find that a gxmessage popup is simple and fast ... my start wrapper script also include code that causes double clicks to be ignored
- puppyfan12
- Posts: 140
- Joined: Mon 04 Dec 2006, 17:25
- Location: Ontario, Canada
Yes, I've also encountered the same problem supporting other users which is why I also recommended some kind of notification an application has been launched.
Windows uses an hour glass but that's not necessary. Any kind of splash screen or small efficient "loading" notification would be very helpful for the end user. I'm not sure which email applications are available for linux with html email support (other than thunderbird or browser+email suites) but hopefully claws with dillo html plugin or whatever it uses will be sufficient and faster than thunderbird. I know a lot of people are against html email and want to enforce plain text but html emails are a requirement for our municipal government and becoming so commonplace that an average person needs it. (seeing html source code just confuses them)
I've found it's common on old systems that applications are clicked several times before the application loads because there's no indication it was clicked on correctly. This is especially true for elderly users or new users who aren't yet comfortable with double clicking, when double clicking is the default launch behaviour.
Of course for developers and people with fast systems it's not as important, this mostly pertains to slower systems and elderly/new users. I'd like to make a puppy that's as easy to use for everyone as possible.
Windows uses an hour glass but that's not necessary. Any kind of splash screen or small efficient "loading" notification would be very helpful for the end user. I'm not sure which email applications are available for linux with html email support (other than thunderbird or browser+email suites) but hopefully claws with dillo html plugin or whatever it uses will be sufficient and faster than thunderbird. I know a lot of people are against html email and want to enforce plain text but html emails are a requirement for our municipal government and becoming so commonplace that an average person needs it. (seeing html source code just confuses them)
I've found it's common on old systems that applications are clicked several times before the application loads because there's no indication it was clicked on correctly. This is especially true for elderly users or new users who aren't yet comfortable with double clicking, when double clicking is the default launch behaviour.
Of course for developers and people with fast systems it's not as important, this mostly pertains to slower systems and elderly/new users. I'd like to make a puppy that's as easy to use for everyone as possible.
Joe D.
- Pizzasgood
- Posts: 6183
- Joined: Wed 04 May 2005, 20:28
- Location: Knoxville, TN, USA
In IceWM that isn't a problem, because you can just look at the CPU graph (if you know about it, anyway). It doesn't update as slow as the JWM one, so you can immediately see if something is making the computer "think". In JWM, it doesn't kick in for a while, and it kind of slopes up and down rather than just changing. For example, when the computer stops "thinking", the graph sloooowly levels out over several long refreshes. In IceWM, it just drops at the next refresh, which happens to be very soon after the actual event.
If that were fixed, you could tell what's going on.
As for hourglasses, in Windows there were two versions. The "GO AWAY, I'm busy," one that was only an hourglass, and the "Do stuff if you dare, but I'm working on something in the background too" one that had a cursor with a small hourglass in the corner.
Since Linux doesn't lock you down when thinking hard, you would only need the second one. It could kick in whenever it "thinks hard" for a certain amount of time. That way you wouldn't have to mess with each app, you could just have a small daemon in the background monitoring the CPU use and acting when appropriate (very little more than the graph already does).
How to update the cursor on the fly I couldn't tell you. Also, it would have to only affect the standard pointer, and leave the "window-resizer" one alone.
If that were fixed, you could tell what's going on.
As for hourglasses, in Windows there were two versions. The "GO AWAY, I'm busy," one that was only an hourglass, and the "Do stuff if you dare, but I'm working on something in the background too" one that had a cursor with a small hourglass in the corner.
Since Linux doesn't lock you down when thinking hard, you would only need the second one. It could kick in whenever it "thinks hard" for a certain amount of time. That way you wouldn't have to mess with each app, you could just have a small daemon in the background monitoring the CPU use and acting when appropriate (very little more than the graph already does).
How to update the cursor on the fly I couldn't tell you. Also, it would have to only affect the standard pointer, and leave the "window-resizer" one alone.
[size=75]Between depriving a man of one hour from his life and depriving him of his life there exists only a difference of degree. --Muad'Dib[/size]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
[img]http://www.browserloadofcoolness.com/sig.png[/img]
- Nathan F
- Posts: 1764
- Joined: Wed 08 Jun 2005, 14:45
- Location: Wadsworth, OH (occasionally home)
- Contact:
One really small hack is to call seamonkey with the -splash option, which gives you a nice graphical; splash screen until the program is up and running.
I'd rather not have a bouncing cursor or hourglass, but I think a notification in the system tray might be a good plan, or else a small popup in the lower right corner of the screen. Definately not something that steals focus, though. Those sort of things tick off just about anyone who has used a computer for more than a few hours.
Nathan
I'd rather not have a bouncing cursor or hourglass, but I think a notification in the system tray might be a good plan, or else a small popup in the lower right corner of the screen. Definately not something that steals focus, though. Those sort of things tick off just about anyone who has used a computer for more than a few hours.
Nathan
Bring on the locusts ...
Woow, great minds do think alike. I was thinking the same thing!Nathan F wrote:I think a notification in the system tray might be a good plan, or else a small popup in the lower right corner of the screen.
[url]http://rarsa.blogspot.com[/url] Covering my eclectic thoughts
[url]http://www.kwlug.org/blog/48[/url] Covering my Linux How-to
[url]http://www.kwlug.org/blog/48[/url] Covering my Linux How-to
I am pretty sure that the only time windows displays an hourglass during launch is the little hourglass+arrow that shows while the actual binary file is being loaded, which usually only takes 1-2 seconds at most. Even then it's only the desktop/taskbar that does this - windows explorer doesn't.
Once the file is loaded, it starts the WinMain function, and from that point all the hourglasses you see are done by the application, including while waiting for any internal initialisation or module loading sequences. In a large application with a lot of dynamically loaded plugin modules the initialisation can take quite a long time - maybe a minute or more - but it's done in WinMain, not by the OS window manager. And if you think about it, really the only thing the WM can measure is loading the binary file, the WM can't tell if or when any internal initialisation is happening.
So I think it's really the job of applications to indicate what they are up to, not the window manager. Often complex applications have a small launcher program that flashes a splashscreen to make it seem to go faster.
DB
Once the file is loaded, it starts the WinMain function, and from that point all the hourglasses you see are done by the application, including while waiting for any internal initialisation or module loading sequences. In a large application with a lot of dynamically loaded plugin modules the initialisation can take quite a long time - maybe a minute or more - but it's done in WinMain, not by the OS window manager. And if you think about it, really the only thing the WM can measure is loading the binary file, the WM can't tell if or when any internal initialisation is happening.
So I think it's really the job of applications to indicate what they are up to, not the window manager. Often complex applications have a small launcher program that flashes a splashscreen to make it seem to go faster.
DB
- mysticmarks
- Posts: 159
- Joined: Tue 27 Feb 2007, 01:56
- Location: California
- Contact:
how about this?>
What about a simple confirmation dialog that asks wether you wish to run a second, third, fourth instance of the already running or executed program "X"?
kills the problem entirely, if its running, i dont need another and i know to wait a minute, and if i want more than one, ok!
even better, have it list the program status; to say, " would you like to run/execute another instance of the running/sleeping/zombie program "X" with PID "1234"
and hey!, why not have a kill existing button for zombies/sleepers just for simplicity and function if they come up as such!
kills the problem entirely, if its running, i dont need another and i know to wait a minute, and if i want more than one, ok!
even better, have it list the program status; to say, " would you like to run/execute another instance of the running/sleeping/zombie program "X" with PID "1234"
and hey!, why not have a kill existing button for zombies/sleepers just for simplicity and function if they come up as such!
- Lobster
- Official Crustacean
- Posts: 15522
- Joined: Wed 04 May 2005, 06:06
- Location: Paradox Realm
- Contact:
I have notified team Viz Central (WhoDo) and hope this can be included in RC1 Office for Mozilla Seamonkey and Office, the slowest programs to load . . .MU wrote:http://puppyfiles.org/dotpupsde/dotpups ... notify.pup (24kb)
Run from dotpups-menu to launch mozilla, or type something like
MU-demo-notify leafpad
On a reasonably fast machine (my Duron 1200 is fast by Puppy standards) Mozilla takes 6 secs to load, not needed but not distracting if present
On a 333mz AMD (underclocked 350) that I ran Puppy on - still awaiting a trash power supply to get that going . . . Mozilla Seamonkey took 17 secs to load, so this becomes very useful for those on restricted hardware
Nice One Mark (Moin)
- Nathan F
- Posts: 1764
- Joined: Wed 08 Jun 2005, 14:45
- Location: Wadsworth, OH (occasionally home)
- Contact:
For seamonkey I would just adjust the scripts to pass the -splash option to the seamonkey.bin binary, as I mentioned previously. A very easy way to make the program feel a little nicer, that I wish they would make default.hope this can be included in RC1 Office for Mozilla Seamonkey
Nathan
Bring on the locusts ...
David Bell wrote:
...regarding hour glass "busy cursor"
>> So I think it's really the job of
>> applications to indicate what they are
>> up to, not the window manager. Often
>> complex applications have a small
>> launcher program that flashes a
>> splashscreen to make it seem to go
>> faster.
True, but a bit the other way round
...the window manager on windows
equipps all apps with a busy cursor on
startup and it is the job of the app to
replace it on creation time of its main
window with whatever cursor desired.
This way round no guessing is required
wether an app is slow on startup or not.
Fast apps will overwrite the busy cursor
emidiately, slower apps may take a
while todo so.
++ cursors are app specific. That is
a busy cursor is only shown over an
app wich has actually set it.
Juergen
...regarding hour glass "busy cursor"
>> So I think it's really the job of
>> applications to indicate what they are
>> up to, not the window manager. Often
>> complex applications have a small
>> launcher program that flashes a
>> splashscreen to make it seem to go
>> faster.
True, but a bit the other way round
...the window manager on windows
equipps all apps with a busy cursor on
startup and it is the job of the app to
replace it on creation time of its main
window with whatever cursor desired.
This way round no guessing is required
wether an app is slow on startup or not.
Fast apps will overwrite the busy cursor
emidiately, slower apps may take a
while todo so.
++ cursors are app specific. That is
a busy cursor is only shown over an
app wich has actually set it.
Juergen
This would also be great for troublesome applications that don't load. Perhaps it could also monitor the return code. If we get something before a couple of seconds is up, (and it isn't 0 ) then chances are something has gone wrong, so why not include an option to pop up a dialog offering to try again?
I don't really like the idea of popups, as I often open three or four programs at a time, so they would pretty quickly take up a lot of screen space. A single popup that contained a list of starting programs would be cool though. It could be achieved with a deamon that the scripts pass a message too, telling it what program to start. Working on a messaging system would mean that would be very CPU efficient, only doing work when needed rather than polling.
I don't really like the idea of popups, as I often open three or four programs at a time, so they would pretty quickly take up a lot of screen space. A single popup that contained a list of starting programs would be cool though. It could be achieved with a deamon that the scripts pass a message too, telling it what program to start. Working on a messaging system would mean that would be very CPU efficient, only doing work when needed rather than polling.
I think a popup would look clunky in this case, the mouse cursor changing is the best approach.
I don't say this because of WinSnows, it's just an eye candy - common use - functional thing.
I hated the clunky popups I had to use for my USB auto mounter app.
Hi guys... Haven't seen (heard) some of you in a while!
I don't say this because of WinSnows, it's just an eye candy - common use - functional thing.
I hated the clunky popups I had to use for my USB auto mounter app.
Hi guys... Haven't seen (heard) some of you in a while!
Re: Application Launch notification ideas (Hourglass)
I fully agree. Me personally, I like the KDE bouncing Cursor very much.rarsa wrote: Based on that I think that the requirement is actually the following
Notify the user when an application is launching
This thread is to validate (or invalidate) that previous statement. And to gather ideas on how to address this requirement.
I always found it confusing that, in WinXP, the hourglass almost always disappears long before the application shows on the screen.
Thank you for the explanation.DavidBell wrote: Once the file is loaded, it starts the WinMain function, and from that point all the hourglasses you see are done by the application, including while waiting for any internal initialisation or module loading sequences. In a large application with a lot of dynamically loaded plugin modules the initialisation can take quite a long time - maybe a minute or more - but it's done in WinMain, not by the OS window manager. And if you think about it, really the only thing the WM can measure is loading the binary file, the WM can't tell if or when any internal initialisation is happening.
Thank you, works fine with the desktop "Browse" icon that opens "/usr/local/bin/defaultbrowser". Menu > Internet > SeaMonkey web browser opens "mozilla" (according to /root/.jwmrc) and I haven't yet found an executable file "mozilla", does anyone know where it is?Nathan F wrote: For seamonkey I would just adjust the scripts to pass the -splash option to the seamonkey.bin binary
(But I use the desktop icon much more anyway)
thanks from a user with little (but not no) programming ambitions
In Windows I have set sounds for "Open Program" [bloop] and "Close Program" [whoosh] events.
Hence, when all the programs on the startup list are being processed...
I hear bloop, boop, whoosh, bloop, etc.
This lets me know that all is progressing as it should.
It could also be of great help if there was a fault and there was no display on the monitor, and yet I could hear that the startup was progressing normally but all unseen.
I can adjust the volume at the speakers so that it can be heard, but is not obtrusive.
And during a normal Windows session...
If I do something to make a program run...
I hear the bloop as it begins...
And if I close a program...
I hear the whoosh as it terminates.
This is of great help in timing my actions to fit in with what the software is doing.
e.g. If a new action depends upon the previous action being first completed...
I hover the mouse...
And only click when I hear the whoosh.
In BoxPup I have the CPU usage display down in the tray, so feel no lack of an indicator of what's going on.
But it would be nice to have the aural feedback [sounds] too.
Hence, when all the programs on the startup list are being processed...
I hear bloop, boop, whoosh, bloop, etc.
This lets me know that all is progressing as it should.
It could also be of great help if there was a fault and there was no display on the monitor, and yet I could hear that the startup was progressing normally but all unseen.
I can adjust the volume at the speakers so that it can be heard, but is not obtrusive.
And during a normal Windows session...
If I do something to make a program run...
I hear the bloop as it begins...
And if I close a program...
I hear the whoosh as it terminates.
This is of great help in timing my actions to fit in with what the software is doing.
e.g. If a new action depends upon the previous action being first completed...
I hover the mouse...
And only click when I hear the whoosh.
In BoxPup I have the CPU usage display down in the tray, so feel no lack of an indicator of what's going on.
But it would be nice to have the aural feedback [sounds] too.
Invoking slow to start programs through a wrapper script such as the following might do the trick. i.e the program invoked and sent to the background and then falling through to display a splash screen for a couple of seconds to say that something is actually happeningVariEze wrote:Yes, I think it's a problem that people keep clicking, There was a pup for firefox that popped up a box that said firefox is starting, I don't remember which one. That was very helpful, since firefox takes a miniute to start on a 400mhz machine.l
Code: Select all
#!/bin/bash
PROG=$1
shift
$PROG $@ &
yaf-splash -close never -fontsize small -bg green -fb black -text "Loading - please wait" &
X3PID=$!
sleep 2
kill $X3PID
wow old thread ...you old dog you....
Yes something I forget is not there...I use Xfce4 and it does it. Binary approach is the neatest...perhaps JWM could add something useful as that 'dead' feeling is not sophisticated
Actually one though...cpu monitors do their thing when a new app is launched but thats probably a hopeless non starter.
Your script makes sense IF and sensibly only IF packages for puppy were built for puppy. Big bunnies like libreoffice could have it. And tell libre not to hog the focus on its way up from the ocean depths
mike
Yes something I forget is not there...I use Xfce4 and it does it. Binary approach is the neatest...perhaps JWM could add something useful as that 'dead' feeling is not sophisticated
Actually one though...cpu monitors do their thing when a new app is launched but thats probably a hopeless non starter.
Your script makes sense IF and sensibly only IF packages for puppy were built for puppy. Big bunnies like libreoffice could have it. And tell libre not to hog the focus on its way up from the ocean depths
mike