[gtk+] Update coding style



commit bce618549483416db4f2a108b6216acd02086872
Author: Matthias Clasen <mclasen redhat com>
Date:   Sat Nov 9 17:28:02 2013 -0500

    Update coding style
    
    gtkplacessidebar.c was looking foreign.

 gtk/gtkplacessidebar.c | 7004 ++++++++++++++++++++++++------------------------
 1 files changed, 3486 insertions(+), 3518 deletions(-)
---
diff --git a/gtk/gtkplacessidebar.c b/gtk/gtkplacessidebar.c
index 487dea9..527b932 100644
--- a/gtk/gtkplacessidebar.c
+++ b/gtk/gtkplacessidebar.c
@@ -1,5 +1,3 @@
-/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
-
 /*
  *  GtkPlacesSidebar - sidebar widget for places in the filesystem
  *
@@ -27,8 +25,6 @@
 
 /* TODO:
  *
- * * Fix instances of "#if DO_NOT_COMPILE"
- *
  * * Fix instances of "#if 0"
  *
  * * Fix FIXMEs
@@ -105,9 +101,7 @@
 #define ICON_CELL_XPAD 6
 #define TIMEOUT_EXPAND 500
 
-#define DO_NOT_COMPILE 0
-
-/* These are used when a destination-side DnD operation is taking place.
+/* These are used when a destination-side DND operation is taking place.
  * Normally, when a file is being hovered directly over a bookmark,
  * we'll be in DROP_STATE_NORMAL.
  *
@@ -121,196 +115,195 @@
  * a new bookmark to be created.
  */
 typedef enum {
-       DROP_STATE_NORMAL,
-       DROP_STATE_NEW_BOOKMARK_FADING_IN,
-       DROP_STATE_NEW_BOOKMARK_ARMED,
-       DROP_STATE_NEW_BOOKMARK_FADING_OUT
+  DROP_STATE_NORMAL,
+  DROP_STATE_NEW_BOOKMARK_FADING_IN,
+  DROP_STATE_NEW_BOOKMARK_ARMED,
+  DROP_STATE_NEW_BOOKMARK_FADING_OUT
 } DropState;
 
 struct _GtkPlacesSidebar {
-       GtkScrolledWindow parent;
+  GtkScrolledWindow parent;
 
-       GtkTreeView             *tree_view;
-       GtkCellRenderer         *eject_icon_cell_renderer;
-       GtkListStore            *store;
-       GtkBookmarksManager     *bookmarks_manager;
-       GVolumeMonitor          *volume_monitor;
-       GtkTrashMonitor         *trash_monitor;
+  GtkTreeView       *tree_view;
+  GtkCellRenderer   *eject_icon_cell_renderer;
+  GtkListStore      *store;
+  GtkBookmarksManager     *bookmarks_manager;
+  GVolumeMonitor    *volume_monitor;
+  GtkTrashMonitor   *trash_monitor;
 
-       gulong trash_monitor_changed_id;
+  gulong trash_monitor_changed_id;
 
-       gboolean devices_header_added;
-       gboolean bookmarks_header_added;
+  gboolean devices_header_added;
+  gboolean bookmarks_header_added;
 
-       /* DnD */
-       GList     *drag_list; /* list of GFile */
-       int       drag_data_info;
+  /* DND */
+  GList     *drag_list; /* list of GFile */
+  gint       drag_data_info;
 
-       /* volume mounting - delayed open process */
-       GtkPlacesOpenFlags go_to_after_mount_open_flags;
+  /* volume mounting - delayed open process */
+  GtkPlacesOpenFlags go_to_after_mount_open_flags;
 
-       GtkWidget *popup_menu;
-       GSList *shortcuts;
+  GtkWidget *popup_menu;
+  GSList *shortcuts;
 
-       GDBusProxy *hostnamed_proxy;
-       GCancellable *hostnamed_cancellable;
-       char *hostname;
+  GDBusProxy *hostnamed_proxy;
+  GCancellable *hostnamed_cancellable;
+  gchar *hostname;
 
-       GtkPlacesOpenFlags open_flags;
+  GtkPlacesOpenFlags open_flags;
 
-       DropState drop_state;
-       int new_bookmark_index;
-       guint drag_leave_timeout_id;
-       char *drop_target_uri;
-       guint switch_location_timer;
+  DropState drop_state;
+  gint new_bookmark_index;
+  guint drag_leave_timeout_id;
+  gchar *drop_target_uri;
+  guint switch_location_timer;
 
-       guint mounting : 1;
-       guint  drag_data_received : 1;
-       guint drop_occured : 1;
-       guint show_desktop : 1;
-       guint show_connect_to_server : 1;
+  guint mounting               : 1;
+  guint  drag_data_received    : 1;
+  guint drop_occured           : 1;
+  guint show_desktop           : 1;
+  guint show_connect_to_server : 1;
 };
 
 struct _GtkPlacesSidebarClass {
-       GtkScrolledWindowClass parent;
-
-       void (* open_location)         (GtkPlacesSidebar *sidebar,
-                                       GFile            *location,
-                                       GtkPlacesOpenFlags open_flags);
-       void (* populate_popup)        (GtkPlacesSidebar *sidebar,
-                                       GtkMenu          *menu,
-                                       GFile            *selected_item,
-                                       GVolume          *selected_volume);
-       void (* show_error_message)    (GtkPlacesSidebar *sidebar,
-                                       const char       *primary,
-                                       const char       *secondary);
-       void (* show_connect_to_server) (GtkPlacesSidebar *sidebar);
-       GdkDragAction (* drag_action_requested) (GtkPlacesSidebar *sidebar,
-                                                GdkDragContext   *context,
-                                                GFile            *dest_file,
-                                                GList            *source_file_list);
-       GdkDragAction (* drag_action_ask) (GtkPlacesSidebar *sidebar,
-                                          GdkDragAction     actions);
-       void (* drag_perform_drop) (GtkPlacesSidebar     *sidebar,
-                                   GFile                *dest_file,
-                                   GList                *source_file_list,
-                                   GdkDragAction         action);
+  GtkScrolledWindowClass parent;
+
+  void    (* open_location)          (GtkPlacesSidebar   *sidebar,
+                                      GFile              *location,
+                                      GtkPlacesOpenFlags  open_flags);
+  void    (* populate_popup)         (GtkPlacesSidebar   *sidebar,
+                                      GtkMenu            *menu,
+                                      GFile              *selected_item,
+                                      GVolume            *selected_volume);
+  void    (* show_error_message)     (GtkPlacesSidebar   *sidebar,
+                                      const gchar        *primary,
+                                      const gchar        *secondary);
+  void    (* show_connect_to_server) (GtkPlacesSidebar   *sidebar);
+  GdkDragAction (* drag_action_requested)  (GtkPlacesSidebar   *sidebar,
+                                      GdkDragContext     *context,
+                                      GFile              *dest_file,
+                                      GList              *source_file_list);
+  GdkDragAction (* drag_action_ask)  (GtkPlacesSidebar   *sidebar,
+                                      GdkDragAction       actions);
+  void    (* drag_perform_drop)      (GtkPlacesSidebar   *sidebar,
+                                      GFile              *dest_file,
+                                      GList              *source_file_list,
+                                      GdkDragAction       action);
 };
 
 enum {
-       PLACES_SIDEBAR_COLUMN_ROW_TYPE,
-       PLACES_SIDEBAR_COLUMN_URI,
-       PLACES_SIDEBAR_COLUMN_DRIVE,
-       PLACES_SIDEBAR_COLUMN_VOLUME,
-       PLACES_SIDEBAR_COLUMN_MOUNT,
-       PLACES_SIDEBAR_COLUMN_NAME,
-       PLACES_SIDEBAR_COLUMN_GICON,
-       PLACES_SIDEBAR_COLUMN_INDEX,
-       PLACES_SIDEBAR_COLUMN_EJECT,
-       PLACES_SIDEBAR_COLUMN_NO_EJECT,
-       PLACES_SIDEBAR_COLUMN_BOOKMARK,
-       PLACES_SIDEBAR_COLUMN_TOOLTIP,
-       PLACES_SIDEBAR_COLUMN_SECTION_TYPE,
-       PLACES_SIDEBAR_COLUMN_HEADING_TEXT,
-
-       PLACES_SIDEBAR_COLUMN_COUNT
+  PLACES_SIDEBAR_COLUMN_ROW_TYPE,
+  PLACES_SIDEBAR_COLUMN_URI,
+  PLACES_SIDEBAR_COLUMN_DRIVE,
+  PLACES_SIDEBAR_COLUMN_VOLUME,
+  PLACES_SIDEBAR_COLUMN_MOUNT,
+  PLACES_SIDEBAR_COLUMN_NAME,
+  PLACES_SIDEBAR_COLUMN_GICON,
+  PLACES_SIDEBAR_COLUMN_INDEX,
+  PLACES_SIDEBAR_COLUMN_EJECT,
+  PLACES_SIDEBAR_COLUMN_NO_EJECT,
+  PLACES_SIDEBAR_COLUMN_BOOKMARK,
+  PLACES_SIDEBAR_COLUMN_TOOLTIP,
+  PLACES_SIDEBAR_COLUMN_SECTION_TYPE,
+  PLACES_SIDEBAR_COLUMN_HEADING_TEXT,
+  PLACES_SIDEBAR_COLUMN_COUNT
 };
 
 typedef enum {
-       PLACES_BUILT_IN,
-       PLACES_XDG_DIR,
-       PLACES_MOUNTED_VOLUME,
-       PLACES_BOOKMARK,
-       PLACES_HEADING,
-       PLACES_CONNECT_TO_SERVER,
-       PLACES_DROP_FEEDBACK
+  PLACES_BUILT_IN,
+  PLACES_XDG_DIR,
+  PLACES_MOUNTED_VOLUME,
+  PLACES_BOOKMARK,
+  PLACES_HEADING,
+  PLACES_CONNECT_TO_SERVER,
+  PLACES_DROP_FEEDBACK
 } PlaceType;
 
 typedef enum {
-       SECTION_DEVICES,
-       SECTION_BOOKMARKS,
-       SECTION_COMPUTER,
-       SECTION_NETWORK,
+  SECTION_DEVICES,
+  SECTION_BOOKMARKS,
+  SECTION_COMPUTER,
+  SECTION_NETWORK
 } SectionType;
 
 enum {
-       OPEN_LOCATION,
-       POPULATE_POPUP,
-       SHOW_ERROR_MESSAGE,
-       SHOW_CONNECT_TO_SERVER,
-       DRAG_ACTION_REQUESTED,
-       DRAG_ACTION_ASK,
-       DRAG_PERFORM_DROP,
-       LAST_SIGNAL,
+  OPEN_LOCATION,
+  POPULATE_POPUP,
+  SHOW_ERROR_MESSAGE,
+  SHOW_CONNECT_TO_SERVER,
+  DRAG_ACTION_REQUESTED,
+  DRAG_ACTION_ASK,
+  DRAG_PERFORM_DROP,
+  LAST_SIGNAL
 };
 
 enum {
-       PROP_LOCATION = 1,
-       PROP_OPEN_FLAGS,
-       PROP_SHOW_DESKTOP,
-       PROP_SHOW_CONNECT_TO_SERVER,
-       NUM_PROPERTIES,
+  PROP_LOCATION = 1,
+  PROP_OPEN_FLAGS,
+  PROP_SHOW_DESKTOP,
+  PROP_SHOW_CONNECT_TO_SERVER,
+  NUM_PROPERTIES
 };
 
 /* Names for themed icons */
-#define ICON_NAME_HOME          "user-home-symbolic"
-#define ICON_NAME_DESKTOP       "user-desktop"
-#define ICON_NAME_FILESYSTEM    "drive-harddisk-symbolic"
-#define ICON_NAME_EJECT                 "media-eject-symbolic"
-#define ICON_NAME_NETWORK       "network-workgroup-symbolic"
+#define ICON_NAME_HOME     "user-home-symbolic"
+#define ICON_NAME_DESKTOP  "user-desktop"
+#define ICON_NAME_FILESYSTEM     "drive-harddisk-symbolic"
+#define ICON_NAME_EJECT    "media-eject-symbolic"
+#define ICON_NAME_NETWORK  "network-workgroup-symbolic"
 #define ICON_NAME_NETWORK_SERVER "network-server-symbolic"
 
-#define ICON_NAME_FOLDER_DESKTOP       "user-desktop"
-#define ICON_NAME_FOLDER_DOCUMENTS     "folder-documents-symbolic"
-#define ICON_NAME_FOLDER_DOWNLOAD      "folder-download-symbolic"
-#define ICON_NAME_FOLDER_MUSIC         "folder-music-symbolic"
-#define ICON_NAME_FOLDER_PICTURES      "folder-pictures-symbolic"
-#define ICON_NAME_FOLDER_PUBLIC_SHARE  "folder-publicshare-symbolic"
-#define ICON_NAME_FOLDER_TEMPLATES     "folder-templates-symbolic"
-#define ICON_NAME_FOLDER_VIDEOS                "folder-videos-symbolic"
-#define ICON_NAME_FOLDER_SAVED_SEARCH  "folder-saved-search-symbolic"
+#define ICON_NAME_FOLDER_DESKTOP  "user-desktop"
+#define ICON_NAME_FOLDER_DOCUMENTS      "folder-documents-symbolic"
+#define ICON_NAME_FOLDER_DOWNLOAD       "folder-download-symbolic"
+#define ICON_NAME_FOLDER_MUSIC    "folder-music-symbolic"
+#define ICON_NAME_FOLDER_PICTURES       "folder-pictures-symbolic"
+#define ICON_NAME_FOLDER_PUBLIC_SHARE   "folder-publicshare-symbolic"
+#define ICON_NAME_FOLDER_TEMPLATES      "folder-templates-symbolic"
+#define ICON_NAME_FOLDER_VIDEOS   "folder-videos-symbolic"
+#define ICON_NAME_FOLDER_SAVED_SEARCH   "folder-saved-search-symbolic"
 
 static guint places_sidebar_signals [LAST_SIGNAL] = { 0 };
 static GParamSpec *properties[NUM_PROPERTIES] = { NULL, };
 
