Support for Path in .desktop files (fixes issue #611)
This commit is contained in:
parent
c37d61c862
commit
cd76bd311d
5 changed files with 242 additions and 18 deletions
1
AUTHORS
1
AUTHORS
|
@ -27,6 +27,7 @@ Contributors:
|
|||
Benoit Averty : taskbar enhancements
|
||||
Justin Jacobs : tint2conf fixes
|
||||
Oskari Rauta : separator plugin, gradients
|
||||
Michael Messmore : Support for Path in .desktop files
|
||||
|
||||
Translations:
|
||||
Bosnian:
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
2016-10-08 master
|
||||
2016-12-04 master
|
||||
- Fixes:
|
||||
- tint2conf: executor tooltips are now correctly disabled when text config value is empty (contributed by Justin Jacobs)
|
||||
- Enhancements:
|
||||
|
@ -6,6 +6,7 @@
|
|||
- New config option taskbar_hide_if_empty to hide an empty taskbar in multi_desktop mode (contributed by Benoit Averty)
|
||||
- Gradient backgrounds (contributed by Oskari Rauta)
|
||||
- New option: panel_shrink (fixes issue #333)
|
||||
- Support for Path in .desktop files (contributed by Michael Messmore)
|
||||
- New plugin: separator (contributed by Oskari Rauta)
|
||||
|
||||
2016-08-02 0.12.12
|
||||
|
|
|
@ -211,11 +211,11 @@ gboolean read_desktop_file_from_dir(const char *path, const char *file_name, Des
|
|||
g_free(full_path);
|
||||
return TRUE;
|
||||
}
|
||||
free(entry->name);
|
||||
free(entry->generic_name);
|
||||
free(entry->icon);
|
||||
free(entry->exec);
|
||||
entry->name = entry->generic_name = entry->icon = entry->exec = NULL;
|
||||
free_and_null(entry->name);
|
||||
free_and_null(entry->generic_name);
|
||||
free_and_null(entry->icon);
|
||||
free_and_null(entry->exec);
|
||||
free_and_null(entry->cwd);
|
||||
|
||||
GList *subdirs = NULL;
|
||||
|
||||
|
@ -254,7 +254,7 @@ gboolean read_desktop_file_from_dir(const char *path, const char *file_name, Des
|
|||
gboolean read_desktop_file(const char *path, DesktopEntry *entry)
|
||||
{
|
||||
entry->path = strdup(path);
|
||||
entry->name = entry->generic_name = entry->icon = entry->exec = NULL;
|
||||
entry->name = entry->generic_name = entry->icon = entry->exec = entry->cwd = NULL;
|
||||
|
||||
if (strchr(path, '/'))
|
||||
return read_desktop_file_full_path(path, entry);
|
||||
|
@ -267,12 +267,12 @@ gboolean read_desktop_file(const char *path, DesktopEntry *entry)
|
|||
|
||||
void free_desktop_entry(DesktopEntry *entry)
|
||||
{
|
||||
free(entry->name);
|
||||
free(entry->generic_name);
|
||||
free(entry->icon);
|
||||
free(entry->exec);
|
||||
free(entry->path);
|
||||
entry->name = entry->generic_name = entry->icon = entry->exec = entry->path = NULL;
|
||||
free_and_null(entry->name);
|
||||
free_and_null(entry->generic_name);
|
||||
free_and_null(entry->icon);
|
||||
free_and_null(entry->exec);
|
||||
free_and_null(entry->path);
|
||||
free_and_null(entry->cwd);
|
||||
}
|
||||
|
||||
void test_read_desktop_file()
|
||||
|
|
|
@ -441,7 +441,8 @@ void launcher_action(LauncherIcon *icon, XEvent *evt)
|
|||
// Allow children to exist after parent destruction
|
||||
setsid();
|
||||
// Run the command
|
||||
chdir(icon->cwd);
|
||||
if (icon->cwd)
|
||||
chdir(icon->cwd);
|
||||
execl("/bin/sh", "/bin/sh", "-c", icon->cmd, NULL);
|
||||
fprintf(stderr, "Failed to execlp %s\n", icon->cmd);
|
||||
#if HAVE_SN
|
||||
|
@ -510,11 +511,10 @@ void launcher_reload_icon(Launcher *launcher, LauncherIcon *launcherIcon)
|
|||
launcherIcon->cmd = strdup(entry.exec);
|
||||
if (launcherIcon->cwd)
|
||||
free(launcherIcon->cwd);
|
||||
if (entry.cwd) {
|
||||
if (entry.cwd)
|
||||
launcherIcon->cwd = strdup(entry.cwd);
|
||||
} else {
|
||||
launcherIcon->cwd = get_current_dir_name();
|
||||
}
|
||||
else
|
||||
launcherIcon->cwd = NULL;
|
||||
if (launcherIcon->icon_name)
|
||||
free(launcherIcon->icon_name);
|
||||
launcherIcon->icon_name = entry.icon ? strdup(entry.icon) : strdup(DEFAULT_ICON);
|
||||
|
|
222
test/ff.desktop
Normal file
222
test/ff.desktop
Normal file
|
@ -0,0 +1,222 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Firefox Web Browser
|
||||
Name[ar]=متصفح الويب فَيَرفُكْس
|
||||
Name[ast]=Restolador web Firefox
|
||||
Name[bn]=ফায়ারফক্স ওয়েব ব্রাউজার
|
||||
Name[ca]=Navegador web Firefox
|
||||
Name[cs]=Firefox Webový prohlížeč
|
||||
Name[da]=Firefox - internetbrowser
|
||||
Name[el]=Περιηγητής Firefox
|
||||
Name[es]=Navegador web Firefox
|
||||
Name[et]=Firefoxi veebibrauser
|
||||
Name[fa]=مرورگر اینترنتی Firefox
|
||||
Name[fi]=Firefox-selain
|
||||
Name[fr]=Navigateur Web Firefox
|
||||
Name[gl]=Navegador web Firefox
|
||||
Name[he]=דפדפן האינטרנט Firefox
|
||||
Name[hr]=Firefox web preglednik
|
||||
Name[hu]=Firefox webböngésző
|
||||
Name[it]=Firefox Browser Web
|
||||
Name[ja]=Firefox ウェブ・ブラウザ
|
||||
Name[ko]=Firefox 웹 브라우저
|
||||
Name[ku]=Geroka torê Firefox
|
||||
Name[lt]=Firefox interneto naršyklė
|
||||
Name[nb]=Firefox Nettleser
|
||||
Name[nl]=Firefox webbrowser
|
||||
Name[nn]=Firefox Nettlesar
|
||||
Name[no]=Firefox Nettleser
|
||||
Name[pl]=Przeglądarka WWW Firefox
|
||||
Name[pt]=Firefox Navegador Web
|
||||
Name[pt_BR]=Navegador Web Firefox
|
||||
Name[ro]=Firefox – Navigator Internet
|
||||
Name[ru]=Веб-браузер Firefox
|
||||
Name[sk]=Firefox - internetový prehliadač
|
||||
Name[sl]=Firefox spletni brskalnik
|
||||
Name[sv]=Firefox webbläsare
|
||||
Name[tr]=Firefox Web Tarayıcısı
|
||||
Name[ug]=Firefox توركۆرگۈ
|
||||
Name[uk]=Веб-браузер Firefox
|
||||
Name[vi]=Trình duyệt web Firefox
|
||||
Name[zh_CN]=Firefox 网络浏览器
|
||||
Name[zh_TW]=Firefox 網路瀏覽器
|
||||
Comment=Browse the World Wide Web
|
||||
Comment[ar]=تصفح الشبكة العنكبوتية العالمية
|
||||
Comment[ast]=Restola pela Rede
|
||||
Comment[bn]=ইন্টারনেট ব্রাউজ করুন
|
||||
Comment[ca]=Navegueu per la web
|
||||
Comment[cs]=Prohlížení stránek World Wide Webu
|
||||
Comment[da]=Surf på internettet
|
||||
Comment[de]=Im Internet surfen
|
||||
Comment[el]=Μπορείτε να περιηγηθείτε στο διαδίκτυο (Web)
|
||||
Comment[es]=Navegue por la web
|
||||
Comment[et]=Lehitse veebi
|
||||
Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
|
||||
Comment[fi]=Selaa Internetin WWW-sivuja
|
||||
Comment[fr]=Naviguer sur le Web
|
||||
Comment[gl]=Navegar pola rede
|
||||
Comment[he]=גלישה ברחבי האינטרנט
|
||||
Comment[hr]=Pretražite web
|
||||
Comment[hu]=A világháló böngészése
|
||||
Comment[it]=Esplora il web
|
||||
Comment[ja]=ウェブを閲覧します
|
||||
Comment[ko]=웹을 돌아 다닙니다
|
||||
Comment[ku]=Li torê bigere
|
||||
Comment[lt]=Naršykite internete
|
||||
Comment[nb]=Surf på nettet
|
||||
Comment[nl]=Verken het internet
|
||||
Comment[nn]=Surf på nettet
|
||||
Comment[no]=Surf på nettet
|
||||
Comment[pl]=Przeglądanie stron WWW
|
||||
Comment[pt]=Navegue na Internet
|
||||
Comment[pt_BR]=Navegue na Internet
|
||||
Comment[ro]=Navigați pe Internet
|
||||
Comment[ru]=Доступ в Интернет
|
||||
Comment[sk]=Prehliadanie internetu
|
||||
Comment[sl]=Brskajte po spletu
|
||||
Comment[sv]=Surfa på webben
|
||||
Comment[tr]=İnternet'te Gezinin
|
||||
Comment[ug]=دۇنيادىكى توربەتلەرنى كۆرگىلى بولىدۇ
|
||||
Comment[uk]=Перегляд сторінок Інтернету
|
||||
Comment[vi]=Để duyệt các trang web
|
||||
Comment[zh_CN]=浏览互联网
|
||||
Comment[zh_TW]=瀏覽網際網路
|
||||
GenericName=Web Browser
|
||||
GenericName[ar]=متصفح ويب
|
||||
GenericName[ast]=Restolador Web
|
||||
GenericName[bn]=ওয়েব ব্রাউজার
|
||||
GenericName[ca]=Navegador web
|
||||
GenericName[cs]=Webový prohlížeč
|
||||
GenericName[da]=Webbrowser
|
||||
GenericName[el]=Περιηγητής διαδικτύου
|
||||
GenericName[es]=Navegador web
|
||||
GenericName[et]=Veebibrauser
|
||||
GenericName[fa]=مرورگر اینترنتی
|
||||
GenericName[fi]=WWW-selain
|
||||
GenericName[fr]=Navigateur Web
|
||||
GenericName[gl]=Navegador Web
|
||||
GenericName[he]=דפדפן אינטרנט
|
||||
GenericName[hr]=Web preglednik
|
||||
GenericName[hu]=Webböngésző
|
||||
GenericName[it]=Browser web
|
||||
GenericName[ja]=ウェブ・ブラウザ
|
||||
GenericName[ko]=웹 브라우저
|
||||
GenericName[ku]=Geroka torê
|
||||
GenericName[lt]=Interneto naršyklė
|
||||
GenericName[nb]=Nettleser
|
||||
GenericName[nl]=Webbrowser
|
||||
GenericName[nn]=Nettlesar
|
||||
GenericName[no]=Nettleser
|
||||
GenericName[pl]=Przeglądarka WWW
|
||||
GenericName[pt]=Navegador Web
|
||||
GenericName[pt_BR]=Navegador Web
|
||||
GenericName[ro]=Navigator Internet
|
||||
GenericName[ru]=Веб-браузер
|
||||
GenericName[sk]=Internetový prehliadač
|
||||
GenericName[sl]=Spletni brskalnik
|
||||
GenericName[sv]=Webbläsare
|
||||
GenericName[tr]=Web Tarayıcı
|
||||
GenericName[ug]=توركۆرگۈ
|
||||
GenericName[uk]=Веб-браузер
|
||||
GenericName[vi]=Trình duyệt Web
|
||||
GenericName[zh_CN]=网络浏览器
|
||||
GenericName[zh_TW]=網路瀏覽器
|
||||
Keywords=Internet;WWW;Browser;Web;Explorer
|
||||
Keywords[ar]=انترنت;إنترنت;متصفح;ويب;وب
|
||||
Keywords[ast]=Internet;WWW;Restolador;Web;Esplorador
|
||||
Keywords[ca]=Internet;WWW;Navegador;Web;Explorador;Explorer
|
||||
Keywords[cs]=Internet;WWW;Prohlížeč;Web;Explorer
|
||||
Keywords[da]=Internet;Internettet;WWW;Browser;Browse;Web;Surf;Nettet
|
||||
Keywords[de]=Internet;WWW;Browser;Web;Explorer;Webseite;Site;surfen;online;browsen
|
||||
Keywords[el]=Internet;WWW;Browser;Web;Explorer;Διαδίκτυο;Περιηγητής;Firefox;Φιρεφοχ;Ιντερνετ
|
||||
Keywords[es]=Explorador;Internet;WWW
|
||||
Keywords[fi]=Internet;WWW;Browser;Web;Explorer;selain;Internet-selain;internetselain;verkkoselain;netti;surffaa
|
||||
Keywords[fr]=Internet;WWW;Browser;Web;Explorer;Fureteur;Surfer;Navigateur
|
||||
Keywords[he]=דפדפן;אינטרנט;רשת;אתרים;אתר;פיירפוקס;מוזילה;
|
||||
Keywords[hr]=Internet;WWW;preglednik;Web
|
||||
Keywords[hu]=Internet;WWW;Böngésző;Web;Háló;Net;Explorer
|
||||
Keywords[it]=Internet;WWW;Browser;Web;Navigatore
|
||||
Keywords[is]=Internet;WWW;Vafri;Vefur;Netvafri;Flakk
|
||||
Keywords[ja]=Internet;WWW;Web;インターネット;ブラウザ;ウェブ;エクスプローラ
|
||||
Keywords[nb]=Internett;WWW;Nettleser;Explorer;Web;Browser;Nettside
|
||||
Keywords[nl]=Internet;WWW;Browser;Web;Explorer;Verkenner;Website;Surfen;Online
|
||||
Keywords[pt]=Internet;WWW;Browser;Web;Explorador;Navegador
|
||||
Keywords[pt_BR]=Internet;WWW;Browser;Web;Explorador;Navegador
|
||||
Keywords[ru]=Internet;WWW;Browser;Web;Explorer;интернет;браузер;веб;файрфокс;огнелис
|
||||
Keywords[sk]=Internet;WWW;Prehliadač;Web;Explorer
|
||||
Keywords[sl]=Internet;WWW;Browser;Web;Explorer;Brskalnik;Splet
|
||||
Keywords[tr]=İnternet;WWW;Tarayıcı;Web;Gezgin;Web sitesi;Site;sörf;çevrimiçi;tara
|
||||
Keywords[uk]=Internet;WWW;Browser;Web;Explorer;Інтернет;мережа;переглядач;оглядач;браузер;веб;файрфокс;вогнелис;перегляд
|
||||
Keywords[vi]=Internet;WWW;Browser;Web;Explorer;Trình duyệt;Trang web
|
||||
Keywords[zh_CN]=Internet;WWW;Browser;Web;Explorer;网页;浏览;上网;火狐;Firefox;ff;互联网;网站;
|
||||
Keywords[zh_TW]=Internet;WWW;Browser;Web;Explorer;網際網路;網路;瀏覽器;上網;網頁;火狐
|
||||
Exec=firefox %u
|
||||
Path=/tmp
|
||||
Terminal=false
|
||||
X-MultipleArgs=false
|
||||
Type=Application
|
||||
Icon=firefox
|
||||
Categories=GNOME;GTK;Network;WebBrowser;
|
||||
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall;
|
||||
StartupNotify=true
|
||||
Actions=NewWindow;NewPrivateWindow;
|
||||
|
||||
[Desktop Action NewWindow]
|
||||
Name=Open a New Window
|
||||
Name[ar]=افتح نافذة جديدة
|
||||
Name[ast]=Abrir una ventana nueva
|
||||
Name[bn]=Abrir una ventana nueva
|
||||
Name[ca]=Obre una finestra nova
|
||||
Name[cs]=Otevřít nové okno
|
||||
Name[da]=Åbn et nyt vindue
|
||||
Name[de]=Ein neues Fenster öffnen
|
||||
Name[el]=Άνοιγμα νέου παραθύρου
|
||||
Name[es]=Abrir una ventana nueva
|
||||
Name[fi]=Avaa uusi ikkuna
|
||||
Name[fr]=Ouvrir une nouvelle fenêtre
|
||||
Name[gl]=Abrir unha nova xanela
|
||||
Name[he]=פתיחת חלון חדש
|
||||
Name[hr]=Otvori novi prozor
|
||||
Name[hu]=Új ablak nyitása
|
||||
Name[it]=Apri una nuova finestra
|
||||
Name[ja]=新しいウィンドウを開く
|
||||
Name[ko]=새 창 열기
|
||||
Name[ku]=Paceyeke nû veke
|
||||
Name[lt]=Atverti naują langą
|
||||
Name[nb]=Åpne et nytt vindu
|
||||
Name[nl]=Nieuw venster openen
|
||||
Name[pt]=Abrir nova janela
|
||||
Name[pt_BR]=Abrir nova janela
|
||||
Name[ro]=Deschide o fereastră nouă
|
||||
Name[ru]=Новое окно
|
||||
Name[sk]=Otvoriť nové okno
|
||||
Name[sl]=Odpri novo okno
|
||||
Name[sv]=Öppna ett nytt fönster
|
||||
Name[tr]=Yeni pencere aç
|
||||
Name[ug]=يېڭى كۆزنەك ئېچىش
|
||||
Name[uk]=Відкрити нове вікно
|
||||
Name[vi]=Mở cửa sổ mới
|
||||
Name[zh_CN]=新建窗口
|
||||
Name[zh_TW]=開啟新視窗
|
||||
Exec=firefox -new-window
|
||||
OnlyShowIn=Unity;
|
||||
|
||||
[Desktop Action NewPrivateWindow]
|
||||
Name=Open a New Private Window
|
||||
Name[ar]=افتح نافذة جديدة للتصفح الخاص
|
||||
Name[ca]=Obre una finestra nova en mode d'incògnit
|
||||
Name[de]=Ein neues privates Fenster öffnen
|
||||
Name[es]=Abrir una ventana privada nueva
|
||||
Name[fi]=Avaa uusi yksityinen ikkuna
|
||||
Name[fr]=Ouvrir une nouvelle fenêtre de navigation privée
|
||||
Name[he]=פתיחת חלון גלישה פרטית חדש
|
||||
Name[hu]=Új privát ablak nyitása
|
||||
Name[it]=Apri una nuova finestra anonima
|
||||
Name[nb]=Åpne et nytt privat vindu
|
||||
Name[ru]=Новое приватное окно
|
||||
Name[sl]=Odpri novo okno zasebnega brskanja
|
||||
Name[tr]=Yeni bir pencere aç
|
||||
Name[uk]=Відкрити нове вікно у потайливому режимі
|
||||
Name[zh_TW]=開啟新隱私瀏覽視窗
|
||||
Exec=firefox -private-window
|
||||
OnlyShowIn=Unity;
|
Loading…
Reference in a new issue