X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=gtk-gui.c;h=c78d7e6677feeadabf850c738f2450dfc5132884;hb=b5abdd46f0dfedacc248c1d96737f96e65bb9ed1;hp=dd79f7311f4b8a71c1dd24333d5a2abd6d227339;hpb=619ab9e828d4db7b0c4089018b09892c9d04ece9;p=ext%2Fsubsurface.git diff --git a/gtk-gui.c b/gtk-gui.c index dd79f73..c78d7e6 100644 --- a/gtk-gui.c +++ b/gtk-gui.c @@ -694,23 +694,21 @@ static GtkNotebook *create_new_notebook_window(GtkNotebook *source, return GTK_NOTEBOOK(notebook); } -static void drag_cb(GtkWidget *widget, GdkDragContext *context, +static gboolean drag_cb(GtkWidget *widget, GdkDragContext *context, gint x, gint y, guint time, gpointer user_data) { GtkWidget *source; notebook_data_t *nbdp; + gtk_drag_finish(context, TRUE, TRUE, time); source = gtk_drag_get_source_widget(context); if (nbd[0].name && ! strcmp(nbd[0].name,gtk_widget_get_name(source))) nbdp = nbd; else if (nbd[1].name && ! strcmp(nbd[1].name,gtk_widget_get_name(source))) nbdp = nbd + 1; - else - /* HU? */ - return; - - gtk_drag_finish(context, TRUE, TRUE, time); + else /* just on ourselves */ + return TRUE; /* we no longer need the widget - but getting rid of this is hard; * remove the signal handler, remove the notebook from the box @@ -722,6 +720,8 @@ static void drag_cb(GtkWidget *widget, GdkDragContext *context, nbdp->widget = NULL; free(nbdp->name); nbdp->name = NULL; + + return TRUE; } #ifdef WIN32 @@ -739,7 +739,7 @@ static int get_from_registry(HKEY hkey, const char *key) } #endif -void init_ui(int argc, char **argv) +void init_ui(int *argcp, char ***argvp) { GtkWidget *win; GtkWidget *notebook; @@ -756,7 +756,7 @@ void init_ui(int argc, char **argv) "GTK_NOTEBOOK_TAB", GTK_TARGET_SAME_APP, 0 }; - gtk_init(&argc, &argv); + gtk_init(argcp, argvp); settings = gtk_settings_get_default(); gtk_settings_set_long_property(settings, "gtk_tooltip_timeout", 10, "subsurface setting");