[vino/3] more...



commit 483585193b67fcda46009fcf75f1c5108f64c164
Author: Ryan Lortie <desrt desrt ca>
Date:   Mon Jul 5 00:38:58 2010 -0400

    more...

 server/Makefile.am          |    4 ----
 server/vino-dbus-error.h    |    4 +++-
 server/vino-dbus-listener.c |   35 +++++++++++++++++++++++++++++++++--
 server/vino-prefs.c         |   11 +++++++++--
 4 files changed, 45 insertions(+), 9 deletions(-)
---
diff --git a/server/Makefile.am b/server/Makefile.am
index c8eb0cc..c37776b 100644
--- a/server/Makefile.am
+++ b/server/Makefile.am
@@ -95,9 +95,6 @@ clientfile_DATA = Vino.client
 
 endif
 
-dbus-interface-glue.h: dbus-interface.xml
-	dbus-binding-tool --prefix=vino_dbus_listener --mode=glib-server $< > dbus-interface-glue.h
-
 vino-marshal.h: vino-marshal.list $(GLIB_GENMARSHAL)
 	$(AM_V_GEN)$(GLIB_GENMARSHAL) $< --header --prefix=vino_marshal > $@
 
@@ -171,7 +168,6 @@ BUILT_SOURCES = \
 	vino-enums.h \
 	vino-marshal.c \
 	vino-marshal.h \
-	dbus-interface-glue.h \
 	$(NULL)
 
 CLEANFILES = \
diff --git a/server/vino-dbus-error.h b/server/vino-dbus-error.h
index 44aefb4..f15b90a 100644
--- a/server/vino-dbus-error.h
+++ b/server/vino-dbus-error.h
@@ -19,10 +19,12 @@
  * Authors:
  *      Arnaud Maillet <arnaud maillet collabora co uk>
  */
- 
+
 #ifndef __VINO_DBUS_ERROR_H__
 #define __VINO_DBUS_ERROR_H__
 
+#include <glib.h>
+
 typedef enum
 {
   VINO_DBUS_ERROR_NOT_IMPLEMENTED,
diff --git a/server/vino-dbus-listener.c b/server/vino-dbus-listener.c
index 74777ed..5ac3483 100644
--- a/server/vino-dbus-listener.c
+++ b/server/vino-dbus-listener.c
@@ -82,6 +82,39 @@ enum
   PROP_SERVER
 };
 
+static void
+vino_dbus_listener_method_call (GDBusConnection       *connection,
+                                const gchar           *sender,
+                                const gchar           *object_path,
+                                const gchar           *interface_name,
+                                const gchar           *method_name,
+                                GVariant              *parameters,
+                                GDBusMethodInvocation *invocation,
+                                gpointer               user_data)
+{
+  g_assert_cmpstr (method_name, ==, "ShareWithTube");
+
+
+}
+
+
+static GVariant *
+vino_dbus_listener_get_property (GDBusConnection  *connection,
+                                 const gchar      *sender,
+                                 const gchar      *object_path,
+                                 const gchar      *interface_name,
+                                 const gchar      *property_name,
+                                 GError          **error,
+                                 gpointer          user_data)
+{
+}
+
+const GDBusInterfaceVTable vtable =
+{
+  vino_dbus_listener_method_call,
+  vino_dbus_listener_get_property,
+};
+
 static gboolean
 vino_dbus_listener_get_external_port (VinoDBusListener *listener,
                                       gint             *ret,
@@ -94,8 +127,6 @@ vino_dbus_listener_get_internal_data (VinoDBusListener *listener,
                                       gint             *port,
                                       GError           **error);
 
-#include "dbus-interface-glue.h"
-
 static void vino_dbus_listener_set_server (VinoDBusListener *listener,
                                            VinoServer       *server);
 
diff --git a/server/vino-prefs.c b/server/vino-prefs.c
index 87cc7cc..0c988f4 100644
--- a/server/vino-prefs.c
+++ b/server/vino-prefs.c
@@ -40,6 +40,7 @@
 
 static GSettings *background_settings = NULL;
 static GSettings *vino_settings       = NULL;
+static gboolean   force_view_only;
 
 static void
 vino_prefs_restart_mdns (VinoServer *server,
@@ -67,6 +68,7 @@ vino_prefs_create_server (GdkScreen *screen)
 
   /* Start the server 'on-hold' until all the settings are in, then go. */
   server = g_object_new (VINO_TYPE_SERVER,
+                         "view-only", force_view_only,
                          "on-hold", TRUE,
                          "screen", screen,
                          NULL);
@@ -74,8 +76,11 @@ vino_prefs_create_server (GdkScreen *screen)
 
   g_settings_bind (vino_settings, "prompt-enabled",
                    server, "prompt-enabled", G_SETTINGS_BIND_GET);
-  g_settings_bind (vino_settings, "view-only",
-                   server, "view-only", G_SETTINGS_BIND_GET);
+
+  if (!force_view_only)
+    g_settings_bind (vino_settings, "view-only",
+                     server, "view-only", G_SETTINGS_BIND_GET);
+
   g_settings_bind (vino_settings, "network-interface",
                    server, "network-interface", G_SETTINGS_BIND_GET);
   g_settings_bind (vino_settings, "use-alternative-port",
@@ -208,6 +213,8 @@ vino_prefs_init (gboolean view_only)
 
   if(!vino_prefs_lock ())
     vino_prefs_restore_background ();
+
+  force_view_only = view_only;
 }
 
 void



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