Iconos duplicados para elementos de inicio de GNOME creados manualmente


46

Descargué Aptana Studio 3 y creé el siguiente elemento de inicio para usar Alacarte:

archivo: alacarte-made.desktop

[Desktop Entry]
Comment=
Terminal=false
Name=Aptana Studio 3
Exec=AptanaStudio3
Type=Application
Icon=/opt/Aptana-Studio-3/icon.xpm

Luego, cuando agrego el ícono a los favoritos y abro el Aptana Studio 3, obtengo dos íconos, uno para iniciar nuevas instancias y otro para la instancia que se está ejecutando actualmente según la siguiente captura de pantalla:

ingrese la descripción de la imagen aquí

¿Cómo fuerzo a la aplicación a usar el mismo icono agregado a los favoritos?


¿Puede especificar cómo instaló Aptana? Desde el sitio oficial todo lo que puedo ver es un archivo zip independiente. (algo así como aplicaciones portátiles en windows).
hytromo

Sí, eso fue todo.
malhobayyeb

Entonces, ¿cómo terminó /opt? Además, ¿está en tu $PATH? ¿Cómo, al especificar solo AptanaStudio3en su archivo de escritorio, puede ejecutarse?
hytromo

1
Lo he hecho, gracias. He creado un enlace Sym en / usr / bin a /opt/.../aptana Fue solo un problema de nomenclatura. Tuve que nombrar a .desktop y bin y vincularlos igual :)
malhobayyeb

3
Responda en detalle a continuación cómo logró resolver su problema :) (No sé, solo le hice algunas preguntas)
hytromo

Respuestas:


67

Para guardar la selección a través del hilo mencionado por @earthmeLon, debe hacer lo siguiente:

  1. Iniciar la aplicacion
  2. Enciende una terminal y corre xprop WM_CLASS. Haz clic en la ventana de la aplicación.
  3. Obtendrá algunos resultados como WM_CLASS(STRING) = "Navigator", "Firefox". Elija una de las clases, por ejemplo, Firefoxen este ejemplo.
  4. Agregue la clase como el valor de StartupWMClassen el .desktoparchivo. Por ejemplo,StartupWMClass=Firefox
  5. Guarde el .desktoparchivo, cierre la aplicación y vuelva a abrirlo. Ahora solo debería haber 1 icono en el iniciador

3
Para aquellos que tienen el mismo problema en GNOME, puede usar MenuLibre: al editar la entrada correspondiente, encontrará un campo para configurar StatupWMClass en la lista que aparece al hacer clic en el botón "Avanzado"
conceptdeluxe

Si alguien está tratando de manejar un problema con el mendeleyejecutable, asegúrese de editar también .../bin/install-mendeley-link-handler.sh, porque anula el .desktoparchivo en cada ejecución
MInner

TLDR; * .desktop filename = WM_CLASS (STRING) último elemento pero en minúsculas. Detalles: tuve que resolver este problema al crear el acceso directo "Firefox Developer edition". Nombrar el archivo "firefox.desktop" simplemente sombreó el ícono estándar de firefox. Al usar xprop WM_CLASS y hacer clic en la ventana, se devolvió WM_CLASS (STRING) = "Navigator", "Firefox Developer Edition". Al final cambié el nombre de mi archivo .desktop de la siguiente manera: mv ffde.desktop "firefox developer edition.desktop". (Sin embargo, otro problema, no puedo hacer clic con el botón derecho »addToFavorites en el ícono de la extensión gnome dock)
Stphane

1
Si no desea / no puede modificar el archivo .desktop original en la carpeta / usr / share / aplicaciones, puede copiar el archivo a su carpeta local, ~ / .local / share / aplicaciones, y modificar el archivo aquí. Por lo tanto, tendrá un archivo original de todo el sistema (probablemente proporcionado por el desarrollador / distribución) y un archivo personalizado que anula el archivo original en el panel de aplicaciones de gnome-shell. Copiar a su carpeta local es deseable ya que el archivo en / usr / share / aplicaciones se puede revertir en la próxima actualización del paquete.
Vinícius A. Jorge

Varias aplicaciones no tienen WM_CLASS, o al menos xprop no lo muestra. ¿Se puede hacer con otra propiedad? Por ejemplo, una expresión regular en WM_NAME?
jws

3

StartupWMClass

Puede usar StartupWMClass para agrupar ventanas por clase.

Consulte este hilo para obtener información adicional.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.