-static void  open_selected_bookmark                    (GtkPlacesSidebar        *sidebar,
-                                                       GtkTreeModel            *model,
-                                                       GtkTreeIter             *iter,
-                                                       GtkPlacesOpenFlags       open_flags);
-static gboolean eject_or_unmount_bookmark              (GtkPlacesSidebar *sidebar,
-                                                       GtkTreePath *path);
-static gboolean eject_or_unmount_selection             (GtkPlacesSidebar *sidebar);
-static void  check_unmount_and_eject                   (GMount *mount,
-                                                       GVolume *volume,
-                                                       GDrive *drive,
-                                                       gboolean *show_unmount,
-                                                       gboolean *show_eject);
+static void  open_selected_bookmark        (GtkPlacesSidebar   *sidebar,
+                                            GtkTreeModel       *model,
+                                            GtkTreeIter        *iter,
+                                            GtkPlacesOpenFlags  open_flags);
+static gboolean eject_or_unmount_bookmark  (GtkPlacesSidebar   *sidebar,
+                                            GtkTreePath        *path);
+static gboolean eject_or_unmount_selection (GtkPlacesSidebar   *sidebar);
+static void  check_unmount_and_eject       (GMount             *mount,
+                                            GVolume            *volume,
+                                            GDrive             *drive,
+                                            gboolean           *show_unmount,
+                                            gboolean           *show_eject);
 
 /* Identifiers for target types */
 enum {
-       GTK_TREE_MODEL_ROW,
-       TEXT_URI_LIST
+  GTK_TREE_MODEL_ROW,
+  TEXT_URI_LIST
 };
 
 /* Target types for dragging from the shortcuts list */
 static const GtkTargetEntry dnd_source_targets[] = {
-       { "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, GTK_TREE_MODEL_ROW }
+  { "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, GTK_TREE_MODEL_ROW }
 };
 
 /* Target types for dropping into the shortcuts list */
 static const GtkTargetEntry dnd_drop_targets [] = {
-       { "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, GTK_TREE_MODEL_ROW }
+  { "GTK_TREE_MODEL_ROW", GTK_TARGET_SAME_WIDGET, GTK_TREE_MODEL_ROW }
 };
 
 /* Drag and drop interface declarations */
 typedef struct {
-       GtkListStore parent;
+  GtkListStore parent;
 
-       GtkPlacesSidebar *sidebar;
+  GtkPlacesSidebar *sidebar;
 } ShortcutsModel;
 
 typedef struct {
-       GtkListStoreClass parent_class;
+  GtkListStoreClass parent_class;
 } ShortcutsModelClass;
 
 #define SHORTCUTS_MODEL_TYPE (shortcuts_model_get_type ())
@@ -319,217 +312,213 @@ typedef struct {
 static GType shortcuts_model_get_type (void);
 static void shortcuts_model_drag_source_iface_init (GtkTreeDragSourceIface *iface);
 
-G_DEFINE_TYPE_WITH_CODE (ShortcutsModel,
-                        shortcuts_model,
-                        GTK_TYPE_LIST_STORE,
-                        G_IMPLEMENT_INTERFACE (GTK_TYPE_TREE_DRAG_SOURCE,
-                                               shortcuts_model_drag_source_iface_init));
+G_DEFINE_TYPE_WITH_CODE (ShortcutsModel, shortcuts_model, GTK_TYPE_LIST_STORE,
+                         G_IMPLEMENT_INTERFACE (GTK_TYPE_TREE_DRAG_SOURCE,
+                                                shortcuts_model_drag_source_iface_init));
 
 static GtkListStore *shortcuts_model_new (GtkPlacesSidebar *sidebar);
 
 G_DEFINE_TYPE (GtkPlacesSidebar, gtk_places_sidebar, GTK_TYPE_SCROLLED_WINDOW);
 
 static void
-emit_open_location (GtkPlacesSidebar *sidebar, GFile *location, GtkPlacesOpenFlags open_flags)
+emit_open_location (GtkPlacesSidebar   *sidebar,
+                    GFile              *location,
+                    GtkPlacesOpenFlags  open_flags)
 {
-       if ((open_flags & sidebar->open_flags) == 0)
-               open_flags = GTK_PLACES_OPEN_NORMAL;
+  if ((open_flags & sidebar->open_flags) == 0)
+    open_flags = GTK_PLACES_OPEN_NORMAL;
 
-       g_signal_emit (sidebar, places_sidebar_signals[OPEN_LOCATION], 0,
-                      location, open_flags);
+  g_signal_emit (sidebar, places_sidebar_signals[OPEN_LOCATION], 0,
+                 location, open_flags);
 }
 
 static void
-emit_populate_popup (GtkPlacesSidebar *sidebar, GtkMenu *menu, GFile *selected_item, GVolume 
*selected_volume)
+emit_populate_popup (GtkPlacesSidebar *sidebar, 
+                     GtkMenu          *menu,
+                     GFile            *selected_item,
+                     GVolume          *selected_volume)
 {
-       g_signal_emit (sidebar, places_sidebar_signals[POPULATE_POPUP], 0,
-                      menu, selected_item, selected_volume);
+  g_signal_emit (sidebar, places_sidebar_signals[POPULATE_POPUP], 0,
+                 menu, selected_item, selected_volume);
 }
 
 static void
-emit_show_error_message (GtkPlacesSidebar *sidebar, const char *primary, const char *secondary)
+emit_show_error_message (GtkPlacesSidebar *sidebar,
+                         const gchar      *primary,
+                         const gchar      *secondary)
 {
-       g_signal_emit (sidebar, places_sidebar_signals[SHOW_ERROR_MESSAGE], 0,
-                      primary, secondary);
+  g_signal_emit (sidebar, places_sidebar_signals[SHOW_ERROR_MESSAGE], 0,
+                 primary, secondary);
 }
 
 static void
 emit_show_connect_to_server (GtkPlacesSidebar *sidebar)
 {
-       g_signal_emit (sidebar, places_sidebar_signals[SHOW_CONNECT_TO_SERVER], 0);
+  g_signal_emit (sidebar, places_sidebar_signals[SHOW_CONNECT_TO_SERVER], 0);
 }
 
 static GdkDragAction
 emit_drag_action_requested (GtkPlacesSidebar *sidebar,
-                           GdkDragContext *context,
-                           GFile *dest_file,
-                           GList *source_file_list)
+                            GdkDragContext   *context,
+                            GFile            *dest_file,
+                            GList            *source_file_list)
 {
-       GdkDragAction ret_action;
+  GdkDragAction ret_action = 0;
 
-       ret_action = 0;
+  g_signal_emit (sidebar, places_sidebar_signals[DRAG_ACTION_REQUESTED], 0,
+                 context, dest_file, source_file_list, &ret_action);
 
-       g_signal_emit (sidebar, places_sidebar_signals[DRAG_ACTION_REQUESTED], 0,
-                      context,
-                      dest_file,
-                      source_file_list,
-                      &ret_action);
-
-       return ret_action;
+  return ret_action;
 }
 
 static GdkDragAction
 emit_drag_action_ask (GtkPlacesSidebar *sidebar,
-                     GdkDragAction actions)
+                      GdkDragAction     actions)
 {
-       GdkDragAction ret_action;
+  GdkDragAction ret_action = 0;
 
-       ret_action = 0;
+  g_signal_emit (sidebar, places_sidebar_signals[DRAG_ACTION_ASK], 0,
+                 actions, &ret_action);
 
-       g_signal_emit (sidebar, places_sidebar_signals[DRAG_ACTION_ASK], 0,
-                      actions,
-                      &ret_action);
-       return ret_action;
+  return ret_action;
 }
 
 static void
 emit_drag_perform_drop (GtkPlacesSidebar *sidebar,
-                       GFile *dest_file,
-                       GList *source_file_list,
-                       GdkDragAction action)
+                        GFile            *dest_file,
+                        GList            *source_file_list,
+                        GdkDragAction     action)
 {
-       g_signal_emit (sidebar, places_sidebar_signals[DRAG_PERFORM_DROP], 0,
-                      dest_file,
-                      source_file_list,
-                      action);
+  g_signal_emit (sidebar, places_sidebar_signals[DRAG_PERFORM_DROP], 0,
+                 dest_file, source_file_list, action);
 }
 
 static gint
 get_icon_size (GtkPlacesSidebar *sidebar)
 {
-       gint width, height;
+  gint width, height;
 
-       if (gtk_icon_size_lookup (GTK_ICON_SIZE_MENU, &width, &height))
-               return MAX (width, height);
-       else
-               return 16;
+  if (gtk_icon_size_lookup (GTK_ICON_SIZE_MENU, &width, &height))
+    return MAX (width, height);
+  else
+    return 16;
 }
 
 static GtkTreeIter
 add_heading (GtkPlacesSidebar *sidebar,
-            SectionType section_type,
-            const gchar *title)
+             SectionType       section_type,
+             const gchar      *title)
 {
-       GtkTreeIter iter;
+  GtkTreeIter iter;
 
-       gtk_list_store_append (sidebar->store, &iter);
-       gtk_list_store_set (sidebar->store, &iter,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, PLACES_HEADING,
-                           PLACES_SIDEBAR_COLUMN_SECTION_TYPE, section_type,
-                           PLACES_SIDEBAR_COLUMN_HEADING_TEXT, title,
-                           PLACES_SIDEBAR_COLUMN_EJECT, FALSE,
-                           PLACES_SIDEBAR_COLUMN_NO_EJECT, TRUE,
-                           -1);
+  gtk_list_store_append (sidebar->store, &iter);
+  gtk_list_store_set (sidebar->store, &iter,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, PLACES_HEADING,
+                      PLACES_SIDEBAR_COLUMN_SECTION_TYPE, section_type,
+                      PLACES_SIDEBAR_COLUMN_HEADING_TEXT, title,
+                      PLACES_SIDEBAR_COLUMN_EJECT, FALSE,
+                      PLACES_SIDEBAR_COLUMN_NO_EJECT, TRUE,
+                      -1);
 
-       return iter;
+  return iter;
 }
 
 static void
 check_heading_for_section (GtkPlacesSidebar *sidebar,
-                          SectionType section_type)
-{
-       switch (section_type) {
-       case SECTION_DEVICES:
-               if (!sidebar->devices_header_added) {
-                       add_heading (sidebar, SECTION_DEVICES,
-                                    _("Devices"));
-                       sidebar->devices_header_added = TRUE;
-               }
-
-               break;
-       case SECTION_BOOKMARKS:
-               if (!sidebar->bookmarks_header_added) {
-                       add_heading (sidebar, SECTION_BOOKMARKS,
-                                    _("Bookmarks"));
-                       sidebar->bookmarks_header_added = TRUE;
-               }
-
-               break;
-       default:
-               break;
-       }
+                           SectionType       section_type)
+{
+  switch (section_type)
+    {
+    case SECTION_DEVICES:
+      if (!sidebar->devices_header_added)
+        {
+          add_heading (sidebar, SECTION_DEVICES, _("Devices"));
+          sidebar->devices_header_added = TRUE;
+        }
+      break;
+
+    case SECTION_BOOKMARKS:
+      if (!sidebar->bookmarks_header_added)
+        {
+          add_heading (sidebar, SECTION_BOOKMARKS, _("Bookmarks"));
+          sidebar->bookmarks_header_added = TRUE;
+        }
+      break;
+
+    default:
+      break;
+  }
 }
 
 static void
 add_place (GtkPlacesSidebar *sidebar,
-          PlaceType place_type,
-          SectionType section_type,
-          const char *name,
-          GIcon *icon,
-          const char *uri,
-          GDrive *drive,
-          GVolume *volume,
-          GMount *mount,
-          const int index,
-          const char *tooltip)
-{
-       GtkTreeIter           iter;
-       gboolean show_eject, show_unmount;
-       gboolean show_eject_button;
-
-       check_heading_for_section (sidebar, section_type);
-
-       check_unmount_and_eject (mount, volume, drive,
-                                &show_unmount, &show_eject);
-
-       if (show_unmount || show_eject) {
-               g_assert (place_type != PLACES_BOOKMARK);
-       }
-
-       if (mount == NULL) {
-               show_eject_button = FALSE;
-       } else {
-               show_eject_button = (show_unmount || show_eject);
-       }
-
-       gtk_list_store_append (sidebar->store, &iter);
-       gtk_list_store_set (sidebar->store, &iter,
-                           PLACES_SIDEBAR_COLUMN_GICON, icon,
-                           PLACES_SIDEBAR_COLUMN_NAME, name,
-                           PLACES_SIDEBAR_COLUMN_URI, uri,
-                           PLACES_SIDEBAR_COLUMN_DRIVE, drive,
-                           PLACES_SIDEBAR_COLUMN_VOLUME, volume,
-                           PLACES_SIDEBAR_COLUMN_MOUNT, mount,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, place_type,
-                           PLACES_SIDEBAR_COLUMN_INDEX, index,
-                           PLACES_SIDEBAR_COLUMN_EJECT, show_eject_button,
-                           PLACES_SIDEBAR_COLUMN_NO_EJECT, !show_eject_button,
-                           PLACES_SIDEBAR_COLUMN_BOOKMARK, place_type != PLACES_BOOKMARK,
-                           PLACES_SIDEBAR_COLUMN_TOOLTIP, tooltip,
-                           PLACES_SIDEBAR_COLUMN_SECTION_TYPE, section_type,
-                           -1);
+           PlaceType         place_type,
+           SectionType       section_type,
+           const gchar      *name,
+           GIcon            *icon,
+           const gchar      *uri,
+           GDrive           *drive,
+           GVolume          *volume,
+           GMount           *mount,
+           const gint        index,
+           const gchar      *tooltip)
+{
+  GtkTreeIter iter;
+  gboolean show_eject, show_unmount;
+  gboolean show_eject_button;
+
+  check_heading_for_section (sidebar, section_type);
+
+  check_unmount_and_eject (mount, volume, drive,
+                           &show_unmount, &show_eject);
+
+  if (show_unmount || show_eject)
+    g_assert (place_type != PLACES_BOOKMARK);
+
+  if (mount == NULL)
+    show_eject_button = FALSE;
+  else
+    show_eject_button = (show_unmount || show_eject);
+
+  gtk_list_store_append (sidebar->store, &iter);
+  gtk_list_store_set (sidebar->store, &iter,
+                      PLACES_SIDEBAR_COLUMN_GICON, icon,
+                      PLACES_SIDEBAR_COLUMN_NAME, name,
+                      PLACES_SIDEBAR_COLUMN_URI, uri,
+                      PLACES_SIDEBAR_COLUMN_DRIVE, drive,
+                      PLACES_SIDEBAR_COLUMN_VOLUME, volume,
+                      PLACES_SIDEBAR_COLUMN_MOUNT, mount,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, place_type,
+                      PLACES_SIDEBAR_COLUMN_INDEX, index,
+                      PLACES_SIDEBAR_COLUMN_EJECT, show_eject_button,
+                      PLACES_SIDEBAR_COLUMN_NO_EJECT, !show_eject_button,
+                      PLACES_SIDEBAR_COLUMN_BOOKMARK, place_type != PLACES_BOOKMARK,
+                      PLACES_SIDEBAR_COLUMN_TOOLTIP, tooltip,
+                      PLACES_SIDEBAR_COLUMN_SECTION_TYPE, section_type,
+                      -1);
 }
 
 static GIcon *
 special_directory_get_gicon (GUserDirectory directory)
 {
-#define ICON_CASE(x)                           \
-       case G_USER_DIRECTORY_ ## x:                                    \
-               return g_themed_icon_new_with_default_fallbacks (ICON_NAME_FOLDER_ ## x);
+#define ICON_CASE(x)                      \
+  case G_USER_DIRECTORY_ ## x:                                    \
+          return g_themed_icon_new_with_default_fallbacks (ICON_NAME_FOLDER_ ## x);
 
-       switch (directory) {
+  switch (directory)
+    {
 
-               ICON_CASE (DOCUMENTS);
-               ICON_CASE (DOWNLOAD);
-               ICON_CASE (MUSIC);
-               ICON_CASE (PICTURES);
-               ICON_CASE (PUBLIC_SHARE);
-               ICON_CASE (TEMPLATES);
-               ICON_CASE (VIDEOS);
+    ICON_CASE (DOCUMENTS);
+    ICON_CASE (DOWNLOAD);
+    ICON_CASE (MUSIC);
+    ICON_CASE (PICTURES);
+    ICON_CASE (PUBLIC_SHARE);
+    ICON_CASE (TEMPLATES);
+    ICON_CASE (VIDEOS);
 
-       default:
-               return g_themed_icon_new_with_default_fallbacks ("folder-symbolic");
-       }
+    default:
+      return g_themed_icon_new_with_default_fallbacks ("folder-symbolic");
+    }
 
 #undef ICON_CASE
 }
@@ -537,3678 +526,3637 @@ special_directory_get_gicon (GUserDirectory directory)
 static gboolean
 recent_files_setting_is_enabled (GtkPlacesSidebar *sidebar)
 {
-       GtkSettings *settings;
-       gboolean enabled;
+  GtkSettings *settings;
+  gboolean enabled;
+
+  if (gtk_widget_has_screen (GTK_WIDGET (sidebar)))
+    settings = gtk_settings_get_for_screen (gtk_widget_get_screen (GTK_WIDGET (sidebar)));
+  else
+    settings = gtk_settings_get_default ();
 
-       if (gtk_widget_has_screen (GTK_WIDGET (sidebar)))
-               settings = gtk_settings_get_for_screen (gtk_widget_get_screen (GTK_WIDGET (sidebar)));
-       else
-               settings = gtk_settings_get_default ();
+  g_object_get (settings, "gtk-recent-files-enabled", &enabled, NULL);
 
-       g_object_get (settings, "gtk-recent-files-enabled", &enabled, NULL);
-       return enabled;
+  return enabled;
 }
 
 static gboolean
 recent_scheme_is_supported (void)
 {
-       const char * const *supported;
-       int i;
+  const gchar * const *supported;
+  gint i;
 
-       supported = g_vfs_get_supported_uri_schemes (g_vfs_get_default ());
-       if (!supported) {
-               return FALSE;
-       }
+  supported = g_vfs_get_supported_uri_schemes (g_vfs_get_default ());
+  if (supported == NULL)
+    return FALSE;
 
-       for (i = 0; supported[i] != NULL; i++) {
-               if (strcmp ("recent", supported[i]) == 0) {
-                       return TRUE;
-               }
-       }
-       return FALSE;
+  for (i = 0; supported[i] != NULL; i++)
+    {
+      if (strcmp ("recent", supported[i]) == 0)
+        return TRUE;
+    }
+
+  return FALSE;
 }
 
 static gboolean
 should_show_recent (GtkPlacesSidebar *sidebar)
 {
-       return recent_files_setting_is_enabled (sidebar) && recent_scheme_is_supported ();
+  return recent_files_setting_is_enabled (sidebar) && recent_scheme_is_supported ();
 }
 
 static void
 add_special_dirs (GtkPlacesSidebar *sidebar)
 {
-       GList *dirs;
-       int index;
-
-       dirs = NULL;
-       for (index = 0; index < G_USER_N_DIRECTORIES; index++) {
-               const char *path;
-               GFile *root;
-               GIcon *icon;
-               char *name;
-               char *mount_uri;
-               char *tooltip;
-
-               if (!_gtk_bookmarks_manager_get_is_xdg_dir_builtin (index)) {
-                       continue;
-               }
-
-               path = g_get_user_special_dir (index);
-
-               /* xdg resets special dirs to the home directory in case
-                * it's not finiding what it expects. We don't want the home
-                * to be added multiple times in that weird configuration.
-                */
-               if (path == NULL
-                   || g_strcmp0 (path, g_get_home_dir ()) == 0
-                   || g_list_find_custom (dirs, path, (GCompareFunc) g_strcmp0) != NULL) {
-                       continue;
-               }
-
-               root = g_file_new_for_path (path);
-
-               name = _gtk_bookmarks_manager_get_bookmark_label (sidebar->bookmarks_manager, root);
-               if (!name) {
-                       name = g_file_get_basename (root);
-               }
-
-               icon = special_directory_get_gicon (index);
-               mount_uri = g_file_get_uri (root);
-               tooltip = g_file_get_parse_name (root);
-
-               add_place (sidebar, PLACES_XDG_DIR,
-                          SECTION_COMPUTER,
-                          name, icon, mount_uri,
-                          NULL, NULL, NULL, 0,
-                          tooltip);
-               g_free (name);
-               g_object_unref (root);
-               g_object_unref (icon);
-               g_free (mount_uri);
-               g_free (tooltip);
-
-               dirs = g_list_prepend (dirs, (char *)path);
-       }
-
-       g_list_free (dirs);
-}
-
-static char *
+  GList *dirs;
+  gint index;
+
+  dirs = NULL;
+  for (index = 0; index < G_USER_N_DIRECTORIES; index++)
+    {
+      const gchar *path;
+      GFile *root;
+      GIcon *icon;
+      gchar *name;
+      gchar *mount_uri;
+      gchar *tooltip;
+
+      if (!_gtk_bookmarks_manager_get_is_xdg_dir_builtin (index))
+        continue;
+
+      path = g_get_user_special_dir (index);
+
+      /* XDG resets special dirs to the home directory in case
+       * it's not finiding what it expects. We don't want the home
+       * to be added multiple times in that weird configuration.
+       */
+      if (path == NULL ||
+          g_strcmp0 (path, g_get_home_dir ()) == 0 ||
+          g_list_find_custom (dirs, path, (GCompareFunc) g_strcmp0) != NULL)
+        continue;
+          
+
+      root = g_file_new_for_path (path);
+
+      name = _gtk_bookmarks_manager_get_bookmark_label (sidebar->bookmarks_manager, root);
+      if (!name)
+        name = g_file_get_basename (root);
+
+      icon = special_directory_get_gicon (index);
+      mount_uri = g_file_get_uri (root);
+      tooltip = g_file_get_parse_name (root);
+
+      add_place (sidebar, PLACES_XDG_DIR,
+                 SECTION_COMPUTER,
+                 name, icon, mount_uri,
+                 NULL, NULL, NULL, 0,
+                 tooltip);
+      g_free (name);
+      g_object_unref (root);
+      g_object_unref (icon);
+      g_free (mount_uri);
+      g_free (tooltip);
+
+      dirs = g_list_prepend (dirs, (gchar *)path);
+    }
+
+  g_list_free (dirs);
+}
+
+static gchar *
 get_home_directory_uri (void)
 {
-       const char *home;
+  const gchar *home;
 
-       home = g_get_home_dir ();
-       if (!home)
-               return NULL;
+  home = g_get_home_dir ();
+  if (!home)
+    return NULL;
 
-       return g_strconcat ("file://", home, NULL);
+  return g_strconcat ("file://", home, NULL);
 }
 
-static char *
+static gchar *
 get_desktop_directory_uri (void)
 {
-       const char *name;
+  const gchar *name;
+
+  name = g_get_user_special_dir (G_USER_DIRECTORY_DESKTOP);
+
+  /* "To disable a directory, point it to the homedir."
+   * See http://freedesktop.org/wiki/Software/xdg-user-dirs
+   */
+  if (g_strcmp0 (name, g_get_home_dir ()) == 0)
+    return NULL;
 
-       name = g_get_user_special_dir (G_USER_DIRECTORY_DESKTOP);
-       /* "To disable a directory, point it to the homedir."
-        * See http://freedesktop.org/wiki/Software/xdg-user-dirs
-        **/
-       if (!g_strcmp0 (name, g_get_home_dir ())) {
-               return NULL;
-       } else {
-               return g_strconcat ("file://", name, NULL);
-       }
+  return g_strconcat ("file://", name, NULL);
 }
 
 static void
 add_application_shortcuts (GtkPlacesSidebar *sidebar)
 {
-       GSList *l;
+  GSList *l;
 
-       for (l = sidebar->shortcuts; l; l = l->next) {
-               GFile *file;
-               GFileInfo *info;
+  for (l = sidebar->shortcuts; l; l = l->next)
+    {
+      GFile *file;
+      GFileInfo *info;
 
-               file = G_FILE (l->data);
+      file = G_FILE (l->data);
 
-               /* FIXME: we are getting file info synchronously.  We may want to do it async at some point. 
*/
-               info = g_file_query_info (file,
-                                         "standard::display-name,standard::symbolic-icon",
-                                         G_FILE_QUERY_INFO_NONE,
-                                         NULL,
-                                         NULL); /* NULL-GError */
+      /* FIXME: we are getting file info synchronously.  We may want to do it async at some point. */
+      info = g_file_query_info (file,
+                                "standard::display-name,standard::symbolic-icon",
+                                G_FILE_QUERY_INFO_NONE,
+                                NULL,
+                                NULL); /* NULL-GError */
 
-               if (info) {
-                       char *uri;
-                       char *tooltip;
-                       const char *name;
-                       GIcon *icon;
+      if (info)
+        {
+          gchar *uri;
+          gchar *tooltip;
+          const gchar *name;
+          GIcon *icon;
 
-                       name = g_file_info_get_display_name (info);
-                       icon = g_file_info_get_symbolic_icon (info);
+          name = g_file_info_get_display_name (info);
+          icon = g_file_info_get_symbolic_icon (info);
+          uri = g_file_get_uri (file);
+          tooltip = g_file_get_parse_name (file);
 
-                       uri = g_file_get_uri (file);
-                       tooltip = g_file_get_parse_name (file);
+          add_place (sidebar, PLACES_BUILT_IN,
+                     SECTION_COMPUTER,
+                     name, icon, uri,
+                     NULL, NULL, NULL, 0,
+                     tooltip);
 
-                       add_place (sidebar, PLACES_BUILT_IN,
-                                  SECTION_COMPUTER,
-                                  name, icon, uri,
-                                  NULL, NULL, NULL, 0,
-                                  tooltip);
+          g_free (uri);
+          g_free (tooltip);
 
-                       g_free (uri);
-                       g_free (tooltip);
-
-                       g_object_unref (info);
-               }
-       }
+          g_object_unref (info);
+        }
+    }
 }
 
 static gboolean
 get_selected_iter (GtkPlacesSidebar *sidebar,
-                  GtkTreeIter *iter)
+                   GtkTreeIter      *iter)
 {
-       GtkTreeSelection *selection;
+  GtkTreeSelection *selection;
 
-       selection = gtk_tree_view_get_selection (sidebar->tree_view);
+  selection = gtk_tree_view_get_selection (sidebar->tree_view);
 
-       return gtk_tree_selection_get_selected (selection, NULL, iter);
+  return gtk_tree_selection_get_selected (selection, NULL, iter);
 }
 
 static void
 update_places (GtkPlacesSidebar *sidebar)
 {
-       GtkTreeIter iter;
-       GVolumeMonitor *volume_monitor;
-       GList *mounts, *l, *ll;
-       GMount *mount;
-       GList *drives;
-       GDrive *drive;
-       GList *volumes;
-       GVolume *volume;
-       GSList *bookmarks, *sl;
-       int index;
-       char *original_uri, *mount_uri, *name, *identifier;
-       char *home_uri;
-       char *bookmark_name;
-       GIcon *icon;
-       GFile *root;
-       char *tooltip;
-       GList *network_mounts, *network_volumes;
-
-       /* save original selection */
-       if (get_selected_iter (sidebar, &iter)) {
-               gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store),
-                                   &iter,
-                                   PLACES_SIDEBAR_COLUMN_URI, &original_uri, -1);
-       } else
-               original_uri = NULL;
-
-       gtk_list_store_clear (sidebar->store);
-
-       sidebar->devices_header_added = FALSE;
-       sidebar->bookmarks_header_added = FALSE;
-
-       network_mounts = network_volumes = NULL;
-       volume_monitor = sidebar->volume_monitor;
-
-       /* add built in bookmarks */
-
-       add_heading (sidebar, SECTION_COMPUTER,
-                    _("Places"));
-
-       if (should_show_recent (sidebar)) {
-               mount_uri = "recent:///"; /* No need to strdup */
-               icon = g_themed_icon_new_with_default_fallbacks ("document-open-recent-symbolic");
-               add_place (sidebar, PLACES_BUILT_IN,
-                          SECTION_COMPUTER,
-                          _("Recent"), icon, mount_uri,
-                          NULL, NULL, NULL, 0,
-                          _("Recent files"));
-               g_object_unref (icon);
-       }
-
-       /* home folder */
-       home_uri = get_home_directory_uri ();
-       icon = g_themed_icon_new_with_default_fallbacks (ICON_NAME_HOME);
-       add_place (sidebar, PLACES_BUILT_IN,
-                  SECTION_COMPUTER,
-                  _("Home"), icon, home_uri,
-                  NULL, NULL, NULL, 0,
-                  _("Open your personal folder"));
-       g_object_unref (icon);
-       g_free (home_uri);
-
-       if (sidebar->show_desktop) {
-               /* desktop */
-               mount_uri = get_desktop_directory_uri ();
-               icon = g_themed_icon_new_with_default_fallbacks (ICON_NAME_DESKTOP);
-               add_place (sidebar, PLACES_BUILT_IN,
-                          SECTION_COMPUTER,
-                          _("Desktop"), icon, mount_uri,
-                          NULL, NULL, NULL, 0,
-                          _("Open the contents of your desktop in a folder"));
-               g_object_unref (icon);
-               g_free (mount_uri);
-       }
-
-       /* XDG directories */
-       add_special_dirs (sidebar);
-
-       /* Trash */
-       mount_uri = "trash:///"; /* No need to strdup */
-       icon = _gtk_trash_monitor_get_icon (sidebar->trash_monitor);
-       add_place (sidebar, PLACES_BUILT_IN,
-                  SECTION_COMPUTER,
-                  _("Trash"), icon, mount_uri,
-                  NULL, NULL, NULL, 0,
-                  _("Open the trash"));
-       g_object_unref (icon);
-
-       /* Application-side shortcuts */
-       add_application_shortcuts (sidebar);
-
-       /* go through all connected drives */
-       drives = g_volume_monitor_get_connected_drives (volume_monitor);
-
-       for (l = drives; l != NULL; l = l->next) {
-               drive = l->data;
-
-               volumes = g_drive_get_volumes (drive);
-               if (volumes != NULL) {
-                       for (ll = volumes; ll != NULL; ll = ll->next) {
-                               volume = ll->data;
-                               identifier = g_volume_get_identifier (volume, G_VOLUME_IDENTIFIER_KIND_CLASS);
-
-                               if (g_strcmp0 (identifier, "network") == 0) {
-                                       g_free (identifier);
-                                       network_volumes = g_list_prepend (network_volumes, volume);
-                                       continue;
-                               }
-                               g_free (identifier);
-
-                               mount = g_volume_get_mount (volume);
-                               if (mount != NULL) {
-                                       /* Show mounted volume in the sidebar */
-                                       icon = g_mount_get_symbolic_icon (mount);
-                                       root = g_mount_get_default_location (mount);
-                                       mount_uri = g_file_get_uri (root);
-                                       name = g_mount_get_name (mount);
-                                       tooltip = g_file_get_parse_name (root);
-
-                                       add_place (sidebar, PLACES_MOUNTED_VOLUME,
-                                                  SECTION_DEVICES,
-                                                  name, icon, mount_uri,
-                                                  drive, volume, mount, 0, tooltip);
-                                       g_object_unref (root);
-                                       g_object_unref (mount);
-                                       g_object_unref (icon);
-                                       g_free (tooltip);
-                                       g_free (name);
-                                       g_free (mount_uri);
-                               } else {
-                                       /* Do show the unmounted volumes in the sidebar;
-                                        * this is so the user can mount it (in case automounting
-                                        * is off).
-                                        *
-                                        * Also, even if automounting is enabled, this gives a visual
-                                        * cue that the user should remember to yank out the media if
-                                        * he just unmounted it.
-                                        */
-                                       icon = g_volume_get_symbolic_icon (volume);
-                                       name = g_volume_get_name (volume);
-                                       tooltip = g_strdup_printf (_("Mount and open %s"), name);
-
-                                       add_place (sidebar, PLACES_MOUNTED_VOLUME,
-                                                  SECTION_DEVICES,
-                                                  name, icon, NULL,
-                                                  drive, volume, NULL, 0, tooltip);
-                                       g_object_unref (icon);
-                                       g_free (name);
-                                       g_free (tooltip);
-                               }
-                               g_object_unref (volume);
-                       }
-                       g_list_free (volumes);
-               } else {
-                       if (g_drive_is_media_removable (drive) && !g_drive_is_media_check_automatic (drive)) {
-                               /* If the drive has no mountable volumes and we cannot detect media change.. 
we
-                                * display the drive in the sidebar so the user can manually poll the drive by
-                                * right clicking and selecting "Rescan..."
-                                *
-                                * This is mainly for drives like floppies where media detection doesn't
-                                * work.. but it's also for human beings who like to turn off media detection
-                                * in the OS to save battery juice.
-                                */
-                               icon = g_drive_get_symbolic_icon (drive);
-                               name = g_drive_get_name (drive);
-                               tooltip = g_strdup_printf (_("Mount and open %s"), name);
-
-                               add_place (sidebar, PLACES_BUILT_IN,
-                                          SECTION_DEVICES,
-                                          name, icon, NULL,
-                                          drive, NULL, NULL, 0, tooltip);
-                               g_object_unref (icon);
-                               g_free (tooltip);
-                               g_free (name);
-                       }
-               }
-               g_object_unref (drive);
-       }
-       g_list_free (drives);
-
-       /* add all volumes that is not associated with a drive */
-       volumes = g_volume_monitor_get_volumes (volume_monitor);
-       for (l = volumes; l != NULL; l = l->next) {
-               volume = l->data;
-               drive = g_volume_get_drive (volume);
-               if (drive != NULL) {
-                       g_object_unref (volume);
-                       g_object_unref (drive);
-                       continue;
-               }
-
-               identifier = g_volume_get_identifier (volume, G_VOLUME_IDENTIFIER_KIND_CLASS);
-
-               if (g_strcmp0 (identifier, "network") == 0) {
-                       g_free (identifier);
-                       network_volumes = g_list_prepend (network_volumes, volume);
-                       continue;
-               }
-               g_free (identifier);
-
-               mount = g_volume_get_mount (volume);
-               if (mount != NULL) {
-                       icon = g_mount_get_symbolic_icon (mount);
-                       root = g_mount_get_default_location (mount);
-                       mount_uri = g_file_get_uri (root);
-                       tooltip = g_file_get_parse_name (root);
-                       g_object_unref (root);
-                       name = g_mount_get_name (mount);
-                       add_place (sidebar, PLACES_MOUNTED_VOLUME,
-                                  SECTION_DEVICES,
-                                  name, icon, mount_uri,
-                                  NULL, volume, mount, 0, tooltip);
-                       g_object_unref (mount);
-                       g_object_unref (icon);
-                       g_free (name);
-                       g_free (tooltip);
-                       g_free (mount_uri);
-               } else {
-                       /* see comment above in why we add an icon for an unmounted mountable volume */
-                       icon = g_volume_get_symbolic_icon (volume);
-                       name = g_volume_get_name (volume);
-                       add_place (sidebar, PLACES_MOUNTED_VOLUME,
-                                  SECTION_DEVICES,
-                                  name, icon, NULL,
-                                  NULL, volume, NULL, 0, name);
-                       g_object_unref (icon);
-                       g_free (name);
-               }
-               g_object_unref (volume);
-       }
-       g_list_free (volumes);
-
-       /* file system root */
-
-       mount_uri = "file:///"; /* No need to strdup */
-       icon = g_themed_icon_new_with_default_fallbacks (ICON_NAME_FILESYSTEM);
-       add_place (sidebar, PLACES_BUILT_IN,
-                  SECTION_DEVICES,
-                  sidebar->hostname, icon, mount_uri,
-                  NULL, NULL, NULL, 0,
-                  _("Open the contents of the file system"));
-       g_object_unref (icon);
-
-       /* add mounts that has no volume (/etc/mtab mounts, ftp, sftp,...) */
-       mounts = g_volume_monitor_get_mounts (volume_monitor);
-
-       for (l = mounts; l != NULL; l = l->next) {
-               mount = l->data;
-               if (g_mount_is_shadowed (mount)) {
-                       g_object_unref (mount);
-                       continue;
-               }
-               volume = g_mount_get_volume (mount);
-               if (volume != NULL) {
-                       g_object_unref (volume);
-                       g_object_unref (mount);
-                       continue;
-               }
-               root = g_mount_get_default_location (mount);
-
-               if (!g_file_is_native (root)) {
-                       network_mounts = g_list_prepend (network_mounts, mount);
-                       g_object_unref (root);
-                       continue;
-               }
-
-               icon = g_mount_get_symbolic_icon (mount);
-               mount_uri = g_file_get_uri (root);
-               name = g_mount_get_name (mount);
-               tooltip = g_file_get_parse_name (root);
-               add_place (sidebar, PLACES_MOUNTED_VOLUME,
-                          SECTION_COMPUTER,
-                          name, icon, mount_uri,
-                          NULL, NULL, mount, 0, tooltip);
-               g_object_unref (root);
-               g_object_unref (mount);
-               g_object_unref (icon);
-               g_free (name);
-               g_free (mount_uri);
-               g_free (tooltip);
-       }
-       g_list_free (mounts);
-
-       /* add bookmarks */
-
-       bookmarks = _gtk_bookmarks_manager_list_bookmarks (sidebar->bookmarks_manager);
-
-       for (sl = bookmarks, index = 0; sl; sl = sl->next, index++) {
-               GFileInfo *info;
-
-               root = sl->data;
+  GtkTreeIter iter;
+  GVolumeMonitor *volume_monitor;
+  GList *mounts, *l, *ll;
+  GMount *mount;
+  GList *drives;
+  GDrive *drive;
+  GList *volumes;
+  GVolume *volume;
+  GSList *bookmarks, *sl;
+  gint index;
+  gchar *original_uri, *mount_uri, *name, *identifier;
+  gchar *home_uri;
+  gchar *bookmark_name;
+  GIcon *icon;
+  GFile *root;
+  gchar *tooltip;
+  GList *network_mounts, *network_volumes;
+
+  /* save original selection */
+  if (get_selected_iter (sidebar, &iter))
+    gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store),
+                        &iter,
+                        PLACES_SIDEBAR_COLUMN_URI, &original_uri, -1);
+  else
+    original_uri = NULL;
+
+  gtk_list_store_clear (sidebar->store);
+
+  sidebar->devices_header_added = FALSE;
+  sidebar->bookmarks_header_added = FALSE;
+
+  network_mounts = network_volumes = NULL;
+  volume_monitor = sidebar->volume_monitor;
+
+  /* add built-in bookmarks */
+
+  add_heading (sidebar, SECTION_COMPUTER, _("Places"));
+
+  if (should_show_recent (sidebar))
+    {
+      mount_uri = "recent:///";
+      icon = g_themed_icon_new_with_default_fallbacks ("document-open-recent-symbolic");
+      add_place (sidebar, PLACES_BUILT_IN,
+                 SECTION_COMPUTER,
+                 _("Recent"), icon, mount_uri,
+                 NULL, NULL, NULL, 0,
+                 _("Recent files"));
+      g_object_unref (icon);
+    }
+
+  /* home folder */
+  home_uri = get_home_directory_uri ();
+  icon = g_themed_icon_new_with_default_fallbacks (ICON_NAME_HOME);
+  add_place (sidebar, PLACES_BUILT_IN,
+             SECTION_COMPUTER,
+             _("Home"), icon, home_uri,
+             NULL, NULL, NULL, 0,
+             _("Open your personal folder"));
+  g_object_unref (icon);
+  g_free (home_uri);
+
+  /* desktop */
+  if (sidebar->show_desktop)
+    {
+      mount_uri = get_desktop_directory_uri ();
+      icon = g_themed_icon_new_with_default_fallbacks (ICON_NAME_DESKTOP);
+      add_place (sidebar, PLACES_BUILT_IN,
+                 SECTION_COMPUTER,
+                 _("Desktop"), icon, mount_uri,
+                 NULL, NULL, NULL, 0,
+                 _("Open the contents of your desktop in a folder"));
+      g_object_unref (icon);
+      g_free (mount_uri);
+    }
+
+  /* XDG directories */
+  add_special_dirs (sidebar);
+
+  /* Trash */
+  mount_uri = "trash:///"; /* No need to strdup */
+  icon = _gtk_trash_monitor_get_icon (sidebar->trash_monitor);
+  add_place (sidebar, PLACES_BUILT_IN,
+             SECTION_COMPUTER,
+             _("Trash"), icon, mount_uri,
+             NULL, NULL, NULL, 0,
+             _("Open the trash"));
+  g_object_unref (icon);
+
+  /* Application-side shortcuts */
+  add_application_shortcuts (sidebar);
+
+  /* go through all connected drives */
+  drives = g_volume_monitor_get_connected_drives (volume_monitor);
+
+  for (l = drives; l != NULL; l = l->next)
+    {
+      drive = l->data;
+
+      volumes = g_drive_get_volumes (drive);
+      if (volumes != NULL)
+        {
+          for (ll = volumes; ll != NULL; ll = ll->next)
+            {
+              volume = ll->data;
+              identifier = g_volume_get_identifier (volume, G_VOLUME_IDENTIFIER_KIND_CLASS);
+
+              if (g_strcmp0 (identifier, "network") == 0)
+                {
+                  g_free (identifier);
+                  network_volumes = g_list_prepend (network_volumes, volume);
+                  continue;
+                }
+              g_free (identifier);
+
+              mount = g_volume_get_mount (volume);
+              if (mount != NULL)
+                {
+                  /* Show mounted volume in the sidebar */
+                  icon = g_mount_get_symbolic_icon (mount);
+                  root = g_mount_get_default_location (mount);
+                  mount_uri = g_file_get_uri (root);
+                  name = g_mount_get_name (mount);
+                  tooltip = g_file_get_parse_name (root);
+
+                  add_place (sidebar, PLACES_MOUNTED_VOLUME,
+                             SECTION_DEVICES,
+                             name, icon, mount_uri,
+                             drive, volume, mount, 0, tooltip);
+                  g_object_unref (root);
+                  g_object_unref (mount);
+                  g_object_unref (icon);
+                  g_free (tooltip);
+                  g_free (name);
+                  g_free (mount_uri);
+                }
+              else
+                {
+                  /* Do show the unmounted volumes in the sidebar;
+                   * this is so the user can mount it (in case automounting
+                   * is off).
+                   *
+                   * Also, even if automounting is enabled, this gives a visual
+                   * cue that the user should remember to yank out the media if
+                   * he just unmounted it.
+                   */
+                  icon = g_volume_get_symbolic_icon (volume);
+                  name = g_volume_get_name (volume);
+                  tooltip = g_strdup_printf (_("Mount and open %s"), name);
+
+                  add_place (sidebar, PLACES_MOUNTED_VOLUME,
+                             SECTION_DEVICES,
+                             name, icon, NULL,
+                             drive, volume, NULL, 0, tooltip);
+                  g_object_unref (icon);
+                  g_free (name);
+                  g_free (tooltip);
+                }
+              g_object_unref (volume);
+            }
+          g_list_free (volumes);
+        }
+      else
+        {
+          if (g_drive_is_media_removable (drive) && !g_drive_is_media_check_automatic (drive))
+            {
+              /* If the drive has no mountable volumes and we cannot detect media change.. we
+               * display the drive in the sidebar so the user can manually poll the drive by
+               * right clicking and selecting "Rescan..."
+               *
+               * This is mainly for drives like floppies where media detection doesn't
+               * work.. but it's also for human beings who like to turn off media detection
+               * in the OS to save battery juice.
+               */
+              icon = g_drive_get_symbolic_icon (drive);
+              name = g_drive_get_name (drive);
+              tooltip = g_strdup_printf (_("Mount and open %s"), name);
+
+              add_place (sidebar, PLACES_BUILT_IN,
+                         SECTION_DEVICES,
+                         name, icon, NULL,
+                         drive, NULL, NULL, 0, tooltip);
+              g_object_unref (icon);
+              g_free (tooltip);
+              g_free (name);
+            }
+        }
+      g_object_unref (drive);
+    }
+  g_list_free (drives);
+
+  /* add all volumes that is not associated with a drive */
+  volumes = g_volume_monitor_get_volumes (volume_monitor);
+  for (l = volumes; l != NULL; l = l->next)
+    {
+      volume = l->data;
+      drive = g_volume_get_drive (volume);
+      if (drive != NULL)
+        {
+          g_object_unref (volume);
+          g_object_unref (drive);
+          continue;
+        }
+
+      identifier = g_volume_get_identifier (volume, G_VOLUME_IDENTIFIER_KIND_CLASS);
+
+      if (g_strcmp0 (identifier, "network") == 0)
+        {
+          g_free (identifier);
+          network_volumes = g_list_prepend (network_volumes, volume);
+          continue;
+        }
+      g_free (identifier);
+
+      mount = g_volume_get_mount (volume);
+      if (mount != NULL)
+        {
+          icon = g_mount_get_symbolic_icon (mount);
+          root = g_mount_get_default_location (mount);
+          mount_uri = g_file_get_uri (root);
+          tooltip = g_file_get_parse_name (root);
+          name = g_mount_get_name (mount);
+          add_place (sidebar, PLACES_MOUNTED_VOLUME,
+                     SECTION_DEVICES,
+                     name, icon, mount_uri,
+                     NULL, volume, mount, 0, tooltip);
+          g_object_unref (mount);
+          g_object_unref (root);
+          g_object_unref (icon);
+          g_free (name);
+          g_free (tooltip);
+          g_free (mount_uri);
+        }
+      else
+        {
+          /* see comment above in why we add an icon for an unmounted mountable volume */
+          icon = g_volume_get_symbolic_icon (volume);
+          name = g_volume_get_name (volume);
+          add_place (sidebar, PLACES_MOUNTED_VOLUME,
+                     SECTION_DEVICES,
+                     name, icon, NULL,
+                     NULL, volume, NULL, 0, name);
+          g_object_unref (icon);
+          g_free (name);
+        } 
+      g_object_unref (volume);
+    }
+  g_list_free (volumes);
+
+  /* file system root */
+
+  mount_uri = "file:///"; /* No need to strdup */
+  icon = g_themed_icon_new_with_default_fallbacks (ICON_NAME_FILESYSTEM);
+  add_place (sidebar, PLACES_BUILT_IN,
+             SECTION_DEVICES,
+             sidebar->hostname, icon, mount_uri,
+             NULL, NULL, NULL, 0,
+             _("Open the contents of the file system"));
+  g_object_unref (icon);
+
+  /* add mounts that has no volume (/etc/mtab mounts, ftp, sftp,...) */
+  mounts = g_volume_monitor_get_mounts (volume_monitor);
+
+  for (l = mounts; l != NULL; l = l->next)
+    {
+      mount = l->data;
+      if (g_mount_is_shadowed (mount))
+        {
+          g_object_unref (mount);
+          continue;
+        }
+      volume = g_mount_get_volume (mount);
+      if (volume != NULL)
+        {
+          g_object_unref (volume);
+          g_object_unref (mount);
+          continue;
+        }
+      root = g_mount_get_default_location (mount);
+
+      if (!g_file_is_native (root))
+        {
+          network_mounts = g_list_prepend (network_mounts, mount);
+          g_object_unref (root);
+          continue;
+        }
+
+      icon = g_mount_get_symbolic_icon (mount);
+      mount_uri = g_file_get_uri (root);
+      name = g_mount_get_name (mount);
+      tooltip = g_file_get_parse_name (root);
+      add_place (sidebar, PLACES_MOUNTED_VOLUME,
+                 SECTION_COMPUTER,
+                 name, icon, mount_uri,
+                 NULL, NULL, mount, 0, tooltip);
+      g_object_unref (root);
+      g_object_unref (mount);
+      g_object_unref (icon);
+      g_free (name);
+      g_free (mount_uri);
+      g_free (tooltip);
+    }
+  g_list_free (mounts);
+
+  /* add bookmarks */
+
+  bookmarks = _gtk_bookmarks_manager_list_bookmarks (sidebar->bookmarks_manager);
+
+  for (sl = bookmarks, index = 0; sl; sl = sl->next, index++)
+    {
+      GFileInfo *info;
+
+      root = sl->data;
 
 #if 0
-               /* FIXME: remove this?  If we *do* show bookmarks for nonexistent files, the user will 
eventually clean them up */
-               if (!nautilus_bookmark_get_exists (bookmark)) {
-                       continue;
-               }
+      /* FIXME: remove this?  If we *do* show bookmarks for nonexistent files, the user will eventually 
clean them up */
+      if (!nautilus_bookmark_get_exists (bookmark))
+        continue;
 #endif
 
-               if (_gtk_bookmarks_manager_get_is_builtin (sidebar->bookmarks_manager, root)) {
-                       continue;
-               }
-
-               /* FIXME: we are getting file info synchronously.  We may want to do it async at some point. 
*/
-               info = g_file_query_info (root,
-                                         "standard::display-name,standard::symbolic-icon",
-                                         G_FILE_QUERY_INFO_NONE,
-                                         NULL,
-                                         NULL); /* NULL-GError */
-
-               if (info) {
-                       bookmark_name = _gtk_bookmarks_manager_get_bookmark_label 
(sidebar->bookmarks_manager, root);
-
-                       if (bookmark_name == NULL)
-                               bookmark_name = g_strdup (g_file_info_get_display_name (info));
-
-                       icon = g_file_info_get_symbolic_icon (info);
-
-                       mount_uri = g_file_get_uri (root);
-                       tooltip = g_file_get_parse_name (root);
-
-                       add_place (sidebar, PLACES_BOOKMARK,
-                                  SECTION_BOOKMARKS,
-                                  bookmark_name, icon, mount_uri,
-                                  NULL, NULL, NULL, index,
-                                  tooltip);
-
-                       g_free (mount_uri);
-                       g_free (tooltip);
-                       g_free (bookmark_name);
-
-                       g_object_unref (info);
-               }
-       }
-
-       g_slist_foreach (bookmarks, (GFunc) g_object_unref, NULL);
-       g_slist_free (bookmarks);
-
-       /* network */
-       add_heading (sidebar, SECTION_NETWORK,
-                    _("Network"));
-
-       mount_uri = "network:///"; /* No need to strdup */
-       icon = g_themed_icon_new_with_default_fallbacks (ICON_NAME_NETWORK);
-       add_place (sidebar, PLACES_BUILT_IN,
-                  SECTION_NETWORK,
-                  _("Browse Network"), icon, mount_uri,
-                  NULL, NULL, NULL, 0,
-                  _("Browse the contents of the network"));
-       g_object_unref (icon);
-
-       if (sidebar->show_connect_to_server) {
-               icon = g_themed_icon_new_with_default_fallbacks (ICON_NAME_NETWORK_SERVER);
-               add_place (sidebar, PLACES_CONNECT_TO_SERVER,
-                          SECTION_NETWORK,
-                          _("Connect to Server"), icon, NULL,
-                          NULL, NULL, NULL, 0,
-                          _("Connect to a network server address"));
-               g_object_unref (icon);
-       }
-
-       network_volumes = g_list_reverse (network_volumes);
-       for (l = network_volumes; l != NULL; l = l->next) {
-               volume = l->data;
-               mount = g_volume_get_mount (volume);
-
-               if (mount != NULL) {
-                       network_mounts = g_list_prepend (network_mounts, mount);
-                       continue;
-               } else {
-                       icon = g_volume_get_symbolic_icon (volume);
-                       name = g_volume_get_name (volume);
-                       tooltip = g_strdup_printf (_("Mount and open %s"), name);
-
-                       add_place (sidebar, PLACES_MOUNTED_VOLUME,
-                                  SECTION_NETWORK,
-                                  name, icon, NULL,
-                                  NULL, volume, NULL, 0, tooltip);
-                       g_object_unref (icon);
-                       g_free (name);
-                       g_free (tooltip);
-               }
-       }
-
-       g_list_free_full (network_volumes, g_object_unref);
-
-       network_mounts = g_list_reverse (network_mounts);
-       for (l = network_mounts; l != NULL; l = l->next) {
-               mount = l->data;
-               root = g_mount_get_default_location (mount);
-               icon = g_mount_get_symbolic_icon (mount);
-               mount_uri = g_file_get_uri (root);
-               name = g_mount_get_name (mount);
-               tooltip = g_file_get_parse_name (root);
-               add_place (sidebar, PLACES_MOUNTED_VOLUME,
-                          SECTION_NETWORK,
-                          name, icon, mount_uri,
-                          NULL, NULL, mount, 0, tooltip);
-               g_object_unref (root);
-               g_object_unref (icon);
-               g_free (name);
-               g_free (mount_uri);
-               g_free (tooltip);
-       }
-
-       g_list_free_full (network_mounts, g_object_unref);
-
-       /* restore original selection */
-       if (original_uri) {
-               GFile *restore;
-
-               restore = g_file_new_for_uri (original_uri);
-               gtk_places_sidebar_set_location (sidebar, restore);
-               g_object_unref (restore);
-
-               g_free (original_uri);
-       }
-}
-
-static void
-mount_added_callback (GVolumeMonitor *volume_monitor,
-                     GMount *mount,
-                     GtkPlacesSidebar *sidebar)
-{
-       update_places (sidebar);
-}
-
-static void
-mount_removed_callback (GVolumeMonitor *volume_monitor,
-                       GMount *mount,
-                       GtkPlacesSidebar *sidebar)
-{
-       update_places (sidebar);
-}
-
-static void
-mount_changed_callback (GVolumeMonitor *volume_monitor,
-                       GMount *mount,
-                       GtkPlacesSidebar *sidebar)
-{
-       update_places (sidebar);
-}
-
-static void
-volume_added_callback (GVolumeMonitor *volume_monitor,
-                      GVolume *volume,
-                      GtkPlacesSidebar *sidebar)
-{
-       update_places (sidebar);
-}
-
-static void
-volume_removed_callback (GVolumeMonitor *volume_monitor,
-                        GVolume *volume,
-                        GtkPlacesSidebar *sidebar)
-{
-       update_places (sidebar);
-}
-
-static void
-volume_changed_callback (GVolumeMonitor *volume_monitor,
-                        GVolume *volume,
-                        GtkPlacesSidebar *sidebar)
-{
-       update_places (sidebar);
-}
-
-static void
-drive_disconnected_callback (GVolumeMonitor *volume_monitor,
-                            GDrive         *drive,
-                            GtkPlacesSidebar *sidebar)
-{
-       update_places (sidebar);
-}
-
-static void
-drive_connected_callback (GVolumeMonitor *volume_monitor,
-                         GDrive         *drive,
-                         GtkPlacesSidebar *sidebar)
-{
-       update_places (sidebar);
-}
-
-static void
-drive_changed_callback (GVolumeMonitor *volume_monitor,
-                       GDrive         *drive,
-                       GtkPlacesSidebar *sidebar)
-{
-       update_places (sidebar);
+      if (_gtk_bookmarks_manager_get_is_builtin (sidebar->bookmarks_manager, root))
+        continue;
+
+      /* FIXME: we are getting file info synchronously.  We may want to do it async at some point. */
+      info = g_file_query_info (root,
+                                "standard::display-name,standard::symbolic-icon",
+                                G_FILE_QUERY_INFO_NONE,
+                                NULL,
+                                NULL); /* NULL-GError */
+
+      if (info)
+        {
+          bookmark_name = _gtk_bookmarks_manager_get_bookmark_label (sidebar->bookmarks_manager, root);
+
+          if (bookmark_name == NULL)
+            bookmark_name = g_strdup (g_file_info_get_display_name (info));
+
+          icon = g_file_info_get_symbolic_icon (info);
+          mount_uri = g_file_get_uri (root);
+          tooltip = g_file_get_parse_name (root);
+
+          add_place (sidebar, PLACES_BOOKMARK,
+                     SECTION_BOOKMARKS,
+                     bookmark_name, icon, mount_uri,
+                     NULL, NULL, NULL, index,
+                     tooltip);
+
+          g_free (mount_uri);
+          g_free (tooltip);
+          g_free (bookmark_name);
+
+          g_object_unref (info);
+        }
+    }
+
+  g_slist_foreach (bookmarks, (GFunc) g_object_unref, NULL);
+  g_slist_free (bookmarks);
+
+  /* network */
+  add_heading (sidebar, SECTION_NETWORK, _("Network"));
+
+  mount_uri = "network:///";
+  icon = g_themed_icon_new_with_default_fallbacks (ICON_NAME_NETWORK);
+  add_place (sidebar, PLACES_BUILT_IN,
+             SECTION_NETWORK,
+             _("Browse Network"), icon, mount_uri,
+             NULL, NULL, NULL, 0,
+             _("Browse the contents of the network"));
+  g_object_unref (icon);
+
+  if (sidebar->show_connect_to_server)
+    {
+      icon = g_themed_icon_new_with_default_fallbacks (ICON_NAME_NETWORK_SERVER);
+      add_place (sidebar, PLACES_CONNECT_TO_SERVER,
+                 SECTION_NETWORK,
+                 _("Connect to Server"), icon, NULL,
+                 NULL, NULL, NULL, 0,
+                 _("Connect to a network server address"));
+      g_object_unref (icon);
+    }
+
+  network_volumes = g_list_reverse (network_volumes);
+  for (l = network_volumes; l != NULL; l = l->next)
+    {
+      volume = l->data;
+      mount = g_volume_get_mount (volume);
+
+      if (mount != NULL)
+        {
+          network_mounts = g_list_prepend (network_mounts, mount);
+          continue;
+        }
+      else
+        {
+          icon = g_volume_get_symbolic_icon (volume);
+          name = g_volume_get_name (volume);
+          tooltip = g_strdup_printf (_("Mount and open %s"), name);
+
+          add_place (sidebar, PLACES_MOUNTED_VOLUME,
+                     SECTION_NETWORK,
+                     name, icon, NULL,
+                     NULL, volume, NULL, 0, tooltip);
+          g_object_unref (icon);
+          g_free (name);
+          g_free (tooltip);
+        }
+    }
+
+  g_list_free_full (network_volumes, g_object_unref);
+
+  network_mounts = g_list_reverse (network_mounts);
+  for (l = network_mounts; l != NULL; l = l->next)
+    {
+      mount = l->data;
+      root = g_mount_get_default_location (mount);
+      icon = g_mount_get_symbolic_icon (mount);
+      mount_uri = g_file_get_uri (root);
+      name = g_mount_get_name (mount);
+      tooltip = g_file_get_parse_name (root);
+      add_place (sidebar, PLACES_MOUNTED_VOLUME,
+                 SECTION_NETWORK,
+                 name, icon, mount_uri,
+                 NULL, NULL, mount, 0, tooltip);
+      g_object_unref (root);
+      g_object_unref (icon);
+      g_free (name);
+      g_free (mount_uri);
+      g_free (tooltip);
+    }
+
+  g_list_free_full (network_mounts, g_object_unref);
+
+  /* restore original selection */
+  if (original_uri)
+    {
+      GFile *restore;
+
+      restore = g_file_new_for_uri (original_uri);
+      gtk_places_sidebar_set_location (sidebar, restore);
+      g_object_unref (restore);
+
+      g_free (original_uri);
+    }
 }
 
 static gboolean
