1
0
mirror of https://github.com/dguglielmi/sunny-overlay.git synced 2025-12-06 07:22:38 +01:00

- Add x11-terms/gnome-terminal with Fedora transparency patch.

This commit is contained in:
2014-08-09 18:30:38 +02:00
parent 74ab5a6f7f
commit 684cffc469
10 changed files with 1168 additions and 0 deletions

View File

@@ -0,0 +1,10 @@
AUX gnome-terminal-3.12-restore-transparency.patch 13631 SHA256 c0fac92ae31287d9181f3b77d533064d77221cd33828561cb9667f7f8cc1c103 SHA512 0c9a517648686f68de54aae155ccb3b3dcdd6a0666d906a71af1c56d7bb1fd3a0de93d1f19104957f1627b97f08298d263796b832017191387aef62943abd73d WHIRLPOOL 9bb682d55b72b8175ee02f421f93a1f9a3416cb8e6cbbd8c062384062c8b7dee8e8cb8584bca058c3aaf4aa5db620684a20bef83b766fac85a6aac12966076f4
AUX gnome-terminal-3.12.0-fallback-title-1.patch 901 SHA256 afd9449ba6fd07ca20abb17b7ac775cb1bd82b1fb9a79e4192afe2ee9f8dea6c SHA512 672970741dff96112f9ea0919db59f19462fb3bfcfd5a67ad8233b006149442ae0ff479e96adee8f20cb6e7ab27d43f101a8e1a50a8345b4654fbb001d587be9 WHIRLPOOL b96c0af51f084302565013377a10ef2b0ff30bae28c393effd8d55be105a9bfbf5e66c019a72ff4fb2e7e44b59964e382cd307635a01747313e08ce59fe53044
AUX gnome-terminal-3.12.0-fallback-title-2.patch 811 SHA256 f14effa2bbc4dbb01a0d43541035ba3d98afcf8ff07e337eff515fcab301be65 SHA512 5f3a1c32289f37062e6ca42576717af412a06702280f56f06d1193b071a6020e666f00764abe21fbcb10d167d0edbd900f8f3536ff0c79e5523cf22983ab6a42 WHIRLPOOL 9218f75ecaee483733b999961e8a52fee1c1a8c1899a59c48e88818adb6427aec12773cca2d76aa589b6c8c73c77e3ed51aa690553783cbd115bf16670b7aec2
AUX gnome-terminal-3.12.0-remove-set-title-feature-0.patch 5613 SHA256 9288c88b00368126f1d83406f0726544dc4ed61885ceeec644796ff077df7667 SHA512 b29a6de0aeca14977efea8c7ba7e6dd4d8bafbfdacd390e9ddd96e8e3731a4bb5009e14c6f222c1d224bca92e2d83f6cf32a9e93450b14c31de64dc58c5d05fd WHIRLPOOL 0c9ba3e7b9aa619b87d1b63978f6182e88c614846e38620704f4f6d6696c82cf9504eb76bd68764e1775ceefab01100f2ceb21d1410eb39c375dbbef228f3ac9
AUX gnome-terminal-3.12.0-remove-set-title-feature-1.patch 8886 SHA256 75b99525a8bd7cba13c25069dd549ac9492a6423a15b99ed2713a9a9a217c2bb SHA512 4e32e85b6b4601fca23e723f999376437eaf82e4bfdd98ac79bd3a590b0d6cadfe29755e1cfb434f15fb68abe240dd3e5ea55f8724c00ac8bc229556e69e3305 WHIRLPOOL eafe812c320a19655b3f5c7ffc7e147c9daa64cc87b00e09f791d2a056ed41c988f1a5a6e45d547466881d3270c6a505c4b7a8f03e00b300b8de17740620ddbf
AUX gnome-terminal-3.12.0-remove-set-title-feature-2.patch 10871 SHA256 6871c5372b0f9af73cce4e816dd75e077f717b1030c4be0416b912ffb4e965d3 SHA512 97dedb17d542f18ab6280cbfe16bbeeb77b8f9b1761898f50e471d091ec445229c83d9f07960a34011c3d32d316c898e1d3846c8d6c847b92ea95aac7d00d248 WHIRLPOOL b611cc240664068d5f772658a28ef2f330dd4e5ae8ec8ef865c551f60da9e74fe7b317842bd56551ad7cd1e69b0698943cb2b7be67bfe0928bc3267efe39f682
AUX gnome-terminal-3.12.0-remove-set-title-feature-3.patch 5952 SHA256 ef6d829de0e87ccc1784ce437cc98ded1322ee6dcd6fd23deebe170ef6eade26 SHA512 a80dd10f5f0c2b0da4bfde579e38197958dd8de746fa19d634f2e10fc54e7f60e56c47eb2448ee166758d7c7b196af21c4f4859d5fd27cfef856bc1b50670da3 WHIRLPOOL 2aa15816a19c3f663c908a8aba0652292a5c19be5f29d9aa25696bc2368c578ac7f44fca0f8ec4139e89f6f2caa4def38ab769e38616e0ac5034549500e4d183
DIST gnome-terminal-3.12.3.tar.xz 1720988 SHA256 8450da259fb485289d61fdbe5b59037be068e0dbdd5c7dd8216b60cd49d55528 SHA512 b155600483129c0e592d0a9604fd7826f2f41633bebf9df5ed459b12c154d3f1e505b10a93e129c22b24215b7cdaa97acac9c4897a85256553fda1394e76ac48 WHIRLPOOL 6fbd2cd546e45a95a37493443c7e34c73dd17b39884882ff4cc4a46b4c5d189d7601f35b2f0ad39535c9693f55b84a9d46bc1d3a8404537dc0d5c26b415e5e0f
EBUILD gnome-terminal-3.12.3.ebuild 2286 SHA256 a910b916275b6e0d49748f4fb08c514cee359f5970d2e55ebe981409c22ff923 SHA512 5c43c7d9f57381646c04d5d6f2c23c8ffbe5faeab9ad6600283daa33779c8e175f35f7679ae098d22488dfd4ee9d50035461d53bf274ff263525ebe4b81777c0 WHIRLPOOL 10b175fd823f0a515c7d9fde22a90193220bfc5881f61e6800365e0b334c98014f43109e2134b15bbd5050fcab5e9dfeb60420c133fd05a8433821491bbe7999
MISC metadata.xml 326 SHA256 181cdd492d55b5179008e3a36c4b3bc0cdd8ab896e0e54bbbf9e98d7a3362da3 SHA512 f66ce7d9b1e6282bb6922c92c6f09ee343961ad5ce9d52db46c587f5b2c66088797529264b13ff5d6a5fdc7f30e9989ac37101e6b881fef085f571c9b249fc0b WHIRLPOOL b0324d62b86672f0f785279e02f10207fd254b17b71b927a6c86ef1b31ecf9c0fb4144dc45c541dc5e70600164674c52b14bcd09536bb7294cd7b896382081e5

