summaryrefslogtreecommitdiff
path: root/src/terminal-options.c
diff options
context:
space:
mode:
authorMartin Wimpress <[email protected]>2014-02-24 14:44:24 +0000
committerinfirit <[email protected]>2014-09-28 21:49:38 +0200
commitdd5636bc091e9abc3b916d86be95b8e8ef452876 (patch)
treec4a27416002d17bb643ead2095ee0d2d3bab5473 /src/terminal-options.c
parent31fb0be28e7764fad7b7cb99d84fe8e015a8408c (diff)
downloadmate-terminal-dd5636bc091e9abc3b916d86be95b8e8ef452876.tar.bz2
mate-terminal-dd5636bc091e9abc3b916d86be95b8e8ef452876.tar.xz
Opening new terminal in a tab now works. The new intended behaviour is desbribed
in https://bugzilla.gnome.org/show_bug.cgi?id=83203#c57 Fixes #45.
Diffstat (limited to 'src/terminal-options.c')
-rw-r--r--src/terminal-options.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/terminal-options.c b/src/terminal-options.c
index 6881b67..ce41055 100644
--- a/src/terminal-options.c
+++ b/src/terminal-options.c
@@ -51,6 +51,7 @@ initial_tab_new (const char *profile,
it->zoom = 1.0;
it->zoom_set = FALSE;
it->active = FALSE;
+ it->attach_window = FALSE;
return it;
}
@@ -305,18 +306,22 @@ option_tab_callback (const gchar *option_name,
{
TerminalOptions *options = data;
gboolean is_profile_id;
+ InitialWindow *iw;
+ InitialTab *it;
is_profile_id = g_str_has_suffix (option_name, "-with-profile-internal-id");
if (options->initial_windows)
{
- InitialWindow *iw;
-
iw = g_list_last (options->initial_windows)->data;
iw->tabs = g_list_append (iw->tabs, initial_tab_new (value, is_profile_id));
}
else
- add_new_window (options, value, is_profile_id);
+ {
+ iw = add_new_window (options, value, is_profile_id);
+ it = g_list_last(iw->tabs)->data;
+ it->attach_window = TRUE;
+ }
return TRUE;
}
@@ -707,6 +712,7 @@ terminal_options_parse (const char *working_directory,
options->default_maximize = FALSE;
options->execute = FALSE;
options->use_factory = TRUE;
+ options->initial_workspace = -1;
options->env = g_strdupv (env);
options->startup_id = g_strdup (startup_id && startup_id[0] ? startup_id : NULL);