-over_eject_button (GtkPlacesSidebar *sidebar,
-                  gint x,
-                  gint y,
-                  GtkTreePath **path)
-{
-       GtkTreeViewColumn *column;
-       int width, x_offset, hseparator;
-       int eject_button_size;
-       gboolean show_eject;
-       GtkTreeIter iter;
-       GtkTreeModel *model;
-
-       *path = NULL;
-       model = gtk_tree_view_get_model (sidebar->tree_view);
-
-       if (gtk_tree_view_get_path_at_pos (sidebar->tree_view,
-                                          x, y,
-                                          path, &column, NULL, NULL)) {
-
-               gtk_tree_model_get_iter (model, &iter, *path);
-               gtk_tree_model_get (model, &iter,
-                                   PLACES_SIDEBAR_COLUMN_EJECT, &show_eject,
-                                   -1);
-
-               if (!show_eject) {
-                       goto out;
-               }
-
-
-               gtk_widget_style_get (GTK_WIDGET (sidebar->tree_view),
-                                     "horizontal-separator", &hseparator,
-                                     NULL);
-
-               /* Reload cell attributes for this particular row */
-               gtk_tree_view_column_cell_set_cell_data (column,
-                                                        model, &iter, FALSE, FALSE);
-
-               gtk_tree_view_column_cell_get_position (column,
-                                                       sidebar->eject_icon_cell_renderer,
-                                                       &x_offset, &width);
-
-               eject_button_size = get_icon_size (sidebar);
-
-               /* This is kinda weird, but we have to do it to workaround gtk+ expanding
-                * the eject cell renderer (even thought we told it not to) and we then
-                * had to set it right-aligned */
-               x_offset += width - hseparator - EJECT_BUTTON_XPAD - eject_button_size;
-
-               if (x - x_offset >= 0 &&
-                   x - x_offset <= eject_button_size) {
-                       return TRUE;
-               }
-       }
+over_eject_button (GtkPlacesSidebar  *sidebar,
+                   gint               x,
+                   gint               y,
+                   GtkTreePath      **path)
+{
+  GtkTreeViewColumn *column;
+  gint width, x_offset, hseparator;
+  gint eject_button_size;
+  gboolean show_eject;
+  GtkTreeIter iter;
+  GtkTreeModel *model;
+
+  *path = NULL;
+  model = gtk_tree_view_get_model (sidebar->tree_view);
+
+  if (gtk_tree_view_get_path_at_pos (sidebar->tree_view,
+                                     x, y, path, &column, NULL, NULL))
+    {
+      gtk_tree_model_get_iter (model, &iter, *path);
+      gtk_tree_model_get (model, &iter,
+                          PLACES_SIDEBAR_COLUMN_EJECT, &show_eject,
+                          -1);
+
+      if (!show_eject)
+        goto out;
+
+      gtk_widget_style_get (GTK_WIDGET (sidebar->tree_view),
+                            "horizontal-separator", &hseparator,
+                            NULL);
+
+      /* Reload cell attributes for this particular row */
+      gtk_tree_view_column_cell_set_cell_data (column,
+                                               model, &iter, FALSE, FALSE);
+
+      gtk_tree_view_column_cell_get_position (column,
+                                              sidebar->eject_icon_cell_renderer,
+                                              &x_offset, &width);
+
+      eject_button_size = get_icon_size (sidebar);
+
+      /* This is kinda weird, but we have to do it to workaround expanding
+       * the eject cell renderer (even thought we told it not to) and we
+       * then had to set it right-aligned
+       */
+      x_offset += width - hseparator - EJECT_BUTTON_XPAD - eject_button_size;
+
+      if (x - x_offset >= 0 && x - x_offset <= eject_button_size)
+        return TRUE;
+    }
 
  out:
-       if (*path != NULL) {
-               gtk_tree_path_free (*path);
-               *path = NULL;
-       }
+  g_clear_pointer (path, gtk_tree_path_free);
 
-       return FALSE;
+  return FALSE;
 }
 
 static gboolean
-clicked_eject_button (GtkPlacesSidebar *sidebar,
-                     GtkTreePath **path)
+clicked_eject_button (GtkPlacesSidebar  *sidebar,
+                      GtkTreePath      **path)
 {
-       GdkEvent *event = gtk_get_current_event ();
-       GdkEventButton *button_event = (GdkEventButton *) event;
+  GdkEvent *event = gtk_get_current_event ();
+  GdkEventButton *button_event = (GdkEventButton *) event;
 
-       if ((event->type == GDK_BUTTON_PRESS || event->type == GDK_BUTTON_RELEASE) &&
-            over_eject_button (sidebar, button_event->x, button_event->y, path)) {
-               return TRUE;
-       }
+  if ((event->type == GDK_BUTTON_PRESS || event->type == GDK_BUTTON_RELEASE) &&
+       over_eject_button (sidebar, button_event->x, button_event->y, path))
+    return TRUE;
 
-       return FALSE;
+  return FALSE;
 }
 
 static gboolean
 pos_is_into_or_before (GtkTreeViewDropPosition pos)
 {
-       return (pos == GTK_TREE_VIEW_DROP_BEFORE || pos == GTK_TREE_VIEW_DROP_INTO_OR_BEFORE);
+  return (pos == GTK_TREE_VIEW_DROP_BEFORE || pos == GTK_TREE_VIEW_DROP_INTO_OR_BEFORE);
 }
 
 /* Computes the appropriate row and position for dropping */
 static gboolean
-compute_drop_position (GtkTreeView             *tree_view,
-                      int                      x,
-                      int                      y,
-                      GtkTreePath            **path,
-                      GtkTreeViewDropPosition *pos,
-                      GtkPlacesSidebar        *sidebar)
-{
-       GtkTreeModel *model;
-       GtkTreeIter iter;
-       PlaceType place_type;
-       SectionType section_type;
-       gboolean drop_possible;
-
-       if (!gtk_tree_view_get_dest_row_at_pos (tree_view,
-                                               x, y,
-                                               path, pos)) {
-               return FALSE;
-       }
-
-       model = gtk_tree_view_get_model (tree_view);
-
-       gtk_tree_model_get_iter (model, &iter, *path);
-       gtk_tree_model_get (model, &iter,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
-                           PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type,
-                           -1);
-
-       drop_possible = TRUE;
-
-       /* Normalize drops on the feedback row */
-       if (place_type == PLACES_DROP_FEEDBACK) {
-               *pos = GTK_TREE_VIEW_DROP_INTO_OR_BEFORE;
-               goto out;
-       }
-
-       /* Never drop on headings, but special case the bookmarks heading,
-        * so we can drop bookmarks in between it and the first bookmark.
-        */
-       if (place_type == PLACES_HEADING
-           && section_type != SECTION_BOOKMARKS)
-               drop_possible = FALSE;
-
-       /* Dragging a bookmark? */
-       if (sidebar->drag_data_received
-           && sidebar->drag_data_info == GTK_TREE_MODEL_ROW) {
-               /* Don't allow reordering bookmarks into non-bookmark areas */
-               if (section_type != SECTION_BOOKMARKS)
-                       drop_possible = FALSE;
-
-               /* Bookmarks can only be reordered.  Disallow dropping directly into them; only allow 
dropping between them. */
-               if (place_type == PLACES_HEADING) {
-                       if (pos_is_into_or_before (*pos))
-                               drop_possible = FALSE;
-                       else
-                               *pos = GTK_TREE_VIEW_DROP_AFTER;
-               } else {
-                       if (pos_is_into_or_before (*pos))
-                               *pos = GTK_TREE_VIEW_DROP_BEFORE;
-                       else
-                               *pos = GTK_TREE_VIEW_DROP_AFTER;
-               }
-       } else {
-               /* Dragging a file */
-
-               /* Outside the bookmarks section, URIs can only be dropped
-                * directly into places items.  Inside the bookmarks section,
-                * they can be dropped between items (to create new bookmarks)
-                * or in items themselves (to request a move/copy file
-                * operation).
-                */
-               if (section_type != SECTION_BOOKMARKS)
-                       *pos = GTK_TREE_VIEW_DROP_INTO_OR_BEFORE;
-               else {
-                       if (place_type == PLACES_HEADING) {
-                               if (pos_is_into_or_before (*pos))
-                                       drop_possible = FALSE;
-                               else
-                                       *pos = GTK_TREE_VIEW_DROP_AFTER;
-                       }
-               }
-       }
-
-       /* Disallow drops on recent:/// */
-       if (place_type == PLACES_BUILT_IN) {
-               char *uri;
-
-               gtk_tree_model_get (model, &iter,
-                                   PLACES_SIDEBAR_COLUMN_URI, &uri,
-                                   -1);
-
-               if (strcmp (uri, "recent:///") == 0)
-                       drop_possible = FALSE;
-
-               g_free (uri);
-       }
+compute_drop_position (GtkTreeView              *tree_view,
+                       gint                      x,
+                       gint                      y,
+                       GtkTreePath             **path,
+                       GtkTreeViewDropPosition  *pos,
+                       GtkPlacesSidebar         *sidebar)
+{
+  GtkTreeModel *model;
+  GtkTreeIter iter;
+  PlaceType place_type;
+  SectionType section_type;
+  gboolean drop_possible;
+
+  if (!gtk_tree_view_get_dest_row_at_pos (tree_view, x, y, path, pos))
+    return FALSE;
+
+  model = gtk_tree_view_get_model (tree_view);
+
+  gtk_tree_model_get_iter (model, &iter, *path);
+  gtk_tree_model_get (model, &iter,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
+                      PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type,
+                      -1);
+
+  drop_possible = TRUE;
+
+  /* Normalize drops on the feedback row */
+  if (place_type == PLACES_DROP_FEEDBACK)
+    {
+      *pos = GTK_TREE_VIEW_DROP_INTO_OR_BEFORE;
+      goto out;
+    }
+
+  /* Never drop on headings, but special case the bookmarks heading,
+   * so we can drop bookmarks in between it and the first bookmark.
+   */
+  if (place_type == PLACES_HEADING && section_type != SECTION_BOOKMARKS)
+    drop_possible = FALSE;
+
+  /* Dragging a bookmark? */
+  if (sidebar->drag_data_received &&
+      sidebar->drag_data_info == GTK_TREE_MODEL_ROW)
+    {
+      /* Don't allow reordering bookmarks into non-bookmark areas */
+      if (section_type != SECTION_BOOKMARKS)
+        drop_possible = FALSE;
+
+      /* Bookmarks can only be reordered.  Disallow dropping directly
+       * into them; only allow dropping between them.
+       */
+      if (place_type == PLACES_HEADING)
+        {
+          if (pos_is_into_or_before (*pos))
+            drop_possible = FALSE;
+          else
+            *pos = GTK_TREE_VIEW_DROP_AFTER;
+        }
+      else
+        {
+          if (pos_is_into_or_before (*pos))
+            *pos = GTK_TREE_VIEW_DROP_BEFORE;
+          else
+            *pos = GTK_TREE_VIEW_DROP_AFTER;
+        }
+    }
+  else
+    { 
+      /* Dragging a file */
+
+      /* Outside the bookmarks section, URIs can only be dropped
+       * directly into places items.  Inside the bookmarks section,
+       * they can be dropped between items (to create new bookmarks)
+       * or in items themselves (to request a move/copy file
+       * operation).
+       */
+      if (section_type != SECTION_BOOKMARKS)
+        *pos = GTK_TREE_VIEW_DROP_INTO_OR_BEFORE;
+      else
+        {
+          if (place_type == PLACES_HEADING)
+            {
+              if (pos_is_into_or_before (*pos))
+                drop_possible = FALSE;
+              else
+                *pos = GTK_TREE_VIEW_DROP_AFTER;
+            }
+        }
+    }
+
+  /* Disallow drops on recent:/// */
+  if (place_type == PLACES_BUILT_IN)
+    {
+      gchar *uri;
+
+      gtk_tree_model_get (model, &iter,
+                          PLACES_SIDEBAR_COLUMN_URI, &uri,
+                          -1);
+
+      if (strcmp (uri, "recent:///") == 0)
+        drop_possible = FALSE;
+
+      g_free (uri);
+    }
 
 out:
 
-       if (!drop_possible) {
-               gtk_tree_path_free (*path);
-               *path = NULL;
+  if (!drop_possible)
+    {
+      gtk_tree_path_free (*path);
+      *path = NULL;
+      return FALSE;
+    }
 
-               return FALSE;
-       }
-
-       return TRUE;
+  return TRUE;
 }
 
 static gboolean
-get_drag_data (GtkTreeView *tree_view,
-              GdkDragContext *context,
-              unsigned int time)
+get_drag_data (GtkTreeView    *tree_view,
+               GdkDragContext *context,
+               guint           time)
 {
-       GdkAtom target;
+  GdkAtom target;
 
-       target = gtk_drag_dest_find_target (GTK_WIDGET (tree_view),
-                                           context,
-                                           NULL);
+  target = gtk_drag_dest_find_target (GTK_WIDGET (tree_view),
+                                      context,
+                                      NULL);
 
-       if (target == GDK_NONE) {
-               return FALSE;
-       }
+  if (target == GDK_NONE)
+    return FALSE;
 
-       gtk_drag_get_data (GTK_WIDGET (tree_view),
-                          context, target, time);
+  gtk_drag_get_data (GTK_WIDGET (tree_view),
+                     context, target, time);
 
-       return TRUE;
+  return TRUE;
 }
 
 static void
 remove_switch_location_timer (GtkPlacesSidebar *sidebar)
 {
-       if (sidebar->switch_location_timer != 0) {
-               g_source_remove (sidebar->switch_location_timer);
-               sidebar->switch_location_timer = 0;
-       }
+  if (sidebar->switch_location_timer != 0)
+    {
+      g_source_remove (sidebar->switch_location_timer);
+      sidebar->switch_location_timer = 0;
+    }
 }
 
 static void
 free_drag_data (GtkPlacesSidebar *sidebar)
 {
-       sidebar->drag_data_received = FALSE;
+  sidebar->drag_data_received = FALSE;
 
-       if (sidebar->drag_list) {
-               g_list_free_full (sidebar->drag_list, g_object_unref);
-               sidebar->drag_list = NULL;
-       }
+  if (sidebar->drag_list)
+    {
+      g_list_free_full (sidebar->drag_list, g_object_unref);
+      sidebar->drag_list = NULL;
+    }
 
-       remove_switch_location_timer (sidebar);
+  remove_switch_location_timer (sidebar);
 
-       g_free (sidebar->drop_target_uri);
-       sidebar->drop_target_uri = NULL;
+  g_free (sidebar->drop_target_uri);
+  sidebar->drop_target_uri = NULL;
 }
 
 static gboolean
 switch_location_timer (gpointer user_data)
 {
-       GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (user_data);
-       GFile *location;
+  GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (user_data);
+  GFile *location;
 
-       sidebar->switch_location_timer = 0;
+  sidebar->switch_location_timer = 0;
 
-       location = g_file_new_for_uri (sidebar->drop_target_uri);
-       emit_open_location (sidebar, location, 0);
-       g_object_unref (location);
+  location = g_file_new_for_uri (sidebar->drop_target_uri);
+  emit_open_location (sidebar, location, 0);
+  g_object_unref (location);
 
-       return FALSE;
+  return FALSE;
 }
 
 static void
-check_switch_location_timer (GtkPlacesSidebar *sidebar, const char *uri)
+check_switch_location_timer (GtkPlacesSidebar *sidebar,
+                             const gchar      *uri)
 {
-       if (g_strcmp0 (uri, sidebar->drop_target_uri) == 0) {
-               return;
-       }
-       remove_switch_location_timer (sidebar);
+  if (g_strcmp0 (uri, sidebar->drop_target_uri) == 0)
+    return;
+
+  remove_switch_location_timer (sidebar);
 
-       g_free (sidebar->drop_target_uri);
-       sidebar->drop_target_uri = NULL;
+  g_free (sidebar->drop_target_uri);
+  sidebar->drop_target_uri = NULL;
 
-       if (uri != NULL) {
-               sidebar->drop_target_uri = g_strdup (uri);
-               sidebar->switch_location_timer = gdk_threads_add_timeout (TIMEOUT_EXPAND, 
switch_location_timer, sidebar);
-               g_source_set_name_by_id (sidebar->switch_location_timer, "[gtk+] switch_location_timer");
-       }
+  if (uri != NULL)
+    {
+      sidebar->drop_target_uri = g_strdup (uri);
+      sidebar->switch_location_timer = gdk_threads_add_timeout (TIMEOUT_EXPAND, switch_location_timer, 
sidebar);
+      g_source_set_name_by_id (sidebar->switch_location_timer, "[gtk+] switch_location_timer");
+    }
 }
 
 static void
 remove_drop_bookmark_feedback_row (GtkPlacesSidebar *sidebar)
 {
-       if (sidebar->drop_state != DROP_STATE_NORMAL) {
-               gboolean success;
-               GtkTreeIter iter;
+  if (sidebar->drop_state != DROP_STATE_NORMAL)
+    {
+      gboolean success;
+      GtkTreeIter iter;
 
-               success = gtk_tree_model_iter_nth_child (GTK_TREE_MODEL (sidebar->store), &iter, NULL, 
sidebar->new_bookmark_index);
-               g_assert (success);
-               gtk_list_store_remove (sidebar->store, &iter);
+      success = gtk_tree_model_iter_nth_child (GTK_TREE_MODEL (sidebar->store), &iter, NULL, 
sidebar->new_bookmark_index);
+      g_assert (success);
+      gtk_list_store_remove (sidebar->store, &iter);
 
-               sidebar->drop_state = DROP_STATE_NORMAL;
-       }
-}
-
-#if 0
-static const char *
-pos_to_string (GtkTreeViewDropPosition pos)
-{
-       switch (pos) {
-       case GTK_TREE_VIEW_DROP_BEFORE:
-               return "before";
-               
-       case GTK_TREE_VIEW_DROP_AFTER:
-               return "after";
-               
-       case GTK_TREE_VIEW_DROP_INTO_OR_BEFORE:
-               return "into_or_before";
-               
-       case GTK_TREE_VIEW_DROP_INTO_OR_AFTER:
-               return "into_or_after";
-
-       default:
-               return "w00t";
-       }
+      sidebar->drop_state = DROP_STATE_NORMAL;
+    }
 }
-#endif
 
 static void
-start_drop_feedback (GtkPlacesSidebar *sidebar, GtkTreePath *path, GtkTreeViewDropPosition pos, gboolean 
drop_as_bookmarks)
-{
-       if (drop_as_bookmarks) {
-               int new_bookmark_index;
-               GtkTreePath *new_path;
-               gboolean need_feedback_row;
-
-               new_bookmark_index = gtk_tree_path_get_indices (path)[0];
-               if (pos == GTK_TREE_VIEW_DROP_AFTER)
-                       new_bookmark_index++;
-
-               if (sidebar->drop_state == DROP_STATE_NORMAL)
-                       need_feedback_row = TRUE;
-               else {
-                       /* Feedback row already exists; remove it if its position needs to change */
-
-                       if (sidebar->new_bookmark_index == new_bookmark_index)
-                               need_feedback_row = FALSE;
-                       else {
-                               if (sidebar->new_bookmark_index < new_bookmark_index)
-                                       new_bookmark_index--; /* since the removal of the old feedback row 
pushed items one position up */
-
-                               remove_drop_bookmark_feedback_row (sidebar);
-                               need_feedback_row = TRUE;
-                       }
-               }
-
-               if (need_feedback_row) {
-                       GtkTreeIter iter;
-
-                       sidebar->new_bookmark_index = new_bookmark_index;
-                       gtk_list_store_insert_with_values (sidebar->store, &iter, sidebar->new_bookmark_index,
-                                                          PLACES_SIDEBAR_COLUMN_ROW_TYPE, 
PLACES_DROP_FEEDBACK,
-                                                          PLACES_SIDEBAR_COLUMN_SECTION_TYPE, 
SECTION_BOOKMARKS,
-                                                          PLACES_SIDEBAR_COLUMN_NAME, _("New bookmark"),
-                                                          PLACES_SIDEBAR_COLUMN_NO_EJECT, TRUE,
-                                                          -1);
-               }
-
-               new_path = gtk_tree_path_new_from_indices (sidebar->new_bookmark_index, -1);
-               gtk_tree_view_set_drag_dest_row (sidebar->tree_view, new_path, 
GTK_TREE_VIEW_DROP_INTO_OR_BEFORE);
-               gtk_tree_path_free (new_path);
-
-               sidebar->drop_state = DROP_STATE_NEW_BOOKMARK_ARMED;
-       } else
-               gtk_tree_view_set_drag_dest_row (sidebar->tree_view, path, pos);
+start_drop_feedback (GtkPlacesSidebar        *sidebar,
+                     GtkTreePath             *path,
+                     GtkTreeViewDropPosition  pos,
+                     gboolean                 drop_as_bookmarks)
+{
+  if (drop_as_bookmarks)
+    {
+      gint new_bookmark_index;
+      GtkTreePath *new_path;
+      gboolean need_feedback_row;
+
+      new_bookmark_index = gtk_tree_path_get_indices (path)[0];
+      if (pos == GTK_TREE_VIEW_DROP_AFTER)
+        new_bookmark_index++;
+
+      if (sidebar->drop_state == DROP_STATE_NORMAL)
+        need_feedback_row = TRUE;
+      else
+        {
+          /* Feedback row already exists; remove it if its position needs to change */
+          if (sidebar->new_bookmark_index == new_bookmark_index)
+            need_feedback_row = FALSE;
+          else
+            {
+              if (sidebar->new_bookmark_index < new_bookmark_index)
+                new_bookmark_index--; /* since the removal of the old feedback row pushed items one position 
up */
+
+                remove_drop_bookmark_feedback_row (sidebar);
+                need_feedback_row = TRUE;
+            }
+        }
+
+      if (need_feedback_row)
+        {
+          GtkTreeIter iter;
+
+          sidebar->new_bookmark_index = new_bookmark_index;
+          gtk_list_store_insert_with_values (sidebar->store, &iter, sidebar->new_bookmark_index,
+                                             PLACES_SIDEBAR_COLUMN_ROW_TYPE, PLACES_DROP_FEEDBACK,
+                                             PLACES_SIDEBAR_COLUMN_SECTION_TYPE, SECTION_BOOKMARKS,
+                                             PLACES_SIDEBAR_COLUMN_NAME, _("New bookmark"),
+                                             PLACES_SIDEBAR_COLUMN_NO_EJECT, TRUE,
+                                             -1);
+        }
+
+      new_path = gtk_tree_path_new_from_indices (sidebar->new_bookmark_index, -1);
+      gtk_tree_view_set_drag_dest_row (sidebar->tree_view, new_path, GTK_TREE_VIEW_DROP_INTO_OR_BEFORE);
+      gtk_tree_path_free (new_path);
+
+      sidebar->drop_state = DROP_STATE_NEW_BOOKMARK_ARMED;
+    }
+  else
+    gtk_tree_view_set_drag_dest_row (sidebar->tree_view, path, pos);
 }
 
 static void
 stop_drop_feedback (GtkPlacesSidebar *sidebar)
 {
-       gtk_tree_view_set_drag_dest_row (sidebar->tree_view, NULL, 0);
+  gtk_tree_view_set_drag_dest_row (sidebar->tree_view, NULL, 0);
 }
 
 static gboolean
-drag_motion_callback (GtkTreeView *tree_view,
-                     GdkDragContext *context,
-                     int x,
-                     int y,
-                     unsigned int time,
-                     GtkPlacesSidebar *sidebar)
-{
-       GtkTreePath *path;
-       GtkTreeViewDropPosition pos;
-       int action;
-       GtkTreeIter iter;
-       gboolean res;
-       gboolean drop_as_bookmarks;
-       char *drop_target_uri = NULL;
-
-       action = 0;
-       drop_as_bookmarks = FALSE;
-       path = NULL;
-
-       if (!sidebar->drag_data_received) {
-               if (!get_drag_data (tree_view, context, time)) {
-                       goto out;
-               }
-       }
-
-       res = compute_drop_position (tree_view, x, y, &path, &pos, sidebar);
-
-       if (!res) {
-               goto out;
-       }
-
-       if (sidebar->drag_data_received &&
-           sidebar->drag_data_info == GTK_TREE_MODEL_ROW) {
-               /* Dragging bookmarks always moves them to another position in the bookmarks list */
-               action = GDK_ACTION_MOVE;
-       } else {
-               /* URIs are being dragged.  See if the caller wants to handle a
-                * file move/copy operation itself, or if we should only try to
-                * create bookmarks out of the dragged URIs.
-                */
-               if (sidebar->drag_list != NULL) {
-                       SectionType section_type;
-                       PlaceType place_type;
-
-                       gtk_tree_model_get_iter (GTK_TREE_MODEL (sidebar->store),
-                                                &iter, path);
-                       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store),
-                                           &iter,
-                                           PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type,
-                                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
-                                           -1);
-
-                       if (place_type == PLACES_DROP_FEEDBACK
-                           || (section_type == SECTION_BOOKMARKS
-                               && (pos == GTK_TREE_VIEW_DROP_BEFORE || pos == GTK_TREE_VIEW_DROP_AFTER))) {
-                               action = GDK_ACTION_COPY;
-                               drop_as_bookmarks = TRUE;
-                       }
-
-                       if (!drop_as_bookmarks) {
-                               gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store),
-                                                   &iter,
-                                                   PLACES_SIDEBAR_COLUMN_URI, &drop_target_uri,
-                                                   -1);
-
-                               if (drop_target_uri != NULL) {
-                                       GFile *dest_file = g_file_new_for_uri (drop_target_uri);
-
-                                       action = emit_drag_action_requested (sidebar, context, dest_file, 
sidebar->drag_list);
-
-                                       g_object_unref (dest_file);
-                               } /* uri may be NULL for unmounted volumes, for example, so we don't allow 
drops there */
-                       }
-               }
-       }
+drag_motion_callback (GtkTreeView      *tree_view,
+                      GdkDragContext   *context,
+                      gint              x,
+                      gint              y,
+                      guint             time,
+                      GtkPlacesSidebar *sidebar)
+{
+  GtkTreePath *path;
+  GtkTreeViewDropPosition pos;
+  gint action;
+  GtkTreeIter iter;
+  gboolean res;
+  gboolean drop_as_bookmarks;
+  gchar *drop_target_uri = NULL;
+
+  action = 0;
+  drop_as_bookmarks = FALSE;
+  path = NULL;
+
+  if (!sidebar->drag_data_received)
+    {
+      if (!get_drag_data (tree_view, context, time))
+        goto out;
+    }
+
+  res = compute_drop_position (tree_view, x, y, &path, &pos, sidebar);
+  if (!res)
+    goto out;
+
+  if (sidebar->drag_data_received &&
+      sidebar->drag_data_info == GTK_TREE_MODEL_ROW)
+    {
+      /* Dragging bookmarks always moves them to another position in the bookmarks list */
+      action = GDK_ACTION_MOVE;
+    }
+  else
+    {
+      /* URIs are being dragged.  See if the caller wants to handle a
+       * file move/copy operation itself, or if we should only try to
+       * create bookmarks out of the dragged URIs.
+       */
+      if (sidebar->drag_list != NULL)
+        {
+          SectionType section_type;
+          PlaceType place_type;
+
+          gtk_tree_model_get_iter (GTK_TREE_MODEL (sidebar->store), &iter, path);
+          gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store),
+                              &iter,
+                              PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type,
+                              PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
+                              -1);
+
+          if (place_type == PLACES_DROP_FEEDBACK ||
+              (section_type == SECTION_BOOKMARKS &&
+               (pos == GTK_TREE_VIEW_DROP_BEFORE || pos == GTK_TREE_VIEW_DROP_AFTER)))
+            {
+              action = GDK_ACTION_COPY;
+              drop_as_bookmarks = TRUE;
+            }
+
+          if (!drop_as_bookmarks)
+            {
+              gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store),
+                                  &iter,
+                                  PLACES_SIDEBAR_COLUMN_URI, &drop_target_uri,
+                                  -1);
+
+              if (drop_target_uri != NULL)
+                {
+                  GFile *dest_file = g_file_new_for_uri (drop_target_uri);
+
+                  action = emit_drag_action_requested (sidebar, context, dest_file, sidebar->drag_list);
+
+                  g_object_unref (dest_file);
+                } /* uri may be NULL for unmounted volumes, for example, so we don't allow drops there */
+            }
+        }
+    }
 
  out:
-       if (action != 0) {
-               check_switch_location_timer (sidebar, drop_target_uri);
-               start_drop_feedback (sidebar, path, pos, drop_as_bookmarks);
-       } else {
-               remove_switch_location_timer (sidebar);
-               stop_drop_feedback (sidebar);
-       }
+  if (action != 0)
+    {
+      check_switch_location_timer (sidebar, drop_target_uri);
+      start_drop_feedback (sidebar, path, pos, drop_as_bookmarks);
+    }
+  else
+    {
+      remove_switch_location_timer (sidebar);
+      stop_drop_feedback (sidebar);
+    }
 
-       g_free (drop_target_uri);
+  g_free (drop_target_uri);
 
-       if (path != NULL) {
-               gtk_tree_path_free (path);
-       }
+  if (path != NULL)
+          gtk_tree_path_free (path);
 
-       g_signal_stop_emission_by_name (tree_view, "drag-motion");
+  g_signal_stop_emission_by_name (tree_view, "drag-motion");
 
-       gdk_drag_status (context, action, time);
+  gdk_drag_status (context, action, time);
 
-       return TRUE;
+  return TRUE;
 }
 
 static gboolean
 drag_leave_timeout_cb (gpointer data)
 {
-       GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (data);
+  GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (data);
 
-       free_drag_data (sidebar);
-       stop_drop_feedback (sidebar);
-       remove_drop_bookmark_feedback_row (sidebar);
+  free_drag_data (sidebar);
+  stop_drop_feedback (sidebar);
+  remove_drop_bookmark_feedback_row (sidebar);
 
-       sidebar->drag_leave_timeout_id = 0;
-       return FALSE;
+  sidebar->drag_leave_timeout_id = 0;
+  return FALSE;
 }
 
 static void
-drag_leave_callback (GtkTreeView *tree_view,
-                    GdkDragContext *context,
-                    unsigned int time,
-                    GtkPlacesSidebar *sidebar)
+drag_leave_callback (GtkTreeView      *tree_view,
+                     GdkDragContext   *context,
+                     guint             time,
+                     GtkPlacesSidebar *sidebar)
 {
-       if (sidebar->drag_leave_timeout_id)
-               g_source_remove (sidebar->drag_leave_timeout_id);
+  if (sidebar->drag_leave_timeout_id)
+    g_source_remove (sidebar->drag_leave_timeout_id);
 
-       sidebar->drag_leave_timeout_id = gdk_threads_add_timeout (500, drag_leave_timeout_cb, sidebar);
-       g_source_set_name_by_id (sidebar->drag_leave_timeout_id, "[gtk+] drag_leave_timeout_cb");
+  sidebar->drag_leave_timeout_id = gdk_threads_add_timeout (500, drag_leave_timeout_cb, sidebar);
+  g_source_set_name_by_id (sidebar->drag_leave_timeout_id, "[gtk+] drag_leave_timeout_cb");
 
-       remove_switch_location_timer (sidebar);
+  remove_switch_location_timer (sidebar);
 
-       g_signal_stop_emission_by_name (tree_view, "drag-leave");
+  g_signal_stop_emission_by_name (tree_view, "drag-leave");
 }
 
 /* Takes an array of URIs and turns it into a list of GFile */
 static GList *
-build_file_list_from_uris (const char **uris)
+build_file_list_from_uris (const gchar **uris)
 {
-       GList *result;
-       int i;
+  GList *result;
+  gint i;
 
-       result = NULL;
-       for (i = 0; uris[i]; i++) {
-               GFile *file;
+  result = NULL;
+  for (i = 0; uris[i]; i++)
+    {
+      GFile *file;
 
-               file = g_file_new_for_uri (uris[i]);
-               result = g_list_prepend (result, file);
-       }
+      file = g_file_new_for_uri (uris[i]);
+      result = g_list_prepend (result, file);
+    }
 
-       return g_list_reverse (result);
+  return g_list_reverse (result);
 }
 
 /* Reorders the selected bookmark to the specified position */
 static void
 reorder_bookmarks (GtkPlacesSidebar *sidebar,
-                  int               new_position)
+                   gint              new_position)
 {
-       GtkTreeIter iter;
-       char *uri;
-       GFile *file;
+  GtkTreeIter iter;
+  gchar *uri;
+  GFile *file;
 
-       /* Get the selected path */
-       if (!get_selected_iter (sidebar, &iter)) {
-               return;
-       }
+  if (!get_selected_iter (sidebar, &iter))
+    return;
 
-       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                           PLACES_SIDEBAR_COLUMN_URI, &uri,
-                           -1);
+  gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                      PLACES_SIDEBAR_COLUMN_URI, &uri,
+                      -1);
 
-       file = g_file_new_for_uri (uri);
-       _gtk_bookmarks_manager_reorder_bookmark (sidebar->bookmarks_manager, file, new_position, NULL); /* 
NULL-GError */
+  file = g_file_new_for_uri (uri);
+  _gtk_bookmarks_manager_reorder_bookmark (sidebar->bookmarks_manager, file, new_position, NULL); /* 
NULL-GError */
 
-       g_object_unref (file);
-       g_free (uri);
+  g_object_unref (file);
+  g_free (uri);
 }
 
 /* Creates bookmarks for the specified files at the given position in the bookmarks list */
 static void
 drop_files_as_bookmarks (GtkPlacesSidebar *sidebar,
-                        GList *files,
-                        int position)
+                         GList            *files,
+                         gint              position)
 {
-       GList *l;
+  GList *l;
 
-       for (l = files; l; l = l->next) {
-               GFile *f = G_FILE (l->data);
-               GFileInfo *info = g_file_query_info (f,
-                                                    G_FILE_ATTRIBUTE_STANDARD_TYPE,
-                                                    G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS,
-                                                    NULL,
-                                                    NULL);
+  for (l = files; l; l = l->next)
+    {
+      GFile *f = G_FILE (l->data);
+      GFileInfo *info = g_file_query_info (f,
+                                           G_FILE_ATTRIBUTE_STANDARD_TYPE,
+                                           G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS,
+                                           NULL,
+                                           NULL);
 
-               if (info) {
-                       if (_gtk_file_info_consider_as_directory (info))
-                               _gtk_bookmarks_manager_insert_bookmark (sidebar->bookmarks_manager, f, 
position++, NULL); /* NULL-GError */
+      if (info)
+        {
+          if (_gtk_file_info_consider_as_directory (info))
+            _gtk_bookmarks_manager_insert_bookmark (sidebar->bookmarks_manager, f, position++, NULL); /* 
NULL-GError */
 
-                       g_object_unref (info);
-               }
-       }
+          g_object_unref (info);
+        }
+    }
 }
 
 static void
