* Thu Jan 14 2010 Behdad Esfahbod <behdad@redhat.com> - 2.29.6-2

- Second try
- Drop stale patch
This commit is contained in:
Behdad Esfahbod 2010-01-14 05:50:41 +00:00
parent bf369f41e3
commit d821f1f11e
5 changed files with 7 additions and 417 deletions

View File

@ -1 +1 @@
gnome-terminal-2.29.1.tar.bz2
gnome-terminal-2.29.6.tar.bz2

View File

@ -1,196 +0,0 @@
Index: src/terminal-app.h
===================================================================
--- src/terminal-app.h (revision 3380)
+++ src/terminal-app.h (working copy)
@@ -93,6 +93,7 @@
gboolean terminal_app_handle_options (TerminalApp *app,
TerminalOptions *options,
+ gboolean allow_resume,
GError **error);
void terminal_app_edit_profile (TerminalApp *app,
Index: src/terminal-options.c
===================================================================
--- src/terminal-options.c (revision 3380)
+++ src/terminal-options.c (working copy)
@@ -636,10 +636,6 @@
TerminalOptions *options = data;
InitialTab *it;
- /* make sure we have some window in case no options were given */
- if (options->initial_windows == NULL)
- it = ensure_top_tab (options);
-
if (options->execute)
{
if (options->exec_argv == NULL)
@@ -662,6 +658,25 @@
return TRUE;
}
+/**
+ * terminal_options_parse:
+ * @working_directory: the default working directory
+ * @display_name: the default X display name
+ * @startup_id: the startup notification ID
+ * @env: the environment as variable=value pairs
+ * @ignore_unknown_options: whether to ignore unknown options when parsing
+ * the arguments
+ * @argcp: (inout) address of the argument count. Changed if any arguments were handled
+ * @argvp: (inout) address of the argument vector. Any parameters understood by
+ * the terminal #GOptionContext are removed
+ * @error: a #GError to fill in
+ * @...: a %NULL terminated list of extra #GOptionGroup<!-- -->s
+ *
+ * Parses the argument vector *@argvp.
+ *
+ * Returns: a new #TerminalOptions containing the windows and tabs to open,
+ * or %NULL on error.
+ */
TerminalOptions *
terminal_options_parse (const char *working_directory,
const char *display_name,
@@ -758,6 +773,17 @@
return NULL;
}
+/**
+ * terminal_options_merge_config:
+ * @options:
+ * @key_file: a #GKeyFile containing to merge the options from
+ * @error: a #GError to fill in
+ *
+ * Merges the saved options from @key_file into @options.
+ *
+ * Returns: %TRUE if @key_file was a valid key file containing a stored
+ * terminal configuration, or %FALSE on error
+ */
gboolean
terminal_options_merge_config (TerminalOptions *options,
GKeyFile *key_file,
@@ -864,7 +890,25 @@
return TRUE;
}
+/**
+ * terminal_options_ensure_window:
+ * @options:
+ *
+ * Ensure that @options will contain at least one window to open.
+ */
void
+terminal_options_ensure_window (TerminalOptions *options)
+{
+ ensure_top_window (options);
+}
+
+/**
+ * terminal_options_free:
+ * @options:
+ *
+ * Frees @options.
+ */
+void
terminal_options_free (TerminalOptions *options)
{
g_list_foreach (options->initial_windows, (GFunc) initial_window_free, NULL);
Index: src/terminal-options.h
===================================================================
--- src/terminal-options.h (revision 3380)
+++ src/terminal-options.h (working copy)
@@ -97,12 +97,14 @@
int *argcp,
char ***argvp,
GError **error,
- ...);
+ ...) G_GNUC_NULL_TERMINATED;
gboolean terminal_options_merge_config (TerminalOptions *options,
GKeyFile *key_file,
GError **error);
+void terminal_options_ensure_window (TerminalOptions *options);
+
void terminal_options_free (TerminalOptions *options);
G_END_DECLS
Index: src/terminal.c
===================================================================
--- src/terminal.c (revision 3380)
+++ src/terminal.c (working copy)
@@ -475,7 +475,7 @@
terminal_app_initialize (options->use_factory);
g_signal_connect (terminal_app_get (), "quit", G_CALLBACK (gtk_main_quit), NULL);
- terminal_app_handle_options (terminal_app_get (), options, NULL);
+ terminal_app_handle_options (terminal_app_get (), options, TRUE /* allow resume */, NULL);
terminal_options_free (options);
/* Now change directory to $HOME so we don't prevent unmounting, e.g. if the
@@ -499,7 +499,7 @@
static gboolean
handle_new_terminal_event (TerminalOptions *options)
{
- terminal_app_handle_options (terminal_app_get (), options, NULL);
+ terminal_app_handle_options (terminal_app_get (), options, FALSE /* no resume */, NULL);
return FALSE;
}
Index: src/terminal-app.c
===================================================================
--- src/terminal-app.c (revision 3380)
+++ src/terminal-app.c (working copy)
@@ -1643,9 +1643,24 @@
return global_app;
}
+/**
+ * terminal_app_handle_options:
+ * @app:
+ * @options: a #TerminalOptions
+ * @allow_resume: whether to merge the terminal configuration from the
+ * saved session on resume
+ * @error: a #GError to fill in
+ *
+ * Processes @options. It loads or saves the terminal configuration, or
+ * opens the specified windows and tabs.
+ *
+ * Returns: %TRUE if @options could be successfully handled, or %FALSE on
+ * error
+ */
gboolean
terminal_app_handle_options (TerminalApp *app,
TerminalOptions *options,
+ gboolean allow_resume,
GError **error)
{
GList *lw;
@@ -1673,6 +1688,27 @@
/* fall-through on success */
}
+#ifdef WITH_SMCLIENT
+{
+ EggSMClient *sm_client;
+
+ sm_client = egg_sm_client_get ();
+
+ if (allow_resume && egg_sm_client_is_resumed (sm_client))
+ {
+ GKeyFile *key_file;
+
+ key_file = egg_sm_client_get_state_file (sm_client);
+ if (key_file != NULL &&
+ !terminal_options_merge_config (options, key_file, error))
+ return FALSE;
+ }
+}
+#endif
+
+ /* Make sure we option at least one window */
+ terminal_options_ensure_window (options);
+
for (lw = options->initial_windows; lw != NULL; lw = lw->next)
{
InitialWindow *iw = lw->data;

View File

@ -9,7 +9,7 @@
Summary: Terminal emulator for GNOME
Name: gnome-terminal
Version: 2.29.6
Release: 1%{?dist}
Release: 2%{?dist}
License: GPLv2+ and GFDL
Group: User Interface/Desktops
URL: http://www.gnome.org/
@ -18,8 +18,6 @@ Source0: http://download.gnome.org/sources/gnome-terminal/2.29/gnome-terminal-%{
Source1: profile-new-dialog.ui
# Fix gnome.org Bug 338913 Terminal resized when switching tabs
Patch2: gnome-terminal-2.15.0-338913-revert-336325.patch
# From upstream trunk
Patch3: tab-switching.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@ -51,7 +49,6 @@ clickable URLs.
%prep
%setup -q
%patch2 -p1 -b .338913-revert-336325
%patch3 -p1 -b .tab-switching
%build
@ -132,6 +129,10 @@ scrollkeeper-update -q
%{_sysconfdir}/gconf/schemas/gnome-terminal.schemas
%changelog
* Thu Jan 14 2010 Behdad Esfahbod <behdad@redhat.com> - 2.29.6-2
- Second try
- Drop stale patch
* Thu Jan 14 2010 Behdad Esfahbod <behdad@redhat.com> - 2.29.6-1
- Update to 2.29.6

View File

@ -1 +1 @@
8dc8ab9e3819cc24e30ff536d4fed7b6 gnome-terminal-2.29.1.tar.bz2
0d8541d39a35575166baf991db1ec9ff gnome-terminal-2.29.6.tar.bz2

View File

@ -1,215 +0,0 @@
diff -up gnome-terminal-2.24.2/src/gnome-terminal.schemas.in.tab-switching gnome-terminal-2.24.2/src/gnome-terminal.schemas.in
--- gnome-terminal-2.24.2/src/gnome-terminal.schemas.in.tab-switching 2008-11-24 12:00:03.000000000 -0500
+++ gnome-terminal-2.24.2/src/gnome-terminal.schemas.in 2008-11-25 01:23:43.000000000 -0500
@@ -982,6 +982,211 @@
</long>
</locale>
</schema>
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_1</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_1</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+ <default>&lt;Alt&gt;1</default>
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 1</short>
+ <long>
+ Keyboard shortcut key for switch to tab 1. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_2</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_2</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+ <default>&lt;Alt&gt;2</default>
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 2</short>
+ <long>
+ Keyboard shortcut key for switch to tab 2. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_3</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_3</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+ <default>&lt;Alt&gt;3</default>
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 3</short>
+ <long>
+ Keyboard shortcut key for switch to tab 3. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_4</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_4</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+ <default>&lt;Alt&gt;4</default>
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 4</short>
+ <long>
+ Keyboard shortcut key for switch to tab 4. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_5</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_5</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+ <default>&lt;Alt&gt;5</default>
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 5</short>
+ <long>
+ Keyboard shortcut key for switch to tab 5. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_6</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_6</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+ <default>&lt;Alt&gt;6</default>
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 6</short>
+ <long>
+ Keyboard shortcut key for switch to tab 6. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_7</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_7</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+ <default>&lt;Alt&gt;7</default>
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 7</short>
+ <long>
+ Keyboard shortcut key for switch to tab 7. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_8</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_8</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+ <default>&lt;Alt&gt;8</default>
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 8</short>
+ <long>
+ Keyboard shortcut key for switch to tab 8. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_9</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_9</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+ <default>&lt;Alt&gt;9</default>
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 9</short>
+ <long>
+ Keyboard shortcut key for switch to tab 9. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_10</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_10</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+<!-- no default -->
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 10</short>
+ <long>
+ Keyboard shortcut key for switch to tab 10. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_11</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_11</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+<!-- no default -->
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 11</short>
+ <long>
+ Keyboard shortcut key for switch to tab 11. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
+ <key>/schemas/apps/gnome-terminal/keybindings/switch_to_tab_12</key>
+ <applyto>/apps/gnome-terminal/keybindings/switch_to_tab_12</applyto>
+ <owner>gnome-terminal</owner>
+ <type>string</type>
+<!-- no default -->
+ <locale name="C">
+ <short>Keyboard shortcut to switch to tab 12</short>
+ <long>
+ Keyboard shortcut key for switch to tab 12. Expressed as a string
+ in the same format used for GTK+ resource files.
+ If you set the option to the special string "disabled", then there
+ will be no keyboard shortcut for this action.
+ </long>
+ </locale>
+ </schema>
+
</schemalist>
</gconfschemafile>
+