From: Christopher A. <chr...@we...> - 2002-06-17 12:49:22
|
Thomas Leonard <ta...@ec...> schrieb am 17.06.02 14:16:05: > On Sun, Jun 16, 2002 at 09:41:20PM +0200, Christopher Arndt wrote: > > ROX should accept another SOAP message, by which backdrop applications > > can tell the filename and the display mode directly to ROX, when they only > > want to set a static image as the backrop. ROX should then store this > > filename and _not_ the application in the pinboard file. > > > > What thinks thou, Thomas? > > Well, that's how I had it before ;-) > > Doesn't work very well. There are three cases that I can think of: > > 1. You have an image and want to use it as the backdrop from now on. > 2. You want to choose/generate an image on each login. > 3. You want to do a slideshow. > > (1) is easy using the filer's built-in backdrop dialog. The problem is, that the built-in dialog can not be run from scripts (or can it?) and that it can not run at the end of a pipeline, am I right? I think it's time for a lot more SOAP actions for all kinds of ROX dialogs... > (2) could be done either way, but is easier with the current system > because you don't have to ensure you get started at the right time. > > (3) only works well with the current system because otherwise you can get > two applications trying to set the backdrop at once. > > I think the problem is is that people currently run a program on login > which sets the backdrop and they're trying to modify it to work with the > new system, ie: > > 1. Run random image chooser from Login script. > 2. Image chooser selects a random image and runs a backdrop setter. > 3. Backdrop setter saves image path and sends a SOAP message to manage the > backdrop. > 4. Filer runs backdrop setter, which loads the filename and sets the > backdrop. > > But, this is an overly complicated way of doing it. Much simpler: Right, but maybe one wants to run the random image chooser manually from time to time. > 1. Run random image chooser once. > 2. Image chooser becomes backdrop handler via SOAP message. > 3. Filer runs chooser, which selects a random image. > > This is actually easier than the original method, because there's no > messing around with Login scripts anywhere :-) It would be even easier, when steps 2 and 3 were combined, i.e. become backdrop app and tell image filename at the same time (via SOAP). ______________________________________________________________________________ All inclusive! 100 MB Speicher, SMS 50% gunstiger, 32 MB Attachment-Gro?e, Preisvorteile und mehr unter http://club.web.de/?mc=021104 |
From: Christopher A. <chr...@we...> - 2002-06-16 21:02:46
Attachments:
SetBackdrop-0.1b.tar.bz2
|
Hi, your script works, but you do both steps required to put a backdrop _twice_. A program, that sets the backdrop is initially called twice: - Once by the user. It then should tell ROX that it wants to be a backdrop app using SOAP - then by ROX with the '--backdrop' argument. It should then echo the backdrop command to stdout (where ROX listens) Therefore, you have to query in your script, wether it is called with the '--backdrop' argument. Only then it should echo the backdrop command. ROX saves the backdrop application on a per-pinboard basis (I think), so your script will be called again (with the '--backdrop' argument) when ROX starts again with the corresponding '-pinboard' argument. I have written a "Wallpaper" replacement which uses the new backdrop system, but it is not quite finished yet. I attach it nethertheless a working example (it is written in Python). The problem with the new backdrop system is, that, because two instances of the backdrop app are run (and the second can only be run by ROX), you have to determine the filename of the backdrop image in the second instance, while probably the user gave the filename as an argument to the first instance. There are several possibilities: 1) The second instance determines/generates the filename alone (e.g xplanet, a random image chooser etc.) 2) The second instance asks the user via a GUI for the filename :-( 3) The first instance communicates the filename the user requested somehow to the second instance, either by: a) writing the filename to a file (which is what my example does) b) some other means of IPC (sockets, SHM) Yes, this is complicated. I'd say, rather too complicated. Therefore my proposal: ROX should accept another SOAP message, by which backdrop applications can tell the filename and the display mode directly to ROX, when they only want to set a static image as the backrop. ROX should then store this filename and _not_ the application in the pinboard file. What thinks thou, Thomas? (I suggest moving this topic to rox-devel) On Wed, 12 Jun 2002, Arnaud Calvo wrote: > > Hi ! > > I've finally succeeded to script with bash a very basic "xli like" : > > [~/PYTH] $ : cat AppRun > #!/bin/bash > > rox --RPC << EOF > <?xml version="1.0"?> > <env:Envelope xmlns:env="http://www.w3.org/2001/12/soap-envelope"> > <env:Body xmlns="http://rox.sourceforge.net/SOAP/ROX-Filer"> > <SetBackdropApp> > <App> > /home/arnaud/PYTH > </App> > </SetBackdropApp> > </env:Body> > </env:Envelope> > EOF > /bin/echo "centre /home/arnaud/docs/images/backgrounds/torrent.jpg" > [~/PYTH] $ : > > Yes, it works, but : > << > Vous ne pouvez fixer l'image de fond que sur une image ou sur un programme > qui sait comment manier l'image de fond de ROX-Filer. > >> > > How can I suppress this error message, though the background is OK ? > > Thanks ! > > -- ... cause we all have wings, but some of us don't know why! (INXS) Christopher Arndt [t] +49 173-9542751 system administration [w] www.chrisarndt.de & linux training [e] chr...@we... |
From: Thomas L. <ta...@ec...> - 2002-06-17 12:13:19
|
On Sun, Jun 16, 2002 at 09:41:20PM +0200, Christopher Arndt wrote: > Hi, > > your script works, but you do both steps required to put a backdrop > _twice_. > > A program, that sets the backdrop is initially called twice: > > - Once by the user. It then should tell ROX that it wants to be a backdrop > app using SOAP > > - then by ROX with the '--backdrop' argument. It should then echo the > backdrop command to stdout (where ROX listens) > > Therefore, you have to query in your script, wether it is called with > the '--backdrop' argument. Only then it should echo the backdrop command. > ROX saves the backdrop application on a per-pinboard basis (I think), so > your script will be called again (with the '--backdrop' argument) when ROX > starts again with the corresponding '-pinboard' argument. Yep. > I have written a "Wallpaper" replacement which uses the new backdrop > system, but it is not quite finished yet. I attach it nethertheless a > working example (it is written in Python). > > The problem with the new backdrop system is, that, because two instances > of the backdrop app are run (and the second can only be run by ROX), you > have to determine the filename of the backdrop image in the second > instance, while probably the user gave the filename as an argument to > the first instance. [...] > Yes, this is complicated. I'd say, rather too complicated. Therefore my > proposal: > > ROX should accept another SOAP message, by which backdrop applications > can tell the filename and the display mode directly to ROX, when they only > want to set a static image as the backrop. ROX should then store this > filename and _not_ the application in the pinboard file. > > What thinks thou, Thomas? Well, that's how I had it before ;-) Doesn't work very well. There are three cases that I can think of: 1. You have an image and want to use it as the backdrop from now on. 2. You want to choose/generate an image on each login. 3. You want to do a slideshow. (1) is easy using the filer's built-in backdrop dialog. (2) could be done either way, but is easier with the current system because you don't have to ensure you get started at the right time. (3) only works well with the current system because otherwise you can get two applications trying to set the backdrop at once. I think the problem is is that people currently run a program on login which sets the backdrop and they're trying to modify it to work with the new system, ie: 1. Run random image chooser from Login script. 2. Image chooser selects a random image and runs a backdrop setter. 3. Backdrop setter saves image path and sends a SOAP message to manage the backdrop. 4. Filer runs backdrop setter, which loads the filename and sets the backdrop. But, this is an overly complicated way of doing it. Much simpler: 1. Run random image chooser once. 2. Image chooser becomes backdrop handler via SOAP message. 3. Filer runs chooser, which selects a random image. This is actually easier than the original method, because there's no messing around with Login scripts anywhere :-) -- Thomas Leonard http://rox.sourceforge.net ta...@ec... ta...@us... |
From: Thomas L. <ta...@ec...> - 2002-06-17 13:07:55
|
On Mon, Jun 17, 2002 at 02:49:11PM +0200, Christopher Arndt wrote: > Thomas Leonard <ta...@ec...> schrieb am 17.06.02 14:16:05: [...] > > But, this is an overly complicated way of doing it. Much simpler: > > Right, but maybe one wants to run the random image chooser manually from > time to time. That's no problem. Click on the backdrop app and it will run again (sending the SOAP message as before). The backdrop setter already has to cope with being run by the filer, so there's no added complexity... > > 1. Run random image chooser once. > > 2. Image chooser becomes backdrop handler via SOAP message. > > 3. Filer runs chooser, which selects a random image. > > > > This is actually easier than the original method, because there's no > > messing around with Login scripts anywhere :-) > > It would be even easier, when steps 2 and 3 were combined, i.e. become > backdrop app and tell image filename at the same time (via SOAP). All apps have to cope with being called by the filer, so having three messages (set-app, set-backdrop and set-both) is just extra work. This way, if your app works once, it will still work at the next login... -- Thomas Leonard http://rox.sourceforge.net ta...@ec... ta...@us... |
From: Christopher A. <chr...@we...> - 2002-06-19 18:51:15
|
On Mon, 17 Jun 2002, Thomas Leonard wrote: > On Mon, Jun 17, 2002 at 02:49:11PM +0200, Christopher Arndt wrote: > > It would be even easier, when steps 2 and 3 were combined, i.e. become > > backdrop app and tell image filename at the same time (via SOAP). > > All apps have to cope with being called by the filer, so having three > messages (set-app, set-backdrop and set-both) is just extra work. This > way, if your app works once, it will still work at the next login... No, this would decrease, complexity, because you do not have to work with two instances of the program, both of which have to determine the image filename (At least for a backrop app where the user can choose the image manually). The first, when the user drops a file on it, the second, when it is called by rox. I don't see the need for this. And all this trouble for some f^H^H^H^H^H^Hstupid alpha-blended icons... -- ... cause we all have wings, but some of us don't know why! (INXS) Christopher Arndt [t] +49 173-9542751 system administration [w] www.chrisarndt.de & linux training [e] chr...@we... |
From: Thomas L. <ta...@ec...> - 2002-06-20 10:25:43
|
On Wed, Jun 19, 2002 at 08:48:51PM +0200, Christopher Arndt wrote: > On Mon, 17 Jun 2002, Thomas Leonard wrote: > > > On Mon, Jun 17, 2002 at 02:49:11PM +0200, Christopher Arndt wrote: > > > It would be even easier, when steps 2 and 3 were combined, i.e. become > > > backdrop app and tell image filename at the same time (via SOAP). > > > > All apps have to cope with being called by the filer, so having three > > messages (set-app, set-backdrop and set-both) is just extra work. This > > way, if your app works once, it will still work at the next login... > > No, this would decrease, complexity, because you do not have to work > with two instances of the program, both of which have to determine the image > filename (At least for a backrop app where the user can choose the image > manually). The first, when the user drops a file on it, the second, when > it is called by rox. I don't see the need for this. But what happens when the user logs in again later? You have to store the image anyway... -- Thomas Leonard http://rox.sourceforge.net ta...@ec... ta...@us... |