summaryrefslogtreecommitdiff
path: root/src/terminal-screen.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/terminal-screen.c')
-rw-r--r--src/terminal-screen.c177
1 files changed, 17 insertions, 160 deletions
diff --git a/src/terminal-screen.c b/src/terminal-screen.c
index 3bf57b1..6bb338d 100644
--- a/src/terminal-screen.c
+++ b/src/terminal-screen.c
@@ -119,11 +119,7 @@ static gboolean terminal_screen_popup_menu (GtkWidget *widget);
static gboolean terminal_screen_button_press (GtkWidget *widget,
GdkEventButton *event);
static void terminal_screen_launch_child_on_idle (TerminalScreen *screen);
-#if VTE_CHECK_VERSION (0, 38, 0)
static void terminal_screen_child_exited (VteTerminal *terminal, int status);
-#else
-static void terminal_screen_child_exited (VteTerminal *terminal);
-#endif
static void terminal_screen_window_title_changed (VteTerminal *vte_terminal,
TerminalScreen *screen);
@@ -138,12 +134,7 @@ static void terminal_screen_cook_title (TerminalScreen *screen);
static void terminal_screen_cook_icon_title (TerminalScreen *screen);
static char* terminal_screen_check_match (TerminalScreen *screen,
-#if VTE_CHECK_VERSION (0, 38, 0)
GdkEvent *event,
-#else
- int column,
- int row,
-#endif
int *flavor);
static guint signals[LAST_SIGNAL] = { 0 };
@@ -292,38 +283,10 @@ terminal_screen_get_window (TerminalScreen *screen)
return TERMINAL_WINDOW (toplevel);
}
-#if !VTE_CHECK_VERSION (0, 38, 0)
-static gboolean
-window_uses_argb_visual (TerminalScreen *screen)
-{
- TerminalWindow *window;
-
- window = terminal_screen_get_window (screen);
- if (window == NULL || !gtk_widget_get_realized (GTK_WIDGET (window)))
- return FALSE;
-
- return terminal_window_uses_argb_visual (window);
-}
-#endif
-
static void
terminal_screen_realize (GtkWidget *widget)
{
-#if !VTE_CHECK_VERSION (0, 38, 0)
- TerminalScreen *screen = TERMINAL_SCREEN (widget);
- TerminalScreenPrivate *priv = screen->priv;
- TerminalBackgroundType bg_type;
-#endif
-
GTK_WIDGET_CLASS (terminal_screen_parent_class)->realize (widget);
-
-#if !VTE_CHECK_VERSION (0, 38, 0)
- /* FIXME: Don't enable this if we have a compmgr. */
- bg_type = terminal_profile_get_property_enum (priv->profile, TERMINAL_PROFILE_BACKGROUND_TYPE);
- vte_terminal_set_background_transparent (VTE_TERMINAL (screen),
- bg_type == TERMINAL_BACKGROUND_TRANSPARENT &&
- !window_uses_argb_visual (screen));
-#endif
}
static void
@@ -923,9 +886,6 @@ terminal_screen_profile_notify_cb (TerminalProfile *profile,
GObject *object = G_OBJECT (screen);
VteTerminal *vte_terminal = VTE_TERMINAL (screen);
const char *prop_name;
-#if !VTE_CHECK_VERSION (0, 38, 0)
- TerminalBackgroundType bg_type;
-#endif
TerminalWindow *window;
if (pspec)
@@ -969,10 +929,8 @@ terminal_screen_profile_notify_cb (TerminalProfile *profile,
prop_name == I_(TERMINAL_PROFILE_USE_THEME_COLORS) ||
prop_name == I_(TERMINAL_PROFILE_FOREGROUND_COLOR) ||
prop_name == I_(TERMINAL_PROFILE_BACKGROUND_COLOR) ||
-#if VTE_CHECK_VERSION (0, 38, 0)
prop_name == I_(TERMINAL_PROFILE_BACKGROUND_TYPE) ||
prop_name == I_(TERMINAL_PROFILE_BACKGROUND_DARKNESS) ||
-#endif
prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG) ||
prop_name == I_(TERMINAL_PROFILE_BOLD_COLOR) ||
prop_name == I_(TERMINAL_PROFILE_PALETTE))
@@ -981,15 +939,10 @@ terminal_screen_profile_notify_cb (TerminalProfile *profile,
if (!prop_name || prop_name == I_(TERMINAL_PROFILE_SILENT_BELL))
vte_terminal_set_audible_bell (vte_terminal, !terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_SILENT_BELL));
- if (!prop_name || prop_name == I_(TERMINAL_PROFILE_WORD_CHARS))
#if VTE_CHECK_VERSION (0, 40, 0)
+ if (!prop_name || prop_name == I_(TERMINAL_PROFILE_WORD_CHARS))
vte_terminal_set_word_char_exceptions (vte_terminal,
terminal_profile_get_property_string (profile, TERMINAL_PROFILE_WORD_CHARS));
-#elif !VTE_CHECK_VERSION (0, 38, 0)
- vte_terminal_set_word_chars (vte_terminal,
- terminal_profile_get_property_string (profile, TERMINAL_PROFILE_WORD_CHARS));
-#else
- {}
#endif
if (!prop_name || prop_name == I_(TERMINAL_PROFILE_SCROLL_ON_KEYSTROKE))
vte_terminal_set_scroll_on_keystroke (vte_terminal,
@@ -1032,51 +985,6 @@ terminal_screen_profile_notify_cb (TerminalProfile *profile,
}
#endif /* ENABLE_SKEY */
-/* Background image support was removed in vte 0.38.
- * Transparency for 0.38+ is handled above next to TERMINAL_PROFILE_BACKGROUND_COLOR. */
-#if !VTE_CHECK_VERSION (0, 38, 0)
- if (!prop_name ||
- prop_name == I_(TERMINAL_PROFILE_BACKGROUND_TYPE) ||
- prop_name == I_(TERMINAL_PROFILE_BACKGROUND_IMAGE) ||
- prop_name == I_(TERMINAL_PROFILE_BACKGROUND_DARKNESS) ||
- prop_name == I_(TERMINAL_PROFILE_SCROLL_BACKGROUND))
- {
- bg_type = terminal_profile_get_property_enum (profile, TERMINAL_PROFILE_BACKGROUND_TYPE);
-
- if (bg_type == TERMINAL_BACKGROUND_IMAGE)
- {
- vte_terminal_set_background_image (vte_terminal,
- terminal_profile_get_property_object (profile, TERMINAL_PROFILE_BACKGROUND_IMAGE));
- vte_terminal_set_scroll_background (vte_terminal,
- terminal_profile_get_property_boolean (profile, TERMINAL_PROFILE_SCROLL_BACKGROUND));
- }
- else
- {
- vte_terminal_set_background_image (vte_terminal, NULL);
- vte_terminal_set_scroll_background (vte_terminal, FALSE);
- }
-
- if (bg_type == TERMINAL_BACKGROUND_IMAGE ||
- bg_type == TERMINAL_BACKGROUND_TRANSPARENT)
- {
- vte_terminal_set_background_saturation (vte_terminal,
- 1.0 - terminal_profile_get_property_double (profile, TERMINAL_PROFILE_BACKGROUND_DARKNESS));
- vte_terminal_set_opacity (vte_terminal,
- 0xffff * terminal_profile_get_property_double (profile, TERMINAL_PROFILE_BACKGROUND_DARKNESS));
- }
- else
- {
- vte_terminal_set_background_saturation (vte_terminal, 1.0); /* normal color */
- vte_terminal_set_opacity (vte_terminal, 0xffff);
- }
-
- /* FIXME: Don't enable this if we have a compmgr. */
- vte_terminal_set_background_transparent (vte_terminal,
- bg_type == TERMINAL_BACKGROUND_TRANSPARENT &&
- !window_uses_argb_visual (screen));
- }
-#endif
-
if (!prop_name || prop_name == I_(TERMINAL_PROFILE_BACKSPACE_BINDING))
vte_terminal_set_backspace_binding (vte_terminal,
terminal_profile_get_property_enum (profile, TERMINAL_PROFILE_BACKSPACE_BINDING));
@@ -1101,7 +1009,6 @@ terminal_screen_profile_notify_cb (TerminalProfile *profile,
}
/* TODO: Once Gtk2 support is dropped, mate-terminal should be converted to use GdkRGBA everywhere instead of GdkColor. */
-#if VTE_CHECK_VERSION (0, 38, 0)
static GdkRGBA *
gdk_color_to_rgba (const GdkColor *color,
double alpha,
@@ -1115,7 +1022,6 @@ gdk_color_to_rgba (const GdkColor *color,
rgba->alpha = alpha;
return rgba;
}
-#endif
static void
update_color_scheme (TerminalScreen *screen)
@@ -1152,33 +1058,23 @@ update_color_scheme (TerminalScreen *screen)
n_colors = G_N_ELEMENTS (colors);
terminal_profile_get_palette (priv->profile, colors, &n_colors);
-#if VTE_CHECK_VERSION (0, 38, 0)
- {
- GdkRGBA colors_rgba[TERMINAL_PALETTE_SIZE];
- GdkRGBA fg_rgba, bg_rgba, bold_rgba;
- double alpha = 1.0;
- int i;
-
- for (i = 0; i < n_colors; i++)
- gdk_color_to_rgba (&colors[i], 1.0, &colors_rgba[i]);
-
- if (terminal_profile_get_property_enum (profile, TERMINAL_PROFILE_BACKGROUND_TYPE) == TERMINAL_BACKGROUND_TRANSPARENT)
- alpha = terminal_profile_get_property_double (profile, TERMINAL_PROFILE_BACKGROUND_DARKNESS);
- vte_terminal_set_colors (VTE_TERMINAL (screen),
- gdk_color_to_rgba (&fg, 1.0, &fg_rgba),
- gdk_color_to_rgba (&bg, alpha, &bg_rgba),
- colors_rgba, n_colors);
- if (bold_color)
- vte_terminal_set_color_bold (VTE_TERMINAL (screen),
- gdk_color_to_rgba (bold_color, 1.0, &bold_rgba));
- }
-#else
- vte_terminal_set_colors (VTE_TERMINAL (screen), &fg, &bg,
- colors, n_colors);
+ GdkRGBA colors_rgba[TERMINAL_PALETTE_SIZE];
+ GdkRGBA fg_rgba, bg_rgba, bold_rgba;
+ double alpha = 1.0;
+ int i;
+
+ for (i = 0; i < n_colors; i++)
+ gdk_color_to_rgba (&colors[i], 1.0, &colors_rgba[i]);
+
+ if (terminal_profile_get_property_enum (profile, TERMINAL_PROFILE_BACKGROUND_TYPE) == TERMINAL_BACKGROUND_TRANSPARENT)
+ alpha = terminal_profile_get_property_double (profile, TERMINAL_PROFILE_BACKGROUND_DARKNESS);
+ vte_terminal_set_colors (VTE_TERMINAL (screen),
+ gdk_color_to_rgba (&fg, 1.0, &fg_rgba),
+ gdk_color_to_rgba (&bg, alpha, &bg_rgba),
+ colors_rgba, n_colors);
if (bold_color)
- vte_terminal_set_color_bold (VTE_TERMINAL (screen), bold_color);
- vte_terminal_set_background_tint_color (VTE_TERMINAL (screen), &bg);
-#endif
+ vte_terminal_set_color_bold (VTE_TERMINAL (screen),
+ gdk_color_to_rgba (bold_color, 1.0, &bold_rgba));
}
void
@@ -1564,11 +1460,7 @@ terminal_screen_launch_child_cb (TerminalScreen *screen)
pty_flags |= VTE_PTY_NO_UTMP | VTE_PTY_NO_WTMP;
if (!get_child_command (screen, shell, &spawn_flags, &argv, &err) ||
-#if VTE_CHECK_VERSION (0, 38, 0)
!vte_terminal_spawn_sync (
-#else
- !vte_terminal_fork_command_full (
-#endif
terminal,
pty_flags,
working_dir,
@@ -1577,9 +1469,7 @@ terminal_screen_launch_child_cb (TerminalScreen *screen)
spawn_flags,
NULL, NULL,
&pid,
-#if VTE_CHECK_VERSION (0, 38, 0)
NULL,
-#endif
&err))
{
GtkWidget *info_bar;
@@ -1693,25 +1583,10 @@ terminal_screen_button_press (GtkWidget *widget,
char *matched_string;
int matched_flavor = 0;
guint state;
-#if !VTE_CHECK_VERSION (0, 38, 0)
- int char_width, char_height, row, col;
- GtkBorder *inner_border = NULL;
-#endif
state = event->state & gtk_accelerator_get_default_mod_mask ();
-#if VTE_CHECK_VERSION (0, 38, 0)
matched_string = terminal_screen_check_match (screen, event, &matched_flavor);
-#else
- terminal_screen_get_cell_size (screen, &char_width, &char_height);
-
- gtk_widget_style_get (widget, "inner-border", &inner_border, NULL);
- row = (event->x - (inner_border ? inner_border->left : 0)) / char_width;
- col = (event->y - (inner_border ? inner_border->top : 0)) / char_height;
- gtk_border_free (inner_border);
-
- matched_string = terminal_screen_check_match (screen, row, col, &matched_flavor);
-#endif
if (matched_string != NULL &&
(event->button == 1 || event->button == 2) &&
@@ -1947,11 +1822,7 @@ terminal_screen_icon_title_changed (VteTerminal *vte_terminal,
}
static void
-#if VTE_CHECK_VERSION (0, 38, 0)
terminal_screen_child_exited (VteTerminal *terminal, int status)
-#else
-terminal_screen_child_exited (VteTerminal *terminal)
-#endif
{
TerminalScreen *screen = TERMINAL_SCREEN (terminal);
TerminalScreenPrivate *priv = screen->priv;
@@ -1979,11 +1850,6 @@ terminal_screen_child_exited (VteTerminal *terminal)
case TERMINAL_EXIT_HOLD:
{
GtkWidget *info_bar;
-#if !VTE_CHECK_VERSION (0, 38, 0)
- int status;
-
- status = vte_terminal_get_child_exit_status (terminal);
-#endif
info_bar = terminal_info_bar_new (GTK_MESSAGE_INFO,
_("_Relaunch"), RESPONSE_RELAUNCH,
@@ -2350,12 +2216,7 @@ terminal_screen_skey_match_remove (TerminalScreen *screen)
static char*
terminal_screen_check_match (TerminalScreen *screen,
-#if VTE_CHECK_VERSION (0, 38, 0)
GdkEvent *event,
-#else
- int column,
- int row,
-#endif
int *flavor)
{
TerminalScreenPrivate *priv = screen->priv;
@@ -2363,11 +2224,7 @@ terminal_screen_check_match (TerminalScreen *screen,
int tag;
char *match;
-#if VTE_CHECK_VERSION (0, 38, 0)
match = vte_terminal_match_check_event (VTE_TERMINAL (screen), event, &tag);
-#else
- match = vte_terminal_match_check (VTE_TERMINAL (screen), column, row, &tag);
-#endif
for (tags = priv->match_tags; tags != NULL; tags = tags->next)
{
TagData *tag_data = (TagData*) tags->data;