-drag_data_received_callback (GtkWidget *widget,
-                            GdkDragContext *context,
-                            int x,
-                            int y,
-                            GtkSelectionData *selection_data,
-                            unsigned int info,
-                            unsigned int time,
-                            GtkPlacesSidebar *sidebar)
-{
-       GtkTreeView *tree_view;
-       GtkTreePath *tree_path;
-       GtkTreeViewDropPosition tree_pos;
-       GtkTreeIter iter;
-       int position;
-       GtkTreeModel *model;
-       PlaceType place_type;
-       SectionType section_type;
-       gboolean success;
-
-       tree_view = GTK_TREE_VIEW (widget);
-
-       if (!sidebar->drag_data_received) {
-               if (gtk_selection_data_get_target (selection_data) != GDK_NONE &&
-                   info == TEXT_URI_LIST) {
-                       char **uris;
-
-                       uris = gtk_selection_data_get_uris (selection_data);
-                       sidebar->drag_list = build_file_list_from_uris ((const char **) uris);
-                       g_strfreev (uris);
-               } else {
-                       sidebar->drag_list = NULL;
-               }
-               sidebar->drag_data_received = TRUE;
-               sidebar->drag_data_info = info;
-       }
-
-       g_signal_stop_emission_by_name (widget, "drag-data-received");
-
-       if (!sidebar->drop_occured) {
-               return;
-       }
-
-       /* Compute position */
-       success = compute_drop_position (tree_view, x, y, &tree_path, &tree_pos, sidebar);
-       if (!success) {
-               goto out;
-       }
-
-       success = FALSE;
-
-       if (sidebar->drag_data_info == GTK_TREE_MODEL_ROW) {
-               /* A bookmark got reordered */
-
-               model = gtk_tree_view_get_model (tree_view);
-
-               if (!gtk_tree_model_get_iter (model, &iter, tree_path)) {
-                       goto out;
-               }
-
-               gtk_tree_model_get (model, &iter,
-                                   PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type,
-                                   PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
-                                   PLACES_SIDEBAR_COLUMN_INDEX, &position,
-                                   -1);
-
-               if (section_type != SECTION_BOOKMARKS) {
-                       goto out;
-               }
-
-               if (place_type == PLACES_HEADING)
-                       position = 0;
-               else if (tree_pos == GTK_TREE_VIEW_DROP_AFTER)
-                       position++;
-
-               reorder_bookmarks (sidebar, position);
-               success = TRUE;
-       } else {
-               /* Dropping URIs! */
-
-               GdkDragAction real_action;
-               char **uris;
-               GList *source_file_list;
-
-               /* file transfer requested */
-               real_action = gdk_drag_context_get_selected_action (context);
-
-               if (real_action == GDK_ACTION_ASK)
-                       real_action = emit_drag_action_ask (sidebar, gdk_drag_context_get_actions (context));
-
-               if (real_action > 0) {
-                       char *uri;
-                       GFile *dest_file;
-                       gboolean drop_as_bookmarks;
-
-                       model = gtk_tree_view_get_model (tree_view);
-
-                       gtk_tree_model_get_iter (model, &iter, tree_path);
-                       gtk_tree_model_get (model, &iter,
-                                           PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type,
-                                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
-                                           PLACES_SIDEBAR_COLUMN_INDEX, &position,
-                                           -1);
-
-                       drop_as_bookmarks = FALSE;
-
-                       uris = gtk_selection_data_get_uris (selection_data);
-                       source_file_list = build_file_list_from_uris ((const char **) uris);
-
-                       if (section_type == SECTION_BOOKMARKS) {
-                               if (place_type == PLACES_HEADING) {
-                                       position = 0;
-                                       tree_pos = GTK_TREE_VIEW_DROP_BEFORE;
-                               }
-
-                               if (tree_pos == GTK_TREE_VIEW_DROP_AFTER)
-                                       position++;
-
-                               if (tree_pos == GTK_TREE_VIEW_DROP_BEFORE
-                                   || tree_pos == GTK_TREE_VIEW_DROP_AFTER
-                                   || place_type == PLACES_DROP_FEEDBACK) {
-                                       remove_drop_bookmark_feedback_row (sidebar);
-                                       drop_files_as_bookmarks (sidebar, source_file_list, position);
-                                       success = TRUE;
-                                       drop_as_bookmarks = TRUE;
-                               }
-                       }
-
-                       if (!drop_as_bookmarks) {
-                               gtk_tree_model_get_iter (model, &iter, tree_path);
-                               gtk_tree_model_get (model, &iter,
-                                                   PLACES_SIDEBAR_COLUMN_URI, &uri,
-                                                   -1);
-
-                               dest_file = g_file_new_for_uri (uri);
-
-                               emit_drag_perform_drop (sidebar, dest_file, source_file_list, real_action);
-                               success = TRUE;
-
-                               g_object_unref (dest_file);
-                               g_free (uri);
-                       }
-
-                       g_list_free_full (source_file_list, g_object_unref);
-                       g_strfreev (uris);
-               }
-       }
+drag_data_received_callback (GtkWidget        *widget,
+                             GdkDragContext   *context,
+                             int               x,
+                             int               y,
+                             GtkSelectionData *selection_data,
+                             guint             info,
+                             guint             time,
+                             GtkPlacesSidebar *sidebar)
+{
+  GtkTreeView *tree_view;
+  GtkTreePath *tree_path;
+  GtkTreeViewDropPosition tree_pos;
+  GtkTreeIter iter;
+  gint position;
+  GtkTreeModel *model;
+  PlaceType place_type;
+  SectionType section_type;
+  gboolean success;
+
+  tree_view = GTK_TREE_VIEW (widget);
+
+  if (!sidebar->drag_data_received)
+    {
+      if (gtk_selection_data_get_target (selection_data) != GDK_NONE &&
+          info == TEXT_URI_LIST)
+        {
+          gchar **uris;
+
+          uris = gtk_selection_data_get_uris (selection_data);
+          sidebar->drag_list = build_file_list_from_uris ((const char **) uris);
+          g_strfreev (uris);
+        }
+      else
+        {
+          sidebar->drag_list = NULL;
+        }
+      sidebar->drag_data_received = TRUE;
+      sidebar->drag_data_info = info;
+    }
+
+  g_signal_stop_emission_by_name (widget, "drag-data-received");
+
+  if (!sidebar->drop_occured)
+    return;
+
+  /* Compute position */
+  success = compute_drop_position (tree_view, x, y, &tree_path, &tree_pos, sidebar);
+  if (!success)
+    goto out;
+
+  success = FALSE;
+
+  if (sidebar->drag_data_info == GTK_TREE_MODEL_ROW)
+    {
+      /* A bookmark got reordered */
+
+      model = gtk_tree_view_get_model (tree_view);
+
+      if (!gtk_tree_model_get_iter (model, &iter, tree_path))
+        goto out;
+
+      gtk_tree_model_get (model, &iter,
+                          PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type,
+                          PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
+                          PLACES_SIDEBAR_COLUMN_INDEX, &position,
+                          -1);
+
+      if (section_type != SECTION_BOOKMARKS)
+        goto out;
+
+      if (place_type == PLACES_HEADING)
+        position = 0;
+      else if (tree_pos == GTK_TREE_VIEW_DROP_AFTER)
+        position++;
+
+      reorder_bookmarks (sidebar, position);
+      success = TRUE;
+    }
+  else
+    {
+      /* Dropping URIs! */
+
+      GdkDragAction real_action;
+      gchar **uris;
+      GList *source_file_list;
+
+      /* file transfer requested */
+      real_action = gdk_drag_context_get_selected_action (context);
+
+      if (real_action == GDK_ACTION_ASK)
+        real_action = emit_drag_action_ask (sidebar, gdk_drag_context_get_actions (context));
+
+      if (real_action > 0)
+        {
+          gchar *uri;
+          GFile *dest_file;
+          gboolean drop_as_bookmarks;
+
+          model = gtk_tree_view_get_model (tree_view);
+
+          gtk_tree_model_get_iter (model, &iter, tree_path);
+          gtk_tree_model_get (model, &iter,
+                              PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type,
+                              PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
+                              PLACES_SIDEBAR_COLUMN_INDEX, &position,
+                              -1);
+
+          drop_as_bookmarks = FALSE;
+
+          uris = gtk_selection_data_get_uris (selection_data);
+          source_file_list = build_file_list_from_uris ((const gchar **) uris);
+
+          if (section_type == SECTION_BOOKMARKS)
+            {
+              if (place_type == PLACES_HEADING)
+                {
+                  position = 0;
+                  tree_pos = GTK_TREE_VIEW_DROP_BEFORE;
+                }
+
+              if (tree_pos == GTK_TREE_VIEW_DROP_AFTER)
+                position++;
+
+              if (tree_pos == GTK_TREE_VIEW_DROP_BEFORE ||
+                  tree_pos == GTK_TREE_VIEW_DROP_AFTER ||
+                  place_type == PLACES_DROP_FEEDBACK)
+                {
+                  remove_drop_bookmark_feedback_row (sidebar);
+                  drop_files_as_bookmarks (sidebar, source_file_list, position);
+                  success = TRUE;
+                  drop_as_bookmarks = TRUE;
+                }
+            }
+
+          if (!drop_as_bookmarks)
+            {
+              gtk_tree_model_get_iter (model, &iter, tree_path);
+              gtk_tree_model_get (model, &iter,
+                                  PLACES_SIDEBAR_COLUMN_URI, &uri,
+                                  -1);
+
+              dest_file = g_file_new_for_uri (uri);
+
+              emit_drag_perform_drop (sidebar, dest_file, source_file_list, real_action);
+              success = TRUE;
+
+              g_object_unref (dest_file);
+              g_free (uri);
+            }
+
+          g_list_free_full (source_file_list, g_object_unref);
+          g_strfreev (uris);
+        }
+    }
 
 out:
-       sidebar->drop_occured = FALSE;
-       free_drag_data (sidebar);
-       remove_drop_bookmark_feedback_row (sidebar);
-       gtk_drag_finish (context, success, FALSE, time);
+  sidebar->drop_occured = FALSE;
+  free_drag_data (sidebar);
+  remove_drop_bookmark_feedback_row (sidebar);
+  gtk_drag_finish (context, success, FALSE, time);
 
-       gtk_tree_path_free (tree_path);
+  gtk_tree_path_free (tree_path);
 }
 
 static gboolean
-drag_drop_callback (GtkTreeView *tree_view,
-                   GdkDragContext *context,
-                   int x,
-                   int y,
-                   unsigned int time,
-                   GtkPlacesSidebar *sidebar)
+drag_drop_callback (GtkTreeView      *tree_view,
+                    GdkDragContext   *context,
+                    gint              x,
+                    gint              y,
+                    guint             time,
+                    GtkPlacesSidebar *sidebar)
 {
-       gboolean retval = FALSE;
+  gboolean retval = FALSE;
 
-       sidebar->drop_occured = TRUE;
-       retval = get_drag_data (tree_view, context, time);
-       g_signal_stop_emission_by_name (tree_view, "drag-drop");
-       return retval;
+  sidebar->drop_occured = TRUE;
+  retval = get_drag_data (tree_view, context, time);
+  g_signal_stop_emission_by_name (tree_view, "drag-drop");
+  return retval;
 }
 
 /* Callback used when the file list's popup menu is detached */
 static void
 bookmarks_popup_menu_detach_cb (GtkWidget *attach_widget,
-                               GtkMenu   *menu)
+                                GtkMenu   *menu)
 {
-       GtkPlacesSidebar *sidebar;
-
-       sidebar = GTK_PLACES_SIDEBAR (attach_widget);
-
-       sidebar->popup_menu = NULL;
+  GTK_PLACES_SIDEBAR (attach_widget)->popup_menu = NULL;
 }
+
 static void
-check_unmount_and_eject (GMount *mount,
-                        GVolume *volume,
-                        GDrive *drive,
-                        gboolean *show_unmount,
-                        gboolean *show_eject)
+check_unmount_and_eject (GMount   *mount,
+                         GVolume  *volume,
+                         GDrive   *drive,
+                         gboolean *show_unmount,
+                         gboolean *show_eject)
 {
-       *show_unmount = FALSE;
-       *show_eject = FALSE;
+  *show_unmount = FALSE;
+  *show_eject = FALSE;
 
-       if (drive != NULL) {
-               *show_eject = g_drive_can_eject (drive);
-       }
+  if (drive != NULL)
+    *show_eject = g_drive_can_eject (drive);
 
-       if (volume != NULL) {
-               *show_eject |= g_volume_can_eject (volume);
-       }
-       if (mount != NULL) {
-               *show_eject |= g_mount_can_eject (mount);
-               *show_unmount = g_mount_can_unmount (mount) && !*show_eject;
-       }
+  if (volume != NULL)
+    *show_eject |= g_volume_can_eject (volume);
+
+  if (mount != NULL)
+    {
+      *show_eject |= g_mount_can_eject (mount);
+      *show_unmount = g_mount_can_unmount (mount) && !*show_eject;
+    }
 }
 
 static void
-check_visibility (GMount           *mount,
-                 GVolume          *volume,
-                 GDrive           *drive,
-                 gboolean         *show_mount,
-                 gboolean         *show_unmount,
-                 gboolean         *show_eject,
-                 gboolean         *show_rescan,
-                 gboolean         *show_start,
-                 gboolean         *show_stop)
-{
-       *show_mount = FALSE;
-       *show_rescan = FALSE;
-       *show_start = FALSE;
-       *show_stop = FALSE;
-
-       check_unmount_and_eject (mount, volume, drive, show_unmount, show_eject);
-
-       if (drive != NULL) {
-               if (g_drive_is_media_removable (drive) &&
-                   !g_drive_is_media_check_automatic (drive) &&
-                   g_drive_can_poll_for_media (drive))
-                       *show_rescan = TRUE;
-
-               *show_start = g_drive_can_start (drive) || g_drive_can_start_degraded (drive);
-               *show_stop  = g_drive_can_stop (drive);
-
-               if (*show_stop)
-                       *show_unmount = FALSE;
-       }
-
-       if (volume != NULL) {
-               if (mount == NULL)
-                       *show_mount = g_volume_can_mount (volume);
-       }
+check_visibility (GMount   *mount,
+                  GVolume  *volume,
+                  GDrive   *drive,
+                  gboolean *show_mount,
+                  gboolean *show_unmount,
+                  gboolean *show_eject,
+                  gboolean *show_rescan,
+                  gboolean *show_start,
+                  gboolean *show_stop)
+{
+  *show_mount = FALSE;
+  *show_rescan = FALSE;
+  *show_start = FALSE;
+  *show_stop = FALSE;
+
+  check_unmount_and_eject (mount, volume, drive, show_unmount, show_eject);
+
+  if (drive != NULL)
+    {
+      if (g_drive_is_media_removable (drive) &&
+          !g_drive_is_media_check_automatic (drive) &&
+          g_drive_can_poll_for_media (drive))
+        *show_rescan = TRUE;
+
+      *show_start = g_drive_can_start (drive) || g_drive_can_start_degraded (drive);
+      *show_stop  = g_drive_can_stop (drive);
+
+      if (*show_stop)
+        *show_unmount = FALSE;
+    }
+
+  if (volume != NULL)
+    {
+      if (mount == NULL)
+        *show_mount = g_volume_can_mount (volume);
+    }
 }
 
 typedef struct {
-       PlaceType type;
-       GDrive *drive;
-       GVolume *volume;
-       GMount *mount;
-       char *uri;
+  PlaceType  type;
+  GDrive    *drive;
+  GVolume   *volume;
+  GMount    *mount;
+  gchar     *uri;
 } SelectionInfo;
 
 static void
-get_selection_info (GtkPlacesSidebar *sidebar, SelectionInfo *info)
+get_selection_info (GtkPlacesSidebar *sidebar,
+                    SelectionInfo    *info)
 {
-       GtkTreeIter iter;
+  GtkTreeIter iter;
 
-       info->type   = PLACES_BUILT_IN;
-       info->drive  = NULL;
-       info->volume = NULL;
-       info->mount  = NULL;
-       info->uri    = NULL;
+  info->type   = PLACES_BUILT_IN;
+  info->drive  = NULL;
+  info->volume = NULL;
+  info->mount  = NULL;
+  info->uri    = NULL;
 
-       if (get_selected_iter (sidebar, &iter)) {
-               gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                                   PLACES_SIDEBAR_COLUMN_ROW_TYPE, &info->type,
-                                   PLACES_SIDEBAR_COLUMN_DRIVE, &info->drive,
-                                   PLACES_SIDEBAR_COLUMN_VOLUME, &info->volume,
-                                   PLACES_SIDEBAR_COLUMN_MOUNT, &info->mount,
-                                   PLACES_SIDEBAR_COLUMN_URI, &info->uri,
-                                   -1);
-       }
+  if (get_selected_iter (sidebar, &iter))
+    gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                        PLACES_SIDEBAR_COLUMN_ROW_TYPE, &info->type,
+                        PLACES_SIDEBAR_COLUMN_DRIVE, &info->drive,
+                        PLACES_SIDEBAR_COLUMN_VOLUME, &info->volume,
+                        PLACES_SIDEBAR_COLUMN_MOUNT, &info->mount,
+                        PLACES_SIDEBAR_COLUMN_URI, &info->uri,
+                        -1);
 }
 
 static void
 free_selection_info (SelectionInfo *info)
 {
-       g_clear_object (&info->drive);
-       g_clear_object (&info->volume);
-       g_clear_object (&info->mount);
-
-       g_clear_pointer (&info->uri, g_free);
+  g_clear_object (&info->drive);
+  g_clear_object (&info->volume);
+  g_clear_object (&info->mount);
+  g_clear_pointer (&info->uri, g_free);
 }
 
 typedef struct {
-       GtkWidget *add_shortcut_item;
-       GtkWidget *remove_item;
-       GtkWidget *rename_item;
-       GtkWidget *separator_item;
-       GtkWidget *mount_item;
-       GtkWidget *unmount_item;
-       GtkWidget *eject_item;
-       GtkWidget *rescan_item;
-       GtkWidget *start_item;
-       GtkWidget *stop_item;
+  GtkWidget *add_shortcut_item;
+  GtkWidget *remove_item;
+  GtkWidget *rename_item;
+  GtkWidget *separator_item;
+  GtkWidget *mount_item;
+  GtkWidget *unmount_item;
+  GtkWidget *eject_item;
+  GtkWidget *rescan_item;
+  GtkWidget *start_item;
+  GtkWidget *stop_item;
 } PopupMenuData;
 
 static void
-check_popup_sensitivity (GtkPlacesSidebar *sidebar, PopupMenuData *data, SelectionInfo *info)
-{
-       gboolean show_mount;
-       gboolean show_unmount;
-       gboolean show_eject;
-       gboolean show_rescan;
-       gboolean show_start;
-       gboolean show_stop;
-
-       gtk_widget_set_visible (data->add_shortcut_item, (info->type == PLACES_MOUNTED_VOLUME));
-
-       gtk_widget_set_sensitive (data->remove_item, (info->type == PLACES_BOOKMARK));
-       gtk_widget_set_sensitive (data->rename_item, (info->type == PLACES_BOOKMARK || info->type == 
PLACES_XDG_DIR));
-
-       check_visibility (info->mount, info->volume, info->drive,
-                         &show_mount, &show_unmount, &show_eject, &show_rescan, &show_start, &show_stop);
-
-       gtk_widget_set_visible (data->separator_item, show_mount || show_unmount || show_eject);
-       gtk_widget_set_visible (data->mount_item, show_mount);
-       gtk_widget_set_visible (data->unmount_item, show_unmount);
-       gtk_widget_set_visible (data->eject_item, show_eject);
-       gtk_widget_set_visible (data->rescan_item, show_rescan);
-       gtk_widget_set_visible (data->start_item, show_start);
-       gtk_widget_set_visible (data->stop_item, show_stop);
-
-       /* Adjust start/stop items to reflect the type of the drive */
-       gtk_menu_item_set_label (GTK_MENU_ITEM (data->start_item), _("_Start"));
-       gtk_menu_item_set_label (GTK_MENU_ITEM (data->stop_item), _("_Stop"));
-       if ((show_start || show_stop) && info->drive != NULL) {
-               switch (g_drive_get_start_stop_type (info->drive)) {
-               case G_DRIVE_START_STOP_TYPE_SHUTDOWN:
-                       /* start() for type G_DRIVE_START_STOP_TYPE_SHUTDOWN is normally not used */
-                       gtk_menu_item_set_label (GTK_MENU_ITEM (data->start_item), _("_Power On"));
-                       gtk_menu_item_set_label (GTK_MENU_ITEM (data->stop_item), _("_Safely Remove Drive"));
-                       break;
-               case G_DRIVE_START_STOP_TYPE_NETWORK:
-                       gtk_menu_item_set_label (GTK_MENU_ITEM (data->start_item), _("_Connect Drive"));
-                       gtk_menu_item_set_label (GTK_MENU_ITEM (data->stop_item), _("_Disconnect Drive"));
-                       break;
-               case G_DRIVE_START_STOP_TYPE_MULTIDISK:
-                       gtk_menu_item_set_label (GTK_MENU_ITEM (data->start_item), _("_Start Multi-disk 
Device"));
-                       gtk_menu_item_set_label (GTK_MENU_ITEM (data->stop_item), _("_Stop Multi-disk 
Device"));
-                       break;
-               case G_DRIVE_START_STOP_TYPE_PASSWORD:
-                       /* stop() for type G_DRIVE_START_STOP_TYPE_PASSWORD is normally not used */
-                       gtk_menu_item_set_label (GTK_MENU_ITEM (data->start_item), _("_Unlock Drive"));
-                       gtk_menu_item_set_label (GTK_MENU_ITEM (data->stop_item), _("_Lock Drive"));
-                       break;
-
-               default:
-               case G_DRIVE_START_STOP_TYPE_UNKNOWN:
-                       /* uses defaults set above */
-                       break;
-               }
-       }
+check_popup_sensitivity (GtkPlacesSidebar *sidebar,
+                         PopupMenuData    *data,
+                         SelectionInfo    *info)
+{
+  gboolean show_mount;
+  gboolean show_unmount;
+  gboolean show_eject;
+  gboolean show_rescan;
+  gboolean show_start;
+  gboolean show_stop;
+
+  gtk_widget_set_visible (data->add_shortcut_item, (info->type == PLACES_MOUNTED_VOLUME));
+
+  gtk_widget_set_sensitive (data->remove_item, (info->type == PLACES_BOOKMARK));
+  gtk_widget_set_sensitive (data->rename_item, (info->type == PLACES_BOOKMARK || info->type == 
PLACES_XDG_DIR));
+
+  check_visibility (info->mount, info->volume, info->drive,
+                    &show_mount, &show_unmount, &show_eject, &show_rescan, &show_start, &show_stop);
+
+  gtk_widget_set_visible (data->separator_item, show_mount || show_unmount || show_eject);
+  gtk_widget_set_visible (data->mount_item, show_mount);
+  gtk_widget_set_visible (data->unmount_item, show_unmount);
+  gtk_widget_set_visible (data->eject_item, show_eject);
+  gtk_widget_set_visible (data->rescan_item, show_rescan);
+  gtk_widget_set_visible (data->start_item, show_start);
+  gtk_widget_set_visible (data->stop_item, show_stop);
+
+  /* Adjust start/stop items to reflect the type of the drive */
+  gtk_menu_item_set_label (GTK_MENU_ITEM (data->start_item), _("_Start"));
+  gtk_menu_item_set_label (GTK_MENU_ITEM (data->stop_item), _("_Stop"));
+  if ((show_start || show_stop) && info->drive != NULL)
+    {
+      switch (g_drive_get_start_stop_type (info->drive))
+        {
+        case G_DRIVE_START_STOP_TYPE_SHUTDOWN:
+          /* start() for type G_DRIVE_START_STOP_TYPE_SHUTDOWN is normally not used */
+          gtk_menu_item_set_label (GTK_MENU_ITEM (data->start_item), _("_Power On"));
+          gtk_menu_item_set_label (GTK_MENU_ITEM (data->stop_item), _("_Safely Remove Drive"));
+          break;
+
+        case G_DRIVE_START_STOP_TYPE_NETWORK:
+          gtk_menu_item_set_label (GTK_MENU_ITEM (data->start_item), _("_Connect Drive"));
+          gtk_menu_item_set_label (GTK_MENU_ITEM (data->stop_item), _("_Disconnect Drive"));
+          break;
+
+        case G_DRIVE_START_STOP_TYPE_MULTIDISK:
+          gtk_menu_item_set_label (GTK_MENU_ITEM (data->start_item), _("_Start Multi-disk Device"));
+          gtk_menu_item_set_label (GTK_MENU_ITEM (data->stop_item), _("_Stop Multi-disk Device"));
+          break;
+
+        case G_DRIVE_START_STOP_TYPE_PASSWORD:
+          /* stop() for type G_DRIVE_START_STOP_TYPE_PASSWORD is normally not used */
+          gtk_menu_item_set_label (GTK_MENU_ITEM (data->start_item), _("_Unlock Drive"));
+          gtk_menu_item_set_label (GTK_MENU_ITEM (data->stop_item), _("_Lock Drive"));
+          break;
+
+        default:
+        case G_DRIVE_START_STOP_TYPE_UNKNOWN:
+          /* uses defaults set above */
+          break;
+        }
+    }
 }
 
 static void
 drive_start_from_bookmark_cb (GObject      *source_object,
-                             GAsyncResult *res,
-                             gpointer      user_data)
-{
-       GtkPlacesSidebar *sidebar;
-       GError *error;
-       char *primary;
-       char *name;
-
-       sidebar = GTK_PLACES_SIDEBAR (user_data);
-
-       error = NULL;
-       if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error)) {
-               if (error->code != G_IO_ERROR_FAILED_HANDLED) {
-                       name = g_drive_get_name (G_DRIVE (source_object));
-                       primary = g_strdup_printf (_("Unable to start %s"), name);
-                       g_free (name);
-                       emit_show_error_message (sidebar, primary, error->message);
-                       g_free (primary);
-               }
-               g_error_free (error);
-       }
-}
-
-/* Callback from g_volume_mount() */
-static void
-volume_mount_cb (GObject *source_object, GAsyncResult *result, gpointer user_data)
-{
-       GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (user_data);
-       GVolume *volume;
-       GError *error;
-       char *primary;
-       char *name;
-       GMount *mount;
-
-       volume = G_VOLUME (source_object);
-
-       error = NULL;
-       if (!g_volume_mount_finish (volume, result, &error)) {
-               if (error->code != G_IO_ERROR_FAILED_HANDLED &&
-                    error->code != G_IO_ERROR_ALREADY_MOUNTED) {
-                       name = g_volume_get_name (G_VOLUME (source_object));
-                       primary = g_strdup_printf (_("Unable to access “%s”"), name);
-                       g_free (name);
-                       emit_show_error_message (sidebar, primary, error->message);
-                       g_free (primary);
-               }
-               g_error_free (error);
-       }
-
-       sidebar->mounting = FALSE;
-
-       mount = g_volume_get_mount (volume);
-       if (mount != NULL) {
-               GFile *location;
-
-               location = g_mount_get_default_location (mount);
-               emit_open_location (sidebar, location, sidebar->go_to_after_mount_open_flags);
-
-               g_object_unref (G_OBJECT (location));
-               g_object_unref (G_OBJECT (mount));
-       }
+                              GAsyncResult *res,
+                              gpointer      user_data)
+{
+  GtkPlacesSidebar *sidebar;
+  GError *error;
+  gchar *primary;
+  gchar *name;
+
+  sidebar = GTK_PLACES_SIDEBAR (user_data);
+
+  error = NULL;
+  if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error))
+    {
+      if (error->code != G_IO_ERROR_FAILED_HANDLED)
+        {
+          name = g_drive_get_name (G_DRIVE (source_object));
+          primary = g_strdup_printf (_("Unable to start %s"), name);
+          g_free (name);
+          emit_show_error_message (sidebar, primary, error->message);
+          g_free (primary);
+        }
+      g_error_free (error);
+    }
+}
 
-       g_object_unref (sidebar);
+static void
+volume_mount_cb (GObject      *source_object,
+                 GAsyncResult *result,
+                 gpointer      user_data)
+{
+  GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (user_data);
+  GVolume *volume;
+  GError *error;
+  gchar *primary;
+  gchar *name;
+  GMount *mount;
+
+  volume = G_VOLUME (source_object);
+
+  error = NULL;
+  if (!g_volume_mount_finish (volume, result, &error))
+    {
+      if (error->code != G_IO_ERROR_FAILED_HANDLED &&
+          error->code != G_IO_ERROR_ALREADY_MOUNTED)
+        {
+          name = g_volume_get_name (G_VOLUME (source_object));
+          primary = g_strdup_printf (_("Unable to access “%s”"), name);
+          g_free (name);
+          emit_show_error_message (sidebar, primary, error->message);
+          g_free (primary);
+        }
+      g_error_free (error);
+    }
+
+  sidebar->mounting = FALSE;
+
+  mount = g_volume_get_mount (volume);
+  if (mount != NULL)
+    {
+      GFile *location;
+
+      location = g_mount_get_default_location (mount);
+      emit_open_location (sidebar, location, sidebar->go_to_after_mount_open_flags);
+
+      g_object_unref (G_OBJECT (location));
+      g_object_unref (G_OBJECT (mount));
+    }
+
+  g_object_unref (sidebar);
 }
 
-/* This was nautilus_file_operations_mount_volume_full() */
 static void
-mount_volume (GtkPlacesSidebar *sidebar, GVolume *volume)
+mount_volume (GtkPlacesSidebar *sidebar,
+              GVolume          *volume)
 {
-       GMountOperation *mount_op;
+  GMountOperation *mount_op;
 
-       mount_op = gtk_mount_operation_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (sidebar))));
-       g_mount_operation_set_password_save (mount_op, G_PASSWORD_SAVE_FOR_SESSION);
+  mount_op = gtk_mount_operation_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (sidebar))));
+  g_mount_operation_set_password_save (mount_op, G_PASSWORD_SAVE_FOR_SESSION);
 
-       g_object_ref (sidebar);
-       g_volume_mount (volume, 0, mount_op, NULL, volume_mount_cb, sidebar);
+  g_object_ref (sidebar);
+  g_volume_mount (volume, 0, mount_op, NULL, volume_mount_cb, sidebar);
 }
 
 static void
 open_selected_volume (GtkPlacesSidebar   *sidebar,
-                     GtkTreeModel       *model,
-                     GtkTreeIter        *iter,
-                     GtkPlacesOpenFlags  open_flags)
+                      GtkTreeModel       *model,
+                      GtkTreeIter        *iter,
+                      GtkPlacesOpenFlags  open_flags)
 {
-       GDrive *drive;
-       GVolume *volume;
-
-       gtk_tree_model_get (model, iter,
-                           PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
-                           PLACES_SIDEBAR_COLUMN_VOLUME, &volume,
-                           -1);
-
-       if (volume != NULL && !sidebar->mounting) {
-               sidebar->mounting = TRUE;
+  GDrive *drive;
+  GVolume *volume;
 
-               sidebar->go_to_after_mount_open_flags = open_flags;
+  gtk_tree_model_get (model, iter,
+                      PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
+                      PLACES_SIDEBAR_COLUMN_VOLUME, &volume,
+                      -1);
 
-               mount_volume (sidebar, volume);
-       } else if (volume == NULL && drive != NULL &&
-                  (g_drive_can_start (drive) || g_drive_can_start_degraded (drive))) {
-               GMountOperation *mount_op;
+  if (volume != NULL && !sidebar->mounting)
+    {
+      sidebar->mounting = TRUE;
+      sidebar->go_to_after_mount_open_flags = open_flags;
+      mount_volume (sidebar, volume);
+    }
+  else if (volume == NULL && drive != NULL &&
+           (g_drive_can_start (drive) || g_drive_can_start_degraded (drive)))
+    {
+      GMountOperation *mount_op;
 
-               mount_op = gtk_mount_operation_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET 
(sidebar))));
-               g_drive_start (drive, G_DRIVE_START_NONE, mount_op, NULL, drive_start_from_bookmark_cb, NULL);
-               g_object_unref (mount_op);
-       }
+      mount_op = gtk_mount_operation_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (sidebar))));
+      g_drive_start (drive, G_DRIVE_START_NONE, mount_op, NULL, drive_start_from_bookmark_cb, NULL);
+      g_object_unref (mount_op);
+    }
 
-       if (drive != NULL)
-               g_object_unref (drive);
+  if (drive != NULL)
+    g_object_unref (drive);
 
-       if (volume != NULL)
-               g_object_unref (volume);
+  if (volume != NULL)
+    g_object_unref (volume);
 }
 
 static void
 open_selected_uri (GtkPlacesSidebar   *sidebar,
-                  const gchar        *uri,
-                  GtkPlacesOpenFlags  open_flags)
+                   const gchar        *uri,
+                   GtkPlacesOpenFlags  open_flags)
 {
-       GFile *location;
+  GFile *location;
 
-       location = g_file_new_for_uri (uri);
-       emit_open_location (sidebar, location, open_flags);
-       g_object_unref (location);
+  location = g_file_new_for_uri (uri);
+  emit_open_location (sidebar, location, open_flags);
+  g_object_unref (location);
 }
 
 static void
-open_selected_bookmark (GtkPlacesSidebar       *sidebar,
-                       GtkTreeModel            *model,
-                       GtkTreeIter             *iter,
-                       GtkPlacesOpenFlags       open_flags)
-{
-       char *uri;
-       PlaceType place_type;
-
-       if (!iter) {
-               return;
-       }
-
-       gtk_tree_model_get (model, iter,
-                           PLACES_SIDEBAR_COLUMN_URI, &uri,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
-                           -1);
-
-       if (uri != NULL) {
-               open_selected_uri (sidebar, uri, open_flags);
-               g_free (uri);
-       } else if (place_type == PLACES_CONNECT_TO_SERVER) {
-               emit_show_connect_to_server (sidebar);
-       } else {
-               open_selected_volume (sidebar, model, iter, open_flags);
-       }
+open_selected_bookmark (GtkPlacesSidebar   *sidebar,
+                        GtkTreeModel       *model,
+                        GtkTreeIter        *iter,
+                        GtkPlacesOpenFlags  open_flags)
+{
+  gchar *uri;
+  PlaceType place_type;
+
+  if (!iter)
+    return;
+
+  gtk_tree_model_get (model, iter,
+                      PLACES_SIDEBAR_COLUMN_URI, &uri,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
+                      -1);
+
+  if (uri != NULL)
+    {
+      open_selected_uri (sidebar, uri, open_flags);
+      g_free (uri);
+    }
+  else if (place_type == PLACES_CONNECT_TO_SERVER)
+    {
+      emit_show_connect_to_server (sidebar);
+    }
+  else
+    {
+      open_selected_volume (sidebar, model, iter, open_flags);
+    }
 }
 
 static void
-open_shortcut_from_menu (GtkPlacesSidebar *sidebar,
-                        GtkPlacesOpenFlags open_flags)
+open_shortcut_from_menu (GtkPlacesSidebar   *sidebar,
+                         GtkPlacesOpenFlags  open_flags)
 {
-       GtkTreeModel *model;
-       GtkTreeIter iter;
-       GtkTreePath *path = NULL;
+  GtkTreeModel *model;
+  GtkTreeIter iter;
+  GtkTreePath *path = NULL;
 
-       model = gtk_tree_view_get_model (sidebar->tree_view);
-       gtk_tree_view_get_cursor (sidebar->tree_view, &path, NULL);
+  model = gtk_tree_view_get_model (sidebar->tree_view);
+  gtk_tree_view_get_cursor (sidebar->tree_view, &path, NULL);
 
-       if (path != NULL && gtk_tree_model_get_iter (model, &iter, path)) {
-               open_selected_bookmark (sidebar, model, &iter, open_flags);
-       }
+  if (path != NULL && gtk_tree_model_get_iter (model, &iter, path))
+    open_selected_bookmark (sidebar, model, &iter, open_flags);
 
-       gtk_tree_path_free (path);
+  gtk_tree_path_free (path);
 }
 
 /* Callback used for the "Open" menu item in the context menu */
 static void
 open_shortcut_cb (GtkMenuItem      *item,
-                 GtkPlacesSidebar *sidebar)
+                  GtkPlacesSidebar *sidebar)
 {
-       open_shortcut_from_menu (sidebar, GTK_PLACES_OPEN_NORMAL);
+  open_shortcut_from_menu (sidebar, GTK_PLACES_OPEN_NORMAL);
 }
 
 /* Callback used for the "Open in new tab" menu item in the context menu */
 static void
 open_shortcut_in_new_tab_cb (GtkMenuItem      *item,
-                            GtkPlacesSidebar *sidebar)
+                             GtkPlacesSidebar *sidebar)
 {
-       open_shortcut_from_menu (sidebar, GTK_PLACES_OPEN_NEW_TAB);
+  open_shortcut_from_menu (sidebar, GTK_PLACES_OPEN_NEW_TAB);
 }
 
 /* Callback used for the "Open in new window" menu item in the context menu */
 static void
 open_shortcut_in_new_window_cb (GtkMenuItem      *item,
-                               GtkPlacesSidebar *sidebar)
+                                GtkPlacesSidebar *sidebar)
 {
-       open_shortcut_from_menu (sidebar, GTK_PLACES_OPEN_NEW_WINDOW);
+  open_shortcut_from_menu (sidebar, GTK_PLACES_OPEN_NEW_WINDOW);
 }
 
 /* Add bookmark for the selected item - just used from mount points */
 static void
