[cheese] Remove nautilus-sendto sharing support



commit ca982ad034dc183d072ee1bd19ab235a5a729d07
Author: David King <amigadave amigadave com>
Date:   Wed Jun 5 16:50:58 2013 +0100

    Remove nautilus-sendto sharing support
    
    As nautilus-sendto can now only share by email, the sharing can be
    handled by a photo management application, or directy by the email
    client.

 Makefile.am                     |    5 --
 README                          |    6 --
 configure.ac                    |   18 ------
 data/cheese-actions.ui          |   10 ---
 data/cheese.catalog             |    3 -
 src/cheese-shareable-media.vala |  121 ---------------------------------------
 src/cheese-window.vala          |   57 ------------------
 7 files changed, 0 insertions(+), 220 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index 3fd1ef5..ad78407 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -200,7 +200,6 @@ cheese_SOURCES = \
        src/cheese-preferences.vala \
        src/cheese-window.vala \
        src/cheese-main.vala \
-       src/cheese-shareable-media.vala \
        src/thumbview/cheese-thumb-view.c \
        src/thumbview/cheese-thumbnail.c \
        src/thumbview/eog-thumb-nav.c
@@ -376,10 +375,6 @@ dist_pixmaps_DATA = \
        data/pixmaps/cheese-2.svg \
        data/pixmaps/cheese-3.svg
 
-catalogdir = $(pkgdatadir)
-dist_catalog_DATA = \
-       data/cheese.catalog
-
 # Tests.
 check_PROGRAMS = \
        tests/test-libcheese \
diff --git a/README b/README
index fcb89b4..a27e561 100644
--- a/README
+++ b/README
@@ -10,9 +10,3 @@ How to get your camera working:
 To get your camera working with cheese, you will have to ensure that it works
 with the Gstreamer Framework and Video4Linux2 (V4L2) or Video4Linux (V4L). To
 test this, you can use the 'gstreamer-properties' tool.
-
-Sharing images and videos:
-In order to be able to share images and videos from Cheese, you will need to
-install the 'nautilus-sendto' package first. In case you try to use the sharing
-functionality and nautilus-sendto is not installed, PackageKit will be used in
-order to install it at runtime.
diff --git a/configure.ac b/configure.ac
index 5fa69f1..c03b212 100644
--- a/configure.ac
+++ b/configure.ac
@@ -140,24 +140,6 @@ AS_IF([test "x$GST_INSPECT" = "xnotfound"],
         AC_MSG_WARN([$gst_runtime_plugin was not found. It needs to be installed before Cheese is run])])
    done])
 
-# Check for nautilus-sendto runtime dependency.
-NAUTILUS_SENDTO_DEP_MSG="This is a runtime dependency just needed for using the sharing functionality in 
Cheese."
-NAUTILUS_SENDTO_REQUIRED=2.91.0
-AC_PATH_PROGS([NAUTILUS_SENDTO], [nautilus-sendto], [notfound])
-AS_IF([test "x$NAUTILUS_SENDTO" = "xnotfound"],
-  [AC_MSG_WARN([Unable to find nautilus-sendto >= $NAUTILUS_SENDTO_REQUIRED in the path. 
$NAUTILUS_SENDTO_DEP_MSG])],
-  [NAUTILUS_SENDTO_SYSTEM=`nautilus-sendto --version 2>/dev/null | $SED 's/nautilus-sendto //'`
-   AS_IF([echo $NAUTILUS_SENDTO_SYSTEM | $GREP 'version' >/dev/null],
-     [AC_MSG_WARN([Unable to check the version of nautilus-sendto, it is \
-probably too old. At least $NAUTILUS_SENDTO_REQUIRED is required. \
-$NAUTILUS_SENDTO_DEP_MSG])],
-      [AS_VERSION_COMPARE([$NAUTILUS_SENDTO_SYSTEM], [$NAUTILUS_SENDTO_REQUIRED],
-         [NS_VERSION_COMPARE=0], [NS_VERSION_COMPARE=1], [NS_VERSION_COMPARE=1])
-       AS_IF([test $NS_VERSION_COMPARE = 0],
-         [AC_MSG_WARN([Unable to find nautilus-sendto >= \
-$NAUTILUS_SENDTO_REQUIRED in the path. The current installed version is \
-$NAUTILUS_SENDTO_SYSTEM. $NAUTILUS_SENDTO_DEP_MSG])])])])
-
 # Check for GLib testing utilities.
 AC_PATH_PROG([GTESTER], [gtester], [notfound])
 AC_PATH_PROG([GTESTER_REPORT], [gtester-report], [notfound])
diff --git a/data/cheese-actions.ui b/data/cheese-actions.ui
index 2374c36..9e9ff4d 100644
--- a/data/cheese-actions.ui
+++ b/data/cheese-actions.ui
@@ -13,14 +13,6 @@
           <accelerator key="O" modifiers="GDK_CONTROL_MASK"/>
         </child>
         <child>
