Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Verhinder het openen van nogmaals dezelfde toepassing  (gelezen 1229 keer)

Offline tabasco

  • Lid
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Gepost op: 2008/07/30, 14:30:46 »
Hallo,
Ik ben de computer van mijn ouders 'idiot-proof' aan het maken. Er zijn verschillende kleinigheidjes waar ze steeds tegen aan lopen waarvan de volgende één is:

Na het starten van een toepassing via een knop (launcher) op het panel, wordt deze vaker meermaals ingedrukt en start de toepassing meerdere malen.
Ik vraag mij af of er een simpele manier is om dit te verhinderen?
Of moet ik dan met een script gaan werken welke controleert of de toepassing al gestart is en of deze danwelniet mag starten? Zo ja, help me alsjeblieft hiermee op weg.

tab
Ik kan ze echt niet zover krijgen dat ze zelf kijken of de toepassing al gestart is

Offline profoX

  • Lid
    • wesley
    • Lionslink
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #1 Gepost op: 2008/07/30, 14:43:21 »
Goeie vraag. Geen simpel antwoord.

* Ik weet niet of het mogelijk is om voordat processen gestart worden een proceslijst op te vragen en het starten van het proces te blokkeren indien het al gestart is. Dit kan eenvoudig gecontroleerd worden door een script ofzo, maar het moeilijke gedeelte is dat het proces van eender waar gestart kan worden.. hoe ik het zie heeft alleen de kernel precieze informatie over alle processen nog vóórdat ze gestart zijn.. en de kernel aanpassen is niet echt iets waar je jezelf mee bezig wil houden. Maar misschien is er nog een andere optie en zit die informatie ook nog ergens anders... ben ik dan ook wel benieuwd naar.

PS: hier zit ook een addertje onder het gras, want soms moeten bepaalde processen meermaals tegelijkertijd draaien voor de goede werking van het systeem

* Een andere mogelijkheid zou zijn om gnome-menu, de panel launchers en desktop launchers aan te passen zodat er een configuratie optie "Programma's niet starten indien al gestart" wordt gecontroleerd en aan de hand daarvan al dan niet het programma wordt gestart.

PS: lijkt me echter ook niet zo'n goeie oplossing, want het zou kunnen dat je wel twee keer hetzelfde programma wil openen...

Sommige programma's hebben trouwens zelf wel de optie om geen meerdere instanties te accepteren..

Een simpele manier om dat te verhinderen is er volgens mij dus niet, tenzij iemand anders een goed idee heeft.
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline SeySayux

  • Lid
    • SeySayux.net
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #2 Gepost op: 2008/07/30, 14:57:56 »
Zoals profoX al zei, moet je dan vrij ingewikkelde dingen gaan doen. Een script schrijven zou je kunnen doen, bijvoorbeeld zo:

#!/bin/bash

if ps -e | grep "$1"; then
  exec "$@"
else
  exec true
fi
Dit zou je kunnen opslaan onder /usr/bin/oneinstance.sh Dan kan je bijvoorbeeld oneinstance.sh pidgin aanroepen, en dan zal hij maar één instantie van pidgin willen starten als je altijd voor pidgin te starten oneinstance.sh gebruikt.

Er zit hier echter een addertje onder het gras: sommige programma's geven een andere naam weer in ps -e dan waarmee ze gestart zijn. Bijvoorbeeld, firefox wordt weergegeven als firefox-bin.

het is maar een suggestie, je ziet wat je ermee doet.

- SeySayux
I use a Unix-based system, that means I'll get laid as often as I have to reboot.
LibSylph
SeySayux.net

Offline tabasco

  • Lid
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #3 Gepost op: 2008/07/30, 14:59:58 »
Het 'probleem' doet zich voornamelijk voor bij Evolution. Ik nam vanzelf aan dat dit bij andere toepassingen ook zo was, echter het volgende resultaat.

Van de volgende toepassingen heb ik launchers gemaakt, waarbij het risico dus groter is om meermaals te starten:

- Evolution - opent meerdere keren
- Firefox - niet van toepassing (soms nodig)
- Tekstverwerker - niet van toepassing (soms nodig)
- F-Spot - sluit vanzelf de 2e toepassing
- Rythmbox - sluit vanzelf de 2e toepassing

Dus uiteindelijk spitst mijn probleem zich alleen op Evolution