-add_shortcut_cb (GtkMenuItem           *item,
-                GtkPlacesSidebar *sidebar)
+add_shortcut_cb (GtkMenuItem      *item,
+                 GtkPlacesSidebar *sidebar)
 {
-       GtkTreeModel *model;
-       GtkTreeIter iter;
-       char *uri;
-       char *name;
-       GFile *location;
+  GtkTreeModel *model;
+  GtkTreeIter iter;
+  gchar *uri;
+  gchar *name;
+  GFile *location;
 
-       model = gtk_tree_view_get_model (sidebar->tree_view);
+  model = gtk_tree_view_get_model (sidebar->tree_view);
 
-       if (get_selected_iter (sidebar, &iter)) {
-               gtk_tree_model_get (model, &iter,
-                                   PLACES_SIDEBAR_COLUMN_URI, &uri,
-                                   PLACES_SIDEBAR_COLUMN_NAME, &name,
-                                   -1);
+  if (get_selected_iter (sidebar, &iter))
+    {
+      gtk_tree_model_get (model, &iter,
+                          PLACES_SIDEBAR_COLUMN_URI, &uri,
+                          PLACES_SIDEBAR_COLUMN_NAME, &name,
+                          -1);
 
-               if (uri == NULL) {
-                       return;
-               }
+      if (uri == NULL)
+        return;
 
-               location = g_file_new_for_uri (uri);
-               if (_gtk_bookmarks_manager_insert_bookmark (sidebar->bookmarks_manager, location, -1, NULL))
-                       _gtk_bookmarks_manager_set_bookmark_label (sidebar->bookmarks_manager, location, 
name, NULL);
+      location = g_file_new_for_uri (uri);
+      if (_gtk_bookmarks_manager_insert_bookmark (sidebar->bookmarks_manager, location, -1, NULL))
+        _gtk_bookmarks_manager_set_bookmark_label (sidebar->bookmarks_manager, location, name, NULL);
 
-               g_object_unref (location);
-               g_free (uri);
-               g_free (name);
-       }
+      g_object_unref (location);
+      g_free (uri);
+      g_free (name);
+    }
 }
 
 /* Rename the selected bookmark */
 static void
 rename_selected_bookmark (GtkPlacesSidebar *sidebar)
 {
-       GtkTreeIter iter;
-       GtkTreePath *path;
-       GtkTreeViewColumn *column;
-       GtkCellRenderer *cell;
-       GList *renderers;
-       PlaceType type;
-
-       if (get_selected_iter (sidebar, &iter)) {
-               gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                                   PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
-                                   -1);
-
-               if (type != PLACES_BOOKMARK && type != PLACES_XDG_DIR) {
-                       return;
-               }
-
-               path = gtk_tree_model_get_path (GTK_TREE_MODEL (sidebar->store), &iter);
-               column = gtk_tree_view_get_column (GTK_TREE_VIEW (sidebar->tree_view), 0);
-               renderers = gtk_cell_layout_get_cells (GTK_CELL_LAYOUT (column));
-               cell = g_list_nth_data (renderers, 6);
-               g_list_free (renderers);
-               g_object_set (cell, "editable", TRUE, NULL);
-               gtk_tree_view_set_cursor_on_cell (GTK_TREE_VIEW (sidebar->tree_view),
-                                               path, column, cell, TRUE);
-               gtk_tree_path_free (path);
-       }
+  GtkTreeIter iter;
+  GtkTreePath *path;
+  GtkTreeViewColumn *column;
+  GtkCellRenderer *cell;
+  GList *renderers;
+  PlaceType type;
+
+  if (get_selected_iter (sidebar, &iter))
+    {
+      gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                          PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
+                          -1);
+
+      if (type != PLACES_BOOKMARK && type != PLACES_XDG_DIR)
+        return;
+
+      path = gtk_tree_model_get_path (GTK_TREE_MODEL (sidebar->store), &iter);
+      column = gtk_tree_view_get_column (GTK_TREE_VIEW (sidebar->tree_view), 0);
+      renderers = gtk_cell_layout_get_cells (GTK_CELL_LAYOUT (column));
+      cell = g_list_nth_data (renderers, 6);
+      g_list_free (renderers);
+      g_object_set (cell, "editable", TRUE, NULL);
+      gtk_tree_view_set_cursor_on_cell (GTK_TREE_VIEW (sidebar->tree_view),
+                                        path, column, cell, TRUE);
+      gtk_tree_path_free (path);
+    }
 }
 
 static void
-rename_shortcut_cb (GtkMenuItem           *item,
-                   GtkPlacesSidebar *sidebar)
+rename_shortcut_cb (GtkMenuItem      *item,
+                    GtkPlacesSidebar *sidebar)
 {
-       rename_selected_bookmark (sidebar);
+  rename_selected_bookmark (sidebar);
 }
 
 /* Removes the selected bookmarks */
 static void
 remove_selected_bookmarks (GtkPlacesSidebar *sidebar)
 {
-       GtkTreeIter iter;
-       PlaceType type;
-       char *uri;
-       GFile *file;
+  GtkTreeIter iter;
+  PlaceType type;
+  gchar *uri;
+  GFile *file;
 
-       if (!get_selected_iter (sidebar, &iter)) {
-               return;
-       }
+  if (!get_selected_iter (sidebar, &iter))
+    return;
 
-       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
-                           -1);
+  gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
+                      -1);
 
-       if (type != PLACES_BOOKMARK) {
-               return;
-       }
+  if (type != PLACES_BOOKMARK)
+    return;
 
-       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                           PLACES_SIDEBAR_COLUMN_URI, &uri,
-                           -1);
+  gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                      PLACES_SIDEBAR_COLUMN_URI, &uri,
+                      -1);
 
-       file = g_file_new_for_uri (uri);
-       _gtk_bookmarks_manager_remove_bookmark (sidebar->bookmarks_manager, file, NULL);
+  file = g_file_new_for_uri (uri);
+  _gtk_bookmarks_manager_remove_bookmark (sidebar->bookmarks_manager, file, NULL);
 
-       g_object_unref (file);
-       g_free (uri);
+  g_object_unref (file);
+  g_free (uri);
 }
 
 static void
-remove_shortcut_cb (GtkMenuItem           *item,
-                   GtkPlacesSidebar *sidebar)
+remove_shortcut_cb (GtkMenuItem      *item,
+                    GtkPlacesSidebar *sidebar)
 {
-       remove_selected_bookmarks (sidebar);
+  remove_selected_bookmarks (sidebar);
 }
 
 static void
-mount_shortcut_cb (GtkMenuItem           *item,
-                  GtkPlacesSidebar *sidebar)
+mount_shortcut_cb (GtkMenuItem      *item,
+                   GtkPlacesSidebar *sidebar)
 {
-       GtkTreeIter iter;
-       GVolume *volume;
+  GtkTreeIter iter;
+  GVolume *volume;
 
-       if (!get_selected_iter (sidebar, &iter)) {
-               return;
-       }
+  if (!get_selected_iter (sidebar, &iter))
+    return;
 
-       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                           PLACES_SIDEBAR_COLUMN_VOLUME, &volume,
-                           -1);
+  gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                      PLACES_SIDEBAR_COLUMN_VOLUME, &volume,
+                      -1);
 
-       if (volume != NULL) {
-               mount_volume (sidebar, volume);
-               g_object_unref (volume);
-       }
+  if (volume != NULL)
+    {
+      mount_volume (sidebar, volume);
+      g_object_unref (volume);
+    }
 }
 
 /* Callback used from g_mount_unmount_with_operation() */
 static void
-unmount_mount_cb (GObject *source_object,
-                 GAsyncResult *result,
-                 gpointer user_data)
+unmount_mount_cb (GObject      *source_object,
+                  GAsyncResult *result,
+                  gpointer      user_data)
 {
-       GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (user_data);
-       GMount *mount;
-       GError *error;
+  GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (user_data);
+  GMount *mount;
+  GError *error;
 
-       mount = G_MOUNT (source_object);
+  mount = G_MOUNT (source_object);
 
-       error = NULL;
-       if (!g_mount_unmount_with_operation_finish (mount, result, &error)) {
-               if (error->code != G_IO_ERROR_FAILED_HANDLED) {
-                       char *name;
-                       char *primary;
+  error = NULL;
+  if (!g_mount_unmount_with_operation_finish (mount, result, &error))
+    {
+      if (error->code != G_IO_ERROR_FAILED_HANDLED)
+        {
+          gchar *name;
+          gchar *primary;
 
-                       name = g_mount_get_name (mount);
-                       primary = g_strdup_printf (_("Unable to unmount %s"), name);
-                       g_free (name);
-                       emit_show_error_message (sidebar, primary, error->message);
-                       g_free (primary);
-               }
+          name = g_mount_get_name (mount);
+          primary = g_strdup_printf (_("Unable to unmount %s"), name);
+          g_free (name);
+          emit_show_error_message (sidebar, primary, error->message);
+          g_free (primary);
+        }
 
-               g_error_free (error);
-       }
+      g_error_free (error);
+    }
 
-       /* FIXME: we need to switch to a path that is available now - $HOME? */
+  /* FIXME: we need to switch to a path that is available now - $HOME? */
 
-       g_object_unref (sidebar);
+  g_object_unref (sidebar);
 }
 
 static void
 show_unmount_progress_cb (GMountOperation *op,
-                         const gchar *message,
-                         gint64 time_left,
-                         gint64 bytes_left,
-                         gpointer user_data)
-{
-       /* FIXME: These are just libnotify notifications, but GTK+ doesn't do notifications right now.
-        * Should we just call D-Bus directly?
-        */
-#if DO_NOT_COMPILE
-       NautilusApplication *app = NAUTILUS_APPLICATION (g_application_get_default ());
-
-       if (bytes_left == 0) {
-               nautilus_application_notify_unmount_done (app, message);
-       } else {
-               nautilus_application_notify_unmount_show (app, message);
-       }
+                          const gchar     *message,
+                          gint64           time_left,
+                          gint64           bytes_left,
+                          gpointer         user_data)
+{
+  /* FIXME: These are just libnotify notifications, but GTK+ doesn't do notifications right now.
+   * Should we just call D-Bus directly?
+   */
+#if 0
+  NautilusApplication *app = NAUTILUS_APPLICATION (g_application_get_default ());
+
+  if (bytes_left == 0) {
+          nautilus_application_notify_unmount_done (app, message);
+  } else {
+          nautilus_application_notify_unmount_show (app, message);
+  }
 #endif
 }
 
 static void
 show_unmount_progress_aborted_cb (GMountOperation *op,
-                                 gpointer user_data)
-{
-       /* FIXME: These are just libnotify notifications, but GTK+ doesn't do notifications right now.
-        * Should we just call D-Bus directly?
-        */
-#if DO_NOT_COMPILE
-       NautilusApplication *app = NAUTILUS_APPLICATION (g_application_get_default ());
-       nautilus_application_notify_unmount_done (app, NULL);
+                                  gpointer         user_data)
+{
+  /* FIXME: These are just libnotify notifications, but GTK+ doesn't do notifications right now.
+   * Should we just call D-Bus directly?
+   */
+#if 0
+  NautilusApplication *app = NAUTILUS_APPLICATION (g_application_get_default ());
+  nautilus_application_notify_unmount_done (app, NULL);
 #endif
 }
 
 static GMountOperation *
 get_unmount_operation (GtkPlacesSidebar *sidebar)
 {
-       GMountOperation *mount_op;
+  GMountOperation *mount_op;
 
-       mount_op = gtk_mount_operation_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (sidebar))));
-       g_signal_connect (mount_op, "show-unmount-progress",
-                         G_CALLBACK (show_unmount_progress_cb), sidebar);
-       g_signal_connect (mount_op, "aborted",
-                         G_CALLBACK (show_unmount_progress_aborted_cb), sidebar);
+  mount_op = gtk_mount_operation_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (sidebar))));
+  g_signal_connect (mount_op, "show-unmount-progress",
+                    G_CALLBACK (show_unmount_progress_cb), sidebar);
+  g_signal_connect (mount_op, "aborted",
+                    G_CALLBACK (show_unmount_progress_aborted_cb), sidebar);
 
-       return mount_op;
+  return mount_op;
 }
 
 static void
-do_unmount (GMount *mount,
-           GtkPlacesSidebar *sidebar)
+do_unmount (GMount           *mount,
+            GtkPlacesSidebar *sidebar)
 {
-       if (mount != NULL) {
-               GMountOperation *mount_op;
+  if (mount != NULL)
+    {
+      GMountOperation *mount_op;
 
-               mount_op = get_unmount_operation (sidebar);
-               g_mount_unmount_with_operation (mount,
-                                               0,
-                                               mount_op,
-                                               NULL,
-                                               unmount_mount_cb,
-                                               g_object_ref (sidebar));
-               g_object_unref (mount_op);
-       }
+      mount_op = get_unmount_operation (sidebar);
+      g_mount_unmount_with_operation (mount,
+                                      0,
+                                      mount_op,
+                                      NULL,
+                                      unmount_mount_cb,
+                                      g_object_ref (sidebar));
+      g_object_unref (mount_op);
+    }
 }
 
 static void
 do_unmount_selection (GtkPlacesSidebar *sidebar)
 {
-       GtkTreeIter iter;
-       GMount *mount;
+  GtkTreeIter iter;
+  GMount *mount;
 
-       if (!get_selected_iter (sidebar, &iter)) {
-               return;
-       }
+  if (!get_selected_iter (sidebar, &iter))
+    return;
 
-       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                           PLACES_SIDEBAR_COLUMN_MOUNT, &mount,
-                           -1);
+  gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                      PLACES_SIDEBAR_COLUMN_MOUNT, &mount,
+                      -1);
 
-       if (mount != NULL) {
-               do_unmount (mount, sidebar);
-               g_object_unref (mount);
-       }
+  if (mount != NULL)
+    {
+      do_unmount (mount, sidebar);
+      g_object_unref (mount);
+    }
 }
 
 static void
-unmount_shortcut_cb (GtkMenuItem           *item,
-                    GtkPlacesSidebar *sidebar)
+unmount_shortcut_cb (GtkMenuItem      *item,
+                     GtkPlacesSidebar *sidebar)
 {
-       do_unmount_selection (sidebar);
+  do_unmount_selection (sidebar);
 }
 
 static void
-drive_eject_cb (GObject *source_object,
-               GAsyncResult *res,
-               gpointer user_data)
-{
-       GtkPlacesSidebar *sidebar;
-       GError *error;
-       char *primary;
-       char *name;
+drive_eject_cb (GObject      *source_object,
+                GAsyncResult *res,
+                gpointer      user_data)
+{
+  GtkPlacesSidebar *sidebar;
+  GError *error;
+  gchar *primary;
+  gchar *name;
+
+  sidebar = user_data;
+
+  error = NULL;
+  if (!g_drive_eject_with_operation_finish (G_DRIVE (source_object), res, &error))
+    {
+      if (error->code != G_IO_ERROR_FAILED_HANDLED)
+        {
+          name = g_drive_get_name (G_DRIVE (source_object));
+          primary = g_strdup_printf (_("Unable to eject %s"), name);
+          g_free (name);
+          emit_show_error_message (sidebar, primary, error->message);
+          g_free (primary);
+        }
+      g_error_free (error);
+    }
+
+  g_object_unref (sidebar);
+}
 
-       sidebar = user_data;
+static void
+volume_eject_cb (GObject      *source_object,
+                 GAsyncResult *res,
+                 gpointer      user_data)
+{
+  GtkPlacesSidebar *sidebar;
+  GError *error;
+  gchar *primary;
+  gchar *name;
+
+  sidebar = user_data;
+
+  error = NULL;
+  if (!g_volume_eject_with_operation_finish (G_VOLUME (source_object), res, &error))
+    {
+      if (error->code != G_IO_ERROR_FAILED_HANDLED)
+        {
+          name = g_volume_get_name (G_VOLUME (source_object));
+          primary = g_strdup_printf (_("Unable to eject %s"), name);
+          g_free (name);
+          emit_show_error_message (sidebar, primary, error->message);
+          g_free (primary);
+        }
+      g_error_free (error);
+    }
+
+  g_object_unref (sidebar);
+}
 
-       error = NULL;
-       if (!g_drive_eject_with_operation_finish (G_DRIVE (source_object), res, &error)) {
-               if (error->code != G_IO_ERROR_FAILED_HANDLED) {
-                       name = g_drive_get_name (G_DRIVE (source_object));
-                       primary = g_strdup_printf (_("Unable to eject %s"), name);
-                       g_free (name);
-                       emit_show_error_message (sidebar, primary, error->message);
-                       g_free (primary);
-               }
-               g_error_free (error);
-       }
+static void
+mount_eject_cb (GObject      *source_object,
+                GAsyncResult *res,
+                gpointer      user_data)
+{
+  GtkPlacesSidebar *sidebar;
+  GError *error;
+  gchar *primary;
+  gchar *name;
+
+  sidebar = user_data;
+
+  error = NULL;
+  if (!g_mount_eject_with_operation_finish (G_MOUNT (source_object), res, &error))
+    {
+      if (error->code != G_IO_ERROR_FAILED_HANDLED)
+        {
+          name = g_mount_get_name (G_MOUNT (source_object));
+          primary = g_strdup_printf (_("Unable to eject %s"), name);
+          g_free (name);
+          emit_show_error_message (sidebar, primary, error->message);
+          g_free (primary);
+        }
+      g_error_free (error);
+    }
+
+  g_object_unref (sidebar);
+}
 
-       g_object_unref (sidebar);
+static void
+do_eject (GMount           *mount,
+          GVolume          *volume,
+          GDrive           *drive,
+          GtkPlacesSidebar *sidebar)
+{
+  GMountOperation *mount_op;
+
+  mount_op = get_unmount_operation (sidebar);
+  if (mount != NULL)
+    g_mount_eject_with_operation (mount, 0, mount_op, NULL, mount_eject_cb,
+                                  g_object_ref (sidebar));
+  else if (volume != NULL)
+    g_volume_eject_with_operation (volume, 0, mount_op, NULL, volume_eject_cb,
+                                   g_object_ref (sidebar));
+  else if (drive != NULL)
+    g_drive_eject_with_operation (drive, 0, mount_op, NULL, drive_eject_cb,
+                                  g_object_ref (sidebar));
+  g_object_unref (mount_op);
 }
 
 static void
-volume_eject_cb (GObject *source_object,
-               GAsyncResult *res,
-               gpointer user_data)
+eject_shortcut_cb (GtkMenuItem      *item,
+                   GtkPlacesSidebar *sidebar)
 {
-       GtkPlacesSidebar *sidebar;
-       GError *error;
-       char *primary;
-       char *name;
+  GtkTreeIter iter;
+  GMount *mount;
+  GVolume *volume;
+  GDrive *drive;
 
-       sidebar = user_data;
+  if (!get_selected_iter (sidebar, &iter))
+    return;
 
-       error = NULL;
-       if (!g_volume_eject_with_operation_finish (G_VOLUME (source_object), res, &error)) {
-               if (error->code != G_IO_ERROR_FAILED_HANDLED) {
-                       name = g_volume_get_name (G_VOLUME (source_object));
-                       primary = g_strdup_printf (_("Unable to eject %s"), name);
-                       g_free (name);
-                       emit_show_error_message (sidebar, primary, error->message);
-                       g_free (primary);
-               }
-               g_error_free (error);
-       }
+  gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                      PLACES_SIDEBAR_COLUMN_MOUNT, &mount,
+                      PLACES_SIDEBAR_COLUMN_VOLUME, &volume,
+                      PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
+                      -1);
 
-       g_object_unref (sidebar);
+  do_eject (mount, volume, drive, sidebar);
 }
 
-static void
-mount_eject_cb (GObject *source_object,
-               GAsyncResult *res,
-               gpointer user_data)
+static gboolean
+eject_or_unmount_bookmark (GtkPlacesSidebar *sidebar,
+                           GtkTreePath      *path)
 {
-       GtkPlacesSidebar *sidebar;
-       GError *error;
-       char *primary;
-       char *name;
+  GtkTreeModel *model;
+  GtkTreeIter iter;
+  gboolean can_unmount, can_eject;
+  GMount *mount;
+  GVolume *volume;
+  GDrive *drive;
+  gboolean ret;
 
-       sidebar = user_data;
+  model = GTK_TREE_MODEL (sidebar->store);
 
-       error = NULL;
-       if (!g_mount_eject_with_operation_finish (G_MOUNT (source_object), res, &error)) {
-               if (error->code != G_IO_ERROR_FAILED_HANDLED) {
-                       name = g_mount_get_name (G_MOUNT (source_object));
-                       primary = g_strdup_printf (_("Unable to eject %s"), name);
-                       g_free (name);
-                       emit_show_error_message (sidebar, primary, error->message);
-                       g_free (primary);
-               }
-               g_error_free (error);
-       }
+  if (!path)
+    return FALSE;
 
-       g_object_unref (sidebar);
-}
+  if (!gtk_tree_model_get_iter (model, &iter, path))
+    return FALSE;
 
-static void
-do_eject (GMount *mount,
-         GVolume *volume,
-         GDrive *drive,
-         GtkPlacesSidebar *sidebar)
-{
-       GMountOperation *mount_op;
-
-       mount_op = get_unmount_operation (sidebar);
-       if (mount != NULL) {
-               g_mount_eject_with_operation (mount, 0, mount_op, NULL, mount_eject_cb,
-                                             g_object_ref (sidebar));
-       } else if (volume != NULL) {
-               g_volume_eject_with_operation (volume, 0, mount_op, NULL, volume_eject_cb,
-                                             g_object_ref (sidebar));
-       } else if (drive != NULL) {
-               g_drive_eject_with_operation (drive, 0, mount_op, NULL, drive_eject_cb,
-                                             g_object_ref (sidebar));
-       }
-       g_object_unref (mount_op);
-}
+  gtk_tree_model_get (model, &iter,
+                      PLACES_SIDEBAR_COLUMN_MOUNT, &mount,
+                      PLACES_SIDEBAR_COLUMN_VOLUME, &volume,
+                      PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
+                      -1);
 
-static void
-eject_shortcut_cb (GtkMenuItem           *item,
-                  GtkPlacesSidebar *sidebar)
-{
-       GtkTreeIter iter;
-       GMount *mount;
-       GVolume *volume;
-       GDrive *drive;
+  ret = FALSE;
 
-       if (!get_selected_iter (sidebar, &iter)) {
-               return;
-       }
+  check_unmount_and_eject (mount, volume, drive, &can_unmount, &can_eject);
+  /* if we can eject, it has priority over unmount */
+  if (can_eject)
+    {
+      do_eject (mount, volume, drive, sidebar);
+      ret = TRUE;
+    }
+  else if (can_unmount)
+    {
+      do_unmount (mount, sidebar);
+      ret = TRUE;
+    }
 
-       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                           PLACES_SIDEBAR_COLUMN_MOUNT, &mount,
-                           PLACES_SIDEBAR_COLUMN_VOLUME, &volume,
-                           PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
-                           -1);
+  g_clear_object (&mount);
+  g_clear_object (&volume);
+  g_clear_object (&drive);
 
-       do_eject (mount, volume, drive, sidebar);
-}
-
-static gboolean
-eject_or_unmount_bookmark (GtkPlacesSidebar *sidebar,
-                          GtkTreePath *path)
-{
-       GtkTreeModel *model;
-       GtkTreeIter iter;
-       gboolean can_unmount, can_eject;
-       GMount *mount;
-       GVolume *volume;
-       GDrive *drive;
-       gboolean ret;
-
-       model = GTK_TREE_MODEL (sidebar->store);
-
-       if (!path) {
-               return FALSE;
-       }
-       if (!gtk_tree_model_get_iter (model, &iter, path)) {
-               return FALSE;
-       }
-
-       gtk_tree_model_get (model, &iter,
-                           PLACES_SIDEBAR_COLUMN_MOUNT, &mount,
-                           PLACES_SIDEBAR_COLUMN_VOLUME, &volume,
-                           PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
-                           -1);
-
-       ret = FALSE;
-
-       check_unmount_and_eject (mount, volume, drive, &can_unmount, &can_eject);
-       /* if we can eject, it has priority over unmount */
-       if (can_eject) {
-               do_eject (mount, volume, drive, sidebar);
-               ret = TRUE;
-       } else if (can_unmount) {
-               do_unmount (mount, sidebar);
-               ret = TRUE;
-       }
-
-       g_clear_object (&mount);
-       g_clear_object (&volume);
-       g_clear_object (&drive);
-
-       return ret;
+  return ret;
 }
 
 static gboolean
 eject_or_unmount_selection (GtkPlacesSidebar *sidebar)
 {
-       GtkTreeIter iter;
-       GtkTreePath *path;
-       gboolean ret;
+  GtkTreeIter iter;
+  GtkTreePath *path;
+  gboolean ret;
 
-       if (!get_selected_iter (sidebar, &iter)) {
-               return FALSE;
-       }
+  if (!get_selected_iter (sidebar, &iter))
+    return FALSE;
 
-       path = gtk_tree_model_get_path (GTK_TREE_MODEL (sidebar->store), &iter);
-       if (path == NULL) {
-               return FALSE;
-       }
+  path = gtk_tree_model_get_path (GTK_TREE_MODEL (sidebar->store), &iter);
+  if (path == NULL)
+    return FALSE;
 
-       ret = eject_or_unmount_bookmark (sidebar, path);
+  ret = eject_or_unmount_bookmark (sidebar, path);
 
-       gtk_tree_path_free (path);
+  gtk_tree_path_free (path);
 
-       return ret;
+  return ret;
 }
 
 static void
-drive_poll_for_media_cb (GObject *source_object,
-                        GAsyncResult *res,
-                        gpointer user_data)
-{
-       GtkPlacesSidebar *sidebar;
-       GError *error;
-       char *primary;
-       char *name;
-
-       sidebar = GTK_PLACES_SIDEBAR (user_data);
-
-       error = NULL;
-       if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error)) {
-               if (error->code != G_IO_ERROR_FAILED_HANDLED) {
-                       name = g_drive_get_name (G_DRIVE (source_object));
-                       primary = g_strdup_printf (_("Unable to poll %s for media changes"), name);
-                       g_free (name);
-                       emit_show_error_message (sidebar, primary, error->message);
-                       g_free (primary);
-               }
-               g_error_free (error);
-       }
-
-       /* FIXME: drive_stop_cb() gets a reffed sidebar, and unrefs it.  Do we need to do the same here? */
+drive_poll_for_media_cb (GObject      *source_object,
+                         GAsyncResult *res,
+                         gpointer      user_data)
+{
+  GtkPlacesSidebar *sidebar;
+  GError *error;
+  gchar *primary;
+  gchar *name;
+
+  sidebar = GTK_PLACES_SIDEBAR (user_data);
+
+  error = NULL;
+  if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error))
+    {
+      if (error->code != G_IO_ERROR_FAILED_HANDLED)
+        {
+          name = g_drive_get_name (G_DRIVE (source_object));
+          primary = g_strdup_printf (_("Unable to poll %s for media changes"), name);
+          g_free (name);
+          emit_show_error_message (sidebar, primary, error->message);
+          g_free (primary);
+        }
+      g_error_free (error);
+    }
+
+  /* FIXME: drive_stop_cb() gets a reffed sidebar, and unrefs it.  Do we need to do the same here? */
 }
 
 static void
-rescan_shortcut_cb (GtkMenuItem           *item,
-                   GtkPlacesSidebar *sidebar)
+rescan_shortcut_cb (GtkMenuItem      *item,
+                    GtkPlacesSidebar *sidebar)
 {
-       GtkTreeIter iter;
-       GDrive  *drive;
+  GtkTreeIter iter;
+  GDrive  *drive;
 
-       if (!get_selected_iter (sidebar, &iter)) {
-               return;
-       }
+  if (!get_selected_iter (sidebar, &iter))
+    return;
 
-       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                           PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
-                           -1);
+  gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                      PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
+                      -1);
 
-       if (drive != NULL) {
-               g_drive_poll_for_media (drive, NULL, drive_poll_for_media_cb, sidebar);
-               g_object_unref (drive);
-       }
+  if (drive != NULL)
+    {
+      g_drive_poll_for_media (drive, NULL, drive_poll_for_media_cb, sidebar);
+      g_object_unref (drive);
+    }
 }
 
 static void
 drive_start_cb (GObject      *source_object,
-               GAsyncResult *res,
-               gpointer      user_data)
+                GAsyncResult *res,
+                gpointer      user_data)
 {
-       GtkPlacesSidebar *sidebar;
-       GError *error;
-       char *primary;
-       char *name;
+  GtkPlacesSidebar *sidebar;
+  GError *error;
+  gchar *primary;
+  gchar *name;
 
-       sidebar = GTK_PLACES_SIDEBAR (user_data);
+  sidebar = GTK_PLACES_SIDEBAR (user_data);
 
-       error = NULL;
-       if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error)) {
-               if (error->code != G_IO_ERROR_FAILED_HANDLED) {
-                       name = g_drive_get_name (G_DRIVE (source_object));
-                       primary = g_strdup_printf (_("Unable to start %s"), name);
-                       g_free (name);
-                       emit_show_error_message (sidebar, primary, error->message);
-                       g_free (primary);
-               }
-               g_error_free (error);
-       }
+  error = NULL;
+  if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error))
+    {
+      if (error->code != G_IO_ERROR_FAILED_HANDLED)
+        {
+          name = g_drive_get_name (G_DRIVE (source_object));
+          primary = g_strdup_printf (_("Unable to start %s"), name);
+          g_free (name);
+          emit_show_error_message (sidebar, primary, error->message);
+          g_free (primary);
+        }
+      g_error_free (error);
+    }
 
-       /* FIXME: drive_stop_cb() gets a reffed sidebar, and unrefs it.  Do we need to do the same here? */
+  /* FIXME: drive_stop_cb() gets a reffed sidebar, and unrefs it.  Do we need to do the same here? */
 }
 
 static void
-start_shortcut_cb (GtkMenuItem           *item,
-                  GtkPlacesSidebar *sidebar)
+start_shortcut_cb (GtkMenuItem      *item,
+                   GtkPlacesSidebar *sidebar)
 {
-       GtkTreeIter iter;
-       GDrive  *drive;
+  GtkTreeIter iter;
+  GDrive  *drive;
 
-       if (!get_selected_iter (sidebar, &iter)) {
-               return;
-       }
+  if (!get_selected_iter (sidebar, &iter))
+    return;
 
-       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                           PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
-                           -1);
+  gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                      PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
+                      -1);
 
-       if (drive != NULL) {
-               GMountOperation *mount_op;
+  if (drive != NULL)
+    {
+      GMountOperation *mount_op;
 
-               mount_op = gtk_mount_operation_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET 
(sidebar))));
+      mount_op = gtk_mount_operation_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (sidebar))));
 
-               g_drive_start (drive, G_DRIVE_START_NONE, mount_op, NULL, drive_start_cb, sidebar);
+      g_drive_start (drive, G_DRIVE_START_NONE, mount_op, NULL, drive_start_cb, sidebar);
 
-               g_object_unref (mount_op);
-               g_object_unref (drive);
-       }
+      g_object_unref (mount_op);
+      g_object_unref (drive);
+    }
 }
 
 static void
-drive_stop_cb (GObject *source_object,
-              GAsyncResult *res,
-              gpointer user_data)
-{
-       GtkPlacesSidebar *sidebar;
-       GError *error;
-       char *primary;
-       char *name;
-
-       sidebar = user_data;
-
-       error = NULL;
-       if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error)) {
-               if (error->code != G_IO_ERROR_FAILED_HANDLED) {
-                       name = g_drive_get_name (G_DRIVE (source_object));
-                       primary = g_strdup_printf (_("Unable to stop %s"), name);
-                       g_free (name);
-                       emit_show_error_message (sidebar, primary, error->message);
-                       g_free (primary);
-               }
-               g_error_free (error);
-       }
-
-       g_object_unref (sidebar);
+drive_stop_cb (GObject      *source_object,
+               GAsyncResult *res,
+               gpointer      user_data)
+{
+  GtkPlacesSidebar *sidebar;
+  GError *error;
+  gchar *primary;
+  gchar *name;
+
+  sidebar = user_data;
+
+  error = NULL;
+  if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error))
+    {
+      if (error->code != G_IO_ERROR_FAILED_HANDLED)
+        {
+          name = g_drive_get_name (G_DRIVE (source_object));
+          primary = g_strdup_printf (_("Unable to stop %s"), name);
+          g_free (name);
+          emit_show_error_message (sidebar, primary, error->message);
+          g_free (primary);
+        }
+      g_error_free (error);
+    }
+
+  g_object_unref (sidebar);
 }
 
 static void
-stop_shortcut_cb (GtkMenuItem           *item,
-                 GtkPlacesSidebar *sidebar)
+stop_shortcut_cb (GtkMenuItem      *item,
+                  GtkPlacesSidebar *sidebar)
 {
-       GtkTreeIter iter;
-       GDrive  *drive;
+  GtkTreeIter iter;
+  GDrive  *drive;
 
-       if (!get_selected_iter (sidebar, &iter)) {
-               return;
-       }
+  if (!get_selected_iter (sidebar, &iter))
+    return;
 
-       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                           PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
-                           -1);
+  gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                      PLACES_SIDEBAR_COLUMN_DRIVE, &drive,
+                      -1);
 
-       if (drive != NULL) {
-               GMountOperation *mount_op;
+  if (drive != NULL)
+    {
+      GMountOperation *mount_op;
 
-               mount_op = get_unmount_operation (sidebar);
-               g_drive_stop (drive, G_MOUNT_UNMOUNT_NONE, mount_op, NULL, drive_stop_cb,
-                             g_object_ref (sidebar));
+      mount_op = get_unmount_operation (sidebar);
+      g_drive_stop (drive, G_MOUNT_UNMOUNT_NONE, mount_op, NULL, drive_stop_cb,
+                    g_object_ref (sidebar));
 
-               g_object_unref (mount_op);
-               g_object_unref (drive);
-       }
+      g_object_unref (mount_op);
+      g_object_unref (drive);
+    }
 }
 
 static gboolean
 find_prev_or_next_row (GtkPlacesSidebar *sidebar,
-                      GtkTreeIter *iter,
-                      gboolean go_up)
-{
-       GtkTreeModel *model = GTK_TREE_MODEL (sidebar->store);
-       gboolean res;
-       int place_type;
-
-       if (go_up) {
-               res = gtk_tree_model_iter_previous (model, iter);
-       } else {
-               res = gtk_tree_model_iter_next (model, iter);
-       }
-
-       if (res) {
-               gtk_tree_model_get (model, iter,
-                                   PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
-                                   -1);
-               if (place_type == PLACES_HEADING) {
-                       if (go_up) {
-                               res = gtk_tree_model_iter_previous (model, iter);
-                       } else {
-                               res = gtk_tree_model_iter_next (model, iter);
-                       }
-               }
-       }
-
-       return res;
+                       GtkTreeIter      *iter,
+                       gboolean          go_up)
+{
+  GtkTreeModel *model = GTK_TREE_MODEL (sidebar->store);
+  gboolean res;
+  gint place_type;
+
+  if (go_up)
+    res = gtk_tree_model_iter_previous (model, iter);
+  else
+    res = gtk_tree_model_iter_next (model, iter);
+
+  if (res)
+    {
+      gtk_tree_model_get (model, iter,
+                          PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
+                          -1);
+      if (place_type == PLACES_HEADING)
+        {
+          if (go_up)
+            res = gtk_tree_model_iter_previous (model, iter);
+          else
+            res = gtk_tree_model_iter_next (model, iter);
+        }
+    }
+
+  return res;
 }
 
 static gboolean
-find_prev_row (GtkPlacesSidebar *sidebar, GtkTreeIter *iter)
+find_prev_row (GtkPlacesSidebar *sidebar,
+               GtkTreeIter      *iter)
 {
-       return find_prev_or_next_row (sidebar, iter, TRUE);
+  return find_prev_or_next_row (sidebar, iter, TRUE);
 }
 
 static gboolean
-find_next_row (GtkPlacesSidebar *sidebar, GtkTreeIter *iter)
+find_next_row (GtkPlacesSidebar *sidebar,
+               GtkTreeIter      *iter)
 {
-       return find_prev_or_next_row (sidebar, iter, FALSE);
+  return find_prev_or_next_row (sidebar, iter, FALSE);
 }
 
 static gboolean
-gtk_places_sidebar_focus (GtkWidget *widget,
-                         GtkDirectionType direction)
+gtk_places_sidebar_focus (GtkWidget        *widget,
+                          GtkDirectionType  direction)
 {
-       GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (widget);
-       GtkTreePath *path;
-       GtkTreeIter iter;
-       gboolean res;
+  GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (widget);
+  GtkTreePath *path;
+  GtkTreeIter iter;
+  gboolean res;
 
-       res = get_selected_iter (sidebar, &iter);
+  if (!get_selected_iter (sidebar, &iter))
+    {
+      gtk_tree_model_get_iter_first (GTK_TREE_MODEL (sidebar->store), &iter);
+      res = find_next_row (sidebar, &iter);
+      if (res)
+        {
+          path = gtk_tree_model_get_path (GTK_TREE_MODEL (sidebar->store), &iter);
+          gtk_tree_view_set_cursor (sidebar->tree_view, path, NULL, FALSE);
+          gtk_tree_path_free (path);
+        }
+    }
 
-       if (!res) {
-               gtk_tree_model_get_iter_first (GTK_TREE_MODEL (sidebar->store), &iter);
-               res = find_next_row (sidebar, &iter);
-               if (res) {
-                       path = gtk_tree_model_get_path (GTK_TREE_MODEL (sidebar->store), &iter);
-                       gtk_tree_view_set_cursor (sidebar->tree_view, path, NULL, FALSE);
-                       gtk_tree_path_free (path);
-               }
-       }
-
-       return GTK_WIDGET_CLASS (gtk_places_sidebar_parent_class)->focus (widget, direction);
+  return GTK_WIDGET_CLASS (gtk_places_sidebar_parent_class)->focus (widget, direction);
 }
 
 /* Handler for GtkWidget::key-press-event on the shortcuts list */
 static gboolean
