Warum wird mein benutzerdefinierter Starter unter einem separaten Symbol geöffnet?

12

Ich habe eine benutzerdefinierte Startdatei erstellt:

[Desktop Entry]
Type=Application
Name=P4V
Comment=Perforce Visual Client
Icon=/usr/lib/p4v/P4VResources/icons/P4-V_128x128.png
Exec=/usr/bin/p4v
Terminal=false
Categories=Development;

Und zog diese Datei auf meinen Launcher. Wenn ich jedoch auf das Symbol klicke, wird die Anwendung unter einem zweiten, anderen Symbol geöffnet (ich klicke auf das obere, die Anwendung wird unter dem unteren Symbol geöffnet):

Launcher-Symbole

Das untere Symbol ist erst vorhanden, nachdem ich die Anwendung mit dem oberen P4v-Symbol gestartet habe, das ich manuell hinzugefügt habe.

ctote
quelle
1
Ist das eine Java App?
Dobey
/ usr / bin / pv4 ist ein Skript, das Ihre App anscheinend auf eine Weise öffnet, die selbst mit einem Symbol verknüpft ist. Wahrscheinlich Javascript - perforce.com/product/components/perforce-visual-client
Doug
1
@ Doug Nö, es ist eine Anwendung mit einem Fenster und einer "normalen" .desktopDatei (einschließlich eines festgelegten Symbols) in /usr/share/applications(ich habe es installiert, um es herauszufinden).
Jacob Vlijm

Antworten:

10

Wenn eine Anwendung ein zweites Symbol erzeugt, das kein generisches ist

Wenn eine Anwendung ein erzeugt zweites im Unity Launcher - Symbol andere als ein ein graues, allgemeines Symbol, muss es bereits ein (andere) bestehenden Launcher, rufe p4vin seinem Haupt Befehl ein :

Die .desktopDatei einer Anwendung hat per Definition einen "Haupt" -Befehl in der ersten Zeile, beginnend mit Exec=. Dies ist der Befehl, der ausgeführt wird, wenn im ( Unity) Launcher auf das Symbol geklickt wird . Abgesehen davon , dass eine .desktopDatei kann eine oder mehrere shortcut- Abschnitte, zur Verfügung , wenn Sie mit der rechten Maustaste auf das Symbol darstellt , in der UnityTrägerrakete.

Mehrere .desktop-Dateien, die dieselbe Anwendung in ihrem Hauptbefehl aufrufen

Die Symptome, die auftreten, können auftreten, wenn sich mehr als eine .desktopDatei in einer /usr/share/applicationsoder ~/.local/share/applicationsdemselben ("main-") Befehl in der ersten Exec= Zeile befindet, die Dateien jedoch einen anderen Namen haben.

P4v sollte standardmäßig eine .desktopDatei mit dem Namen p4vasp.desktopin installieren (und hat diese wahrscheinlich installiert) /usr/share/applications.

So beheben Sie
Ihr Problem sollte behoben sein, wenn Sie Ihre eigene (wahrscheinlich lokale) .desktopDatei entfernen , dann p4vvon Dash aus ausführen und sie an den Launcher anheften.

Was ist, wenn Sie den vorhandenen Launcher anpassen möchten?

Wenn Sie .desktopdas Verhalten der Datei oder z. B. das Symbol ändern möchten :

  • Kopieren Sie die Datei von /usr/share/applicationsnach~/.local/share/applications
  • nicht den Namen der Datei ändern
  • Öffnen Sie die Datei in gedit(ziehen Sie sie über ein geöffnetes geditFenster) und nehmen Sie die gewünschten Änderungen vor
  • Abmelden und wieder anmelden, die lokale Version der .desktopDatei überschreibt die globale.

Um zurückzukehren, entfernen Sie einfach die lokale, melden Sie sich ab und wieder an.

Bezogen auf diesen Beitrag

Jacob Vlijm
quelle
Diese Antwort ist genauso gut in Ubuntu 18.04 mit GNOME 3
Todd