-          <object class="GtkAction" id="share">
-            <property name="name">Share</property>
-            <property name="label" translatable="yes">Share…</property>
-            <signal name="activate" handler="cheese_main_window_on_share_files"/>
-          </object>
-          <accelerator key="H" modifiers="GDK_CONTROL_MASK"/>
-        </child>
-        <child>
           <object class="GtkAction" id="save_as">
             <property name="name">SaveAs</property>
             <property name="label" translatable="yes">Save _As…</property>
@@ -92,8 +84,6 @@
       <popup name="thumbnail_popup" id="thumbnail_popup">
         <menuitem action="open"/>
         <separator/>
-        <menuitem action="share"/>
-        <separator/>
         <menuitem action="save_as"/>
         <separator/>
         <menuitem action="move_to_trash"/>
diff --git a/src/cheese-window.vala b/src/cheese-window.vala
index 95cbdd7..595e9e5 100644
--- a/src/cheese-window.vala
+++ b/src/cheese-window.vala
@@ -28,14 +28,8 @@ using Eog;
 using Gst;
 using CanberraGtk;
 
-[DBus(name = "org.freedesktop.PackageKit.Modify")]
-interface PkProxy : GLib.Object {
-        public abstract async void install_catalogs (uint xid, string[] catalog_files, string interaction) 
throws IOError;
-}
-
 const int FULLSCREEN_TIMEOUT_INTERVAL = 5 * 1000;
 const uint EFFECTS_PER_PAGE = 9;
-const string SENDTO_EXEC = "nautilus-sendto";
 
 public class Cheese.MainWindow : Gtk.ApplicationWindow
 {
@@ -83,7 +77,6 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
   private Gtk.Action       countdown_action;
   private Gtk.Action       effects_page_prev_action;
   private Gtk.Action       effects_page_next_action;
-  private Gtk.Action       share_action;
 
   private bool is_fullscreen;
   private bool is_wide_mode;
@@ -104,8 +97,6 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
 
   private Cheese.Effect selected_effect;
 
-  private Cheese.ShareableMedia shareable_media;
-
   /**
    * Responses from the delete files confirmation dialog.
    *
@@ -358,51 +349,6 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
   }
 
   /**
-   * Share the selected file(s) in the thumbview.
-   *
-   * A dialog is shown to the user, where the technology for sharing the
-   * image or video can be selected.
-   *
-   * @param action the action that emitted the signal
-   */
-  [CCode (instance_pos = -1)]
-  public void on_share_files (Gtk.Action action)
-  {
-    bool nautilus_sendto_installed = Environment.find_program_in_path (SENDTO_EXEC) != null;
-
-    if (!nautilus_sendto_installed)
-      install_packages.begin ((obj, res) => {
-                              install_packages.end (res);
-                              get_window ().set_cursor (new Gdk.Cursor (Gdk.CursorType.LEFT_PTR));
-                             });
-    else
-      shareable_media.share_files (thumb_view.get_selected_images_list ());
-  }
-
-  /**
-   * Install nautilus-sendto runtime dependency.
-   *
-   */
-  private async void install_packages ()
-  {
-    get_window ().set_cursor (new Gdk.Cursor (Gdk.CursorType.WATCH));
-
-    try {
-      PkProxy pk_proxy = yield GLib.Bus.get_proxy (BusType.SESSION,
-                                                   "org.freedesktop.PackageKit",
-                                                   "/org/freedesktop/PackageKit");
-
-      const string CATALOG = "cheese.catalog";
-      string[] catalogs = { get_data_file_dir (CATALOG) };
-      yield pk_proxy.install_catalogs ((uint) Gdk.X11Window.get_xid (this.get_window ()),
-                                       catalogs,
-                                       ""); // Use interaction defaults.
-    } catch (IOError error) {
-      critical ("D-Bus error: %s\n", error.message);
-    }
-  }
-
-  /**
    * Search system directories for the given filename, starting
    * with the in-installation-time custom prefix first.
    *
@@ -1414,9 +1360,6 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
     wide_mode_action         = gtk_builder.get_object ("wide_mode") as Gtk.ToggleAction;
     effects_page_next_action = gtk_builder.get_object ("effects_page_next") as Gtk.Action;
     effects_page_prev_action = gtk_builder.get_object ("effects_page_prev") as Gtk.Action;
-    share_action             = gtk_builder.get_object ("share") as Gtk.Action;
-
-    shareable_media = new Cheese.ShareableMedia (this);
 
     /* Array contains all 'buttons', for easier manipulation
      * IMPORTANT: IF ANOTHER BUTTON IS ADDED UNDER THE VIEWPORT, ADD IT TO THIS ARRAY */


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