-bookmarks_key_press_event_cb (GtkWidget             *widget,
-                             GdkEventKey           *event,
-                             GtkPlacesSidebar *sidebar)
-{
-       guint modifiers;
-       GtkTreeIter selected_iter;
-       GtkTreePath *path;
-
-       if (!get_selected_iter (sidebar, &selected_iter)) {
-               return FALSE;
-       }
-
-       modifiers = gtk_accelerator_get_default_mod_mask ();
-
-       if ((event->keyval == GDK_KEY_Return ||
-               event->keyval == GDK_KEY_KP_Enter ||
-               event->keyval == GDK_KEY_ISO_Enter ||
-               event->keyval == GDK_KEY_space)) {
-
-               GtkPlacesOpenFlags open_flags = GTK_PLACES_OPEN_NORMAL;
-
-               if ((event->state & modifiers) == GDK_SHIFT_MASK) {
-                       open_flags = GTK_PLACES_OPEN_NEW_TAB;
-               } else if ((event->state & modifiers) == GDK_CONTROL_MASK) {
-                       open_flags = GTK_PLACES_OPEN_NEW_WINDOW;
-               }
-
-               open_selected_bookmark (sidebar, GTK_TREE_MODEL (sidebar->store),
-                                       &selected_iter, open_flags);
-
-               return TRUE;
-       }
-
-       if (event->keyval == GDK_KEY_Down &&
-           (event->state & modifiers) == GDK_MOD1_MASK) {
-               return eject_or_unmount_selection (sidebar);
-       }
-
-       if (event->keyval == GDK_KEY_Up) {
-               if (find_prev_row (sidebar, &selected_iter)) {
-                       path = gtk_tree_model_get_path (GTK_TREE_MODEL (sidebar->store), &selected_iter);
-                       gtk_tree_view_set_cursor (sidebar->tree_view, path, NULL, FALSE);
-                       gtk_tree_path_free (path);
-               }
-               return TRUE;
-       }
-
-       if (event->keyval == GDK_KEY_Down) {
-               if (find_next_row (sidebar, &selected_iter)) {
-                       path = gtk_tree_model_get_path (GTK_TREE_MODEL (sidebar->store), &selected_iter);
-                       gtk_tree_view_set_cursor (sidebar->tree_view, path, NULL, FALSE);
-                       gtk_tree_path_free (path);
-               }
-               return TRUE;
-       }
-
-       if ((event->keyval == GDK_KEY_Delete
-            || event->keyval == GDK_KEY_KP_Delete)
-           && (event->state & modifiers) == 0) {
-               remove_selected_bookmarks (sidebar);
-               return TRUE;
-       }
-
-       if ((event->keyval == GDK_KEY_F2)
-           && (event->state & modifiers) == 0) {
-               rename_selected_bookmark (sidebar);
-               return TRUE;
-       }
-
-       return FALSE;
+bookmarks_key_press_event_cb (GtkWidget        *widget,
+                              GdkEventKey      *event,
+                              GtkPlacesSidebar *sidebar)
+{
+  guint modifiers;
+  GtkTreeIter selected_iter;
+  GtkTreePath *path;
+
+  if (!get_selected_iter (sidebar, &selected_iter))
+    return FALSE;
+
+  modifiers = gtk_accelerator_get_default_mod_mask ();
+
+  if (event->keyval == GDK_KEY_Return ||
+      event->keyval == GDK_KEY_KP_Enter ||
+      event->keyval == GDK_KEY_ISO_Enter ||
+      event->keyval == GDK_KEY_space)
+    {
+      GtkPlacesOpenFlags open_flags = GTK_PLACES_OPEN_NORMAL;
+
+      if ((event->state & modifiers) == GDK_SHIFT_MASK)
+        open_flags = GTK_PLACES_OPEN_NEW_TAB;
+      else if ((event->state & modifiers) == GDK_CONTROL_MASK)
+        open_flags = GTK_PLACES_OPEN_NEW_WINDOW;
+
+      open_selected_bookmark (sidebar, GTK_TREE_MODEL (sidebar->store),
+                              &selected_iter, open_flags);
+
+      return TRUE;
+    }
+
+  if (event->keyval == GDK_KEY_Down &&
+      (event->state & modifiers) == GDK_MOD1_MASK)
+    return eject_or_unmount_selection (sidebar);
+
+  if (event->keyval == GDK_KEY_Up)
+    {
+      if (find_prev_row (sidebar, &selected_iter))
+        {
+          path = gtk_tree_model_get_path (GTK_TREE_MODEL (sidebar->store), &selected_iter);
+          gtk_tree_view_set_cursor (sidebar->tree_view, path, NULL, FALSE);
+          gtk_tree_path_free (path);
+        }
+      return TRUE;
+    }
+
+  if (event->keyval == GDK_KEY_Down)
+    {
+      if (find_next_row (sidebar, &selected_iter))
+        {
+          path = gtk_tree_model_get_path (GTK_TREE_MODEL (sidebar->store), &selected_iter);
+          gtk_tree_view_set_cursor (sidebar->tree_view, path, NULL, FALSE);
+          gtk_tree_path_free (path);
+        }
+      return TRUE;
+    }
+
+  if ((event->keyval == GDK_KEY_Delete ||
+       event->keyval == GDK_KEY_KP_Delete) &&
+      (event->state & modifiers) == 0)
+    {
+      remove_selected_bookmarks (sidebar);
+      return TRUE;
+    }
+
+  if ((event->keyval == GDK_KEY_F2) &&
+      (event->state & modifiers) == 0)
+    {
+      rename_selected_bookmark (sidebar);
+      return TRUE;
+    }
+
+  return FALSE;
 }
 
 static GtkMenuItem *
 append_menu_separator (GtkMenu *menu)
 {
-       GtkWidget *menu_item;
+  GtkWidget *menu_item;
 
-       menu_item = gtk_separator_menu_item_new ();
-       gtk_widget_show (menu_item);
-       gtk_menu_shell_insert (GTK_MENU_SHELL (menu), menu_item, -1);
+  menu_item = gtk_separator_menu_item_new ();
+  gtk_widget_show (menu_item);
+  gtk_menu_shell_insert (GTK_MENU_SHELL (menu), menu_item, -1);
 
-       return GTK_MENU_ITEM (menu_item);
+  return GTK_MENU_ITEM (menu_item);
 }
 
 /* Constructs the popup menu for the file list if needed */
 static void
 bookmarks_build_popup_menu (GtkPlacesSidebar *sidebar)
 {
-       PopupMenuData menu_data;
-       GtkWidget *item;
-       SelectionInfo sel_info;
-       GFile *file;
-
-       sidebar->popup_menu = gtk_menu_new ();
-       gtk_style_context_add_class (gtk_widget_get_style_context (sidebar->popup_menu),
-                                    GTK_STYLE_CLASS_CONTEXT_MENU);
-
-       gtk_menu_attach_to_widget (GTK_MENU (sidebar->popup_menu),
-                                  GTK_WIDGET (sidebar),
-                                  bookmarks_popup_menu_detach_cb);
-
-       item = gtk_menu_item_new_with_mnemonic (_("_Open"));
-       g_signal_connect (item, "activate",
-                         G_CALLBACK (open_shortcut_cb), sidebar);
-       gtk_widget_show (item);
-       gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-
-       if (sidebar->open_flags & GTK_PLACES_OPEN_NEW_TAB) {
-               item = gtk_menu_item_new_with_mnemonic (_("Open in New _Tab"));
-               g_signal_connect (item, "activate",
-                                 G_CALLBACK (open_shortcut_in_new_tab_cb), sidebar);
-               gtk_widget_show (item);
-               gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-       }
-
-       if (sidebar->open_flags & GTK_PLACES_OPEN_NEW_WINDOW) {
-               item = gtk_menu_item_new_with_mnemonic (_("Open in New _Window"));
-               g_signal_connect (item, "activate",
-                                 G_CALLBACK (open_shortcut_in_new_window_cb), sidebar);
-               gtk_widget_show (item);
-               gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-       }
-
-       append_menu_separator (GTK_MENU (sidebar->popup_menu));
-
-       item = gtk_menu_item_new_with_mnemonic (_("_Add Bookmark"));
-       menu_data.add_shortcut_item = item;
-       g_signal_connect (item, "activate",
-                         G_CALLBACK (add_shortcut_cb), sidebar);
-       gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-
-       item = gtk_menu_item_new_with_label (_("Remove"));
-       menu_data.remove_item = item;
-       g_signal_connect (item, "activate",
-                         G_CALLBACK (remove_shortcut_cb), sidebar);
-       gtk_widget_show (item);
-       gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-
-       item = gtk_menu_item_new_with_label (_("Rename…"));
-       menu_data.rename_item = item;
-       g_signal_connect (item, "activate",
-                         G_CALLBACK (rename_shortcut_cb), sidebar);
-       gtk_widget_show (item);
-       gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-
-       /* Mount/Unmount/Eject menu items */
-
-       menu_data.separator_item = GTK_WIDGET (append_menu_separator (GTK_MENU (sidebar->popup_menu)));
-
-       item = gtk_menu_item_new_with_mnemonic (_("_Mount"));
-       menu_data.mount_item = item;
-       g_signal_connect (item, "activate",
-                         G_CALLBACK (mount_shortcut_cb), sidebar);
-       gtk_widget_show (item);
-       gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-
-       item = gtk_menu_item_new_with_mnemonic (_("_Unmount"));
-       menu_data.unmount_item = item;
-       g_signal_connect (item, "activate",
-                         G_CALLBACK (unmount_shortcut_cb), sidebar);
-       gtk_widget_show (item);
-       gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-
-       item = gtk_menu_item_new_with_mnemonic (_("_Eject"));
-       menu_data.eject_item = item;
-       g_signal_connect (item, "activate",
-                         G_CALLBACK (eject_shortcut_cb), sidebar);
-       gtk_widget_show (item);
-       gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-
-       item = gtk_menu_item_new_with_mnemonic (_("_Detect Media"));
-       menu_data.rescan_item = item;
-       g_signal_connect (item, "activate",
-                         G_CALLBACK (rescan_shortcut_cb), sidebar);
-       gtk_widget_show (item);
-       gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-
-       item = gtk_menu_item_new_with_mnemonic (_("_Start"));
-       menu_data.start_item = item;
-       g_signal_connect (item, "activate",
-                         G_CALLBACK (start_shortcut_cb), sidebar);
-       gtk_widget_show (item);
-       gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-
-       item = gtk_menu_item_new_with_mnemonic (_("_Stop"));
-       menu_data.stop_item = item;
-       g_signal_connect (item, "activate",
-                         G_CALLBACK (stop_shortcut_cb), sidebar);
-       gtk_widget_show (item);
-       gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
-
-       /* Update everything! */
-
-       get_selection_info (sidebar, &sel_info);
-
-       check_popup_sensitivity (sidebar, &menu_data, &sel_info);
-
-       /* And let the caller spice things up */
-
-       if (sel_info.uri)
-               file = g_file_new_for_uri (sel_info.uri);
-       else
-               file = NULL;
-
-       emit_populate_popup (sidebar, GTK_MENU (sidebar->popup_menu), file, sel_info.volume);
-
-       if (file)
-               g_object_unref (file);
-
-       free_selection_info (&sel_info);
+  PopupMenuData menu_data;
+  GtkWidget *item;
+  SelectionInfo sel_info;
+  GFile *file;
+
+  sidebar->popup_menu = gtk_menu_new ();
+  gtk_style_context_add_class (gtk_widget_get_style_context (sidebar->popup_menu),
+                               GTK_STYLE_CLASS_CONTEXT_MENU);
+
+  gtk_menu_attach_to_widget (GTK_MENU (sidebar->popup_menu),
+                             GTK_WIDGET (sidebar),
+                             bookmarks_popup_menu_detach_cb);
+
+  item = gtk_menu_item_new_with_mnemonic (_("_Open"));
+  g_signal_connect (item, "activate",
+                    G_CALLBACK (open_shortcut_cb), sidebar);
+  gtk_widget_show (item);
+  gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+
+  if (sidebar->open_flags & GTK_PLACES_OPEN_NEW_TAB)
+    {
+      item = gtk_menu_item_new_with_mnemonic (_("Open in New _Tab"));
+      g_signal_connect (item, "activate",
+                        G_CALLBACK (open_shortcut_in_new_tab_cb), sidebar);
+      gtk_widget_show (item);
+      gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+    }
+
+  if (sidebar->open_flags & GTK_PLACES_OPEN_NEW_WINDOW)
+    {
+      item = gtk_menu_item_new_with_mnemonic (_("Open in New _Window"));
+      g_signal_connect (item, "activate",
+                        G_CALLBACK (open_shortcut_in_new_window_cb), sidebar);
+      gtk_widget_show (item);
+      gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+    }
+
+  append_menu_separator (GTK_MENU (sidebar->popup_menu));
+
+  item = gtk_menu_item_new_with_mnemonic (_("_Add Bookmark"));
+  menu_data.add_shortcut_item = item;
+  g_signal_connect (item, "activate",
+                    G_CALLBACK (add_shortcut_cb), sidebar);
+  gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+
+  item = gtk_menu_item_new_with_label (_("Remove"));
+  menu_data.remove_item = item;
+  g_signal_connect (item, "activate",
+                    G_CALLBACK (remove_shortcut_cb), sidebar);
+  gtk_widget_show (item);
+  gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+
+  item = gtk_menu_item_new_with_label (_("Rename…"));
+  menu_data.rename_item = item;
+  g_signal_connect (item, "activate",
+                    G_CALLBACK (rename_shortcut_cb), sidebar);
+  gtk_widget_show (item);
+  gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+
+  /* Mount/Unmount/Eject menu items */
+
+  menu_data.separator_item = GTK_WIDGET (append_menu_separator (GTK_MENU (sidebar->popup_menu)));
+
+  item = gtk_menu_item_new_with_mnemonic (_("_Mount"));
+  menu_data.mount_item = item;
+  g_signal_connect (item, "activate",
+                    G_CALLBACK (mount_shortcut_cb), sidebar);
+  gtk_widget_show (item);
+  gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+
+  item = gtk_menu_item_new_with_mnemonic (_("_Unmount"));
+  menu_data.unmount_item = item;
+  g_signal_connect (item, "activate",
+                    G_CALLBACK (unmount_shortcut_cb), sidebar);
+  gtk_widget_show (item);
+  gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+
+  item = gtk_menu_item_new_with_mnemonic (_("_Eject"));
+  menu_data.eject_item = item;
+  g_signal_connect (item, "activate",
+                    G_CALLBACK (eject_shortcut_cb), sidebar);
+  gtk_widget_show (item);
+  gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+
+  item = gtk_menu_item_new_with_mnemonic (_("_Detect Media"));
+  menu_data.rescan_item = item;
+  g_signal_connect (item, "activate",
+                    G_CALLBACK (rescan_shortcut_cb), sidebar);
+  gtk_widget_show (item);
+  gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+
+  item = gtk_menu_item_new_with_mnemonic (_("_Start"));
+  menu_data.start_item = item;
+  g_signal_connect (item, "activate",
+                    G_CALLBACK (start_shortcut_cb), sidebar);
+  gtk_widget_show (item);
+  gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+
+  item = gtk_menu_item_new_with_mnemonic (_("_Stop"));
+  menu_data.stop_item = item;
+  g_signal_connect (item, "activate",
+                    G_CALLBACK (stop_shortcut_cb), sidebar);
+  gtk_widget_show (item);
+  gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
+
+  /* Update everything! */
+
+  get_selection_info (sidebar, &sel_info);
+
+  check_popup_sensitivity (sidebar, &menu_data, &sel_info);
+
+  /* And let the caller spice things up */
+
+  if (sel_info.uri)
+    file = g_file_new_for_uri (sel_info.uri);
+  else
+    file = NULL;
+
+  emit_populate_popup (sidebar, GTK_MENU (sidebar->popup_menu), file, sel_info.volume);
+
+  if (file)
+    g_object_unref (file);
+
+  free_selection_info (&sel_info);
 }
 
 static void
 bookmarks_popup_menu (GtkPlacesSidebar *sidebar,
-                     GdkEventButton   *event)
-{
-       int button;
-
-       if (sidebar->popup_menu)
-               gtk_widget_destroy (sidebar->popup_menu);
-
-       bookmarks_build_popup_menu (sidebar);
-
-       /* The event button needs to be 0 if we're popping up this menu from
-        * a button release, else a 2nd click outside the menu with any button
-        * other than the one that invoked the menu will be ignored (instead
-        * of dismissing the menu). This is a subtle fragility of the GTK menu code.
-        */
-       if (event) {
-               if (event->type == GDK_BUTTON_RELEASE)
-                       button = 0;
-               else
-                       button = event->button;
-       } else {
-               button = 0;
-       }
-
-       gtk_menu_popup (GTK_MENU (sidebar->popup_menu),         /* menu */
-                       NULL,                                   /* parent_menu_shell */
-                       NULL,                                   /* parent_menu_item */
-                       NULL,                                   /* popup_position_func */
-                       NULL,                                   /* popup_position_user_data */
-                       button,                                 /* button */
-                       event ? event->time : gtk_get_current_event_time ()); /* activate_time */
+                      GdkEventButton   *event)
+{
+  gint button;
+
+  if (sidebar->popup_menu)
+    gtk_widget_destroy (sidebar->popup_menu);
+
+  bookmarks_build_popup_menu (sidebar);
+
+  /* The event button needs to be 0 if we're popping up this menu from
+   * a button release, else a 2nd click outside the menu with any button
+   * other than the one that invoked the menu will be ignored (instead
+   * of dismissing the menu). This is a subtle fragility of the GTK menu code.
+   */
+  if (event)
+    {
+      if (event->type == GDK_BUTTON_RELEASE)
+        button = 0;
+      else
+        button = event->button;
+    }
+  else
+    {
+      button = 0;
+    }
+
+  gtk_menu_popup (GTK_MENU (sidebar->popup_menu),
+                  NULL,
+                  NULL,
+                  NULL,
+                  NULL,
+                  button,
+                  event ? event->time : gtk_get_current_event_time ());
 }
 
 /* Callback used for the GtkWidget::popup-menu signal of the shortcuts list */
 static gboolean
-bookmarks_popup_menu_cb (GtkWidget *widget,
-                        GtkPlacesSidebar *sidebar)
+bookmarks_popup_menu_cb (GtkWidget        *widget,
+                         GtkPlacesSidebar *sidebar)
 {
-       bookmarks_popup_menu (sidebar, NULL);
-       return TRUE;
+  bookmarks_popup_menu (sidebar, NULL);
+  return TRUE;
 }
 
 static void
-bookmarks_row_activated_cb (GtkWidget *widget,
-                           GtkTreePath *path,
-                           GtkTreeViewColumn *column,
-                           GtkPlacesSidebar *sidebar)
+bookmarks_row_activated_cb (GtkWidget         *widget,
+                            GtkTreePath       *path,
+                            GtkTreeViewColumn *column,
+                            GtkPlacesSidebar  *sidebar)
 {
-       GtkTreeIter iter;
-       GtkTreeModel *model = gtk_tree_view_get_model (GTK_TREE_VIEW (widget));
+  GtkTreeIter iter;
+  GtkTreeModel *model = gtk_tree_view_get_model (GTK_TREE_VIEW (widget));
 
-       if (!gtk_tree_model_get_iter (model, &iter, path)) {
-               return;
-       }
+  if (!gtk_tree_model_get_iter (model, &iter, path))
+    return;
 
-       open_selected_bookmark (sidebar, model, &iter, 0);
+  open_selected_bookmark (sidebar, model, &iter, 0);
 }
 
 static gboolean
-bookmarks_button_release_event_cb (GtkWidget *widget,
-                                  GdkEventButton *event,
-                                  GtkPlacesSidebar *sidebar)
+bookmarks_button_release_event_cb (GtkWidget        *widget,
+                                   GdkEventButton   *event,
+                                   GtkPlacesSidebar *sidebar)
 {
-       GtkTreePath *path;
-       GtkTreeIter iter;
-       GtkTreeModel *model;
-       GtkTreeView *tree_view;
-       gboolean ret = FALSE;
-       gboolean res;
-
-       path = NULL;
+  GtkTreePath *path;
+  GtkTreeIter iter;
+  GtkTreeModel *model;
+  GtkTreeView *tree_view;
+  gboolean ret = FALSE;
+  gboolean res;
 
-       if (event->type != GDK_BUTTON_RELEASE) {
-               return TRUE;
-       }
+  path = NULL;
 
-       if (clicked_eject_button (sidebar, &path)) {
-               eject_or_unmount_bookmark (sidebar, path);
-               gtk_tree_path_free (path);
+  if (event->type != GDK_BUTTON_RELEASE)
+    return TRUE;
 
-               return TRUE;
-       }
+  if (clicked_eject_button (sidebar, &path))
+    {
+      eject_or_unmount_bookmark (sidebar, path);
+      gtk_tree_path_free (path);
+      return TRUE;
+    }
 
-       if (event->button == 1) {
-               return FALSE;
-       }
+  if (event->button == 1)
+    return FALSE;
 
-       tree_view = GTK_TREE_VIEW (widget);
-       model = gtk_tree_view_get_model (tree_view);
+  tree_view = GTK_TREE_VIEW (widget);
+  model = gtk_tree_view_get_model (tree_view);
 
-       if (event->window != gtk_tree_view_get_bin_window (tree_view)) {
-               return FALSE;
-       }
+  if (event->window != gtk_tree_view_get_bin_window (tree_view))
+    return FALSE;
 
-       res = gtk_tree_view_get_path_at_pos (tree_view, (int) event->x, (int) event->y,
-                                            &path, NULL, NULL, NULL);
+  res = gtk_tree_view_get_path_at_pos (tree_view, (int) event->x, (int) event->y,
+                                       &path, NULL, NULL, NULL);
 
-       if (!res || path == NULL) {
-               return FALSE;
-       }
+  if (!res || path == NULL)
+    return FALSE;
 
-       res = gtk_tree_model_get_iter (model, &iter, path);
-       if (!res) {
-               gtk_tree_path_free (path);
-               return FALSE;
-       }
+  res = gtk_tree_model_get_iter (model, &iter, path);
+  if (!res)
+    {
+      gtk_tree_path_free (path);
+      return FALSE;
+    }
 
-       if (event->button == 2) {
-               GtkPlacesOpenFlags open_flags = GTK_PLACES_OPEN_NORMAL;
+  if (event->button == 2)
+    {
+      GtkPlacesOpenFlags open_flags = GTK_PLACES_OPEN_NORMAL;
 
-               open_flags = ((event->state & GDK_CONTROL_MASK) ?
-                             GTK_PLACES_OPEN_NEW_WINDOW :
-                             GTK_PLACES_OPEN_NEW_TAB);
+      open_flags = (event->state & GDK_CONTROL_MASK) ?
+                    GTK_PLACES_OPEN_NEW_WINDOW :
+                    GTK_PLACES_OPEN_NEW_TAB;
 
-               open_selected_bookmark (sidebar, model, &iter, open_flags);
-               ret = TRUE;
-       } else if (event->button == 3) {
-               PlaceType row_type;
+      open_selected_bookmark (sidebar, model, &iter, open_flags);
+      ret = TRUE;
+    }
+  else if (event->button == 3)
+    {
+      PlaceType row_type;
 
-               gtk_tree_model_get (model, &iter,
-                                   PLACES_SIDEBAR_COLUMN_ROW_TYPE, &row_type,
-                                   -1);
+      gtk_tree_model_get (model, &iter,
+                          PLACES_SIDEBAR_COLUMN_ROW_TYPE, &row_type,
+                          -1);
 
-               if (row_type != PLACES_HEADING
-                   && row_type != PLACES_CONNECT_TO_SERVER) {
-                       bookmarks_popup_menu (sidebar, event);
-               }
-       }
+      if (row_type != PLACES_HEADING && row_type != PLACES_CONNECT_TO_SERVER)
+        bookmarks_popup_menu (sidebar, event);
+    }
 
-       gtk_tree_path_free (path);
+  gtk_tree_path_free (path);
 
-       return ret;
+  return ret;
 }
 
 static void
-bookmarks_edited (GtkCellRenderer       *cell,
-                 gchar                 *path_string,
-                 gchar                 *new_text,
-                 GtkPlacesSidebar *sidebar)
+bookmarks_edited (GtkCellRenderer  *cell,
+                  gchar            *path_string,
+                  gchar            *new_text,
+                  GtkPlacesSidebar *sidebar)
 {
-       GtkTreePath *path;
-       GtkTreeIter iter;
-       char *uri;
-       GFile *file;
+  GtkTreePath *path;
+  GtkTreeIter iter;
+  char *uri;
+  GFile *file;
 
-       g_object_set (cell, "editable", FALSE, NULL);
+  g_object_set (cell, "editable", FALSE, NULL);
 
-       path = gtk_tree_path_new_from_string (path_string);
-       gtk_tree_model_get_iter (GTK_TREE_MODEL (sidebar->store), &iter, path);
-       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                           PLACES_SIDEBAR_COLUMN_URI, &uri,
-                           -1);
-       gtk_tree_path_free (path);
+  path = gtk_tree_path_new_from_string (path_string);
+  gtk_tree_model_get_iter (GTK_TREE_MODEL (sidebar->store), &iter, path);
+  gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                      PLACES_SIDEBAR_COLUMN_URI, &uri,
+                      -1);
+  gtk_tree_path_free (path);
 
-       file = g_file_new_for_uri (uri);
-       if (!_gtk_bookmarks_manager_has_bookmark (sidebar->bookmarks_manager, file)) {
-               _gtk_bookmarks_manager_insert_bookmark (sidebar->bookmarks_manager, file, -1, NULL);
-       }
+  file = g_file_new_for_uri (uri);
+  if (!_gtk_bookmarks_manager_has_bookmark (sidebar->bookmarks_manager, file))
+    _gtk_bookmarks_manager_insert_bookmark (sidebar->bookmarks_manager, file, -1, NULL);
 
-       _gtk_bookmarks_manager_set_bookmark_label (sidebar->bookmarks_manager, file, new_text, NULL); /* 
NULL-GError */
+  _gtk_bookmarks_manager_set_bookmark_label (sidebar->bookmarks_manager, file, new_text, NULL); /* 
NULL-GError */
 
-       g_object_unref (file);
-       g_free (uri);
+  g_object_unref (file);
+  g_free (uri);
 }
 
 static void
-bookmarks_editing_canceled (GtkCellRenderer       *cell,
-                           GtkPlacesSidebar *sidebar)
+bookmarks_editing_canceled (GtkCellRenderer  *cell,
+                            GtkPlacesSidebar *sidebar)
 {
-       g_object_set (cell, "editable", FALSE, NULL);
+  g_object_set (cell, "editable", FALSE, NULL);
 }
 
 static gboolean
 tree_selection_func (GtkTreeSelection *selection,
-                    GtkTreeModel *model,
-                    GtkTreePath *path,
-                    gboolean path_currently_selected,
-                    gpointer user_data)
+                     GtkTreeModel     *model,
+                     GtkTreePath      *path,
+                     gboolean          path_currently_selected,
+                     gpointer          user_data)
 {
-       GtkTreeIter iter;
-       PlaceType row_type;
+  GtkTreeIter iter;
+  PlaceType row_type;
 
-       gtk_tree_model_get_iter (model, &iter, path);
-       gtk_tree_model_get (model, &iter,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &row_type,
-                           -1);
+  gtk_tree_model_get_iter (model, &iter, path);
+  gtk_tree_model_get (model, &iter,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, &row_type,
+                      -1);
 
-       if (row_type == PLACES_HEADING) {
-               return FALSE;
-       }
+  if (row_type == PLACES_HEADING)
+    return FALSE;
 
-       return TRUE;
+  return TRUE;
 }
 
 static void
 icon_cell_renderer_func (GtkTreeViewColumn *column,
-                        GtkCellRenderer *cell,
-                        GtkTreeModel *model,
-                        GtkTreeIter *iter,
-                        gpointer user_data)
+                         GtkCellRenderer   *cell,
+                         GtkTreeModel      *model,
+                         GtkTreeIter       *iter,
+                         gpointer           user_data)
 {
-       PlaceType type;
+  PlaceType type;
 
-       gtk_tree_model_get (model, iter,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
-                           -1);
+  gtk_tree_model_get (model, iter,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
+                      -1);
 
-       if (type == PLACES_HEADING) {
-               g_object_set (cell,
-                             "visible", FALSE,
-                             NULL);
-       } else {
-               g_object_set (cell,
-                             "visible", TRUE,
-                             NULL);
-       }
+  g_object_set (cell, "visible", type != PLACES_HEADING, NULL);
 }
 
 static void
 padding_cell_renderer_func (GtkTreeViewColumn *column,
-                           GtkCellRenderer *cell,
-                           GtkTreeModel *model,
-                           GtkTreeIter *iter,
-                           gpointer user_data)
-{
-       PlaceType type;
-
-       gtk_tree_model_get (model, iter,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
-                           -1);
-
-       if (type == PLACES_HEADING) {
-               g_object_set (cell,
-                             "visible", FALSE,
-                             "xpad", 0,
-                             "ypad", 0,
-                             NULL);
-       } else {
-               g_object_set (cell,
-                             "visible", TRUE,
-                             "xpad", 3,
-                             "ypad", 3,
-                             NULL);
-       }
+                            GtkCellRenderer   *cell,
+                            GtkTreeModel      *model,
+                            GtkTreeIter       *iter,
+                            gpointer           user_data)
+{
+  PlaceType type;
+
+  gtk_tree_model_get (model, iter,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
+                      -1);
+
+  if (type == PLACES_HEADING)
+    g_object_set (cell,
+                  "visible", FALSE,
+                  "xpad", 0,
+                  "ypad", 0,
+                  NULL);
+  else
+    g_object_set (cell,
+                  "visible", TRUE,
+                  "xpad", 3,
+                  "ypad", 3,
+                  NULL);
 }
 
 static void
 heading_cell_renderer_func (GtkTreeViewColumn *column,
-                           GtkCellRenderer *cell,
-                           GtkTreeModel *model,
-                           GtkTreeIter *iter,
-                           gpointer user_data)
+                            GtkCellRenderer   *cell,
+                            GtkTreeModel      *model,
+                            GtkTreeIter       *iter,
+                            gpointer           user_data)
 {
-       PlaceType type;
+  PlaceType type;
 
-       gtk_tree_model_get (model, iter,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
-                           -1);
+  gtk_tree_model_get (model, iter,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
+                      -1);
 
-       if (type == PLACES_HEADING) {
-               g_object_set (cell,
-                             "visible", TRUE,
-                             NULL);
-       } else {
-               g_object_set (cell,
-                             "visible", FALSE,
-                             NULL);
-       }
+  g_object_set (cell, "visible", type == PLACES_HEADING, NULL);
 }
 
 static gint
 places_sidebar_sort_func (GtkTreeModel *model,
-                         GtkTreeIter *iter_a,
-                         GtkTreeIter *iter_b,
-                         gpointer user_data)
-{
-       SectionType section_type_a, section_type_b;
-       PlaceType place_type_a, place_type_b;
-       gint retval = 0;
-
-       gtk_tree_model_get (model, iter_a,
-                           PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type_a,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type_a,
-                           -1);
-       gtk_tree_model_get (model, iter_b,
-                           PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type_b,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type_b,
-                           -1);
-
-       /* fall back to the default order if we're not in the
-        * XDG part of the computer section.
-        */
-       if ((section_type_a == section_type_b) &&
-           (section_type_a == SECTION_COMPUTER) &&
-           (place_type_a == place_type_b) &&
-           (place_type_a == PLACES_XDG_DIR)) {
-               gchar *name_a, *name_b;
-
-               gtk_tree_model_get (model, iter_a,
-                                   PLACES_SIDEBAR_COLUMN_NAME, &name_a,
-                                   -1);
-               gtk_tree_model_get (model, iter_b,
-                                   PLACES_SIDEBAR_COLUMN_NAME, &name_b,
-                                   -1);
-
-               retval = g_utf8_collate (name_a, name_b);
-
-               g_free (name_a);
-               g_free (name_b);
-       } else if (place_type_a == PLACES_CONNECT_TO_SERVER) {
-               retval = 1;
-       }
-
-       return retval;
+                          GtkTreeIter  *iter_a,
+                          GtkTreeIter  *iter_b,
+                          gpointer      user_data)
+{
+  SectionType section_type_a, section_type_b;
+  PlaceType place_type_a, place_type_b;
+  gint retval = 0;
+
+  gtk_tree_model_get (model, iter_a,
+                      PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type_a,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type_a,
+                      -1);
+  gtk_tree_model_get (model, iter_b,
+                      PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type_b,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type_b,
+                      -1);
+
+  /* fall back to the default order if we're not in the
+   * XDG part of the computer section.
+   */
+  if ((section_type_a == section_type_b) &&
+      (section_type_a == SECTION_COMPUTER) &&
+      (place_type_a == place_type_b) &&
+      (place_type_a == PLACES_XDG_DIR))
+    {
+      gchar *name_a, *name_b;
+
+      gtk_tree_model_get (model, iter_a,
+                          PLACES_SIDEBAR_COLUMN_NAME, &name_a,
+                          -1);
+      gtk_tree_model_get (model, iter_b,
+                          PLACES_SIDEBAR_COLUMN_NAME, &name_b,
+                          -1);
+
+      retval = g_utf8_collate (name_a, name_b);
+
+      g_free (name_a);
+      g_free (name_b);
+    }
+  else if (place_type_a == PLACES_CONNECT_TO_SERVER)
+    {
+      retval = 1;
+    }
+
+  return retval;
 }
 
 static void
 update_hostname (GtkPlacesSidebar *sidebar)
 {
-       GVariant *variant;
-       gsize len;
-       const gchar *hostname;
+  GVariant *variant;
+  gsize len;
+  const gchar *hostname;
 
-       if (sidebar->hostnamed_proxy == NULL)
-               return;
+  if (sidebar->hostnamed_proxy == NULL)
+    return;
 
-       variant = g_dbus_proxy_get_cached_property (sidebar->hostnamed_proxy,
-                                                   "PrettyHostname");
-       if (variant == NULL) {
-               return;
-       }
+  variant = g_dbus_proxy_get_cached_property (sidebar->hostnamed_proxy,
+                                              "PrettyHostname");
+  if (variant == NULL)
+    return;
 
-       hostname = g_variant_get_string (variant, &len);
-       if (len > 0 &&
-           g_strcmp0 (sidebar->hostname, hostname) != 0) {
-               g_free (sidebar->hostname);
-               sidebar->hostname = g_strdup (hostname);
-               update_places (sidebar);
-       }
+  hostname = g_variant_get_string (variant, &len);
+  if (len > 0 &&
+      g_strcmp0 (sidebar->hostname, hostname) != 0)
+    {
+      g_free (sidebar->hostname);
+      sidebar->hostname = g_strdup (hostname);
+      update_places (sidebar);
+    }
 
-       g_variant_unref (variant);
+  g_variant_unref (variant);
 }
 
 static void
 hostname_proxy_new_cb (GObject      *source_object,
-                      GAsyncResult *res,
-                      gpointer      user_data)
+                       GAsyncResult *res,
+                       gpointer      user_data)
 {
-       GtkPlacesSidebar *sidebar = user_data;
-       GError *error = NULL;
-        GDBusProxy *proxy;
+  GtkPlacesSidebar *sidebar = user_data;
+  GError *error = NULL;
+  GDBusProxy *proxy;
 
-       proxy = g_dbus_proxy_new_for_bus_finish (res, &error);
-        if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
-          return;
+  proxy = g_dbus_proxy_new_for_bus_finish (res, &error);
+  if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
+    return;
 
-        sidebar->hostnamed_proxy = proxy;
-       g_clear_object (&sidebar->hostnamed_cancellable);
+  sidebar->hostnamed_proxy = proxy;
+  g_clear_object (&sidebar->hostnamed_cancellable);
 
-       if (error != NULL) {
-               g_debug ("Failed to create D-Bus proxy: %s", error->message);
-               g_error_free (error);
-               return;
-       }
+  if (error != NULL)
+    {
+      g_debug ("Failed to create D-Bus proxy: %s", error->message);
+      g_error_free (error);
+      return;
+    }
 
-       g_signal_connect_swapped (sidebar->hostnamed_proxy,
-                                 "g-properties-changed",
-                                 G_CALLBACK (update_hostname),
-                                 sidebar);
-       update_hostname (sidebar);
+  g_signal_connect_swapped (sidebar->hostnamed_proxy,
+                            "g-properties-changed",
+                            G_CALLBACK (update_hostname),
+                            sidebar);
+  update_hostname (sidebar);
 }
 
 static void
 create_volume_monitor (GtkPlacesSidebar *sidebar)
 {
-       g_assert (sidebar->volume_monitor == NULL);
-
-       sidebar->volume_monitor = g_volume_monitor_get ();
-
-       g_signal_connect_object (sidebar->volume_monitor, "volume_added",
-                                G_CALLBACK (volume_added_callback), sidebar, 0);
-       g_signal_connect_object (sidebar->volume_monitor, "volume_removed",
-                                G_CALLBACK (volume_removed_callback), sidebar, 0);
-       g_signal_connect_object (sidebar->volume_monitor, "volume_changed",
-                                G_CALLBACK (volume_changed_callback), sidebar, 0);
-       g_signal_connect_object (sidebar->volume_monitor, "mount_added",
-                                G_CALLBACK (mount_added_callback), sidebar, 0);
-       g_signal_connect_object (sidebar->volume_monitor, "mount_removed",
-                                G_CALLBACK (mount_removed_callback), sidebar, 0);
-       g_signal_connect_object (sidebar->volume_monitor, "mount_changed",
-                                G_CALLBACK (mount_changed_callback), sidebar, 0);
-       g_signal_connect_object (sidebar->volume_monitor, "drive_disconnected",
-                                G_CALLBACK (drive_disconnected_callback), sidebar, 0);
-       g_signal_connect_object (sidebar->volume_monitor, "drive_connected",
-                                G_CALLBACK (drive_connected_callback), sidebar, 0);
-       g_signal_connect_object (sidebar->volume_monitor, "drive_changed",
-                                G_CALLBACK (drive_changed_callback), sidebar, 0);
+  g_assert (sidebar->volume_monitor == NULL);
+
+  sidebar->volume_monitor = g_volume_monitor_get ();
+
+  g_signal_connect_object (sidebar->volume_monitor, "volume_added",
+                           G_CALLBACK (update_places), sidebar, G_CONNECT_SWAPPED);
+  g_signal_connect_object (sidebar->volume_monitor, "volume_removed",
+                           G_CALLBACK (update_places), sidebar, G_CONNECT_SWAPPED);
+  g_signal_connect_object (sidebar->volume_monitor, "volume_changed",
+                           G_CALLBACK (update_places), sidebar, G_CONNECT_SWAPPED);
+  g_signal_connect_object (sidebar->volume_monitor, "mount_added",
+                           G_CALLBACK (update_places), sidebar, G_CONNECT_SWAPPED);
+  g_signal_connect_object (sidebar->volume_monitor, "mount_removed",
+                           G_CALLBACK (update_places), sidebar, G_CONNECT_SWAPPED);
+  g_signal_connect_object (sidebar->volume_monitor, "mount_changed",
+                           G_CALLBACK (update_places), sidebar, G_CONNECT_SWAPPED);
+  g_signal_connect_object (sidebar->volume_monitor, "drive_disconnected",
+                           G_CALLBACK (update_places), sidebar, G_CONNECT_SWAPPED);
+  g_signal_connect_object (sidebar->volume_monitor, "drive_connected",
+                           G_CALLBACK (update_places), sidebar, G_CONNECT_SWAPPED);
+  g_signal_connect_object (sidebar->volume_monitor, "drive_changed",
+                           G_CALLBACK (update_places), sidebar, G_CONNECT_SWAPPED);
 }
 
 static void
