From 05d9253bcb8f214cc9d544988bc9035525af77d0 Mon Sep 17 00:00:00 2001 From: Perry Werneck Date: Tue, 21 Jan 2020 09:24:27 -0300 Subject: [PATCH] Fixing bug on command-line url. --- src/objects/application/actions/open.c | 64 ---------------------------------------------------------------- src/objects/application/open.c | 9 ++++----- src/objects/window/window.c | 2 ++ 3 files changed, 6 insertions(+), 69 deletions(-) diff --git a/src/objects/application/actions/open.c b/src/objects/application/actions/open.c index 2803856..ac09e61 100644 --- a/src/objects/application/actions/open.c +++ b/src/objects/application/actions/open.c @@ -132,67 +132,3 @@ return G_ACTION(action); } - /* - static gchar * get_session_file_name(GtkApplication *application, const gchar *title) { - - gchar * filename = NULL; - - GtkWidget * dialog = - gtk_file_chooser_dialog_new( - title, - gtk_application_get_active_window(application), - GTK_FILE_CHOOSER_ACTION_OPEN, - _("Open Session"), GTK_RESPONSE_OK, - _("Cancel"),GTK_RESPONSE_CANCEL, - NULL - ); - - gtk_file_chooser_set_pw3270_filters(GTK_FILE_CHOOSER(dialog)); - - gtk_widget_show_all(dialog); - if(gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_OK) { - filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); - } - - gtk_widget_destroy(dialog); - - return filename; - } - - void pw3270_application_open_activated(GSimpleAction * action, GVariant G_GNUC_UNUSED(*parameter), gpointer G_GNUC_UNUSED(application)) { - - debug("%s",__FUNCTION__); - g_simple_action_set_enabled(action,FALSE); - - g_simple_action_set_enabled(action,TRUE); - } - - void pw3270_application_open_tab_activated(GSimpleAction * action, GVariant G_GNUC_UNUSED(*parameter), gpointer application) { - - debug("%s",__FUNCTION__); - g_simple_action_set_enabled(action,FALSE); - g_autofree gchar * session_file_name = get_session_file_name(GTK_APPLICATION(application),_("Open session in new tab")); - - if(session_file_name) { - pw3270_application_window_new_tab(GTK_WIDGET(gtk_application_get_active_window(GTK_APPLICATION(application))), session_file_name); - } - - g_simple_action_set_enabled(action,TRUE); - } - - void pw3270_application_open_window_activated(GSimpleAction * action, GVariant G_GNUC_UNUSED(*parameter), gpointer application) { - - debug("%s",__FUNCTION__); - g_simple_action_set_enabled(action,FALSE); - g_autofree gchar * session_file_name = get_session_file_name(GTK_APPLICATION(application),_("Open session in new window")); - - if(session_file_name) { - GtkWidget *window = pw3270_application_window_new(GTK_APPLICATION(application), session_file_name); - pw3270_window_set_current_page(window,0); - gtk_window_present(GTK_WINDOW(window)); - } - - g_simple_action_set_enabled(action,TRUE); - } - */ - diff --git a/src/objects/application/open.c b/src/objects/application/open.c index fd0a755..0c0298f 100644 --- a/src/objects/application/open.c +++ b/src/objects/application/open.c @@ -38,13 +38,12 @@ for(file = 0; file < n_files; file++) { g_autofree gchar *path = g_file_get_path(files[file]); - GtkWidget * terminal = NULL; - if(!window) { + debug("%s: Open in new window",__FUNCTION__); window = pw3270_application_window_new(GTK_APPLICATION(application), path); - terminal = gtk_window_get_default_widget(GTK_WINDOW(window)); } else { - terminal = pw3270_application_window_new_tab(window,path); + debug("%s: Open in new tab",__FUNCTION__); + window = pw3270_application_window_new_tab(window,path); } if(!path) { @@ -60,7 +59,7 @@ if(sz > 0 && uri[sz-1] == '/') uri[sz-1] = 0; - v3270_set_url(terminal,uri); + v3270_set_url(pw3270_application_window_get_active_terminal(window),uri); } diff --git a/src/objects/window/window.c b/src/objects/window/window.c index 6843b25..888c3c4 100644 --- a/src/objects/window/window.c +++ b/src/objects/window/window.c @@ -445,6 +445,8 @@ } } + pw3270_application_window_set_active_terminal(GTK_WIDGET(window),terminal); + // gtk_window_set_interactive_debugging(TRUE); return GTK_WIDGET(window); -- libgit2 0.21.2