Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37567816
en ru br
ALT Linux repositórios
S:3.50.0-alt1
5.0: 0.12.1-alt1
4.1: 0.11.5-alt2.M41.1

Group :: Desktop gráfico/GNOME
RPM: alacarte

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

Patch: alacarte-0.13.2-alt-xfce.patch
Download


diff --git a/Alacarte/MainWindow.py b/Alacarte/MainWindow.py
index e43ea9a..a1b0d99 100644
--- a/Alacarte/MainWindow.py
+++ b/Alacarte/MainWindow.py
@@ -285,6 +285,17 @@ class MainWindow:
 			return False
 		return True
 
+	# Run gnome-desktop-item-edit or exo-desktop-item-edit
+	def run_desktop_item_edit(self, file_path):
+		try:
+			process = subprocess.Popen(['gnome-desktop-item-edit', file_path], env=os.environ)
+		except OSError, e:
+			# If gnome-desktop-item-edit is not exists then
+			# run exo-desktop-item-edit
+			if e.errno == 2:
+				process = subprocess.Popen(['exo-desktop-item-edit', file_path], env=os.environ)
+		return process
+
 	def on_new_menu_button_clicked(self, button):
 		menu_tree = self.tree.get_object('menu_tree')
 		menus, iter = menu_tree.get_selection().get_selected()
@@ -295,7 +306,7 @@ class MainWindow:
 		else:
 			parent = menus[iter][2]
 		file_path = os.path.join(util.getUserDirectoryPath(), util.getUniqueFileId('alacarte-made', '.directory'))
-		process = subprocess.Popen(['gnome-desktop-item-edit', file_path], env=os.environ)
+		process = self.run_desktop_item_edit(file_path)
 		gobject.timeout_add(100, self.waitForNewMenuProcess, process, parent.menu_id, file_path)
 
 	def on_new_item_button_clicked(self, button):
@@ -308,7 +319,7 @@ class MainWindow:
 		else:
 			parent = menus[iter][2]
 		file_path = os.path.join(util.getUserItemPath(), util.getUniqueFileId('alacarte-made', '.desktop'))
-		process = subprocess.Popen(['gnome-desktop-item-edit', file_path], env=os.environ)
+		process = self.run_desktop_item_edit(file_path)
 		gobject.timeout_add(100, self.waitForNewItemProcess, process, parent.menu_id, file_path)
 
 	def on_new_separator_button_clicked(self, button):
@@ -379,7 +390,7 @@ class MainWindow:
 			self.editor._MenuEditor__addUndo([item,])
 		if file_path not in self.edit_pool:
 			self.edit_pool.append(file_path)
-			process = subprocess.Popen(['gnome-desktop-item-edit', file_path], env=os.environ)
+			process = self.run_desktop_item_edit(file_path)
 			gobject.timeout_add(100, self.waitForEditProcess, process, file_path)
 
 	def on_menu_tree_cursor_changed(self, treeview):
 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009