-bookmarks_changed_cb (gpointer data)
+gtk_places_sidebar_init (GtkPlacesSidebar *sidebar)
 {
-       GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (data);
-
-       update_places (sidebar);
+  GtkTreeView       *tree_view;
+  GtkTreeViewColumn *col;
+  GtkCellRenderer   *cell;
+  GtkTreeSelection  *selection;
+  GIcon             *eject;
+  GtkTargetList     *target_list;
+
+  gtk_style_context_add_class (gtk_widget_get_style_context (GTK_WIDGET (sidebar)), GTK_STYLE_CLASS_SIDEBAR);
+
+  create_volume_monitor (sidebar);
+
+  sidebar->open_flags = GTK_PLACES_OPEN_NORMAL;
+
+  sidebar->bookmarks_manager = _gtk_bookmarks_manager_new ((GtkBookmarksChangedFunc)update_places, sidebar);
+
+  sidebar->trash_monitor = _gtk_trash_monitor_get ();
+  sidebar->trash_monitor_changed_id = g_signal_connect_swapped (sidebar->trash_monitor, 
"trash-state-changed",
+                                                                G_CALLBACK (update_places), sidebar);
+
+  sidebar->shortcuts = NULL;
+
+  gtk_widget_set_size_request (GTK_WIDGET (sidebar), 140, 280);
+
+  gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sidebar),
+                                  GTK_POLICY_NEVER,
+                                  GTK_POLICY_AUTOMATIC);
+  gtk_scrolled_window_set_hadjustment (GTK_SCROLLED_WINDOW (sidebar), NULL);
+  gtk_scrolled_window_set_vadjustment (GTK_SCROLLED_WINDOW (sidebar), NULL);
+  gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sidebar), GTK_SHADOW_IN);
+
+  gtk_style_context_set_junction_sides (gtk_widget_get_style_context (GTK_WIDGET (sidebar)),
+                                        GTK_JUNCTION_RIGHT | GTK_JUNCTION_LEFT);
+
+  /* tree view */
+  tree_view = GTK_TREE_VIEW (gtk_tree_view_new ());
+  gtk_tree_view_set_headers_visible (tree_view, FALSE);
+
+  col = gtk_tree_view_column_new ();
+
+  /* initial padding */
+  cell = gtk_cell_renderer_text_new ();
+  gtk_tree_view_column_pack_start (col, cell, FALSE);
+  g_object_set (cell,
+                "xpad", 6,
+                NULL);
+
+  /* headings */
+  cell = gtk_cell_renderer_text_new ();
+  gtk_tree_view_column_pack_start (col, cell, FALSE);
+  gtk_tree_view_column_set_attributes (col, cell,
+                                       "text", PLACES_SIDEBAR_COLUMN_HEADING_TEXT,
+                                       NULL);
+  g_object_set (cell,
+                "weight", PANGO_WEIGHT_BOLD,
+                "weight-set", TRUE,
+                "ypad", 6,
+                "xpad", 0,
+                NULL);
+  gtk_tree_view_column_set_cell_data_func (col, cell,
+                                           heading_cell_renderer_func,
+                                           sidebar, NULL);
+
+  /* icon padding */
+  cell = gtk_cell_renderer_text_new ();
+  gtk_tree_view_column_pack_start (col, cell, FALSE);
+  gtk_tree_view_column_set_cell_data_func (col, cell,
+                                           padding_cell_renderer_func,
+                                           sidebar, NULL);
+
+  /* icon renderer */
+  cell = gtk_cell_renderer_pixbuf_new ();
+  g_object_set (cell, "follow-state", TRUE, NULL);
+  gtk_tree_view_column_pack_start (col, cell, FALSE);
+  gtk_tree_view_column_set_attributes (col, cell,
+                                       "gicon", PLACES_SIDEBAR_COLUMN_GICON,
+                                       NULL);
+  gtk_tree_view_column_set_cell_data_func (col, cell,
+                                           icon_cell_renderer_func,
+                                           sidebar, NULL);
+
+  /* eject text renderer */
+  cell = gtk_cell_renderer_text_new ();
+  gtk_tree_view_column_pack_start (col, cell, TRUE);
+  gtk_tree_view_column_set_attributes (col, cell,
+                                       "text", PLACES_SIDEBAR_COLUMN_NAME,
+                                       "visible", PLACES_SIDEBAR_COLUMN_EJECT,
+                                       NULL);
+  g_object_set (cell,
+                "ellipsize", PANGO_ELLIPSIZE_END,
+                "ellipsize-set", TRUE,
+                NULL);
+
+  /* eject icon renderer */
+  cell = gtk_cell_renderer_pixbuf_new ();
+  sidebar->eject_icon_cell_renderer = cell;
+  eject = g_themed_icon_new_with_default_fallbacks ("media-eject-symbolic");
+  g_object_set (cell,
+                "mode", GTK_CELL_RENDERER_MODE_ACTIVATABLE,
+                "stock-size", GTK_ICON_SIZE_MENU,
+                "xpad", EJECT_BUTTON_XPAD,
+                /* align right, because for some reason gtk+ expands
+                   this even though we tell it not to. */
+                "xalign", 1.0,
+                "follow-state", TRUE,
+                "gicon", eject,
+                NULL);
+  gtk_tree_view_column_pack_start (col, cell, FALSE);
+  gtk_tree_view_column_set_attributes (col, cell,
+                                       "visible", PLACES_SIDEBAR_COLUMN_EJECT,
+                                       NULL);
+  g_object_unref (eject);
+
+  /* normal text renderer */
+  cell = gtk_cell_renderer_text_new ();
+  gtk_tree_view_column_pack_start (col, cell, TRUE);
+  g_object_set (G_OBJECT (cell), "editable", FALSE, NULL);
+  gtk_tree_view_column_set_attributes (col, cell,
+                                       "text", PLACES_SIDEBAR_COLUMN_NAME,
+                                       "visible", PLACES_SIDEBAR_COLUMN_NO_EJECT,
+                                       "editable-set", PLACES_SIDEBAR_COLUMN_BOOKMARK,
+                                       NULL);
+  g_object_set (cell,
+                "ellipsize", PANGO_ELLIPSIZE_END,
+                "ellipsize-set", TRUE,
+                NULL);
+
+  g_signal_connect (cell, "edited",
+                    G_CALLBACK (bookmarks_edited), sidebar);
+  g_signal_connect (cell, "editing-canceled",
+                    G_CALLBACK (bookmarks_editing_canceled), sidebar);
+
+  /* this is required to align the eject buttons to the right */
+  gtk_tree_view_column_set_max_width (GTK_TREE_VIEW_COLUMN (col), 24);
+  gtk_tree_view_append_column (tree_view, col);
+
+  sidebar->store = shortcuts_model_new (sidebar);
+  gtk_tree_view_set_tooltip_column (tree_view, PLACES_SIDEBAR_COLUMN_TOOLTIP);
+
+  gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (sidebar->store),
+                                        PLACES_SIDEBAR_COLUMN_NAME,
+                                        GTK_SORT_ASCENDING);
+  gtk_tree_sortable_set_sort_func (GTK_TREE_SORTABLE (sidebar->store),
+                                   PLACES_SIDEBAR_COLUMN_NAME,
+                                   places_sidebar_sort_func,
+                                   sidebar, NULL);
+
+  gtk_tree_view_set_model (tree_view, GTK_TREE_MODEL (sidebar->store));
+  gtk_container_add (GTK_CONTAINER (sidebar), GTK_WIDGET (tree_view));
+  gtk_widget_show (GTK_WIDGET (tree_view));
+  gtk_tree_view_set_enable_search (tree_view, FALSE);
+
+  gtk_widget_show (GTK_WIDGET (sidebar));
+  sidebar->tree_view = tree_view;
+
+  gtk_tree_view_set_search_column (tree_view, PLACES_SIDEBAR_COLUMN_NAME);
+  selection = gtk_tree_view_get_selection (tree_view);
+  gtk_tree_selection_set_mode (selection, GTK_SELECTION_BROWSE);
+
+  gtk_tree_selection_set_select_function (selection,
+                                          tree_selection_func,
+                                          sidebar,
+                                          NULL);
+
+  gtk_tree_view_enable_model_drag_source (GTK_TREE_VIEW (tree_view),
+                                          GDK_BUTTON1_MASK,
+                                          dnd_source_targets, G_N_ELEMENTS (dnd_source_targets),
+                                          GDK_ACTION_MOVE);
+  gtk_drag_dest_set (GTK_WIDGET (tree_view),
+                     0,
+                     NULL, 0,
+                     GDK_ACTION_MOVE | GDK_ACTION_COPY | GDK_ACTION_LINK);
+  target_list = gtk_target_list_new  (dnd_drop_targets, G_N_ELEMENTS (dnd_drop_targets));
+  gtk_target_list_add_uri_targets (target_list, TEXT_URI_LIST);
+  gtk_drag_dest_set_target_list (GTK_WIDGET (tree_view), target_list);
+
+  g_signal_connect (tree_view, "key-press-event",
+                    G_CALLBACK (bookmarks_key_press_event_cb), sidebar);
+
+  g_signal_connect (tree_view, "drag-motion",
+                    G_CALLBACK (drag_motion_callback), sidebar);
+  g_signal_connect (tree_view, "drag-leave",
+                    G_CALLBACK (drag_leave_callback), sidebar);
+  g_signal_connect (tree_view, "drag-data-received",
+                    G_CALLBACK (drag_data_received_callback), sidebar);
+  g_signal_connect (tree_view, "drag-drop",
+                    G_CALLBACK (drag_drop_callback), sidebar);
+
+  g_signal_connect (tree_view, "popup-menu",
+                    G_CALLBACK (bookmarks_popup_menu_cb), sidebar);
+  g_signal_connect (tree_view, "button-release-event",
+                    G_CALLBACK (bookmarks_button_release_event_cb), sidebar);
+  g_signal_connect (tree_view, "row-activated",
+                    G_CALLBACK (bookmarks_row_activated_cb), sidebar);
+
+  gtk_tree_view_set_activate_on_single_click (sidebar->tree_view, TRUE);
+
+  sidebar->hostname = g_strdup (_("Computer"));
+  sidebar->hostnamed_cancellable = g_cancellable_new ();
+  g_dbus_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
+                            G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES,
+                            NULL,
+                            "org.freedesktop.hostname1",
+                            "/org/freedesktop/hostname1",
+                            "org.freedesktop.hostname1",
+                            sidebar->hostnamed_cancellable,
+                            hostname_proxy_new_cb,
+                            sidebar);
+
+  sidebar->drop_state = DROP_STATE_NORMAL;
+  sidebar->new_bookmark_index = -1;
+
+  /* populate the sidebar */
+  update_places (sidebar);
 }
 
 static void
-trash_monitor_trash_state_changed_cb (GtkTrashMonitor *monitor,
-                                     GtkPlacesSidebar *sidebar)
+gtk_places_sidebar_set_property (GObject      *obj,
+                                 guint         property_id,
+                                 const GValue *value,
+                                 GParamSpec   *pspec)
 {
-       update_places (sidebar);
-}
+  GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (obj);
 
+  switch (property_id)
+    {
+    case PROP_LOCATION:
+      gtk_places_sidebar_set_location (sidebar, g_value_get_object (value));
+      break;
 
-static void
-gtk_places_sidebar_init (GtkPlacesSidebar *sidebar)
-{
-       GtkTreeView       *tree_view;
-       GtkTreeViewColumn *col;
-       GtkCellRenderer   *cell;
-       GtkTreeSelection  *selection;
-       GIcon             *eject;
-        GtkTargetList     *target_list;
-
-       gtk_style_context_add_class (gtk_widget_get_style_context (GTK_WIDGET (sidebar)), 
GTK_STYLE_CLASS_SIDEBAR);
-
-       create_volume_monitor (sidebar);
-
-       sidebar->open_flags = GTK_PLACES_OPEN_NORMAL;
-
-       sidebar->bookmarks_manager = _gtk_bookmarks_manager_new (bookmarks_changed_cb, sidebar);
-
-       sidebar->trash_monitor = _gtk_trash_monitor_get ();
-       sidebar->trash_monitor_changed_id = g_signal_connect (sidebar->trash_monitor, "trash-state-changed",
-                                                             G_CALLBACK 
(trash_monitor_trash_state_changed_cb), sidebar);
-
-       sidebar->shortcuts = NULL;
-
-       gtk_widget_set_size_request (GTK_WIDGET (sidebar), 140, 280);
-
-       gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sidebar),
-                                       GTK_POLICY_NEVER,
-                                       GTK_POLICY_AUTOMATIC);
-       gtk_scrolled_window_set_hadjustment (GTK_SCROLLED_WINDOW (sidebar), NULL);
-       gtk_scrolled_window_set_vadjustment (GTK_SCROLLED_WINDOW (sidebar), NULL);
-       gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (sidebar), GTK_SHADOW_IN);
-
-       gtk_style_context_set_junction_sides (gtk_widget_get_style_context (GTK_WIDGET (sidebar)),
-                                             GTK_JUNCTION_RIGHT | GTK_JUNCTION_LEFT);
-
-       /* tree view */
-       tree_view = GTK_TREE_VIEW (gtk_tree_view_new ());
-       gtk_tree_view_set_headers_visible (tree_view, FALSE);
-
-       col = gtk_tree_view_column_new ();
-
-       /* initial padding */
-       cell = gtk_cell_renderer_text_new ();
-       gtk_tree_view_column_pack_start (col, cell, FALSE);
-       g_object_set (cell,
-                     "xpad", 6,
-                     NULL);
-
-       /* headings */
-       cell = gtk_cell_renderer_text_new ();
-       gtk_tree_view_column_pack_start (col, cell, FALSE);
-       gtk_tree_view_column_set_attributes (col, cell,
-                                            "text", PLACES_SIDEBAR_COLUMN_HEADING_TEXT,
-                                            NULL);
-       g_object_set (cell,
-                     "weight", PANGO_WEIGHT_BOLD,
-                     "weight-set", TRUE,
-                     "ypad", 6,
-                     "xpad", 0,
-                     NULL);
-       gtk_tree_view_column_set_cell_data_func (col, cell,
-                                                heading_cell_renderer_func,
-                                                sidebar, NULL);
-
-       /* icon padding */
-       cell = gtk_cell_renderer_text_new ();
-       gtk_tree_view_column_pack_start (col, cell, FALSE);
-       gtk_tree_view_column_set_cell_data_func (col, cell,
-                                                padding_cell_renderer_func,
-                                                sidebar, NULL);
-
-       /* icon renderer */
-       cell = gtk_cell_renderer_pixbuf_new ();
-       g_object_set (cell, "follow-state", TRUE, NULL);
-       gtk_tree_view_column_pack_start (col, cell, FALSE);
-       gtk_tree_view_column_set_attributes (col, cell,
-                                            "gicon", PLACES_SIDEBAR_COLUMN_GICON,
-                                            NULL);
-       gtk_tree_view_column_set_cell_data_func (col, cell,
-                                                icon_cell_renderer_func,
-                                                sidebar, NULL);
-
-       /* eject text renderer */
-       cell = gtk_cell_renderer_text_new ();
-       gtk_tree_view_column_pack_start (col, cell, TRUE);
-       gtk_tree_view_column_set_attributes (col, cell,
-                                            "text", PLACES_SIDEBAR_COLUMN_NAME,
-                                            "visible", PLACES_SIDEBAR_COLUMN_EJECT,
-                                            NULL);
-       g_object_set (cell,
-                     "ellipsize", PANGO_ELLIPSIZE_END,
-                     "ellipsize-set", TRUE,
-                     NULL);
-
-       /* eject icon renderer */
-       cell = gtk_cell_renderer_pixbuf_new ();
-       sidebar->eject_icon_cell_renderer = cell;
-       eject = g_themed_icon_new_with_default_fallbacks ("media-eject-symbolic");
-       g_object_set (cell,
-                     "mode", GTK_CELL_RENDERER_MODE_ACTIVATABLE,
-                     "stock-size", GTK_ICON_SIZE_MENU,
-                     "xpad", EJECT_BUTTON_XPAD,
-                     /* align right, because for some reason gtk+ expands
-                        this even though we tell it not to. */
-                     "xalign", 1.0,
-                     "follow-state", TRUE,
-                     "gicon", eject,
-                     NULL);
-       gtk_tree_view_column_pack_start (col, cell, FALSE);
-       gtk_tree_view_column_set_attributes (col, cell,
-                                            "visible", PLACES_SIDEBAR_COLUMN_EJECT,
-                                            NULL);
-       g_object_unref (eject);
-
-       /* normal text renderer */
-       cell = gtk_cell_renderer_text_new ();
-       gtk_tree_view_column_pack_start (col, cell, TRUE);
-       g_object_set (G_OBJECT (cell), "editable", FALSE, NULL);
-       gtk_tree_view_column_set_attributes (col, cell,
-                                            "text", PLACES_SIDEBAR_COLUMN_NAME,
-                                            "visible", PLACES_SIDEBAR_COLUMN_NO_EJECT,
-                                            "editable-set", PLACES_SIDEBAR_COLUMN_BOOKMARK,
-                                            NULL);
-       g_object_set (cell,
-                     "ellipsize", PANGO_ELLIPSIZE_END,
-                     "ellipsize-set", TRUE,
-                     NULL);
-
-       g_signal_connect (cell, "edited",
-                         G_CALLBACK (bookmarks_edited), sidebar);
-       g_signal_connect (cell, "editing-canceled",
-                         G_CALLBACK (bookmarks_editing_canceled), sidebar);
-
-       /* this is required to align the eject buttons to the right */
-       gtk_tree_view_column_set_max_width (GTK_TREE_VIEW_COLUMN (col), 24);
-       gtk_tree_view_append_column (tree_view, col);
-
-       sidebar->store = shortcuts_model_new (sidebar);
-       gtk_tree_view_set_tooltip_column (tree_view, PLACES_SIDEBAR_COLUMN_TOOLTIP);
-
-       gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (sidebar->store),
-                                             PLACES_SIDEBAR_COLUMN_NAME,
-                                             GTK_SORT_ASCENDING);
-       gtk_tree_sortable_set_sort_func (GTK_TREE_SORTABLE (sidebar->store),
-                                        PLACES_SIDEBAR_COLUMN_NAME,
-                                        places_sidebar_sort_func,
-                                        sidebar, NULL);
-
-       gtk_tree_view_set_model (tree_view, GTK_TREE_MODEL (sidebar->store));
-       gtk_container_add (GTK_CONTAINER (sidebar), GTK_WIDGET (tree_view));
-       gtk_widget_show (GTK_WIDGET (tree_view));
-       gtk_tree_view_set_enable_search (tree_view, FALSE);
-
-       gtk_widget_show (GTK_WIDGET (sidebar));
-       sidebar->tree_view = tree_view;
-
-       gtk_tree_view_set_search_column (tree_view, PLACES_SIDEBAR_COLUMN_NAME);
-       selection = gtk_tree_view_get_selection (tree_view);
-       gtk_tree_selection_set_mode (selection, GTK_SELECTION_BROWSE);
-
-       gtk_tree_selection_set_select_function (selection,
-                                               tree_selection_func,
-                                               sidebar,
-                                               NULL);
-
-       gtk_tree_view_enable_model_drag_source (GTK_TREE_VIEW (tree_view),
-                                               GDK_BUTTON1_MASK,
-                                               dnd_source_targets, G_N_ELEMENTS (dnd_source_targets),
-                                               GDK_ACTION_MOVE);
-       gtk_drag_dest_set (GTK_WIDGET (tree_view),
-                          0,
-                           NULL, 0,
-                          GDK_ACTION_MOVE | GDK_ACTION_COPY | GDK_ACTION_LINK);
-       target_list = gtk_target_list_new  (dnd_drop_targets, G_N_ELEMENTS (dnd_drop_targets));
-       gtk_target_list_add_uri_targets (target_list, TEXT_URI_LIST);
-        gtk_drag_dest_set_target_list (GTK_WIDGET (tree_view), target_list);
-
-       g_signal_connect (tree_view, "key-press-event",
-                         G_CALLBACK (bookmarks_key_press_event_cb), sidebar);
-
-       g_signal_connect (tree_view, "drag-motion",
-                         G_CALLBACK (drag_motion_callback), sidebar);
-       g_signal_connect (tree_view, "drag-leave",
-                         G_CALLBACK (drag_leave_callback), sidebar);
-       g_signal_connect (tree_view, "drag-data-received",
-                         G_CALLBACK (drag_data_received_callback), sidebar);
-       g_signal_connect (tree_view, "drag-drop",
-                         G_CALLBACK (drag_drop_callback), sidebar);
-
-       g_signal_connect (tree_view, "popup-menu",
-                         G_CALLBACK (bookmarks_popup_menu_cb), sidebar);
-       g_signal_connect (tree_view, "button-release-event",
-                         G_CALLBACK (bookmarks_button_release_event_cb), sidebar);
-       g_signal_connect (tree_view, "row-activated",
-                         G_CALLBACK (bookmarks_row_activated_cb), sidebar);
-
-       gtk_tree_view_set_activate_on_single_click (sidebar->tree_view, TRUE);
-
-       sidebar->hostname = g_strdup (_("Computer"));
-       sidebar->hostnamed_cancellable = g_cancellable_new ();
-       g_dbus_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
-                                 G_DBUS_PROXY_FLAGS_GET_INVALIDATED_PROPERTIES,
-                                 NULL,
-                                 "org.freedesktop.hostname1",
-                                 "/org/freedesktop/hostname1",
-                                 "org.freedesktop.hostname1",
-                                 sidebar->hostnamed_cancellable,
-                                 hostname_proxy_new_cb,
-                                 sidebar);
-
-       sidebar->drop_state = DROP_STATE_NORMAL;
-       sidebar->new_bookmark_index = -1;
-
-       /* populate the sidebar */
-       update_places (sidebar);
-}
+    case PROP_OPEN_FLAGS:
+      gtk_places_sidebar_set_open_flags (sidebar, g_value_get_flags (value));
+      break;
 