View File

@@ -0,0 +1,268 @@
diff -dNur a/src/org.gnome.Terminal.gschema.xml b/src/org.gnome.Terminal.gschema.xml
--- a/src/org.gnome.Terminal.gschema.xml 2014-06-23 19:54:22.000000000 +0200
+++ b/src/org.gnome.Terminal.gschema.xml 2014-08-09 18:19:58.288956513 +0200
@@ -326,6 +326,16 @@
<default>'current'</default>
<summary>Which encoding to use</summary>
</key>
+ <key name="use-transparent-background" type="b">
+ <default>false</default>
+ <summary>Whether to use a transparent background</summary>
+ </key>
+ <key name="background-transparency-percent" type="i">
+ <default>50</default>
+ <range min="0" max="100"/>
+ <summary>Adjust the amount of transparency</summary>
+ <description>A value between 0 and 100, where 0 is opaque and 100 is fully transparent.</description>
+ </key>
</schema>
<!-- Keybinding settings -->
diff -dNur a/src/profile-editor.c b/src/profile-editor.c
--- a/src/profile-editor.c 2014-06-23 19:54:22.000000000 +0200
+++ b/src/profile-editor.c 2014-08-09 18:19:58.284956575 +0200
@@ -1026,6 +1026,16 @@
gtk_builder_get_object (builder, "rewrap-on-resize-checkbutton"),
"active", G_SETTINGS_BIND_GET | G_SETTINGS_BIND_SET);
+ g_settings_bind (profile, TERMINAL_PROFILE_USE_TRANSPARENT_BACKGROUND,
+ gtk_builder_get_object (builder, "use-transparent-background"),
+ "active", G_SETTINGS_BIND_GET | G_SETTINGS_BIND_SET);
+ g_settings_bind (profile, TERMINAL_PROFILE_USE_TRANSPARENT_BACKGROUND,
+ gtk_builder_get_object (builder, "background-transparent-scale-box"),
+ "sensitive", G_SETTINGS_BIND_GET | G_SETTINGS_BIND_NO_SENSITIVITY);
+ g_settings_bind (profile, TERMINAL_PROFILE_BACKGROUND_TRANSPARENCY_PERCENT,
+ gtk_builder_get_object (builder, "background-transparent-adjustment"),
+ "value", G_SETTINGS_BIND_GET | G_SETTINGS_BIND_SET);
+
terminal_util_bind_mnemonic_label_sensitivity (editor);
terminal_util_dialog_focus_widget (editor, widget_name);
diff -dNur a/src/profile-preferences.ui b/src/profile-preferences.ui
--- a/src/profile-preferences.ui 2014-06-23 19:54:22.000000000 +0200
+++ b/src/profile-preferences.ui 2014-08-09 18:19:58.288956513 +0200
@@ -23,6 +23,11 @@
<property name="step_increment">1</property>
<property name="page_increment">100</property>
</object>
+ <object class="GtkAdjustment" id="background-transparent-adjustment">
+ <property name="upper">100</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ </object>
<object class="GtkListStore" id="model1">
<columns>
<!-- column-name gchararray -->
@@ -1228,6 +1233,93 @@
<property name="position">1</property>
</packing>
</child>
+ <child>
+ <object class="GtkBox" id="use-transparent-background-box">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">horizontal</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkCheckButton" id="use-transparent-background">
+ <property name="label" translatable="yes">Use t_ransparent background</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_underline">True</property>
+ <property name="xalign">0</property>
+ <property name="draw_indicator">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="background-transparent-scale-box">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">horizontal</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkLabel" id="background-transparent-min-label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0.5</property>
+ <property name="label" translatable="yes">none</property>
+ <style>
+ <class name="dim-label"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScale" id="background-transparent-scale">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="adjustment">background-transparent-adjustment</property>
+ <property name="draw_value">False</property>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="background-transparent-max-label">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="xalign">0.5</property>
+ <property name="label" translatable="yes">full</property>
+ <style>
+ <class name="dim-label"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
</object>
</child>
</object>
diff -dNur a/src/terminal-schemas.h b/src/terminal-schemas.h
--- a/src/terminal-schemas.h 2014-06-23 19:54:22.000000000 +0200
+++ b/src/terminal-schemas.h 2014-08-09 18:19:58.288956513 +0200
@@ -65,6 +65,9 @@
#define TERMINAL_PROFILE_VISIBLE_NAME_KEY "visible-name"
#define TERMINAL_PROFILE_WORD_CHARS_KEY "word-chars"
+#define TERMINAL_PROFILE_USE_TRANSPARENT_BACKGROUND "use-transparent-background"
+#define TERMINAL_PROFILE_BACKGROUND_TRANSPARENCY_PERCENT "background-transparency-percent"
+
#define TERMINAL_SETTING_CONFIRM_CLOSE_KEY "confirm-close"
#define TERMINAL_SETTING_DEFAULT_SHOW_MENUBAR_KEY "default-show-menubar"
#define TERMINAL_SETTING_DARK_THEME_KEY "dark-theme"
diff -dNur a/src/terminal-screen.c b/src/terminal-screen.c
--- a/src/terminal-screen.c 2014-06-23 19:54:22.000000000 +0200
+++ b/src/terminal-screen.c 2014-08-09 18:19:58.288956513 +0200
@@ -792,7 +792,9 @@
prop_name == I_(TERMINAL_PROFILE_BACKGROUND_COLOR_KEY) ||
prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG_KEY) ||
prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR_KEY) ||
- prop_name == I_(TERMINAL_PROFILE_PALETTE_KEY))
+ prop_name == I_(TERMINAL_PROFILE_PALETTE_KEY) ||
+ prop_name == I_(TERMINAL_PROFILE_USE_TRANSPARENT_BACKGROUND) ||
+ prop_name == I_(TERMINAL_PROFILE_BACKGROUND_TRANSPARENCY_PERCENT))
update_color_scheme (screen);
if (!prop_name || prop_name == I_(TERMINAL_PROFILE_AUDIBLE_BELL_KEY))
@@ -857,6 +859,9 @@
GdkRGBA fg, bg, bold, theme_fg, theme_bg;
GdkRGBA *boldp;
GtkStyleContext *context;
+ GtkWidget *toplevel;
+ gboolean transparent;
+ guint16 opacity;
context = gtk_widget_get_style_context (widget);
gtk_style_context_get_color (context, GTK_STATE_FLAG_NORMAL, &theme_fg);
@@ -880,6 +885,22 @@
vte_terminal_set_colors_rgba (VTE_TERMINAL (screen), &fg, &bg,
colors, n_colors);
vte_terminal_set_color_bold_rgba (VTE_TERMINAL (screen), boldp);
+
+ transparent = g_settings_get_boolean (profile, TERMINAL_PROFILE_USE_TRANSPARENT_BACKGROUND);
+ if (transparent)
+ {
+ gint transparency_percent;
+
+ transparency_percent = g_settings_get_int (profile, TERMINAL_PROFILE_BACKGROUND_TRANSPARENCY_PERCENT);
+ opacity = (guint16) (G_MAXUINT16 * (100 - transparency_percent) / 100.0);
+ }
+ else
+ opacity = G_MAXUINT16;
+
+ vte_terminal_set_opacity (VTE_TERMINAL (screen), opacity);
+ toplevel = gtk_widget_get_toplevel (GTK_WIDGET (screen));
+ if (toplevel != NULL && gtk_widget_is_toplevel (toplevel))
+ gtk_widget_set_app_paintable (toplevel, transparent);
}
void
diff -dNur a/src/terminal-window.c b/src/terminal-window.c
--- a/src/terminal-window.c 2014-06-23 19:54:23.000000000 +0200
+++ b/src/terminal-window.c 2014-08-09 18:19:58.288956513 +0200
@@ -2271,6 +2271,26 @@
}
static gboolean
+terminal_window_draw (GtkWidget *widget,
+ cairo_t *cr)
+{
+ if (gtk_widget_get_app_paintable (widget))
+ {
+ GtkStyleContext *context;
+ int width;
+ int height;
+
+ context = gtk_widget_get_style_context (widget);
+ width = gtk_widget_get_allocated_width (widget);
+ height = gtk_widget_get_allocated_height (widget);
+ gtk_render_background (context, cr, 0, 0, width, height);
+ gtk_render_frame (context, cr, 0, 0, width, height);
+ }
+
+ return GTK_WIDGET_CLASS (terminal_window_parent_class)->draw (widget, cr);
+}
+
+static gboolean
terminal_window_state_event (GtkWidget *widget,
GdkEventWindowState *event)
{
@@ -2619,6 +2639,8 @@
TerminalWindowPrivate *priv;
TerminalApp *app;
TerminalSettingsList *profiles_list;
+ GdkScreen *screen;
+ GdkVisual *visual;
GtkActionGroup *action_group;
GtkAction *action;
GtkUIManager *manager;
@@ -2634,6 +2656,11 @@
gtk_widget_init_template (GTK_WIDGET (window));
+ screen = gtk_widget_get_screen (GTK_WIDGET (window));
+ visual = gdk_screen_get_rgba_visual (screen);
+ if (visual != NULL)
+ gtk_widget_set_visual (GTK_WIDGET (window), visual);
+
uuid_generate (u);
uuid_unparse (u, uuidstr);
priv->uuid = g_strdup (uuidstr);
@@ -2799,6 +2826,7 @@
widget_class->show = terminal_window_show;
widget_class->realize = terminal_window_realize;
+ widget_class->draw = terminal_window_draw;
widget_class->window_state_event = terminal_window_state_event;
widget_class->screen_changed = terminal_window_screen_changed;
widget_class->style_updated = terminal_window_style_updated;

View File

@@ -0,0 +1,29 @@
From fe7230e2113510596be5e773f9c1074ed650e858 Mon Sep 17 00:00:00 2001
From: Christian Persch <chpe@gnome.org>
Date: Sun, 20 Apr 2014 20:21:04 +0200
Subject: [PATCH 56/61] window: Use fallback tab title for empty terminal title
https://bugzilla.gnome.org/show_bug.cgi?id=706816
---
src/terminal-tab-label.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/terminal-tab-label.c b/src/terminal-tab-label.c
index 90bab28..a83d94f 100644
--- a/src/terminal-tab-label.c
+++ b/src/terminal-tab-label.c
@@ -75,8 +75,9 @@ sync_tab_label (TerminalScreen *screen,
title = terminal_screen_get_title (screen);
hbox = gtk_widget_get_parent (label);
- gtk_label_set_text (GTK_LABEL (label), title);
-
+ gtk_label_set_text (GTK_LABEL (label),
+ title && title[0] ? title : _("Terminal"));
+
gtk_widget_set_tooltip_text (hbox, title);
}
--
1.9.0

View File

@@ -0,0 +1,28 @@
From 0d52fef0ca60483debbdedec43bd07a8e9f76bfa Mon Sep 17 00:00:00 2001
From: Christian Persch <chpe@gnome.org>
Date: Sun, 20 Apr 2014 20:21:04 +0200
Subject: [PATCH 57/61] window: Use fallback tab title for empty terminal title
https://bugzilla.gnome.org/show_bug.cgi?id=706816
---
src/terminal-tabs-menu.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/terminal-tabs-menu.c b/src/terminal-tabs-menu.c
index ed5fc7b..fb2b966 100644
--- a/src/terminal-tabs-menu.c
+++ b/src/terminal-tabs-menu.c
@@ -176,7 +176,9 @@ sync_tab_title (TerminalScreen *screen,
title = terminal_screen_get_title (screen);
- g_object_set (action, "label", title, NULL);
+ g_object_set (action,
+ "label", title && title[0] ? title : _("Terminal"),
+ NULL);
}
static void
--
1.9.0

View File

@@ -0,0 +1,131 @@
From de0dc7c2649c42e2aa02a66e4be27d262b34452d Mon Sep 17 00:00:00 2001
From: Debarshi Ray <debarshir@gnome.org>
Date: Fri, 11 Apr 2014 15:52:23 +0200
Subject: [PATCH 45/61] Remove unused code to create terminals with custom
titles
Irrespective of how you create a new terminal (over D-Bus using
$bindir/gnome-terminal, ctrl+shift n, or the application menu), the
code to set a custom title during construction was unused. Possibly
as a result of f27bf0135a2d18ba22158d28bf1f8c5f6ec066c8
https://bugzilla.gnome.org/show_bug.cgi?id=724110
---
src/terminal-app.c | 3 +--
src/terminal-app.h | 1 -
src/terminal-gdbus.c | 6 ++----
src/terminal-screen.c | 4 ----
src/terminal-screen.h | 1 -
src/terminal-window.c | 2 +-
6 files changed, 4 insertions(+), 13 deletions(-)
diff --git a/src/terminal-app.c b/src/terminal-app.c
index 9ded6fc..57a6f15 100644
--- a/src/terminal-app.c
+++ b/src/terminal-app.c
@@ -527,7 +527,6 @@ terminal_app_new_terminal (TerminalApp *app,
TerminalWindow *window,
GSettings *profile,
char **override_command,
- const char *title,
const char *working_dir,
char **child_env,
double zoom)
@@ -537,7 +536,7 @@ terminal_app_new_terminal (TerminalApp *app,
g_return_val_if_fail (TERMINAL_IS_APP (app), NULL);
g_return_val_if_fail (TERMINAL_IS_WINDOW (window), NULL);
- screen = terminal_screen_new (profile, override_command, title,
+ screen = terminal_screen_new (profile, override_command,
working_dir, child_env, zoom);
terminal_window_add_screen (window, screen, -1);
diff --git a/src/terminal-app.h b/src/terminal-app.h
index 6da6036..9502845 100644
--- a/src/terminal-app.h
+++ b/src/terminal-app.h
@@ -75,7 +75,6 @@ TerminalScreen *terminal_app_new_terminal (TerminalApp *app,
TerminalWindow *window,
GSettings *profile,
char **override_command,
- const char *title,
const char *working_dir,
char **child_env,
double zoom);
diff --git a/src/terminal-gdbus.c b/src/terminal-gdbus.c
index b801b9e..7b68a85 100644
--- a/src/terminal-gdbus.c
+++ b/src/terminal-gdbus.c
@@ -368,7 +368,7 @@ terminal_factory_impl_create_instance (TerminalFactory *factory,
TerminalObjectSkeleton *skeleton;
char *object_path;
GSettings *profile = NULL;
- const char *profile_uuid, *title;
+ const char *profile_uuid;
gboolean zoom_set = FALSE;
gdouble zoom = 1.0;
guint window_id;
@@ -456,12 +456,10 @@ terminal_factory_impl_create_instance (TerminalFactory *factory,
g_assert (window != NULL);
- if (!g_variant_lookup (options, "title", "&s", &title))
- title = NULL;
if (g_variant_lookup (options, "zoom", "d", &zoom))
zoom_set = TRUE;
- screen = terminal_screen_new (profile, NULL, title, NULL, NULL,
+ screen = terminal_screen_new (profile, NULL, NULL, NULL,
zoom_set ? zoom : 1.0);
terminal_window_add_screen (window, screen, -1);
terminal_window_switch_screen (window, screen);
diff --git a/src/terminal-screen.c b/src/terminal-screen.c
index c504881..bb05924 100644
--- a/src/terminal-screen.c
+++ b/src/terminal-screen.c
@@ -622,7 +622,6 @@ terminal_screen_finalize (GObject *object)
TerminalScreen *
terminal_screen_new (GSettings *profile,
char **override_command,
- const char *title,
const char *working_dir,
char **child_env,
double zoom)
@@ -643,9 +642,6 @@ terminal_screen_new (GSettings *profile,
g_settings_get_int (profile, TERMINAL_PROFILE_DEFAULT_SIZE_ROWS_KEY));
}
- if (title)
- terminal_screen_set_user_title (screen, title);
-
priv->initial_working_directory = g_strdup (working_dir);
if (override_command)
diff --git a/src/terminal-screen.h b/src/terminal-screen.h
index d0341c8..2a0d391 100644
--- a/src/terminal-screen.h
+++ b/src/terminal-screen.h
@@ -76,7 +76,6 @@ const char *terminal_screen_get_uuid (TerminalScreen *screen);
TerminalScreen *terminal_screen_new (GSettings *profile,
char **override_command,
- const char *title,
const char *working_dir,
char **child_env,
double zoom);
diff --git a/src/terminal-window.c b/src/terminal-window.c
index 0a611a7..9c209f7 100644
--- a/src/terminal-window.c
+++ b/src/terminal-window.c
@@ -400,7 +400,7 @@ action_new_terminal_cb (GSimpleAction *action,
new_working_directory = terminal_screen_get_current_dir (priv->active_screen);
terminal_app_new_terminal (app, window, profile,
- NULL, NULL,
+ NULL,
new_working_directory,
terminal_screen_get_initial_environment (priv->active_screen),
1.0);
--
1.9.0

View File

@@ -0,0 +1,214 @@
From 9bbe19e98f62aa3c9020913a3a5a8080a5177505 Mon Sep 17 00:00:00 2001
From: Debarshi Ray <debarshir@gnome.org>
Date: Wed, 16 Apr 2014 15:04:38 +0200
Subject: [PATCH 47/61] Remove the action and shortcut to set a static title
from the menus
Setting a static title does not work because there is no code
listening to changes in TerminalScreen:description. The title is
dynamically set via escape sequences, usually from a suitable
PROMPT_COMMAND, which is noticed by VteTerminal.
If you want to customize the title of a particular terminal, please use
the escape sequence. This is what you had to use before, anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=724110
---
src/migration.c | 1 -
src/org.gnome.Terminal.gschema.xml | 4 --
src/terminal-accels.c | 2 -
src/terminal-window.c | 88 --------------------------------------
src/terminal.xml | 3 --
5 files changed, 98 deletions(-)
diff --git a/src/migration.c b/src/migration.c
index 7a7a773..b626ec5 100644
--- a/src/migration.c
+++ b/src/migration.c
@@ -541,7 +541,6 @@ migrate_accels (GSettings *global_settings,
{ "zoom_in", "zoom-in" },
{ "zoom_out", "zoom-out" },
{ "zoom_normal", "zoom-normal" },
- { "set_window_title", "set-terminal-title" },
{ "reset", "reset" },
{ "reset_and_clear", "reset-and-clear" },
{ "prev_tab", "prev-tab" },
diff --git a/src/org.gnome.Terminal.gschema.xml b/src/org.gnome.Terminal.gschema.xml
index 1b926a6..be8f104 100644
--- a/src/org.gnome.Terminal.gschema.xml
+++ b/src/org.gnome.Terminal.gschema.xml
@@ -374,10 +374,6 @@
<default>'disabled'</default>
<summary>Keyboard shortcut to toggle the visibility of the menubar</summary>
</key>
- <key name="set-terminal-title" type="s">
- <default>'disabled'</default>
- <summary>Keyboard shortcut to set the terminal title</summary>
- </key>
<key name="reset" type="s">
<default>'disabled'</default>
<summary>Keyboard shortcut to reset the terminal</summary>
diff --git a/src/terminal-accels.c b/src/terminal-accels.c
index a3a8034..65d56bd 100644
--- a/src/terminal-accels.c
+++ b/src/terminal-accels.c
@@ -70,7 +70,6 @@
#define KEY_RESET_AND_CLEAR "reset-and-clear"
#define KEY_RESET "reset"
#define KEY_SAVE_CONTENTS "save-contents"
-#define KEY_SET_TERMINAL_TITLE "set-terminal-title"
#define KEY_TOGGLE_MENUBAR "toggle-menubar"
#define KEY_ZOOM_IN "zoom-in"
#define KEY_ZOOM_NORMAL "zoom-normal"
@@ -144,7 +143,6 @@ static KeyEntry view_entries[] = {
};
static KeyEntry terminal_entries[] = {
- ENTRY (N_("Set Title"), KEY_SET_TERMINAL_TITLE, "set-title", NULL, NULL ),
ENTRY (N_("Reset"), KEY_RESET, "reset", "b", "false"),
ENTRY (N_("Reset and Clear"), KEY_RESET_AND_CLEAR, "reset", "b", "true" ),
};
diff --git a/src/terminal-window.c b/src/terminal-window.c
index 9c209f7..93145ac 100644
--- a/src/terminal-window.c
+++ b/src/terminal-window.c
@@ -179,8 +179,6 @@ static void view_zoom_out_callback (GtkAction *action,
TerminalWindow *window);
static void view_zoom_normal_callback (GtkAction *action,
TerminalWindow *window);
-static void terminal_set_title_callback (GtkAction *action,
- TerminalWindow *window);
static void terminal_add_encoding_callback (GtkAction *action,
TerminalWindow *window);
static void terminal_reset_callback (GtkAction *action,
@@ -718,88 +716,6 @@ action_move_tab_cb (GSimpleAction *action,
}
static void
-terminal_set_title_dialog_response_cb (GtkWidget *dialog,
- int response,
- TerminalScreen *screen)
-{
- if (response == GTK_RESPONSE_OK)
- {
- GtkEntry *entry;
- const char *text;
-
- entry = GTK_ENTRY (g_object_get_data (G_OBJECT (dialog), "title-entry"));
- text = gtk_entry_get_text (entry);
- terminal_screen_set_user_title (screen, text);
- }
-
- gtk_widget_destroy (dialog);
-}
-
-static void
-action_set_title_cb (GSimpleAction *action,
- GVariant *parameter,
- gpointer user_data)
-{
- TerminalWindow *window = user_data;
- TerminalWindowPrivate *priv = window->priv;
- GtkWidget *dialog, *message_area, *hbox, *label, *entry;
-
- if (priv->active_screen == NULL)
- return;
-
- /* FIXME: hook the screen up so this dialogue closes if the terminal screen closes */
-
- dialog = gtk_message_dialog_new (GTK_WINDOW (window),
- GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
- GTK_MESSAGE_OTHER,
- GTK_BUTTONS_OK_CANCEL,
- "%s", "");
-
- gtk_window_set_title (GTK_WINDOW (dialog), _("Set Title"));
- gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
- gtk_window_set_role (GTK_WINDOW (dialog), "gnome-terminal-change-title");
- gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK);
- /* Alternative button order was set automatically by GtkMessageDialog */
-
- g_signal_connect (dialog, "response",
- G_CALLBACK (terminal_set_title_dialog_response_cb), priv->active_screen);
- g_signal_connect (dialog, "delete-event",
- G_CALLBACK (terminal_util_dialog_response_on_delete), NULL);
-
- message_area = gtk_message_dialog_get_message_area (GTK_MESSAGE_DIALOG (dialog));
- gtk_container_foreach (GTK_CONTAINER (message_area), (GtkCallback) gtk_widget_hide, NULL);
-
- hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
- gtk_box_pack_start (GTK_BOX (message_area), hbox, FALSE, FALSE, 0);
-
- label = gtk_label_new_with_mnemonic (_("_Title:"));
- gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
- gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
-
- entry = gtk_entry_new ();
- gtk_entry_set_width_chars (GTK_ENTRY (entry), 32);
- gtk_entry_set_activates_default (GTK_ENTRY (entry), TRUE);
- gtk_label_set_mnemonic_widget (GTK_LABEL (label), entry);
- gtk_box_pack_start (GTK_BOX (hbox), entry, TRUE, TRUE, 0);
- gtk_widget_show_all (hbox);
-
- gtk_widget_grab_focus (entry);
- gtk_entry_set_text (GTK_ENTRY (entry), terminal_screen_get_user_title (priv->active_screen));
- gtk_editable_select_region (GTK_EDITABLE (entry), 0, -1);
- g_object_set_data (G_OBJECT (dialog), "title-entry", entry);
-
- gtk_window_present (GTK_WINDOW (dialog));
-}
-
-static void
-terminal_set_title_callback (GtkAction *action,
- TerminalWindow *window)
-{
- g_action_activate (g_action_map_lookup_action (G_ACTION_MAP (window), "set-title"),
- NULL);
-}
-
-static void
action_zoom_cb (GSimpleAction *action,
GVariant *parameter,
gpointer user_data)
@@ -2423,7 +2339,6 @@ terminal_window_init (TerminalWindow *window)
{ "reset", action_reset_cb, "b", NULL, NULL },
{ "switch-tab", action_switch_tab_cb, "i", NULL, NULL },
{ "move-tab", action_move_tab_cb, "i", NULL, NULL },
- { "set-title", action_set_title_cb, NULL, NULL, NULL },
{ "zoom", action_zoom_cb, "i", NULL, NULL },
{ "detach-tab", action_detach_tab_cb, NULL, NULL, NULL },
{ "find", action_find_cb, "s", NULL, NULL },
@@ -2528,9 +2443,6 @@ terminal_window_init (TerminalWindow *window)
/* Terminal menu */
{ "TerminalProfiles", NULL, N_("Change _Profile") },
- { "TerminalSetTitle", NULL, N_("_Set Title…"), NULL,
- NULL,
- G_CALLBACK (terminal_set_title_callback) },
{ "TerminalSetEncoding", NULL, N_("Set _Character Encoding") },
{ "TerminalReset", NULL, N_("_Reset"), NULL,
NULL,
diff --git a/src/terminal.xml b/src/terminal.xml
index 6743393..72cef17 100644
--- a/src/terminal.xml
+++ b/src/terminal.xml
@@ -46,7 +46,6 @@
</menu>
<menu action="Terminal">
<menu action="TerminalProfiles" />
- <menuitem action="TerminalSetTitle" />
<menu action="TerminalSetEncoding" >
<placeholder name="EncodingsPH" />
<separator />
@@ -100,8 +99,6 @@
<menuitem action="TabsMoveLeft"/>
<menuitem action="TabsMoveRight"/>
<separator />
- <menuitem action="TerminalSetTitle" />
- <separator />
<menuitem action="FileCloseTab"/>
</popup>
</ui>
--
1.9.0

View File

@@ -0,0 +1,217 @@
From e9cb8fea14a849704074c5d69f173bcf4dc2fb27 Mon Sep 17 00:00:00 2001
From: Debarshi Ray <debarshir@gnome.org>
Date: Wed, 16 Apr 2014 16:01:56 +0200
Subject: [PATCH 48/61] Remove the static title setting from profile
preferences
The static title setting does not work because TerminalWindow hardcodes
the title as "Terminal" in the absence of VteTerminal:window-title,
which is set dynamically via escape sequences. Usually the escape
sequence is emitted from a suitable PROMPT_COMMAND. You can do the same
if you want a customized title.
https://bugzilla.gnome.org/show_bug.cgi?id=724110
---
src/migration.c | 3 --
src/org.gnome.Terminal.gschema.xml | 5 ---
src/profile-editor.c | 3 --
src/profile-preferences.ui | 86 --------------------------------------
src/terminal-schemas.h | 1 -
src/terminal-screen.c | 9 ----
6 files changed, 107 deletions(-)
diff --git a/src/migration.c b/src/migration.c
index b626ec5..ecd1493 100644
--- a/src/migration.c
+++ b/src/migration.c
@@ -86,7 +86,6 @@ enum {
#define KEY_SCROLL_ON_KEYSTROKE "scroll_on_keystroke"
#define KEY_SCROLL_ON_OUTPUT "scroll_on_output"
#define KEY_SILENT_BELL "silent_bell"
-#define KEY_TITLE "title"
#define KEY_UPDATE_RECORDS "update_records"
#define KEY_USE_CUSTOM_COMMAND "use_custom_command"
#define KEY_USE_CUSTOM_DEFAULT_SIZE "use_custom_default_size"
@@ -395,8 +394,6 @@ migrate_profile (TerminalSettingsList *list,
migrate_bool (client, path, KEY_BOLD_COLOR_SAME_AS_FG,
settings, TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG_KEY,
FALSE);
- migrate_string (client, path, KEY_TITLE,
- settings, TERMINAL_PROFILE_TITLE_KEY);
migrate_bool (client, path, KEY_ALLOW_BOLD,
settings, TERMINAL_PROFILE_ALLOW_BOLD_KEY,
FALSE);
diff --git a/src/org.gnome.Terminal.gschema.xml b/src/org.gnome.Terminal.gschema.xml
index be8f104..af7f418 100644
--- a/src/org.gnome.Terminal.gschema.xml
+++ b/src/org.gnome.Terminal.gschema.xml
@@ -116,11 +116,6 @@
<summary>Whether bold text should use the same color as normal text</summary>
<description>If true, boldface text will be rendered using the same color as normal text.</description>
</key>
- <key name="title" type="s">
- <default l10n="messages" context="title">'Terminal'</default>
- <summary>Title for terminal</summary>
- <description>Title to display for the terminal window or tab. This title may be replaced by or combined with the title set by the application inside the terminal, depending on the title_mode setting.</description>
- </key>
<key name="allow-bold" type="b">
<default>true</default>
<summary>Whether to allow bold text</summary>
diff --git a/src/profile-editor.c b/src/profile-editor.c
index 4bc1f7f..70a1afa 100644
--- a/src/profile-editor.c
+++ b/src/profile-editor.c
@@ -1014,9 +1014,6 @@ terminal_profile_edit (GSettings *profile,
gtk_builder_get_object (builder,
"system-font-checkbutton"),
"active", G_SETTINGS_BIND_GET | G_SETTINGS_BIND_SET);
- g_settings_bind (profile, TERMINAL_PROFILE_TITLE_KEY,
- gtk_builder_get_object (builder, "title-entry"), "text",
- G_SETTINGS_BIND_GET | G_SETTINGS_BIND_SET);
g_settings_bind (profile, TERMINAL_PROFILE_UPDATE_RECORDS_KEY,
gtk_builder_get_object (builder,
"update-records-checkbutton"),
diff --git a/src/profile-preferences.ui b/src/profile-preferences.ui
index 02889a3..e730681 100644
--- a/src/profile-preferences.ui
+++ b/src/profile-preferences.ui
@@ -579,92 +579,6 @@
<property name="border_width">12</property>
<property name="spacing">18</property>
<child>
- <object class="GtkVBox" id="vbox79">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkLabel" id="label33">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Title</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkAlignment" id="alignment10108">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="left_padding">12</property>
- <child>
- <object class="GtkVBox" id="vbox93">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkHBox" id="hbox137">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="spacing">12</property>
- <child>
- <object class="GtkLabel" id="title-entry-label">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">_Title:</property>
- <property name="use_underline">True</property>
- <property name="justify">center</property>
- <property name="mnemonic_widget">title-entry</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkEntry" id="title-entry">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
<object class="GtkVBox" id="vbox80">
<property name="visible">True</property>
<property name="can_focus">False</property>
diff --git a/src/terminal-schemas.h b/src/terminal-schemas.h
index 7673da1..0bddcab 100644
--- a/src/terminal-schemas.h
+++ b/src/terminal-schemas.h
@@ -56,7 +56,6 @@ G_BEGIN_DECLS
#define TERMINAL_PROFILE_SCROLLBAR_POLICY_KEY "scrollbar-policy"
#define TERMINAL_PROFILE_SCROLL_ON_KEYSTROKE_KEY "scroll-on-keystroke"
#define TERMINAL_PROFILE_SCROLL_ON_OUTPUT_KEY "scroll-on-output"
-#define TERMINAL_PROFILE_TITLE_KEY "title"
#define TERMINAL_PROFILE_UPDATE_RECORDS_KEY "update-records"
#define TERMINAL_PROFILE_USE_CUSTOM_COMMAND_KEY "use-custom-command"
#define TERMINAL_PROFILE_USE_CUSTOM_DEFAULT_SIZE_KEY "use-custom-default-size"
diff --git a/src/terminal-screen.c b/src/terminal-screen.c
index bb05924..d03ed80 100644
--- a/src/terminal-screen.c
+++ b/src/terminal-screen.c
@@ -717,14 +717,11 @@ char *
terminal_screen_get_description (TerminalScreen *screen)
{
TerminalScreenPrivate *priv = screen->priv;
- gs_free char *title_string = NULL;
const char *title;
/* use --title argument if one was supplied, otherwise ask the profile */
if (priv->title)
title = priv->title;
- else
- title = title_string = g_settings_get_string (priv->profile, TERMINAL_PROFILE_TITLE_KEY);
return g_strdup_printf ("%s — %d",
title && title[0] ? title : _("Terminal"),
@@ -772,12 +769,6 @@ terminal_screen_profile_changed_cb (GSettings *profile,
vte_terminal_set_cjk_ambiguous_width (vte_terminal, (int) width);
}
- if (!prop_name ||
- prop_name == I_(TERMINAL_PROFILE_TITLE_KEY))
- {
- g_object_notify (object, "description");
- }
-
if (gtk_widget_get_realized (GTK_WIDGET (screen)) &&
(!prop_name ||
prop_name == I_(TERMINAL_PROFILE_USE_SYSTEM_FONT_KEY) ||
--
1.9.0

View File

@@ -0,0 +1,181 @@
From 3bb41272b7509a16ec2a5cd93e44f73d5743b626 Mon Sep 17 00:00:00 2001
From: Debarshi Ray <debarshir@gnome.org>
Date: Wed, 16 Apr 2014 17:39:39 +0200
Subject: [PATCH 49/61] screen: Remove unused description and user_title API
These were used by various parts of the static title code, which has
now been removed.
https://bugzilla.gnome.org/show_bug.cgi?id=724110
---
src/terminal-screen.c | 63 ---------------------------------------------------
src/terminal-screen.h | 6 -----
2 files changed, 69 deletions(-)
diff --git a/src/terminal-screen.c b/src/terminal-screen.c
index d03ed80..e35914c 100644
--- a/src/terminal-screen.c
+++ b/src/terminal-screen.c
@@ -77,7 +77,6 @@ struct _TerminalScreenPrivate
GSettings *profile; /* never NULL */
guint profile_changed_id;
guint profile_forgotten_id;
- char *title;
char *initial_working_directory;
char **initial_env;
char **override_command;
@@ -102,7 +101,6 @@ enum {
PROP_ICON_TITLE,
PROP_ICON_TITLE_SET,
PROP_TITLE,
- PROP_DESCRIPTION,
PROP_INITIAL_ENVIRONMENT
};
@@ -390,9 +388,6 @@ terminal_screen_get_property (GObject *object,
case PROP_TITLE:
g_value_set_string (value, terminal_screen_get_title (screen));
break;
- case PROP_DESCRIPTION:
- g_value_take_string (value, terminal_screen_get_description (screen));
- break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -418,7 +413,6 @@ terminal_screen_set_property (GObject *object,
case PROP_ICON_TITLE:
case PROP_ICON_TITLE_SET:
case PROP_TITLE:
- case PROP_DESCRIPTION:
/* not writable */
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -517,13 +511,6 @@ terminal_screen_class_init (TerminalScreenClass *klass)
NULL,
G_PARAM_READABLE | G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB));
- g_object_class_install_property (object_class,
- PROP_DESCRIPTION,
- g_param_spec_string ("description", NULL, NULL,
- NULL,
- G_PARAM_READABLE |
- G_PARAM_STATIC_STRINGS));
-
g_object_class_install_property
(object_class,
PROP_INITIAL_ENVIRONMENT,
@@ -606,7 +593,6 @@ terminal_screen_finalize (GObject *object)
terminal_screen_set_profile (screen, NULL);
- g_free (priv->title);
g_free (priv->initial_working_directory);
g_strfreev (priv->override_command);
g_strfreev (priv->initial_env);
@@ -713,21 +699,6 @@ terminal_screen_get_icon_title_set (TerminalScreen *screen)
return vte_terminal_get_icon_title (VTE_TERMINAL (screen)) != NULL;
}
-char *
-terminal_screen_get_description (TerminalScreen *screen)
-{
- TerminalScreenPrivate *priv = screen->priv;
- const char *title;
-
- /* use --title argument if one was supplied, otherwise ask the profile */
- if (priv->title)
- title = priv->title;
-
- return g_strdup_printf ("%s — %d",
- title && title[0] ? title : _("Terminal"),
- screen->priv->child_pid);
-}
-
static void
terminal_screen_profile_changed_cb (GSettings *profile,
const char *prop_name,
@@ -949,7 +920,6 @@ terminal_screen_set_profile (TerminalScreen *screen,
g_object_unref (old_profile);
g_object_notify (G_OBJECT (screen), "profile");
- g_object_notify (G_OBJECT (screen), "description");
}
GSettings*
@@ -1359,8 +1329,6 @@ out:
g_strfreev (env);
free_fd_setup_data (data);
- g_object_notify (G_OBJECT (screen), "description");
-
return result;
}
@@ -1543,35 +1511,6 @@ terminal_screen_button_press (GtkWidget *widget,
return FALSE;
}
-void
-terminal_screen_set_user_title (TerminalScreen *screen,
- const char *title)
-{
- TerminalScreenPrivate *priv = screen->priv;
-
- g_return_if_fail (TERMINAL_IS_SCREEN (screen));
-
- if (g_strcmp0 (priv->title, title) == 0)
- return;
-
- g_free (priv->title);
- priv->title = title && title[0] ? g_strdup (title) : NULL;
-
- g_object_notify (G_OBJECT (screen), "description");
-}
-
-const char*
-terminal_screen_get_user_title (TerminalScreen *screen)
-{
- TerminalScreenPrivate *priv;
-
- g_return_val_if_fail (TERMINAL_IS_SCREEN (screen), NULL);
-
- priv = screen->priv;
-
- return priv->title ? priv->title : _("Terminal");
-}
-
/**
* terminal_screen_get_current_dir:
* @screen:
@@ -1629,8 +1568,6 @@ terminal_screen_child_exited (VteTerminal *terminal,
priv->child_pid = -1;
- g_object_notify (G_OBJECT (screen), "description");
-
action = g_settings_get_enum (priv->profile, TERMINAL_PROFILE_EXIT_ACTION_KEY);
switch (action)
diff --git a/src/terminal-screen.h b/src/terminal-screen.h
index 2a0d391..96f0a0d 100644
--- a/src/terminal-screen.h
+++ b/src/terminal-screen.h
@@ -100,15 +100,9 @@ void terminal_screen_set_initial_environment (TerminalScreen *screen,
char **argv);
char ** terminal_screen_get_initial_environment (TerminalScreen *screen);
-const char *terminal_screen_get_user_title (TerminalScreen *screen);
const char* terminal_screen_get_title (TerminalScreen *screen);
const char* terminal_screen_get_icon_title (TerminalScreen *screen);
gboolean terminal_screen_get_icon_title_set (TerminalScreen *screen);
-char * terminal_screen_get_description (TerminalScreen *screen);
-
-void terminal_screen_set_user_title (TerminalScreen *screen,
- const char *text);
-
char *terminal_screen_get_current_dir (TerminalScreen *screen);
--
1.9.0

View File

@@ -0,0 +1,81 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="5"
GCONF_DEBUG="no"
GNOME2_LA_PUNT="yes"
inherit gnome2 readme.gentoo
DESCRIPTION="The Gnome Terminal"
HOMEPAGE="https://wiki.gnome.org/Apps/Terminal/"
LICENSE="GPL-3+"
SLOT="0"
IUSE="+gnome-shell +nautilus"
KEYWORDS="~alpha amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux"
# FIXME: automagic dependency on gtk+[X]
RDEPEND="
>=dev-libs/glib-2.39.2:2
>=x11-libs/gtk+-3.9.9:3[X]
>=x11-libs/vte-0.36.3:2.90
>=gnome-base/dconf-0.14
>=gnome-base/gconf-2.31.3
>=gnome-base/gsettings-desktop-schemas-0.1.0
sys-apps/util-linux
x11-libs/libSM
x11-libs/libICE
gnome-shell? ( gnome-base/gnome-shell )
nautilus? ( >=gnome-base/nautilus-3 )
"
# gtk+:2 needed for gtk-builder-convert, bug 356239
DEPEND="${RDEPEND}
app-text/yelp-tools
dev-util/appdata-tools
|| ( dev-util/gtk-builder-convert <=x11-libs/gtk+-2.24.10:2 )
>=dev-util/intltool-0.50
sys-devel/gettext
virtual/pkgconfig
"
DOC_CONTENTS="To get previous working directory inherited in new opened
tab you will need to add the following line to your ~/.bashrc:\n
. /etc/profile.d/vte.sh"
src_prepare() {
epatch \
"${FILESDIR}"/${PN}-3.12.0-remove-set-title-feature-0.patch \
"${FILESDIR}"/${PN}-3.12.0-remove-set-title-feature-1.patch \
"${FILESDIR}"/${PN}-3.12.0-remove-set-title-feature-2.patch \
"${FILESDIR}"/${PN}-3.12.0-remove-set-title-feature-3.patch \
"${FILESDIR}"/${PN}-3.12.0-fallback-title-1.patch \
"${FILESDIR}"/${PN}-3.12.0-fallback-title-2.patch \
"${FILESDIR}"/${PN}-3.12-restore-transparency.patch
gnome2_src_prepare
}
src_configure() {
# FIXME: leave smclient configure unset until it accepts values from the
# switch and not from GDK_TARGET, bug #363033
gnome2_src_configure \
--disable-static \
--enable-migration \
$(use_enable gnome-shell search-provider) \
$(use_with nautilus nautilus-extension) \
# Docs are broken in this release.
#ITSTOOL=$(type -P true) \
#XMLLINT=$(type -P true)
}
src_install() {
DOCS="AUTHORS ChangeLog HACKING NEWS"
gnome2_src_install
readme.gentoo_create_doc
}
pkg_postinst() {
gnome2_pkg_postinst
readme.gentoo_print_elog
}

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>gnome</herd>
<use>
<flag name="gnome-shell">Integrate with <pkg>gnome-base/gnome-shell</pkg> search</flag>
<flag name="nautilus">Build gnome-base/nautilus extension</flag>
</use>
</pkgmetadata>