File alacarte-no-settings.menu.patch of Package alacarte

commit a43f1274fcab7d4cdb341d9f3174f7c3e1b3f8c5
Author: Vincent Untz <vuntz@gnome.org>
Date:   Fri Jul 22 13:30:50 2011 +0200

    Stop trying to edit settings.menu
    
    This got removed, and is replaced by gnomecc.menu, which we don't want
    to edit (gnome-control-center ignores the user changes there).
    
    https://bugzilla.gnome.org/show_bug.cgi?id=655113

diff --git a/Alacarte/MainWindow.py b/Alacarte/MainWindow.py
index 260efe5..8874d1c 100644
--- a/Alacarte/MainWindow.py
+++ b/Alacarte/MainWindow.py
@@ -71,7 +71,6 @@ class MainWindow:
 	def run(self):
 		self.loadMenus()
 		self.editor.applications.tree.add_monitor(self.menuChanged, None)
-		self.editor.settings.tree.add_monitor(self.menuChanged, None)
 		self.tree.get_object('mainwindow').show_all()
 		gtk.main()
 
diff --git a/Alacarte/MenuEditor.py b/Alacarte/MenuEditor.py
index 73dd6c0..9794b94 100644
--- a/Alacarte/MenuEditor.py
+++ b/Alacarte/MenuEditor.py
@@ -48,22 +48,10 @@ class MenuEditor:
 			self.applications.dom = xml.dom.minidom.parse(self.applications.path)
 		self.__remove_whilespace_nodes(self.applications.dom)
 
-		self.settings = Menu() 	 
-		self.settings.tree = gmenu.lookup_tree('settings.menu', gmenu.FLAGS_SHOW_EMPTY|gmenu.FLAGS_INCLUDE_EXCLUDED|gmenu.FLAGS_INCLUDE_NODISPLAY|gmenu.FLAGS_SHOW_ALL_SEPARATORS)
-		self.settings.visible_tree = gmenu.lookup_tree('settings.menu') 	 
-		self.settings.tree.sort_key = gmenu.SORT_DISPLAY_NAME
-		self.settings.visible_tree.sort_key = gmenu.SORT_DISPLAY_NAME
-		self.settings.path = os.path.join(util.getUserMenuPath(), self.settings.tree.get_menu_file()) 	 
-		if not os.path.isfile(self.settings.path): 	 
-			self.settings.dom = xml.dom.minidom.parseString(util.getUserMenuXml(self.settings.tree)) 	 
-		else: 	 
-			self.settings.dom = xml.dom.minidom.parse(self.settings.path) 	 
-		self.__remove_whilespace_nodes(self.settings.dom)
-
 		self.save(True)
 
 	def save(self, from_loading=False):
-		for menu in ('applications', 'settings'):
+		for menu in ('applications',):
 			fd = open(getattr(self, menu).path, 'w')
 			fd.write(re.sub("\n[\s]*([^\n<]*)\n[\s]*</", "\\1</", getattr(self, menu).dom.toprettyxml().replace('<?xml version="1.0" ?>\n', '')))
 			fd.close()
@@ -85,7 +73,7 @@ class MenuEditor:
 				os.unlink(file_path)
 
 	def revert(self):
-		for name in ('applications', 'settings'):
+		for name in ('applications',):
 			menu = getattr(self, name)
 			self.revertTree(menu.tree.root)
 			path = os.path.join(util.getUserMenuPath(), menu.tree.get_menu_file())
@@ -126,7 +114,7 @@ class MenuEditor:
 			os.unlink(file_path)
 			redo.append(redo_path)
 		#reload DOM to make changes stick
-		for name in ('applications', 'settings'):
+		for name in ('applications',):
 			menu = getattr(self, name)
 			if not os.path.isfile(menu.path):
 				menu.dom = xml.dom.minidom.parseString(util.getUserMenuXml(menu.tree))
@@ -150,7 +138,7 @@ class MenuEditor:
 			os.unlink(file_path)
 			undo.append(undo_path)
 		#reload DOM to make changes stick
-		for name in ('applications', 'settings'):
+		for name in ('applications',):
 			menu = getattr(self, name)
 			if not os.path.isfile(menu.path):
 				menu.dom = xml.dom.minidom.parseString(util.getUserMenuXml(menu.tree))
@@ -162,7 +150,6 @@ class MenuEditor:
 	def getMenus(self, parent=None):
 		if parent == None:
 			yield self.applications.tree.root
-			yield self.settings.tree.root
 		else:
 			for menu in parent.get_contents():
 				if menu.get_type() == gmenu.TYPE_DIRECTORY:
@@ -442,7 +429,7 @@ class MenuEditor:
 					break
 		if root.menu_id == self.applications.tree.root.menu_id:
 			return self.applications
-		return self.settings
+		return None
 
 	def __findMenu(self, menu_id, parent=None):
 		if parent == None:
@@ -450,11 +437,9 @@ class MenuEditor:
 			if menu != None:
 				return menu
 			else:
-				return self.__findMenu(menu_id, self.settings.tree.root)
+				return None
 		if menu_id == self.applications.tree.root.menu_id:
 			return self.applications.tree.root
-		if menu_id == self.settings.tree.root.menu_id:
-			return self.settings.tree.root
 		for item in parent.get_contents():
 			if item.get_type() == gmenu.TYPE_DIRECTORY:
 				if item.menu_id == menu_id:
@@ -469,8 +454,8 @@ class MenuEditor:
 		menu = self.__getMenu(item)
 		if menu == self.applications:
 			root = self.applications.visible_tree.root
-		elif menu == self.settings:
-			root = self.settings.visible_tree.root
+		else:
+			root = None
 		if item.get_type() == gmenu.TYPE_DIRECTORY:
 			if self.__findMenu(item.menu_id, root) == None:
 				return False
openSUSE Build Service is sponsored by