-static void
-gtk_places_sidebar_set_property (GObject      *obj,
-                                guint         property_id,
-                                const GValue *value,
-                                GParamSpec   *pspec)
-{
-       GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (obj);
-
-       switch (property_id) {
-       case PROP_LOCATION:
-               gtk_places_sidebar_set_location (sidebar, g_value_get_object (value));
-               break;
-       case PROP_OPEN_FLAGS:
-               gtk_places_sidebar_set_open_flags (sidebar, g_value_get_flags (value));
-               break;
-       case PROP_SHOW_DESKTOP:
-               gtk_places_sidebar_set_show_desktop (sidebar, g_value_get_boolean (value));
-               break;
-       case PROP_SHOW_CONNECT_TO_SERVER:
-               gtk_places_sidebar_set_show_connect_to_server (sidebar, g_value_get_boolean (value));
-               break;
-       default:
-               G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, property_id, pspec);
-               break;
-       }
+    case PROP_SHOW_DESKTOP:
+      gtk_places_sidebar_set_show_desktop (sidebar, g_value_get_boolean (value));
+      break;
+
+    case PROP_SHOW_CONNECT_TO_SERVER:
+      gtk_places_sidebar_set_show_connect_to_server (sidebar, g_value_get_boolean (value));
+      break;
+
+    default:
+      G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, property_id, pspec);
+      break;
+    }
 }
 
 static void
 gtk_places_sidebar_get_property (GObject    *obj,
-                                guint       property_id,
-                                GValue     *value,
-                                GParamSpec *pspec)
-{
-       GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (obj);
-
-       switch (property_id) {
-       case PROP_LOCATION:
-               g_value_take_object (value, gtk_places_sidebar_get_location (sidebar));
-               break;
-       case PROP_OPEN_FLAGS:
-               g_value_set_flags (value, gtk_places_sidebar_get_open_flags (sidebar));
-               break;
-       case PROP_SHOW_DESKTOP:
-               g_value_set_boolean (value, gtk_places_sidebar_get_show_desktop (sidebar));
-               break;
-       case PROP_SHOW_CONNECT_TO_SERVER:
-               g_value_set_boolean (value, gtk_places_sidebar_get_show_connect_to_server (sidebar));
-               break;
-       default:
-               G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, property_id, pspec);
-               break;
-       }
+                                 guint       property_id,
+                                 GValue     *value,
+                                 GParamSpec *pspec)
+{
+  GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (obj);
+
+  switch (property_id)
+    {
+    case PROP_LOCATION:
+      g_value_take_object (value, gtk_places_sidebar_get_location (sidebar));
+      break;
+
+    case PROP_OPEN_FLAGS:
+      g_value_set_flags (value, gtk_places_sidebar_get_open_flags (sidebar));
+      break;
+
+    case PROP_SHOW_DESKTOP:
+      g_value_set_boolean (value, gtk_places_sidebar_get_show_desktop (sidebar));
+      break;
+
+    case PROP_SHOW_CONNECT_TO_SERVER:
+      g_value_set_boolean (value, gtk_places_sidebar_get_show_connect_to_server (sidebar));
+      break;
+
+    default:
+      G_OBJECT_WARN_INVALID_PROPERTY_ID (obj, property_id, pspec);
+      break;
+    }
 }
 
 static void
 gtk_places_sidebar_dispose (GObject *object)
 {
-       GtkPlacesSidebar *sidebar;
+  GtkPlacesSidebar *sidebar;
 
-       sidebar = GTK_PLACES_SIDEBAR (object);
+  sidebar = GTK_PLACES_SIDEBAR (object);
 
-       sidebar->tree_view = NULL;
+  sidebar->tree_view = NULL;
 
-       if (sidebar->drag_leave_timeout_id) {
-               g_source_remove (sidebar->drag_leave_timeout_id);
-               sidebar->drag_leave_timeout_id = 0;
-       }
+  if (sidebar->drag_leave_timeout_id)
+    {
+      g_source_remove (sidebar->drag_leave_timeout_id);
+      sidebar->drag_leave_timeout_id = 0;
+    }
 
-       free_drag_data (sidebar);
+  free_drag_data (sidebar);
 
-       if (sidebar->bookmarks_manager != NULL) {
-               _gtk_bookmarks_manager_free (sidebar->bookmarks_manager);
-               sidebar->bookmarks_manager = NULL;
-       }
+  if (sidebar->bookmarks_manager != NULL)
+    {
+      _gtk_bookmarks_manager_free (sidebar->bookmarks_manager);
+      sidebar->bookmarks_manager = NULL;
+    }
 
-       if (sidebar->popup_menu) {
-               gtk_widget_destroy (sidebar->popup_menu);
-               sidebar->popup_menu = NULL;
-       }
+  if (sidebar->popup_menu)
+    {
+      gtk_widget_destroy (sidebar->popup_menu);
+      sidebar->popup_menu = NULL;
+    }
 
-       if (sidebar->trash_monitor) {
-               g_signal_handler_disconnect (sidebar->trash_monitor, sidebar->trash_monitor_changed_id);
-               sidebar->trash_monitor_changed_id = 0;
-               g_clear_object (&sidebar->trash_monitor);
-       }
+  if (sidebar->trash_monitor)
+    {
+      g_signal_handler_disconnect (sidebar->trash_monitor, sidebar->trash_monitor_changed_id);
+      sidebar->trash_monitor_changed_id = 0;
+      g_clear_object (&sidebar->trash_monitor);
+    }
 
-       g_clear_object (&sidebar->store);
+  g_clear_object (&sidebar->store);
 
-       g_slist_free_full (sidebar->shortcuts, g_object_unref);
-       sidebar->shortcuts = NULL;
+  g_slist_free_full (sidebar->shortcuts, g_object_unref);
+  sidebar->shortcuts = NULL;
 
-       if (sidebar->volume_monitor != NULL) {
-               g_signal_handlers_disconnect_by_func (sidebar->volume_monitor,
-                                                     volume_added_callback, sidebar);
-               g_signal_handlers_disconnect_by_func (sidebar->volume_monitor,
-                                                     volume_removed_callback, sidebar);
-               g_signal_handlers_disconnect_by_func (sidebar->volume_monitor,
-                                                     volume_changed_callback, sidebar);
-               g_signal_handlers_disconnect_by_func (sidebar->volume_monitor,
-                                                     mount_added_callback, sidebar);
-               g_signal_handlers_disconnect_by_func (sidebar->volume_monitor,
-                                                     mount_removed_callback, sidebar);
-               g_signal_handlers_disconnect_by_func (sidebar->volume_monitor,
-                                                     mount_changed_callback, sidebar);
-               g_signal_handlers_disconnect_by_func (sidebar->volume_monitor,
-                                                     drive_disconnected_callback, sidebar);
-               g_signal_handlers_disconnect_by_func (sidebar->volume_monitor,
-                                                     drive_connected_callback, sidebar);
-               g_signal_handlers_disconnect_by_func (sidebar->volume_monitor,
-                                                     drive_changed_callback, sidebar);
+  if (sidebar->volume_monitor != NULL)
+    {
+      g_signal_handlers_disconnect_by_func (sidebar->volume_monitor,
+                                            update_places, sidebar);
+      g_clear_object (&sidebar->volume_monitor);
+    }
 
-               g_clear_object (&sidebar->volume_monitor);
-       }
+  if (sidebar->hostnamed_cancellable != NULL)
+    {
+      g_cancellable_cancel (sidebar->hostnamed_cancellable);
+      g_clear_object (&sidebar->hostnamed_cancellable);
+    }
 
-       if (sidebar->hostnamed_cancellable != NULL) {
-               g_cancellable_cancel (sidebar->hostnamed_cancellable);
-               g_clear_object (&sidebar->hostnamed_cancellable);
-       }
+  g_clear_object (&sidebar->hostnamed_proxy);
+  g_free (sidebar->hostname);
+  sidebar->hostname = NULL;
 
-       g_clear_object (&sidebar->hostnamed_proxy);
-       g_free (sidebar->hostname);
-       sidebar->hostname = NULL;
-
-       G_OBJECT_CLASS (gtk_places_sidebar_parent_class)->dispose (object);
+  G_OBJECT_CLASS (gtk_places_sidebar_parent_class)->dispose (object);
 }
 
 static void
 gtk_places_sidebar_class_init (GtkPlacesSidebarClass *class)
 {
-       GObjectClass *gobject_class;
-
-       gobject_class = (GObjectClass *) class;
-
-       gobject_class->dispose = gtk_places_sidebar_dispose;
-       gobject_class->set_property = gtk_places_sidebar_set_property;
-       gobject_class->get_property = gtk_places_sidebar_get_property;
-
-       GTK_WIDGET_CLASS (class)->focus = gtk_places_sidebar_focus;
-
-       /**
-        * GtkPlacesSidebar::open-location:
-        * @sidebar: the object which received the signal.
-        * @location: #GFile to which the caller should switch.
-        * @open_flags: a single value from #GtkPlacesOpenFlags specifying how the @location should be opened.
-        *
-        * The places sidebar emits this signal when the user selects a location
-        * in it.  The calling application should display the contents of that
-        * location; for example, a file manager should show a list of files in
-        * the specified location.
-        *
-        * Since: 3.10
-        */
-       places_sidebar_signals [OPEN_LOCATION] =
-               g_signal_new (I_("open-location"),
-                             G_OBJECT_CLASS_TYPE (gobject_class),
-                             G_SIGNAL_RUN_FIRST,
-                             G_STRUCT_OFFSET (GtkPlacesSidebarClass, open_location),
-                             NULL, NULL,
-                             _gtk_marshal_VOID__OBJECT_FLAGS,
-                             G_TYPE_NONE, 2,
-                             G_TYPE_OBJECT,
-                             GTK_TYPE_PLACES_OPEN_FLAGS);
-
-       /**
-        * GtkPlacesSidebar::populate-popup:
-        * @sidebar: the object which received the signal.
-        * @menu: a #GtkMenu.
-        * @selected_item: #GFile with the item to which the menu should refer, or #NULL in the case of a 
@selected_volume.
-        * @selected_volume: #GVolume if the selected item is a volume, or #NULL if it is a file.
-        *
-        * The places sidebar emits this signal when the user invokes a contextual
-        * menu on one of its items.  In the signal handler, the application may
-        * add extra items to the menu as appropriate.  For example, a file manager
-        * may want to add a "Properties" command to the menu.
-        *
-        * It is not necessary to store the @selected_item for each menu item;
-        * during their GtkMenuItem::activate callbacks, the application can use
-        * gtk_places_sidebar_get_location() to get the file to which the item
-        * refers.
-        *
-        * The @selected_item argument may be #NULL in case the selection refers to
-        * a volume.  In this case, @selected_volume will be non-NULL.  In this case,
-        * the calling application will have to g_object_ref() the @selected_volume and
-        * keep it around for the purposes of its menu item's "activate" callback.
-        *
-        * The @menu and all its menu items are destroyed after the user
-        * dismisses the menu.  The menu is re-created (and thus, this signal is
-        * emitted) every time the user activates the contextual menu.
-        *
-        * Since: 3.10
-        */
-       places_sidebar_signals [POPULATE_POPUP] =
-               g_signal_new (I_("populate-popup"),
-                             G_OBJECT_CLASS_TYPE (gobject_class),
-                             G_SIGNAL_RUN_FIRST,
-                             G_STRUCT_OFFSET (GtkPlacesSidebarClass, populate_popup),
-                             NULL, NULL,
-                             _gtk_marshal_VOID__OBJECT_OBJECT_OBJECT,
-                             G_TYPE_NONE, 3,
-                             G_TYPE_OBJECT,
-                             G_TYPE_OBJECT,
-                             G_TYPE_OBJECT);
-
-       /**
-        * GtkPlacesSidebar::show-error-message:
-        * @sidebar: the object which received the signal.
-        * @primary: primary message with a summary of the error to show.
-        * @secondary: secondary message with details of the error to show.
-        *
-        * The places sidebar emits this signal when it needs the calling
-        * application to present an error message.  Most of these messages
-        * refer to mounting or unmounting media, for example, when a drive
-        * cannot be started for some reason.
-        *
-        * Since: 3.10
-        */
-       places_sidebar_signals [SHOW_ERROR_MESSAGE] =
-               g_signal_new (I_("show-error-message"),
-                             G_OBJECT_CLASS_TYPE (gobject_class),
-                             G_SIGNAL_RUN_FIRST,
-                             G_STRUCT_OFFSET (GtkPlacesSidebarClass, show_error_message),
-                             NULL, NULL,
-                             _gtk_marshal_VOID__STRING_STRING,
-                             G_TYPE_NONE, 2,
-                             G_TYPE_STRING,
-                             G_TYPE_STRING);
-
-       /**
-        * GtkPlacesSidebar::show-connect-to-server:
-        * @sidebar: the object which received the signal.
-        *
-        * The places sidebar emits this signal when it needs the calling
-        * application to present an way to connect directly to a network server.
-        * For example, the application may bring up a dialog box asking for
-        * a URL like "sftp://ftp.example.com";.  It is up to the application to create
-        * the corresponding mount by using, for example, g_file_mount_enclosing_volume().
-        *
-        * Since: 3.10
-        */
-       places_sidebar_signals [SHOW_CONNECT_TO_SERVER] =
-               g_signal_new (I_("show-connect-to-server"),
-                             G_OBJECT_CLASS_TYPE (gobject_class),
-                             G_SIGNAL_RUN_FIRST,
-                             G_STRUCT_OFFSET (GtkPlacesSidebarClass, show_connect_to_server),
-                             NULL, NULL,
-                             _gtk_marshal_VOID__VOID,
-                             G_TYPE_NONE, 0);
-
-       /**
-        * GtkPlacesSidebar::drag-action-requested:
-        * @sidebar: the object which received the signal.
-        * @context: #GdkDragContext with information about the drag operation
-        * @dest_file: #GFile with the tentative location that is being hovered for a drop
-        * @source_file_list: (element-type GFile) (transfer none): List of #GFile that are being dragged
-        *
-        * When the user starts a drag-and-drop operation and the sidebar needs
-        * to ask the application for which drag action to perform, then the
-        * sidebar will emit this signal.
-        *
-        * The application can evaluate the @context for customary actions, or
-        * it can check the type of the files indicated by @source_file_list against the
-        * possible actions for the destination @dest_file.
-        *
-        * The drag action to use must be the return value of the signal handler.
-        *
-        * Return value: The drag action to use, for example, #GDK_ACTION_COPY
-        * or #GDK_ACTION_MOVE, or 0 if no action is allowed here (i.e. drops
-        * are not allowed in the specified @dest_file).
-        *
-        * Since: 3.10
-        */
-       places_sidebar_signals [DRAG_ACTION_REQUESTED] =
-               g_signal_new (I_("drag-action-requested"),
-                             G_OBJECT_CLASS_TYPE (gobject_class),
-                             G_SIGNAL_RUN_LAST,
-                             G_STRUCT_OFFSET (GtkPlacesSidebarClass, drag_action_requested),
-                             NULL, NULL,
-                             _gtk_marshal_INT__OBJECT_OBJECT_POINTER,
-                             G_TYPE_INT, 3,
-                             GDK_TYPE_DRAG_CONTEXT,
-                             G_TYPE_OBJECT,
-                             G_TYPE_POINTER /* GList of GFile */ );
-
-       /**
-        * GtkPlacesSidebar::drag-action-ask:
-        * @sidebar: the object which received the signal.
-        * @actions: Possible drag actions that need to be asked for.
-        *
-        * The places sidebar emits this signal when it needs to ask the application
-        * to pop up a menu to ask the user for which drag action to perform.
-        *
-        * Return value: the final drag action that the sidebar should pass to the drag side
-        * of the drag-and-drop operation.
-        *
-        * Since: 3.10
-        */
-       places_sidebar_signals [DRAG_ACTION_ASK] =
-               g_signal_new (I_("drag-action-ask"),
-                             G_OBJECT_CLASS_TYPE (gobject_class),
-                             G_SIGNAL_RUN_LAST,
-                             G_STRUCT_OFFSET (GtkPlacesSidebarClass, drag_action_ask),
-                             NULL, NULL,
-                             _gtk_marshal_INT__INT,
-                             G_TYPE_INT, 1,
-                             G_TYPE_INT);
-
-       /**
-        * GtkPlacesSidebar::drag-perform-drop:
-        * @sidebar: the object which received the signal.
-        * @dest_file: Destination #GFile.
-        * @source_file_list: (element-type GFile) (transfer none): #GList of #GFile that got dropped.
-        * @action: Drop action to perform.
-        *
-        * The places sidebar emits this signal when the user completes a
-        * drag-and-drop operation and one of the sidebar's items is the
-        * destination.  This item is in the @dest_file, and the
-        * @source_file_list has the list of files that are dropped into it and
-        * which should be copied/moved/etc. based on the specified @action.
-        *
-        * Since: 3.10
-        */
-       places_sidebar_signals [DRAG_PERFORM_DROP] =
-               g_signal_new (I_("drag-perform-drop"),
-                             G_OBJECT_CLASS_TYPE (gobject_class),
-                             G_SIGNAL_RUN_FIRST,
-                             G_STRUCT_OFFSET (GtkPlacesSidebarClass, drag_perform_drop),
-                             NULL, NULL,
-                             _gtk_marshal_VOID__OBJECT_POINTER_INT,
-                             G_TYPE_NONE, 3,
-                             G_TYPE_OBJECT,
-                             G_TYPE_POINTER, /* GList of GFile */
-                             G_TYPE_INT);
-
-       properties[PROP_LOCATION] =
-               g_param_spec_object ("location",
-                                    P_("Location to Select"),
-                                    P_("The location to highlight in the sidebar"),
-                                    G_TYPE_FILE,
-                                    G_PARAM_READWRITE);
-       properties[PROP_OPEN_FLAGS] =
-               g_param_spec_flags ("open-flags",
-                                   P_("Open Flags"),
-                                   P_("Modes in which the calling application can open locations selected in 
the sidebar"),
-                                   GTK_TYPE_PLACES_OPEN_FLAGS,
-                                   GTK_PLACES_OPEN_NORMAL,
-                                   G_PARAM_READWRITE);
-       properties[PROP_SHOW_DESKTOP] =
-               g_param_spec_boolean ("show-desktop",
-                                     P_("Show 'Desktop'"),
-                                     P_("Whether the sidebar includes a builtin shortcut to the Desktop 
folder"),
-                                     FALSE,
-                                     G_PARAM_READWRITE);
-       properties[PROP_SHOW_CONNECT_TO_SERVER] =
-               g_param_spec_boolean ("show-connect-to-server",
-                                     P_("Show 'Connect to Server'"),
-                                     P_("Whether the sidebar includes a builtin shortcut to a 'Connect to 
server' dialog"),
-                                     FALSE,
-                                     G_PARAM_READWRITE);
-
-       g_object_class_install_properties (gobject_class, NUM_PROPERTIES, properties);
+  GObjectClass *gobject_class;
+
+  gobject_class = (GObjectClass *) class;
+
+  gobject_class->dispose = gtk_places_sidebar_dispose;
+  gobject_class->set_property = gtk_places_sidebar_set_property;
+  gobject_class->get_property = gtk_places_sidebar_get_property;
+
+  GTK_WIDGET_CLASS (class)->focus = gtk_places_sidebar_focus;
+
+  /**
+   * GtkPlacesSidebar::open-location:
+   * @sidebar: the object which received the signal.
+   * @location: #GFile to which the caller should switch.
+   * @open_flags: a single value from #GtkPlacesOpenFlags specifying how the @location should be opened.
+   *
+   * The places sidebar emits this signal when the user selects a location
+   * in it.  The calling application should display the contents of that
+   * location; for example, a file manager should show a list of files in
+   * the specified location.
+   *
+   * Since: 3.10
+   */
+  places_sidebar_signals [OPEN_LOCATION] =
+          g_signal_new (I_("open-location"),
+                        G_OBJECT_CLASS_TYPE (gobject_class),
+                        G_SIGNAL_RUN_FIRST,
+                        G_STRUCT_OFFSET (GtkPlacesSidebarClass, open_location),
+                        NULL, NULL,
+                        _gtk_marshal_VOID__OBJECT_FLAGS,
+                        G_TYPE_NONE, 2,
+                        G_TYPE_OBJECT,
+                        GTK_TYPE_PLACES_OPEN_FLAGS);
+
+  /**
+   * GtkPlacesSidebar::populate-popup:
+   * @sidebar: the object which received the signal.
+   * @menu: a #GtkMenu.
+   * @selected_item: #GFile with the item to which the menu should refer, or #NULL in the case of a 
@selected_volume.
+   * @selected_volume: #GVolume if the selected item is a volume, or #NULL if it is a file.
+   *
+   * The places sidebar emits this signal when the user invokes a contextual
+   * menu on one of its items.  In the signal handler, the application may
+   * add extra items to the menu as appropriate.  For example, a file manager
+   * may want to add a "Properties" command to the menu.
+   *
+   * It is not necessary to store the @selected_item for each menu item;
+   * during their GtkMenuItem::activate callbacks, the application can use
+   * gtk_places_sidebar_get_location() to get the file to which the item
+   * refers.
+   *
+   * The @selected_item argument may be #NULL in case the selection refers to
+   * a volume.  In this case, @selected_volume will be non-NULL.  In this case,
+   * the calling application will have to g_object_ref() the @selected_volume and
+   * keep it around for the purposes of its menu item's "activate" callback.
+   *
+   * The @menu and all its menu items are destroyed after the user
+   * dismisses the menu.  The menu is re-created (and thus, this signal is
+   * emitted) every time the user activates the contextual menu.
+   *
+   * Since: 3.10
+   */
+  places_sidebar_signals [POPULATE_POPUP] =
+          g_signal_new (I_("populate-popup"),
+                        G_OBJECT_CLASS_TYPE (gobject_class),
+                        G_SIGNAL_RUN_FIRST,
+                        G_STRUCT_OFFSET (GtkPlacesSidebarClass, populate_popup),
+                        NULL, NULL,
+                        _gtk_marshal_VOID__OBJECT_OBJECT_OBJECT,
+                        G_TYPE_NONE, 3,
+                        G_TYPE_OBJECT,
+                        G_TYPE_OBJECT,
+                        G_TYPE_OBJECT);
+
+  /**
+   * GtkPlacesSidebar::show-error-message:
+   * @sidebar: the object which received the signal.
+   * @primary: primary message with a summary of the error to show.
+   * @secondary: secondary message with details of the error to show.
+   *
+   * The places sidebar emits this signal when it needs the calling
+   * application to present an error message.  Most of these messages
+   * refer to mounting or unmounting media, for example, when a drive
+   * cannot be started for some reason.
+   *
+   * Since: 3.10
+   */
+  places_sidebar_signals [SHOW_ERROR_MESSAGE] =
+          g_signal_new (I_("show-error-message"),
+                        G_OBJECT_CLASS_TYPE (gobject_class),
+                        G_SIGNAL_RUN_FIRST,
+                        G_STRUCT_OFFSET (GtkPlacesSidebarClass, show_error_message),
+                        NULL, NULL,
+                        _gtk_marshal_VOID__STRING_STRING,
+                        G_TYPE_NONE, 2,
+                        G_TYPE_STRING,
+                        G_TYPE_STRING);
+
+  /**
+   * GtkPlacesSidebar::show-connect-to-server:
+   * @sidebar: the object which received the signal.
+   *
+   * The places sidebar emits this signal when it needs the calling
+   * application to present an way to connect directly to a network server.
+   * For example, the application may bring up a dialog box asking for
+   * a URL like "sftp://ftp.example.com";.  It is up to the application to create
+   * the corresponding mount by using, for example, g_file_mount_enclosing_volume().
+   *
+   * Since: 3.10
+   */
+  places_sidebar_signals [SHOW_CONNECT_TO_SERVER] =
+          g_signal_new (I_("show-connect-to-server"),
+                        G_OBJECT_CLASS_TYPE (gobject_class),
+                        G_SIGNAL_RUN_FIRST,
+                        G_STRUCT_OFFSET (GtkPlacesSidebarClass, show_connect_to_server),
+                        NULL, NULL,
+                        _gtk_marshal_VOID__VOID,
+                        G_TYPE_NONE, 0);
+
+  /**
+   * GtkPlacesSidebar::drag-action-requested:
+   * @sidebar: the object which received the signal.
+   * @context: #GdkDragContext with information about the drag operation
+   * @dest_file: #GFile with the tentative location that is being hovered for a drop
+   * @source_file_list: (element-type GFile) (transfer none): List of #GFile that are being dragged
+   *
+   * When the user starts a drag-and-drop operation and the sidebar needs
+   * to ask the application for which drag action to perform, then the
+   * sidebar will emit this signal.
+   *
+   * The application can evaluate the @context for customary actions, or
+   * it can check the type of the files indicated by @source_file_list against the
+   * possible actions for the destination @dest_file.
+   *
+   * The drag action to use must be the return value of the signal handler.
+   *
+   * Return value: The drag action to use, for example, #GDK_ACTION_COPY
+   * or #GDK_ACTION_MOVE, or 0 if no action is allowed here (i.e. drops
+   * are not allowed in the specified @dest_file).
+   *
+   * Since: 3.10
+   */
+  places_sidebar_signals [DRAG_ACTION_REQUESTED] =
+          g_signal_new (I_("drag-action-requested"),
+                        G_OBJECT_CLASS_TYPE (gobject_class),
+                        G_SIGNAL_RUN_LAST,
+                        G_STRUCT_OFFSET (GtkPlacesSidebarClass, drag_action_requested),
+                        NULL, NULL,
+                        _gtk_marshal_INT__OBJECT_OBJECT_POINTER,
+                        G_TYPE_INT, 3,
+                        GDK_TYPE_DRAG_CONTEXT,
+                        G_TYPE_OBJECT,
+                        G_TYPE_POINTER /* GList of GFile */ );
+
+  /**
+   * GtkPlacesSidebar::drag-action-ask:
+   * @sidebar: the object which received the signal.
+   * @actions: Possible drag actions that need to be asked for.
+   *
+   * The places sidebar emits this signal when it needs to ask the application
+   * to pop up a menu to ask the user for which drag action to perform.
+   *
+   * Return value: the final drag action that the sidebar should pass to the drag side
+   * of the drag-and-drop operation.
+   *
+   * Since: 3.10
+   */
+  places_sidebar_signals [DRAG_ACTION_ASK] =
+          g_signal_new (I_("drag-action-ask"),
+                        G_OBJECT_CLASS_TYPE (gobject_class),
+                        G_SIGNAL_RUN_LAST,
+                        G_STRUCT_OFFSET (GtkPlacesSidebarClass, drag_action_ask),
+                        NULL, NULL,
+                        _gtk_marshal_INT__INT,
+                        G_TYPE_INT, 1,
+                        G_TYPE_INT);
+
+  /**
+   * GtkPlacesSidebar::drag-perform-drop:
+   * @sidebar: the object which received the signal.
+   * @dest_file: Destination #GFile.
+   * @source_file_list: (element-type GFile) (transfer none): #GList of #GFile that got dropped.
+   * @action: Drop action to perform.
+   *
+   * The places sidebar emits this signal when the user completes a
+   * drag-and-drop operation and one of the sidebar's items is the
+   * destination.  This item is in the @dest_file, and the
+   * @source_file_list has the list of files that are dropped into it and
+   * which should be copied/moved/etc. based on the specified @action.
+   *
+   * Since: 3.10
+   */
+  places_sidebar_signals [DRAG_PERFORM_DROP] =
+          g_signal_new (I_("drag-perform-drop"),
+                        G_OBJECT_CLASS_TYPE (gobject_class),
+                        G_SIGNAL_RUN_FIRST,
+                        G_STRUCT_OFFSET (GtkPlacesSidebarClass, drag_perform_drop),
+                        NULL, NULL,
+                        _gtk_marshal_VOID__OBJECT_POINTER_INT,
+                        G_TYPE_NONE, 3,
+                        G_TYPE_OBJECT,
+                        G_TYPE_POINTER, /* GList of GFile */
+                        G_TYPE_INT);
+
+  properties[PROP_LOCATION] =
+          g_param_spec_object ("location",
+                               P_("Location to Select"),
+                               P_("The location to highlight in the sidebar"),
+                               G_TYPE_FILE,
+                               G_PARAM_READWRITE);
+  properties[PROP_OPEN_FLAGS] =
+          g_param_spec_flags ("open-flags",
+                              P_("Open Flags"),
+                              P_("Modes in which the calling application can open locations selected in the 
sidebar"),
+                              GTK_TYPE_PLACES_OPEN_FLAGS,
+                              GTK_PLACES_OPEN_NORMAL,
+                              G_PARAM_READWRITE);
+  properties[PROP_SHOW_DESKTOP] =
+          g_param_spec_boolean ("show-desktop",
+                                P_("Show 'Desktop'"),
+                                P_("Whether the sidebar includes a builtin shortcut to the Desktop folder"),
+                                FALSE,
+                                G_PARAM_READWRITE);
+  properties[PROP_SHOW_CONNECT_TO_SERVER] =
+          g_param_spec_boolean ("show-connect-to-server",
+                                P_("Show 'Connect to Server'"),
+                                P_("Whether the sidebar includes a builtin shortcut to a 'Connect to server' 
dialog"),
+                                FALSE,
+                                G_PARAM_READWRITE);
+
+  g_object_class_install_properties (gobject_class, NUM_PROPERTIES, properties);
 }
 
 /**
@@ -4227,7 +4175,7 @@ gtk_places_sidebar_class_init (GtkPlacesSidebarClass *class)
 GtkWidget *
 gtk_places_sidebar_new (void)
 {
-       return GTK_WIDGET (g_object_new (gtk_places_sidebar_get_type (), NULL));
+  return GTK_WIDGET (g_object_new (gtk_places_sidebar_get_type (), NULL));
 }
 
 
@@ -4237,25 +4185,25 @@ gtk_places_sidebar_new (void)
 /* GtkTreeDragSource::row_draggable implementation for the shortcuts model */
 static gboolean
 shortcuts_model_row_draggable (GtkTreeDragSource *drag_source,
-                              GtkTreePath       *path)
+                               GtkTreePath       *path)
 {
-       GtkTreeModel *model;
-       GtkTreeIter iter;
-       PlaceType place_type;
-       SectionType section_type;
+  GtkTreeModel *model;
+  GtkTreeIter iter;
+  PlaceType place_type;
+  SectionType section_type;
 
-       model = GTK_TREE_MODEL (drag_source);
+  model = GTK_TREE_MODEL (drag_source);
 
-       gtk_tree_model_get_iter (model, &iter, path);
-       gtk_tree_model_get (model, &iter,
-                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
-                           PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type,
-                           -1);
+  gtk_tree_model_get_iter (model, &iter, path);
+  gtk_tree_model_get (model, &iter,
+                      PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
+                      PLACES_SIDEBAR_COLUMN_SECTION_TYPE, &section_type,
+                      -1);
 
-       if (place_type != PLACES_HEADING && section_type == SECTION_BOOKMARKS)
-               return TRUE;
+  if (place_type != PLACES_HEADING && section_type == SECTION_BOOKMARKS)
+    return TRUE;
 
-       return FALSE;
+  return FALSE;
 }
 
 /* Fill the GtkTreeDragSourceIface vtable */
@@ -4267,44 +4215,44 @@ shortcuts_model_class_init (ShortcutsModelClass *klass)
 static void
 shortcuts_model_init (ShortcutsModel *model)
 {
-       model->sidebar = NULL;
+  model->sidebar = NULL;
 }
 
 static void
 shortcuts_model_drag_source_iface_init (GtkTreeDragSourceIface *iface)
 {
-       iface->row_draggable = shortcuts_model_row_draggable;
+  iface->row_draggable = shortcuts_model_row_draggable;
 }
 
 static GtkListStore *
 shortcuts_model_new (GtkPlacesSidebar *sidebar)
 {
-       ShortcutsModel *model;
-       GType model_types[PLACES_SIDEBAR_COLUMN_COUNT] = {
-               G_TYPE_INT,
-               G_TYPE_STRING,
-               G_TYPE_DRIVE,
-               G_TYPE_VOLUME,
-               G_TYPE_MOUNT,
-               G_TYPE_STRING,
-               G_TYPE_ICON,
-               G_TYPE_INT,
-               G_TYPE_BOOLEAN,
-               G_TYPE_BOOLEAN,
-               G_TYPE_BOOLEAN,
-               G_TYPE_STRING,
-               G_TYPE_INT,
-               G_TYPE_STRING
-       };
-
-       model = g_object_new (shortcuts_model_get_type (), NULL);
-       model->sidebar = sidebar;
-
-       gtk_list_store_set_column_types (GTK_LIST_STORE (model),
-                                        PLACES_SIDEBAR_COLUMN_COUNT,
-                                        model_types);
-
-       return GTK_LIST_STORE (model);
+  ShortcutsModel *model;
+  GType model_types[PLACES_SIDEBAR_COLUMN_COUNT] = {
+    G_TYPE_INT,
+    G_TYPE_STRING,
+    G_TYPE_DRIVE,
+    G_TYPE_VOLUME,
+    G_TYPE_MOUNT,
+    G_TYPE_STRING,
+    G_TYPE_ICON,
+    G_TYPE_INT,
+    G_TYPE_BOOLEAN,
+    G_TYPE_BOOLEAN,
+    G_TYPE_BOOLEAN,
+    G_TYPE_STRING,
+    G_TYPE_INT,
+    G_TYPE_STRING
+  };
+
+  model = g_object_new (shortcuts_model_get_type (), NULL);
+  model->sidebar = sidebar;
+
+  gtk_list_store_set_column_types (GTK_LIST_STORE (model),
+                                   PLACES_SIDEBAR_COLUMN_COUNT,
+                                   model_types);
+
+  return GTK_LIST_STORE (model);
 }
 
 
@@ -4335,14 +4283,16 @@ shortcuts_model_new (GtkPlacesSidebar *sidebar)
  * Since: 3.10
  */
 void
-gtk_places_sidebar_set_open_flags (GtkPlacesSidebar *sidebar, GtkPlacesOpenFlags flags)
+gtk_places_sidebar_set_open_flags (GtkPlacesSidebar   *sidebar,
+                                   GtkPlacesOpenFlags  flags)
 {
-       g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
+  g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
 
-       if (sidebar->open_flags != flags) {
-               sidebar->open_flags = flags;
-               g_object_notify_by_pspec (G_OBJECT (sidebar), properties[PROP_OPEN_FLAGS]);
-       }
+  if (sidebar->open_flags != flags)
+    {
+      sidebar->open_flags = flags;
+      g_object_notify_by_pspec (G_OBJECT (sidebar), properties[PROP_OPEN_FLAGS]);
+    }
 }
 
 /**
@@ -4358,9 +4308,9 @@ gtk_places_sidebar_set_open_flags (GtkPlacesSidebar *sidebar, GtkPlacesOpenFlags
 GtkPlacesOpenFlags
 gtk_places_sidebar_get_open_flags (GtkPlacesSidebar *sidebar)
 {
-       g_return_val_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar), 0);
+  g_return_val_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar), 0);
 
-       return sidebar->open_flags;
+  return sidebar->open_flags;
 }
 
 /**
@@ -4377,44 +4327,48 @@ gtk_places_sidebar_get_open_flags (GtkPlacesSidebar *sidebar)
  * Since: 3.10
  */
 void
-gtk_places_sidebar_set_location (GtkPlacesSidebar *sidebar, GFile *location)
-{
-       GtkTreeSelection *selection;
-       GtkTreeIter      iter;
-       gboolean         valid;
-       char             *iter_uri;
-       char             *uri;
-
-       g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
-
-       selection = gtk_tree_view_get_selection (sidebar->tree_view);
-       gtk_tree_selection_unselect_all (selection);
-
-       if (location == NULL)
-               goto out;
-
-       uri = g_file_get_uri (location);
-
-       valid = gtk_tree_model_get_iter_first (GTK_TREE_MODEL (sidebar->store), &iter);
-       while (valid) {
-               gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                                   PLACES_SIDEBAR_COLUMN_URI, &iter_uri,
-                                   -1);
-               if (iter_uri != NULL) {
-                       if (strcmp (iter_uri, uri) == 0) {
-                               g_free (iter_uri);
-                               gtk_tree_selection_select_iter (selection, &iter);
-                               break;
-                       }
-                       g_free (iter_uri);
-               }
-               valid = gtk_tree_model_iter_next (GTK_TREE_MODEL (sidebar->store), &iter);
-       }
-
-       g_free (uri);
+gtk_places_sidebar_set_location (GtkPlacesSidebar *sidebar,
+                                 GFile            *location)
+{
+  GtkTreeSelection *selection;
+  GtkTreeIter      iter;
+  gboolean         valid;
+  gchar            *iter_uri;
+  gchar            *uri;
+
+  g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
+
+  selection = gtk_tree_view_get_selection (sidebar->tree_view);
+  gtk_tree_selection_unselect_all (selection);
+
+  if (location == NULL)
+          goto out;
+
+  uri = g_file_get_uri (location);
+
+  valid = gtk_tree_model_get_iter_first (GTK_TREE_MODEL (sidebar->store), &iter);
+  while (valid)
+    {
+      gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                          PLACES_SIDEBAR_COLUMN_URI, &iter_uri,
+                          -1);
+      if (iter_uri != NULL)
+        {
+          if (strcmp (iter_uri, uri) == 0)
+            {
+              g_free (iter_uri);
+              gtk_tree_selection_select_iter (selection, &iter);
+              break;
+            }
+          g_free (iter_uri);
+        }
+      valid = gtk_tree_model_iter_next (GTK_TREE_MODEL (sidebar->store), &iter);
+    }
+
+  g_free (uri);
 
  out:
-       g_object_notify_by_pspec (G_OBJECT (sidebar), properties[PROP_LOCATION]);
+  g_object_notify_by_pspec (G_OBJECT (sidebar), properties[PROP_LOCATION]);
 }
 
 /**
@@ -4439,25 +4393,26 @@ gtk_places_sidebar_set_location (GtkPlacesSidebar *sidebar, GFile *location)
 GFile *
 gtk_places_sidebar_get_location (GtkPlacesSidebar *sidebar)
 {
-       GtkTreeIter iter;
-       GFile *file;
+  GtkTreeIter iter;
+  GFile *file;
 
-       g_return_val_if_fail (sidebar != NULL, NULL);
+  g_return_val_if_fail (sidebar != NULL, NULL);
 
-       file = NULL;
+  file = NULL;
 
-       if (get_selected_iter (sidebar, &iter)) {
-               char *uri;
+  if (get_selected_iter (sidebar, &iter))
+    {
+      gchar *uri;
 
-               gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                                   PLACES_SIDEBAR_COLUMN_URI, &uri,
-                                   -1);
+      gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                          PLACES_SIDEBAR_COLUMN_URI, &uri,
+                          -1);
 
-               file = g_file_new_for_uri (uri);
-               g_free (uri);
-       }
+      file = g_file_new_for_uri (uri);
+      g_free (uri);
+    }
 
-       return file;
+  return file;
 }
 
 /**
@@ -4472,16 +4427,18 @@ gtk_places_sidebar_get_location (GtkPlacesSidebar *sidebar)
  * Since: 3.10
  */
 void
-gtk_places_sidebar_set_show_desktop (GtkPlacesSidebar *sidebar, gboolean show_desktop)
+gtk_places_sidebar_set_show_desktop (GtkPlacesSidebar *sidebar,
+                                     gboolean          show_desktop)
 {
-       g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
+  g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
 
-       show_desktop = !!show_desktop;
-       if (sidebar->show_desktop != show_desktop) {
-               sidebar->show_desktop = show_desktop;
-               update_places (sidebar);
-               g_object_notify_by_pspec (G_OBJECT (sidebar), properties[PROP_SHOW_DESKTOP]);
-       }
+  show_desktop = !!show_desktop;
+  if (sidebar->show_desktop != show_desktop)
+    {
+      sidebar->show_desktop = show_desktop;
+      update_places (sidebar);
+      g_object_notify_by_pspec (G_OBJECT (sidebar), properties[PROP_SHOW_DESKTOP]);
+    }
 }
 
 /**
@@ -4497,9 +4454,9 @@ gtk_places_sidebar_set_show_desktop (GtkPlacesSidebar *sidebar, gboolean show_de
 gboolean
 gtk_places_sidebar_get_show_desktop (GtkPlacesSidebar *sidebar)
 {
-       g_return_val_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar), FALSE);
+  g_return_val_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar), FALSE);
 
-       return sidebar->show_desktop;
+  return sidebar->show_desktop;
 }
 
 /**
@@ -4514,16 +4471,18 @@ gtk_places_sidebar_get_show_desktop (GtkPlacesSidebar *sidebar)
  * Since: 3.10
  */
 void
-gtk_places_sidebar_set_show_connect_to_server (GtkPlacesSidebar *sidebar, gboolean show_connect_to_server)
+gtk_places_sidebar_set_show_connect_to_server (GtkPlacesSidebar *sidebar,
+                                               gboolean          show_connect_to_server)
 {
-       g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
+  g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
 
-       show_connect_to_server = !!show_connect_to_server;
-       if (sidebar->show_connect_to_server != show_connect_to_server) {
-               sidebar->show_connect_to_server = show_connect_to_server;
-               update_places (sidebar);
-               g_object_notify_by_pspec (G_OBJECT (sidebar), properties[PROP_SHOW_CONNECT_TO_SERVER]);
-       }
+  show_connect_to_server = !!show_connect_to_server;
+  if (sidebar->show_connect_to_server != show_connect_to_server)
+    {
+      sidebar->show_connect_to_server = show_connect_to_server;
+      update_places (sidebar);
+      g_object_notify_by_pspec (G_OBJECT (sidebar), properties[PROP_SHOW_CONNECT_TO_SERVER]);
+    }
 }
 
 /**
@@ -4539,25 +4498,27 @@ gtk_places_sidebar_set_show_connect_to_server (GtkPlacesSidebar *sidebar, gboole
 gboolean
 gtk_places_sidebar_get_show_connect_to_server (GtkPlacesSidebar *sidebar)
 {
-       g_return_val_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar), FALSE);
+  g_return_val_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar), FALSE);
 
-       return sidebar->show_connect_to_server;
+  return sidebar->show_connect_to_server;
 }
 
 static GSList *
-find_shortcut_link (GtkPlacesSidebar *sidebar, GFile *location)
+find_shortcut_link (GtkPlacesSidebar *sidebar,
+                    GFile            *location)
 {
-       GSList *l;
+  GSList *l;
 
-       for (l = sidebar->shortcuts; l; l = l->next) {
-               GFile *shortcut;
+  for (l = sidebar->shortcuts; l; l = l->next)
+    {
+      GFile *shortcut;
 
-               shortcut = G_FILE (l->data);
-               if (g_file_equal (shortcut, location))
-                       return l;
-       }
+      shortcut = G_FILE (l->data);
+      if (g_file_equal (shortcut, location))
+        return l;
+    }
 
-       return NULL;
+  return NULL;
 }
 
 /**
@@ -4579,15 +4540,16 @@ find_shortcut_link (GtkPlacesSidebar *sidebar, GFile *location)
  * Since: 3.10
  */
 void
-gtk_places_sidebar_add_shortcut (GtkPlacesSidebar *sidebar, GFile *location)
+gtk_places_sidebar_add_shortcut (GtkPlacesSidebar *sidebar,
+                                 GFile            *location)
 {
-       g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
-       g_return_if_fail (G_IS_FILE (location));
+  g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
+  g_return_if_fail (G_IS_FILE (location));
 
-       g_object_ref (location);
-       sidebar->shortcuts = g_slist_append (sidebar->shortcuts, location);
+  g_object_ref (location);
+  sidebar->shortcuts = g_slist_append (sidebar->shortcuts, location);
 
-       update_places (sidebar);
+  update_places (sidebar);
 }
 
 /**
@@ -4602,23 +4564,24 @@ gtk_places_sidebar_add_shortcut (GtkPlacesSidebar *sidebar, GFile *location)
  * Since: 3.10
  */
 void
-gtk_places_sidebar_remove_shortcut (GtkPlacesSidebar *sidebar, GFile *location)
+gtk_places_sidebar_remove_shortcut (GtkPlacesSidebar *sidebar,
+                                    GFile            *location)
 {
-       GSList *link;
-       GFile *shortcut;
+  GSList *link;
+  GFile *shortcut;
 
-       g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
-       g_return_if_fail (G_IS_FILE (location));
+  g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
+  g_return_if_fail (G_IS_FILE (location));
 
-       link = find_shortcut_link (sidebar, location);
-       if (!link)
-               return;
+  link = find_shortcut_link (sidebar, location);
+  if (!link)
+          return;
 
-       shortcut = G_FILE (link->data);
-       g_object_unref (shortcut);
+  shortcut = G_FILE (link->data);
+  g_object_unref (shortcut);
 
-       sidebar->shortcuts = g_slist_delete_link (sidebar->shortcuts, link);
-       update_places (sidebar);
+  sidebar->shortcuts = g_slist_delete_link (sidebar->shortcuts, link);
+  update_places (sidebar);
 }
 
 /**
@@ -4640,9 +4603,9 @@ gtk_places_sidebar_remove_shortcut (GtkPlacesSidebar *sidebar, GFile *location)
 GSList *
 gtk_places_sidebar_list_shortcuts (GtkPlacesSidebar *sidebar)
 {
-       g_return_val_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar), FALSE);
+  g_return_val_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar), FALSE);
 
-       return g_slist_copy_deep (sidebar->shortcuts, (GCopyFunc) g_object_ref, NULL);
+  return g_slist_copy_deep (sidebar->shortcuts, (GCopyFunc) g_object_ref, NULL);
 }
 
 /**
@@ -4661,40 +4624,45 @@ gtk_places_sidebar_list_shortcuts (GtkPlacesSidebar *sidebar)
  * Since: 3.10
  */
 GFile *
-gtk_places_sidebar_get_nth_bookmark (GtkPlacesSidebar *sidebar, int n)
-{
-       GtkTreeIter iter;
-       int k;
-       GFile *file;
-
-       g_return_val_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar), NULL);
-
-       file = NULL;
-
-       if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (sidebar->store), &iter)) {
-               k = 0;
-
-               do {
-                       PlaceType place_type;
-                       char *uri;
-
-                       gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
-                                           PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
-                                           PLACES_SIDEBAR_COLUMN_URI, &uri,
-                                           -1);
-
-                       if (place_type == PLACES_BOOKMARK) {
-                               if (k == n) {
-                                       file = g_file_new_for_uri (uri);
-                                       g_free (uri);
-                                       break;
-                               }
-
-                               g_free (uri);
-                               k++;
-                       }
-               } while (gtk_tree_model_iter_next (GTK_TREE_MODEL (sidebar->store), &iter));
-       }
-
-       return file;
+gtk_places_sidebar_get_nth_bookmark (GtkPlacesSidebar *sidebar,
+                                     gint              n)
+{
+  GtkTreeIter iter;
+  int k;
+  GFile *file;
+
+  g_return_val_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar), NULL);
+
+  file = NULL;
+
+  if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (sidebar->store), &iter))
+    {
+      k = 0;
+
+      do
+        {
+          PlaceType place_type;
+          gchar *uri;
+
+          gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+                              PLACES_SIDEBAR_COLUMN_ROW_TYPE, &place_type,
+                              PLACES_SIDEBAR_COLUMN_URI, &uri,
+                              -1);
+
+          if (place_type == PLACES_BOOKMARK)
+            {
+              if (k == n) 
+                {
+                  file = g_file_new_for_uri (uri);
+                  g_free (uri);
+                  break;
+                }
+              g_free (uri);
+              k++;
+            }
+        }
+      while (gtk_tree_model_iter_next (GTK_TREE_MODEL (sidebar->store), &iter));
+    }
+
+  return file;
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]