Offline SeySayux

  • Lid
    • SeySayux.net
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #4 Gepost op: 2008/07/30, 15:01:56 »
Wat je bedoelt is dat je ouders een beetje parkinson-achtig zijn en snel meerdere keren op de muisknop drukken? Zou het dan niets zijn om gewoon de kliksnelheid te verlagen?

- SeySayux
I use a Unix-based system, that means I'll get laid as often as I have to reboot.
LibSylph
SeySayux.net

Offline tabasco

  • Lid
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #5 Gepost op: 2008/07/30, 15:04:26 »
Niet alleen kliksnelheid, ook dwaasheid is een probleem. Ze klikken gewoon nogmaals op de Evolution knop, als ze bijvoorbeeld schakelen van mail naar foto's en terug.

kurosaki_ichigo

  • Gast
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #6 Gepost op: 2008/07/30, 15:04:32 »
Miss dubbel kliken in schakelen? Bij mij werkt linux met 1x klikken

Offline SeySayux

  • Lid
    • SeySayux.net
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #7 Gepost op: 2008/07/30, 15:07:06 »
Citaat van: kurosaki_ichigo
Miss dubbel kliken in schakelen? Bij mij werkt linux met 1x klikken
Dat is inderdaad de standaardinstelling van Kubuntu, maar niet van Ubuntu ;).

@tabasco: zou het niet mogelijk zijn om dan een soort van dock te gebruiken?

- SeySayux
I use a Unix-based system, that means I'll get laid as often as I have to reboot.
LibSylph
SeySayux.net

Offline tabasco

  • Lid
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #8 Gepost op: 2008/07/30, 15:11:00 »
Citaat van: SeySayux
@tabasco: zou het niet mogelijk zijn om dan een soort van dock te gebruiken?
Ik heb de launchers op een panel gezet dat automatisch uit beeld verdwijnt om het te beperken. Uiteraard kan ik ze aanleren om het goed te doen, maar het zijn gewoontedieren, en al wat ouder.

Hoe zou het script eruit zien voor Evolution welke opgestart wordt met:
evolution --component=mail

Dan kan ik dat eens testen...

Offline tabasco

  • Lid
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #9 Gepost op: 2008/07/30, 15:15:11 »
@arie alleen het paneel met de launchers verdwijnt, het paneel met open toepassingen blijft zichtbaar.

Offline profoX

  • Lid
    • wesley
    • Lionslink
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #10 Gepost op: 2008/07/30, 15:46:45 »
Als het vooral die Evolution launcher is dan pas je gewoon het command van die launcher aan naar een zelfgemaakt scriptje.. bv. hetgeen SeySayux voorstelt (heb wel niet getest of dat werkt, maar probeer het eens..)
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline tabasco

  • Lid
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #11 Gepost op: 2008/07/30, 16:04:20 »
Heb het volgende script gemaakt met mijn dank aan SeySayux:
#!/bin/bash

if ps -e | grep "evolution-excha"; then
  exec "$@"
else
  exec evolution --component=mail
fi
Dit werkt naar behoren!
Bedankt allen voor het meedenken

Overigens vond ik deze melding nog op launchpad:
https://bugs.launchpad.net/ubuntu/+source/evolution/+bug/85349

Offline profoX

  • Lid
    • wesley
    • Lionslink
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #12 Gepost op: 2008/07/30, 16:12:32 »
Citaat van: tabasco
Overigens vond ik deze melding nog op launchpad:
https://bugs.launchpad.net/ubuntu/+source/evolution/+bug/85349
Ja, maar die is als ongeldig gemarkeerd...
Citaat
That's not a bug. You might want to have several evolution window opened, on different mail boxes or on the calendar by example. Closing, that's not a bug
Human Knowledge Belongs To The World -- Antitrust (2001)
Nederlandstalige Ubuntu documentatie van Ubuntu-NL (wiki)

Offline SeySayux

  • Lid
    • SeySayux.net
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #13 Gepost op: 2008/07/30, 16:23:48 »
Even dit scriptje veiliger en beter maken:
#!/bin/bash

if ps -e | grep "evolution-excha" > /dev/null ; then
  exec true
else
  exec evolution --component=mail
fi
I use a Unix-based system, that means I'll get laid as often as I have to reboot.
LibSylph
SeySayux.net

Offline tabasco

  • Lid
  • Steunpunt: Nee
Verhinder het openen van nogmaals dezelfde toepassing
« Reactie #14 Gepost op: 2008/07/30, 16:31:55 »
@SeySayux
Ik heb het aangepast, kun je me zeggen wat de verschillen betekenen?