Blob Blame History Raw
diff --git a/configure.ac b/configure.ac
index 24218c3..ea938de 100644
--- a/configure.ac
+++ b/configure.ac
@@ -75,7 +75,7 @@ PKG_CHECK_MODULES(CINNAMON, gio-2.0 >= $GIO_MIN_VERSION
                                gtk+-3.0 >= $GTK_MIN_VERSION
                                libmuffin >= $MUFFIN_MIN_VERSION
                                cjs-internals-1.0 >= $GJS_MIN_VERSION
-			       libgnome-menu-3.0 $recorder_modules gconf-2.0
+			       libcinnamon-menu-3.0 $recorder_modules gconf-2.0
                                gdk-x11-3.0 libsoup-2.4 gl
 			       clutter-x11-1.0 >= $CLUTTER_MIN_VERSION
                                libstartup-notification-1.0 >= $STARTUP_NOTIFICATION_MIN_VERSION
diff --git a/debian/control b/debian/control
index d223435..4301a92 100644
--- a/debian/control
+++ b/debian/control
@@ -23,7 +23,7 @@ Build-Depends: debhelper (>= 8),
                libglib2.0-bin (>= 2.25.11),
                libgnome-bluetooth-dev (>= 3.1.0),
                libgnome-keyring-dev,
-               libgnome-menu-3-dev,
+               libcinnamon-menu-3-dev,
                libgstreamer0.10-dev (>= 0.10.16),
                libgtk-3-dev (>= 3.0.0),
                libgudev-1.0-dev,
diff --git a/files/generate_desktop_files b/files/generate_desktop_files
index fdbbd9c..93b7b94 100755
--- a/files/generate_desktop_files
+++ b/files/generate_desktop_files
@@ -53,6 +53,7 @@ Icon=preferences-system
 Terminal=false
 Type=Application
 Encoding=UTF-8
+OnlyShowIn=X-Cinnamon;
 Categories=GNOME;GTK;Settings;DesktopSettings;
 StartupNotify=false
 """)
diff --git a/files/usr/lib/cinnamon-menu-editor/cme/MainWindow.py b/files/usr/lib/cinnamon-menu-editor/cme/MainWindow.py
index bfa0aa6..4c97b10 100644
--- a/files/usr/lib/cinnamon-menu-editor/cme/MainWindow.py
+++ b/files/usr/lib/cinnamon-menu-editor/cme/MainWindow.py
@@ -17,7 +17,7 @@
 #   License along with this library; if not, write to the Free Software
 #   Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA  02110-1335  USA
 
-from gi.repository import Gtk, GObject, Gio, GdkPixbuf, Gdk, GMenu, GLib
+from gi.repository import Gtk, GObject, Gio, GdkPixbuf, Gdk, CMenu, GLib
 import cgi
 import os
 import gettext
@@ -78,15 +78,15 @@ class MainWindow(object):
         item_id = None
         if iter:
             update_items = True
-            if isinstance(items[iter][3], GMenu.TreeEntry):
+            if isinstance(items[iter][3], CMenu.TreeEntry):
                 item_id = items[iter][3].get_desktop_file_id()
-                update_type = GMenu.TreeItemType.ENTRY
-            elif isinstance(items[iter][3], GMenu.TreeDirectory):
+                update_type = CMenu.TreeItemType.ENTRY
+            elif isinstance(items[iter][3], CMenu.TreeDirectory):
                 item_id = os.path.split(items[iter][3].get_desktop_file_path())[1]
-                update_type = GMenu.TreeItemType.DIRECTORY
-            elif isinstance(items[iter][3], GMenu.TreeSeparator):
+                update_type = CMenu.TreeItemType.DIRECTORY
+            elif isinstance(items[iter][3], CMenu.TreeSeparator):
                 item_id = items.get_path(iter)
-                update_type = GMenu.TreeItemType.SEPARATOR
+                update_type = CMenu.TreeItemType.SEPARATOR
         menus, iter = menu_tree.get_selection().get_selected()
         update_menus = False
         menu_id = None
@@ -108,13 +108,13 @@ class MainWindow(object):
             i = 0
             for item in item_tree.get_model():
                 found = False
-                if update_type != GMenu.TreeItemType.SEPARATOR:
-                    if isinstance (item[3], GMenu.TreeEntry) and item[3].get_desktop_file_id() == item_id:
+                if update_type != CMenu.TreeItemType.SEPARATOR:
+                    if isinstance (item[3], CMenu.TreeEntry) and item[3].get_desktop_file_id() == item_id:
                         found = True
-                    if isinstance (item[3], GMenu.TreeDirectory) and item[3].get_desktop_file_path() and update_type == GMenu.TreeItemType.DIRECTORY:
+                    if isinstance (item[3], CMenu.TreeDirectory) and item[3].get_desktop_file_path() and update_type == CMenu.TreeItemType.DIRECTORY:
                         if os.path.split(item[3].get_desktop_file_path())[1] == item_id:
                             found = True
-                if isinstance(item[3], GMenu.TreeSeparator):
+                if isinstance(item[3], CMenu.TreeSeparator):
                     if not isinstance(item_id, tuple):
                         #we may not skip the increment via "continue"
                         i += 1
@@ -185,7 +185,7 @@ class MainWindow(object):
         items.set_model(self.item_store)
 
     def _cell_data_toggle_func(self, tree_column, renderer, model, treeiter, data=None):
-        if isinstance(model[treeiter][3], GMenu.TreeSeparator):
+        if isinstance(model[treeiter][3], CMenu.TreeSeparator):
             renderer.set_property('visible', False)
         else:
             renderer.set_property('visible', True)
@@ -215,11 +215,11 @@ class MainWindow(object):
         self.item_store.clear()
         for item, show in self.editor.getItems(menu):
             icon = util.getIcon(item)
-            if isinstance(item, GMenu.TreeDirectory):
+            if isinstance(item, CMenu.TreeDirectory):
                 name = item.get_name()
-            elif isinstance(item, GMenu.TreeEntry):
+            elif isinstance(item, CMenu.TreeEntry):
                 name = item.get_app_info().get_display_name()
-            elif isinstance(item, GMenu.TreeSeparator):
+            elif isinstance(item, CMenu.TreeSeparator):
                 name = '---'
             else:
                 assert False, 'should not be reached'
@@ -285,11 +285,11 @@ class MainWindow(object):
         if not iter:
             return
         item = items[iter][3]
-        if isinstance(item, GMenu.TreeEntry):
+        if isinstance(item, CMenu.TreeEntry):
             self.editor.deleteItem(item)
-        elif isinstance(item, GMenu.TreeDirectory):
+        elif isinstance(item, CMenu.TreeDirectory):
             self.editor.deleteMenu(item)
-        elif isinstance(item, GMenu.TreeSeparator):
+        elif isinstance(item, CMenu.TreeSeparator):
             self.editor.deleteSeparator(item)
 
     def on_edit_properties_activate(self, menu):
@@ -298,13 +298,13 @@ class MainWindow(object):
         if not iter:
             return
         item = items[iter][3]
-        if not isinstance(item, GMenu.TreeEntry) and not isinstance(item, GMenu.TreeDirectory):
+        if not isinstance(item, CMenu.TreeEntry) and not isinstance(item, CMenu.TreeDirectory):
             return
 
-        if isinstance(item, GMenu.TreeEntry):
+        if isinstance(item, CMenu.TreeEntry):
             file_path = os.path.join(util.getUserItemPath(), item.get_desktop_file_id())
             file_type = 'launcher'
-        elif isinstance(item, GMenu.TreeDirectory):
+        elif isinstance(item, CMenu.TreeDirectory):
             file_path = os.path.join(util.getUserDirectoryPath(), os.path.split(item.get_desktop_file_path())[1])
             file_type = 'directory'
 
@@ -322,7 +322,7 @@ class MainWindow(object):
         item = items[iter][3]
         if not iter:
             return
-        if not isinstance(item, GMenu.TreeEntry):
+        if not isinstance(item, CMenu.TreeEntry):
             return
         (self.cut_copy_buffer, self.file_id) = self.editor.cutItem(item)
 
@@ -332,7 +332,7 @@ class MainWindow(object):
         item = items[iter][3]
         if not iter:
             return
-        if not isinstance(item, GMenu.TreeEntry):
+        if not isinstance(item, CMenu.TreeEntry):
             return
         (self.cut_copy_buffer, self.file_id) = self.editor.copyItem(item)
 
@@ -345,7 +345,7 @@ class MainWindow(object):
             if not iter:
                 return
         item = items[iter][3]
-        if not isinstance(item, GMenu.TreeDirectory):
+        if not isinstance(item, CMenu.TreeDirectory):
             return
         if self.cut_copy_buffer is not None:
             success = self.editor.pasteItem(self.cut_copy_buffer, item, self.file_id)
@@ -376,22 +376,22 @@ class MainWindow(object):
         self.tree.get_object('cut_button').set_sensitive(False)
         self.tree.get_object('copy_button').set_sensitive(False)
 
-        can_paste = isinstance(menu, GMenu.TreeDirectory) and self.cut_copy_buffer is not None
+        can_paste = isinstance(menu, CMenu.TreeDirectory) and self.cut_copy_buffer is not None
         self.tree.get_object('edit_paste').set_sensitive(can_paste)
         self.tree.get_object('paste_button').set_sensitive(can_paste)
 
         index = menus.get_path(iter).get_indices()[menus.get_path(iter).get_depth() - 1]
         parent_iter = menus.iter_parent(iter)
         count =  menus.iter_n_children(parent_iter)
-        can_go_up = index > 0 and isinstance(menu, GMenu.TreeDirectory)
-        can_go_down = index < count - 1 and isinstance(menu, GMenu.TreeDirectory)
+        can_go_up = index > 0 and isinstance(menu, CMenu.TreeDirectory)
+        can_go_down = index < count - 1 and isinstance(menu, CMenu.TreeDirectory)
         self.tree.get_object('move_up_button').set_sensitive(can_go_up)
         self.tree.get_object('move_down_button').set_sensitive(can_go_down)
         self.last_tree = "menu_tree"
 
     def on_item_tree_show_toggled(self, cell, path):
         item = self.item_store[path][3]
-        if isinstance(item, GMenu.TreeSeparator):
+        if isinstance(item, CMenu.TreeSeparator):
             return
         if self.item_store[path][0]:
             self.editor.setVisible(item, False)
@@ -411,24 +411,24 @@ class MainWindow(object):
         self.tree.get_object('edit_delete').set_sensitive(True)
         self.tree.get_object('delete_button').set_sensitive(True)
 
-        can_edit = not isinstance(item, GMenu.TreeSeparator)
+        can_edit = not isinstance(item, CMenu.TreeSeparator)
         self.tree.get_object('edit_properties').set_sensitive(can_edit)
         self.tree.get_object('properties_button').set_sensitive(can_edit)
 
-        can_cut_copy = not isinstance(item, GMenu.TreeDirectory)
+        can_cut_copy = not isinstance(item, CMenu.TreeDirectory)
         self.tree.get_object('cut_button').set_sensitive(can_cut_copy)
         self.tree.get_object('copy_button').set_sensitive(can_cut_copy)
         self.tree.get_object('edit_cut').set_sensitive(can_cut_copy)
         self.tree.get_object('edit_copy').set_sensitive(can_cut_copy)
 
-        can_paste = isinstance(item, GMenu.TreeDirectory) and self.cut_copy_buffer is not None
+        can_paste = isinstance(item, CMenu.TreeDirectory) and self.cut_copy_buffer is not None
 
         self.tree.get_object('edit_paste').set_sensitive(can_paste)
         self.tree.get_object('paste_button').set_sensitive(can_paste)
 
         index = items.get_path(iter).get_indices()[0]
-        can_go_up = index > 0 and isinstance(item, GMenu.TreeDirectory)
-        can_go_down = index < len(items) - 1 and isinstance(item, GMenu.TreeDirectory)
+        can_go_up = index > 0 and isinstance(item, CMenu.TreeDirectory)
+        can_go_down = index < len(items) - 1 and isinstance(item, CMenu.TreeDirectory)
         self.tree.get_object('move_up_button').set_sensitive(can_go_up)
         self.tree.get_object('move_down_button').set_sensitive(can_go_down)
         self.last_tree = "item_tree"
diff --git a/files/usr/lib/cinnamon-menu-editor/cme/MenuEditor.py b/files/usr/lib/cinnamon-menu-editor/cme/MenuEditor.py
index 4d09582..155a7da 100644
--- a/files/usr/lib/cinnamon-menu-editor/cme/MenuEditor.py
+++ b/files/usr/lib/cinnamon-menu-editor/cme/MenuEditor.py
@@ -19,14 +19,14 @@
 import os
 import xml.dom.minidom
 import xml.parsers.expat
-from gi.repository import GMenu, GLib
+from gi.repository import CMenu, GLib
 from cme import util
 
 class MenuEditor(object):
     def __init__(self, name='cinnamon-applications.menu'):
         self.name = name
 
-        self.tree = GMenu.Tree.new(name, GMenu.TreeFlags.SHOW_EMPTY|GMenu.TreeFlags.INCLUDE_EXCLUDED|GMenu.TreeFlags.INCLUDE_NODISPLAY|GMenu.TreeFlags.SHOW_ALL_SEPARATORS|GMenu.TreeFlags.SORT_DISPLAY_NAME)
+        self.tree = CMenu.Tree.new(name, CMenu.TreeFlags.SHOW_EMPTY|CMenu.TreeFlags.INCLUDE_EXCLUDED|CMenu.TreeFlags.INCLUDE_NODISPLAY|CMenu.TreeFlags.SHOW_ALL_SEPARATORS|CMenu.TreeFlags.SORT_DISPLAY_NAME)
         self.tree.connect('changed', self.menuChanged)
         self.load()
 
@@ -66,11 +66,11 @@ class MenuEditor(object):
     def restoreTree(self, menu):
         item_iter = menu.iter()
         item_type = item_iter.next()
-        while item_type != GMenu.TreeItemType.INVALID:
-            if item_type == GMenu.TreeItemType.DIRECTORY:
+        while item_type != CMenu.TreeItemType.INVALID:
+            if item_type == CMenu.TreeItemType.DIRECTORY:
                 item = item_iter.get_directory()
                 self.restoreTree(item)
-            elif item_type == GMenu.TreeItemType.ENTRY:
+            elif item_type == CMenu.TreeItemType.ENTRY:
                 item = item_iter.get_entry()
                 self.restoreItem(item)
             item_type = item_iter.next()
@@ -106,8 +106,8 @@ class MenuEditor(object):
 
         item_iter = parent.iter()
         item_type = item_iter.next()
-        while item_type != GMenu.TreeItemType.INVALID:
-            if item_type == GMenu.TreeItemType.DIRECTORY:
+        while item_type != CMenu.TreeItemType.INVALID:
+            if item_type == CMenu.TreeItemType.DIRECTORY:
                 item = item_iter.get_directory()
                 yield (item, self.isVisible(item))
             item_type = item_iter.next()
@@ -117,17 +117,17 @@ class MenuEditor(object):
         item_iter = item.iter()
         item_type = item_iter.next()
 
-        while item_type != GMenu.TreeItemType.INVALID:
+        while item_type != CMenu.TreeItemType.INVALID:
             item = None
-            if item_type == GMenu.TreeItemType.DIRECTORY:
+            if item_type == CMenu.TreeItemType.DIRECTORY:
                 item = item_iter.get_directory()
-            elif item_type == GMenu.TreeItemType.ENTRY:
+            elif item_type == CMenu.TreeItemType.ENTRY:
                 item = item_iter.get_entry()
-            elif item_type == GMenu.TreeItemType.HEADER:
+            elif item_type == CMenu.TreeItemType.HEADER:
                 item = item_iter.get_header()
-            elif item_type == GMenu.TreeItemType.ALIAS:
+            elif item_type == CMenu.TreeItemType.ALIAS:
                 item = item_iter.get_alias()
-            elif item_type == GMenu.TreeItemType.SEPARATOR:
+            elif item_type == CMenu.TreeItemType.SEPARATOR:
                 item = item_iter.get_separator()
             if item:
                 contents.append(item)
@@ -137,28 +137,28 @@ class MenuEditor(object):
     def getItems(self, menu):
         item_iter = menu.iter()
         item_type = item_iter.next()
-        while item_type != GMenu.TreeItemType.INVALID:
+        while item_type != CMenu.TreeItemType.INVALID:
             item = None
-            if item_type == GMenu.TreeItemType.ENTRY:
+            if item_type == CMenu.TreeItemType.ENTRY:
                 item = item_iter.get_entry()
-            elif item_type == GMenu.TreeItemType.DIRECTORY:
+            elif item_type == CMenu.TreeItemType.DIRECTORY:
                 item = item_iter.get_directory()
-            elif item_type == GMenu.TreeItemType.HEADER:
+            elif item_type == CMenu.TreeItemType.HEADER:
                 item = item_iter.get_header()
-            elif item_type == GMenu.TreeItemType.ALIAS:
+            elif item_type == CMenu.TreeItemType.ALIAS:
                 item = item_iter.get_alias()
-            elif item_type == GMenu.TreeItemType.SEPARATOR:
+            elif item_type == CMenu.TreeItemType.SEPARATOR:
                 item = item_iter.get_separator()
             yield (item, self.isVisible(item))
             item_type = item_iter.next()
 
     def canRevert(self, item):
-        if isinstance(item, GMenu.TreeEntry):
+        if isinstance(item, CMenu.TreeEntry):
             if util.getItemPath(item.get_desktop_file_id()) is not None:
                 path = util.getUserItemPath()
                 if os.path.isfile(os.path.join(path, item.get_desktop_file_id())):
                     return True
-        elif isinstance(item, GMenu.TreeDirectory):
+        elif isinstance(item, CMenu.TreeDirectory):
             if item.get_desktop_file_path():
                 file_id = os.path.split(item.get_desktop_file_path())[1]
             else:
@@ -171,7 +171,7 @@ class MenuEditor(object):
 
     def setVisible(self, item, visible):
         dom = self.dom
-        if isinstance(item, GMenu.TreeEntry):
+        if isinstance(item, CMenu.TreeEntry):
             menu_xml = self.getXmlMenu(self.getPath(item.get_parent()), dom.documentElement, dom)
             if visible:
                 self.addXmlFilename(menu_xml, dom, item.get_desktop_file_id(), 'Include')
@@ -179,11 +179,11 @@ class MenuEditor(object):
             else:
                 self.addXmlFilename(menu_xml, dom, item.get_desktop_file_id(), 'Exclude')
             self.addXmlTextElement(menu_xml, 'AppDir', util.getUserItemPath(), dom)
-        elif isinstance(item, GMenu.TreeDirectory):
+        elif isinstance(item, CMenu.TreeDirectory):
             item_iter = item.iter()
             first_child_type = item_iter.next()
             #don't mess with it if it's empty
-            if first_child_type == GMenu.TreeItemType.INVALID:
+            if first_child_type == CMenu.TreeItemType.INVALID:
                 return
             menu_xml = self.getXmlMenu(self.getPath(item), dom.documentElement, dom)
             for node in self.getXmlNodesByName(['Deleted', 'NotDeleted'], menu_xml):
@@ -307,8 +307,8 @@ class MenuEditor(object):
 
         item_iter = parent.iter()
         item_type = item_iter.next()
-        while item_type != GMenu.TreeItemType.INVALID:
-            if item_type == GMenu.TreeItemType.DIRECTORY:
+        while item_type != CMenu.TreeItemType.INVALID:
+            if item_type == CMenu.TreeItemType.DIRECTORY:
                 item = item_iter.get_directory()
                 if item.get_menu_id() == menu_id:
                     return item
@@ -318,10 +318,10 @@ class MenuEditor(object):
             item_type = item_iter.next()
 
     def isVisible(self, item):
-        if isinstance(item, GMenu.TreeEntry):
+        if isinstance(item, CMenu.TreeEntry):
             app_info = item.get_app_info()
             return not (item.get_is_excluded() or app_info.get_nodisplay())
-        elif isinstance(item, GMenu.TreeDirectory):
+        elif isinstance(item, CMenu.TreeDirectory):
             return not item.get_is_nodisplay()
         return True
 
@@ -496,11 +496,11 @@ class MenuEditor(object):
         layout = []
         layout.append(('Merge', 'menus'))
         for item in items:
-            if isinstance(item, GMenu.TreeDirectory):
+            if isinstance(item, CMenu.TreeDirectory):
                 layout.append(('Menuname', item.get_menu_id()))
-            elif isinstance(item, GMenu.TreeEntry):
+            elif isinstance(item, CMenu.TreeEntry):
                 layout.append(('Filename', item.get_desktop_file_id()))
-            elif isinstance(item, GMenu.TreeSeparator):
+            elif isinstance(item, CMenu.TreeSeparator):
                 layout.append(('Separator',))
             else:
                 layout.append(item)
@@ -517,14 +517,14 @@ class MenuEditor(object):
 
     def getIndex(self, item, contents):
         index = -1
-        if isinstance(item, GMenu.TreeDirectory):
+        if isinstance(item, CMenu.TreeDirectory):
             for i in range(len(contents)):
                 if type(item) is not type(contents[i]):
                     continue
                 if item.get_menu_id() == contents[i].get_menu_id():
                     index = i
                     return index
-        elif isinstance(item, GMenu.TreeEntry):
+        elif isinstance(item, CMenu.TreeEntry):
             for i in range(len(contents)):
                 if type(item) is not type(contents[i]):
                     continue
diff --git a/files/usr/lib/cinnamon-menu-editor/cme/util.py b/files/usr/lib/cinnamon-menu-editor/cme/util.py
index 459c222..a7a17fd 100644
--- a/files/usr/lib/cinnamon-menu-editor/cme/util.py
+++ b/files/usr/lib/cinnamon-menu-editor/cme/util.py
@@ -20,7 +20,7 @@ import os
 import xml.dom.minidom
 import uuid
 from collections import Sequence
-from gi.repository import Gtk, GdkPixbuf, GMenu, GLib
+from gi.repository import Gtk, GdkPixbuf, CMenu, GLib
 
 DESKTOP_GROUP = GLib.KEY_FILE_DESKTOP_GROUP
 KEY_FILE_FLAGS = GLib.KeyFileFlags.KEEP_COMMENTS | GLib.KeyFileFlags.KEEP_TRANSLATIONS
@@ -126,9 +126,9 @@ def getIcon(item):
     if item is None:
         return None
 
-    if isinstance(item, GMenu.TreeDirectory):
+    if isinstance(item, CMenu.TreeDirectory):
         gicon = item.get_icon()
-    elif isinstance(item, GMenu.TreeEntry):
+    elif isinstance(item, CMenu.TreeEntry):
         app_info = item.get_app_info()
         gicon = app_info.get_icon()
     else:
diff --git a/files/usr/share/applications/cinnamon-menu-editor.desktop b/files/usr/share/applications/cinnamon-menu-editor.desktop
index 831d168..f7abc93 100644
--- a/files/usr/share/applications/cinnamon-menu-editor.desktop
+++ b/files/usr/share/applications/cinnamon-menu-editor.desktop
@@ -3,6 +3,7 @@ Name=Cinnamon Menu Editor
 Comment=Edit the entries of the Cinnamon menu applet
 Exec=cinnamon-menu-editor
 Icon=alacarte
+OnlyShowIn=X-Cinnamon;
 Terminal=false
 Type=Application
 NoDisplay=true
diff --git a/files/usr/share/applications/cinnamon-settings-users.desktop b/files/usr/share/applications/cinnamon-settings-users.desktop
index aa172e2..265a0dd 100644
--- a/files/usr/share/applications/cinnamon-settings-users.desktop
+++ b/files/usr/share/applications/cinnamon-settings-users.desktop
@@ -5,7 +5,7 @@ Terminal=false
 Type=Application
 Categories=System;Settings;
 StartupNotify=false
-OnlyShowIn=GNOME;
+OnlyShowIn=X-Cinnamon;
 Keywords=Preferences;Settings;
 Name=Users and Groups
 Name[af]=Users and Groups
diff --git a/files/usr/share/applications/cinnamon-settings.desktop b/files/usr/share/applications/cinnamon-settings.desktop
index 5593ad8..fb26bfa 100644
--- a/files/usr/share/applications/cinnamon-settings.desktop
+++ b/files/usr/share/applications/cinnamon-settings.desktop
@@ -5,7 +5,7 @@ Terminal=false
 Type=Application
 Categories=Settings;
 StartupNotify=false
-OnlyShowIn=GNOME;
+OnlyShowIn=X-Cinnamon;
 Keywords=Preferences;Settings;
 Name=System Settings
 Name[af]=System Settings
diff --git a/files/usr/share/applications/cinnamon2d.desktop b/files/usr/share/applications/cinnamon2d.desktop
index b13e8a0..57f1805 100644
--- a/files/usr/share/applications/cinnamon2d.desktop
+++ b/files/usr/share/applications/cinnamon2d.desktop
@@ -4,7 +4,7 @@ Name=Cinnamon 2D
 Comment=Window management and application launching
 Exec=/usr/bin/cinnamon2d
 Categories=GNOME;GTK;System;Core;
-OnlyShowIn=GNOME;
+OnlyShowIn=X-Cinnamon;
 NoDisplay=true
 X-GNOME-Autostart-Phase=WindowManager
 X-GNOME-Provides=panel;windowmanager;
diff --git a/files/usr/share/cinnamon-session/sessions/cinnamon.session b/files/usr/share/cinnamon-session/sessions/cinnamon.session
index 3efac68..c4f4ba8 100644
--- a/files/usr/share/cinnamon-session/sessions/cinnamon.session
+++ b/files/usr/share/cinnamon-session/sessions/cinnamon.session
@@ -1,5 +1,5 @@
 [Cinnamon Session]
 Name=Cinnamon
 RequiredComponents=cinnamon;cinnamon-settings-daemon;cinnamon-screensaver;cinnamon-fallback-mount-helper;nemo-autostart;nm-applet;
-DesktopName=GNOME
+DesktopName=X-Cinnamon;
 

diff --git a/files/usr/share/cinnamon-session/sessions/cinnamon2d.session b/files/usr/share/cinnamon-session/sessions/cinnamon2d.session
index 4ed32e9..7f172ad 100644
--- a/files/usr/share/cinnamon-session/sessions/cinnamon2d.session
+++ b/files/usr/share/cinnamon-session/sessions/cinnamon2d.session
@@ -1,5 +1,5 @@
 [Cinnamon Session]
 Name=Cinnamon (Software Rendering)
 RequiredComponents=cinnamon;cinnamon-settings-daemon;cinnamon-screensaver;cinnamon-fallback-mount-helper;nemo-autostart;nm-applet;
-DesktopName=GNOME
+DesktopName=X-Cinnamon;
 

diff --git a/files/usr/share/cinnamon/applets/menu@cinnamon.org/applet.js b/files/usr/share/cinnamon/applets/menu@cinnamon.org/applet.js
index 5956776..317b24e 100644
--- a/files/usr/share/cinnamon/applets/menu@cinnamon.org/applet.js
+++ b/files/usr/share/cinnamon/applets/menu@cinnamon.org/applet.js
@@ -1,6 +1,6 @@
 const Applet = imports.ui.applet;
 const Mainloop = imports.mainloop;
-const GMenu = imports.gi.GMenu;
+const CMenu = imports.gi.CMenu;
 const Lang = imports.lang;
 const Cinnamon = imports.gi.Cinnamon;
 const St = imports.gi.St;
@@ -1484,8 +1484,8 @@ MyApplet.prototype = {
             
             let iter = root.iter();
             let nextType;
-            while ((nextType = iter.next()) != GMenu.TreeItemType.INVALID) {
-                if (nextType == GMenu.TreeItemType.DIRECTORY) {
+            while ((nextType = iter.next()) != CMenu.TreeItemType.INVALID) {
+                if (nextType == CMenu.TreeItemType.DIRECTORY) {
                     let dir = iter.get_directory();
                     if (dir.get_is_nodisplay())
                         continue;
@@ -1656,8 +1656,8 @@ MyApplet.prototype = {
         var has_entries = false;
         var nextType;
         if (!top_dir) top_dir = dir;
-        while ((nextType = iter.next()) != GMenu.TreeItemType.INVALID) {
-            if (nextType == GMenu.TreeItemType.ENTRY) {
+        while ((nextType = iter.next()) != CMenu.TreeItemType.INVALID) {
+            if (nextType == CMenu.TreeItemType.ENTRY) {
                 var entry = iter.get_entry();
                 if (!entry.get_app_info().get_nodisplay()) {
                     has_entries = true;
@@ -1682,7 +1682,7 @@ MyApplet.prototype = {
                         this._applicationsButtonFromApp[app_key].category.push(dir.get_menu_id());
                     }
                 }
-            } else if (nextType == GMenu.TreeItemType.DIRECTORY) {
+            } else if (nextType == CMenu.TreeItemType.DIRECTORY) {
                 let subdir = iter.get_directory();
                 if (this._loadCategory(subdir, top_dir)) {
                     has_entries = true;
diff --git a/generate_additional_files.py b/generate_additional_files.py
index d234d49..2d86d8e 100755
--- a/generate_additional_files.py
+++ b/generate_additional_files.py
@@ -43,7 +43,7 @@ Terminal=false
 Type=Application
 Categories=Settings;
 StartupNotify=false
-OnlyShowIn=GNOME;
+OnlyShowIn=X-Cinnamon;
 Keywords=Preferences;Settings;
 """
 
diff --git a/src/Makefile.am b/src/Makefile.am
index ca5d7e4..06d7f93 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -267,7 +267,7 @@ libcinnamon_la_LIBADD =		\
 libcinnamon_la_CPPFLAGS = $(cinnamon_cflags)
 
 Cinnamon-0.1.gir: libcinnamon.la St-1.0.gir
-Cinnamon_0_1_gir_INCLUDES = Clutter-1.0 ClutterX11-1.0 Meta-Muffin.0 Soup-2.4 GMenu-3.0 NetworkManager-1.0 NMClient-1.0
+Cinnamon_0_1_gir_INCLUDES = Clutter-1.0 ClutterX11-1.0 Meta-Muffin.0 Soup-2.4 CMenu-3.0 NetworkManager-1.0 NMClient-1.0
 Cinnamon_0_1_gir_CFLAGS = $(libcinnamon_la_CPPFLAGS) -I $(srcdir)
 Cinnamon_0_1_gir_LIBS = libcinnamon.la
 Cinnamon_0_1_gir_FILES = $(libcinnamon_la_gir_sources)