[Xfce4-commits] [apps/xfce4-terminal] 01/01: Some porting to gtk3/vte3
noreply at xfce.org
noreply at xfce.org
Wed Jun 1 22:21:27 CEST 2016
This is an automated email from the git hooks/post-receive script.
ochosi pushed a commit to branch master
in repository apps/xfce4-terminal.
commit a59cf519490e2358e956c787a4acc10a46490076
Author: Igor <f2404 at yandex.ru>
Date: Wed Jun 1 20:18:00 2016 +0300
Some porting to gtk3/vte3
Signed-off-by: Simon Steinbeiss <simon.steinbeiss at elfenbeinturm.at>
---
terminal/terminal-app.c | 2 -
terminal/terminal-preferences-dialog.c | 34 +++++++-------
terminal/terminal-preferences.c | 24 +++++-----
terminal/terminal-screen.c | 82 +++++++++++++++-------------------
terminal/terminal-search-dialog.c | 4 +-
terminal/terminal-widget.c | 40 ++++++++---------
terminal/terminal-window-dropdown.c | 6 +--
terminal/terminal-window.c | 59 ++++++++++++------------
8 files changed, 118 insertions(+), 133 deletions(-)
diff --git a/terminal/terminal-app.c b/terminal/terminal-app.c
index 6a551ae..679946a 100644
--- a/terminal/terminal-app.c
+++ b/terminal/terminal-app.c
@@ -35,8 +35,6 @@
#include <string.h>
#endif
-#include <gdk/gdkkeysyms.h>
-
#include <terminal/terminal-app.h>
#include <terminal/terminal-config.h>
#include <terminal/terminal-preferences.h>
diff --git a/terminal/terminal-preferences-dialog.c b/terminal/terminal-preferences-dialog.c
index 9be0826..b4d3d26 100644
--- a/terminal/terminal-preferences-dialog.c
+++ b/terminal/terminal-preferences-dialog.c
@@ -196,7 +196,7 @@ error:
/* bind color properties */
for (i = 0; i < G_N_ELEMENTS (props_color); i++)
- BIND_PROPERTIES (props_color[i], "color");
+ BIND_PROPERTIES (props_color[i], "rgba");
/* bind color properties */
for (i = 0; i < G_N_ELEMENTS (props_value); i++)
@@ -498,12 +498,12 @@ static void
terminal_preferences_dialog_palette_changed (GtkWidget *button,
TerminalPreferencesDialog *dialog)
{
- gchar name[16];
- guint i;
- GObject *obj;
- GdkColor color;
- gchar *color_str;
- GString *array;
+ gchar name[16];
+ guint i;
+ GObject *obj;
+ GdkRGBA color;
+ gchar *color_str;
+ GString *array;
array = g_string_sized_new (225);
@@ -513,10 +513,10 @@ terminal_preferences_dialog_palette_changed (GtkWidget *button,
g_snprintf (name, sizeof (name), "color-palette%d", i);
obj = gtk_builder_get_object (GTK_BUILDER (dialog), name);
terminal_return_if_fail (GTK_IS_COLOR_BUTTON (obj));
- gtk_color_button_get_color (GTK_COLOR_BUTTON (obj), &color);
+ gtk_color_chooser_get_rgba (GTK_COLOR_CHOOSER (obj), &color);
/* append to string */
- color_str = gdk_color_to_string (&color);
+ color_str = gdk_rgba_to_string (&color);
g_string_append (array, color_str);
g_free (color_str);
@@ -536,12 +536,12 @@ terminal_preferences_dialog_palette_changed (GtkWidget *button,
static void
terminal_preferences_dialog_palette_notify (TerminalPreferencesDialog *dialog)
{
- gchar *color_str;
- gchar **colors;
- guint i;
- gchar name[16];
- GObject *obj;
- GdkColor color;
+ gchar *color_str;
+ gchar **colors;
+ guint i;
+ gchar name[16];
+ GObject *obj;
+ GdkRGBA color;
g_object_get (dialog->preferences, "color-palette", &color_str, NULL);
if (G_LIKELY (color_str != NULL))
@@ -558,8 +558,8 @@ terminal_preferences_dialog_palette_notify (TerminalPreferencesDialog *dialog)
obj = gtk_builder_get_object (GTK_BUILDER (dialog), name);
terminal_return_if_fail (GTK_IS_COLOR_BUTTON (obj));
- if (gdk_color_parse (colors[i], &color))
- gtk_color_button_set_color (GTK_COLOR_BUTTON (obj), &color);
+ if (gdk_rgba_parse (&color, colors[i]))
+ gtk_color_chooser_set_rgba (GTK_COLOR_CHOOSER (obj), &color);
}
g_strfreev (colors);
diff --git a/terminal/terminal-preferences.c b/terminal/terminal-preferences.c
index 3cee3fc..d47958d 100644
--- a/terminal/terminal-preferences.c
+++ b/terminal/terminal-preferences.c
@@ -152,14 +152,14 @@ static void
transform_color_to_string (const GValue *src,
GValue *dst)
{
- GdkColor *color;
- gchar buffer[32];
+ GdkRGBA *color;
+ gchar buffer[8];
color = g_value_get_boxed (src);
- g_snprintf (buffer, 32, "#%04x%04x%04x",
- (guint) color->red,
- (guint) color->green,
- (guint) color->blue);
+ g_snprintf (buffer, sizeof (buffer), "#%02x%02x%02x",
+ (guint) (color->red * 255),
+ (guint) (color->green * 255),
+ (guint) (color->blue * 255));
g_value_set_string (dst, buffer);
}
@@ -178,9 +178,9 @@ static void
transform_string_to_color (const GValue *src,
GValue *dst)
{
- GdkColor color;
+ GdkRGBA color;
- gdk_color_parse (g_value_get_string (src), &color);
+ gdk_rgba_parse (&color, g_value_get_string (src));
g_value_set_boxed (dst, &color);
}
@@ -250,12 +250,12 @@ terminal_preferences_class_init (TerminalPreferencesClass *klass)
gobject_class->set_property = terminal_preferences_set_property;
/* register transform functions */
- if (!g_value_type_transformable (GDK_TYPE_COLOR, G_TYPE_STRING))
- g_value_register_transform_func (GDK_TYPE_COLOR, G_TYPE_STRING, transform_color_to_string);
+ if (!g_value_type_transformable (GDK_TYPE_RGBA, G_TYPE_STRING))
+ g_value_register_transform_func (GDK_TYPE_RGBA, G_TYPE_STRING, transform_color_to_string);
if (!g_value_type_transformable (G_TYPE_STRING, G_TYPE_BOOLEAN))
g_value_register_transform_func (G_TYPE_STRING, G_TYPE_BOOLEAN, transform_string_to_boolean);
- if (!g_value_type_transformable (G_TYPE_STRING, GDK_TYPE_COLOR))
- g_value_register_transform_func (G_TYPE_STRING, GDK_TYPE_COLOR, transform_string_to_color);
+ if (!g_value_type_transformable (G_TYPE_STRING, GDK_TYPE_RGBA))
+ g_value_register_transform_func (G_TYPE_STRING, GDK_TYPE_RGBA, transform_string_to_color);
if (!g_value_type_transformable (G_TYPE_STRING, G_TYPE_DOUBLE))
g_value_register_transform_func (G_TYPE_STRING, G_TYPE_DOUBLE, transform_string_to_double);
if (!g_value_type_transformable (G_TYPE_STRING, G_TYPE_UINT))
diff --git a/terminal/terminal-screen.c b/terminal/terminal-screen.c
index 26907e4..6b61ad0 100644
--- a/terminal/terminal-screen.c
+++ b/terminal/terminal-screen.c
@@ -134,7 +134,7 @@ static void terminal_screen_update_scrolling_on_keystroke (TerminalScreen
static void terminal_screen_update_title (TerminalScreen *screen);
static void terminal_screen_update_word_chars (TerminalScreen *screen);
static void terminal_screen_vte_child_exited (VteTerminal *terminal,
- gint arg1,
+ gint arg1,
TerminalScreen *screen);
static void terminal_screen_vte_eof (VteTerminal *terminal,
TerminalScreen *screen);
@@ -195,7 +195,7 @@ static guint screen_last_session_id = 0;
-G_DEFINE_TYPE (TerminalScreen, terminal_screen, GTK_TYPE_HBOX)
+G_DEFINE_TYPE (TerminalScreen, terminal_screen, GTK_TYPE_BOX)
@@ -282,7 +282,8 @@ terminal_screen_init (TerminalScreen *screen)
G_CALLBACK (terminal_screen_vte_resize_window), screen);
gtk_box_pack_start (GTK_BOX (screen), screen->terminal, TRUE, TRUE, 0);
- screen->scrollbar = gtk_vscrollbar_new (gtk_scrollable_get_vadjustment(GTK_SCROLLABLE (screen->terminal)));
+ // TODO: use NULL for adjustment
+ screen->scrollbar = gtk_scrollbar_new (GTK_ORIENTATION_VERTICAL, NULL);
gtk_box_pack_start (GTK_BOX (screen), screen->scrollbar, FALSE, FALSE, 0);
g_signal_connect_after (G_OBJECT (screen->scrollbar), "button-press-event", G_CALLBACK (gtk_true), NULL);
gtk_widget_show (screen->scrollbar);
@@ -388,7 +389,7 @@ terminal_screen_get_property (GObject *object,
}
else if (G_LIKELY (screen->terminal != NULL))
{
- title = vte_terminal_get_window_title(VTE_TERMINAL (screen->terminal));
+ title = vte_terminal_get_window_title (VTE_TERMINAL (screen->terminal));
}
/* TRANSLATORS: title for the tab/window used when all other
@@ -440,7 +441,7 @@ terminal_screen_realize (GtkWidget *widget)
(*GTK_WIDGET_CLASS (terminal_screen_parent_class)->realize) (widget);
/* make sure the TerminalWidget is realized as well */
- if (! gtk_widget_get_realized(TERMINAL_SCREEN (widget)->terminal))
+ if (!gtk_widget_get_realized (TERMINAL_SCREEN (widget)->terminal))
gtk_widget_realize (TERMINAL_SCREEN (widget)->terminal);
/* connect to the "composited-changed" signal */
@@ -677,7 +678,7 @@ terminal_screen_parse_title (TerminalScreen *screen,
case 'w':
/* window title from vte */
- vte_title = vte_terminal_get_window_title(VTE_TERMINAL (screen->terminal));
+ vte_title = vte_terminal_get_window_title (VTE_TERMINAL (screen->terminal));
if (G_UNLIKELY (vte_title == NULL))
vte_title = _("Untitled");
g_string_append (string, vte_title);
@@ -736,10 +737,10 @@ terminal_screen_get_child_environment (TerminalScreen *screen)
/* determine the toplevel widget */
toplevel = gtk_widget_get_toplevel (GTK_WIDGET (screen));
- if (toplevel != NULL && gtk_widget_get_realized(toplevel))
+ if (toplevel != NULL && gtk_widget_get_realized (toplevel))
{
#ifdef GDK_WINDOWING_X11
- //result[n++] = g_strdup_printf ("WINDOWID=%ld", (glong) GDK_DRAWABLE_XID (gtk_widget_get_window(toplevel)));
+ result[n++] = g_strdup_printf ("WINDOWID=%ld", (glong) gdk_x11_window_get_xid (gtk_widget_get_window (toplevel)));
#endif
/* determine the DISPLAY value for the command */
@@ -995,8 +996,8 @@ terminal_screen_update_font (TerminalScreen *screen)
{
font_desc = pango_font_description_from_string (font_name);
vte_terminal_set_allow_bold (VTE_TERMINAL (screen->terminal), font_allow_bold);
- vte_terminal_set_font(VTE_TERMINAL (screen->terminal), font_desc);
- pango_font_description_free(font_desc);
+ vte_terminal_set_font (VTE_TERMINAL (screen->terminal), font_desc);
+ pango_font_description_free (font_desc);
g_free (font_name);
}
@@ -1262,7 +1263,7 @@ terminal_screen_vte_resize_window (VteTerminal *terminal,
/* don't do anything if the window is already fullscreen/maximized */
toplevel = gtk_widget_get_toplevel (GTK_WIDGET (screen));
if (!gtk_widget_get_realized (toplevel)
- || (gdk_window_get_state (gtk_widget_get_window(toplevel))
+ || (gdk_window_get_state (gtk_widget_get_window (toplevel))
& (GDK_WINDOW_STATE_MAXIMIZED | GDK_WINDOW_STATE_FULLSCREEN)) != 0)
return;
@@ -1272,8 +1273,8 @@ terminal_screen_vte_resize_window (VteTerminal *terminal,
grid_height = (height - ypad) / char_height;
/* leave if there is nothing to resize */
- if (vte_terminal_get_column_count(terminal) == grid_width
- && vte_terminal_get_column_count(terminal) == grid_height)
+ if (vte_terminal_get_column_count (terminal) == grid_width
+ && vte_terminal_get_row_count (terminal) == grid_height)
return;
/* set the terminal size and resize the window if it is active */
@@ -1292,8 +1293,8 @@ terminal_screen_reset_activity_timeout (gpointer user_data)
{
TerminalScreen *screen = TERMINAL_SCREEN (user_data);
GtkStyle *style;
- GdkColor color;
- GdkColor active_color;
+ GdkRGBA color;
+ GdkRGBA active_color;
if (G_UNLIKELY (screen->tab_label == NULL))
return FALSE;
@@ -1311,7 +1312,7 @@ terminal_screen_reset_activity_timeout (gpointer user_data)
color.green = (active_color.green + style->fg[GTK_STATE_ACTIVE].green) / 2;
color.blue = (active_color.blue + style->fg[GTK_STATE_ACTIVE].blue) / 2;
- gtk_widget_modify_fg (screen->tab_label, GTK_STATE_ACTIVE, &color);
+ gtk_widget_override_color (screen->tab_label, GTK_STATE_FLAG_ACTIVE, &color);
}
GDK_THREADS_LEAVE ();
@@ -1333,7 +1334,7 @@ static void
terminal_screen_vte_window_contents_changed (TerminalScreen *screen)
{
guint timeout;
- GdkColor color;
+ GdkRGBA color;
gboolean has_color;
terminal_return_if_fail (TERMINAL_IS_SCREEN (screen));
@@ -1342,7 +1343,7 @@ terminal_screen_vte_window_contents_changed (TerminalScreen *screen)
/* leave if we should not start an update */
if (screen->tab_label == NULL
- || gtk_widget_get_state (screen->tab_label) != GTK_STATE_ACTIVE
+ || gtk_widget_get_state_flags (screen->tab_label) != GTK_STATE_FLAG_ACTIVE
|| time (NULL) - screen->activity_resize_time <= 1)
return;
@@ -1353,7 +1354,8 @@ terminal_screen_vte_window_contents_changed (TerminalScreen *screen)
/* set label color */
has_color = terminal_preferences_get_color (screen->preferences, "tab-activity-color", &color);
- gtk_widget_modify_fg (screen->tab_label, GTK_STATE_ACTIVE, has_color ? &color : NULL);
+ gtk_widget_override_color (screen->tab_label, GTK_STATE_FLAG_ACTIVE, has_color ? &color : NULL);
+
/* stop running reset timeout */
if (screen->activity_timeout_id != 0)
@@ -1385,8 +1387,6 @@ terminal_screen_timer_background (gpointer user_data)
TerminalBackground background_mode;
GdkPixbuf *image;
gdouble background_darkness;
- gdouble saturation = 1.0;
- guint16 opacity = 0xffff;
terminal_return_val_if_fail (TERMINAL_IS_SCREEN (screen), FALSE);
terminal_return_val_if_fail (VTE_IS_TERMINAL (screen->terminal), FALSE);
@@ -1431,9 +1431,6 @@ terminal_screen_timer_background (gpointer user_data)
|| background_mode == TERMINAL_BACKGROUND_TRANSPARENT))
{
g_object_get (G_OBJECT (screen->preferences), "background-darkness", &background_darkness, NULL);
-
- saturation = 1.0 - background_darkness;
- opacity = 0xffff * background_darkness;
}
//vte_terminal_set_background_saturation (VTE_TERMINAL (screen->terminal), saturation);
@@ -1663,7 +1660,7 @@ terminal_screen_get_geometry (TerminalScreen *screen,
gint *xpad,
gint *ypad)
{
- GtkBorder *border = NULL;
+ GtkBorder border;
terminal_return_if_fail (TERMINAL_IS_SCREEN (screen));
terminal_return_if_fail (VTE_IS_TERMINAL (screen->terminal));
@@ -1675,22 +1672,13 @@ terminal_screen_get_geometry (TerminalScreen *screen,
if (xpad != NULL || ypad != NULL)
{
- gtk_widget_style_get (GTK_WIDGET (screen->terminal), "inner-border", &border, NULL);
- if (G_LIKELY (border != NULL))
- {
- if (xpad != NULL)
- *xpad = border->left + border->right;
- if (ypad != NULL)
- *ypad = border->top + border->bottom;
- gtk_border_free (border);
- }
- else
- {
- if (xpad != NULL)
- *xpad = 0;
- if (ypad != NULL)
- *ypad = 0;
- }
+ gtk_style_context_get_padding (gtk_widget_get_style_context (screen->terminal),
+ gtk_widget_get_state_flags (screen->terminal),
+ &border);
+ if (xpad != NULL)
+ *xpad = border.left + border.right;
+ if (ypad != NULL)
+ *ypad = border.top + border.bottom;
}
}
@@ -1714,8 +1702,8 @@ terminal_screen_set_window_geometry_hints (TerminalScreen *screen,
terminal_return_if_fail (TERMINAL_IS_SCREEN (screen));
terminal_return_if_fail (VTE_IS_TERMINAL (screen->terminal));
- terminal_return_if_fail (GTK_WIDGET_REALIZED (screen));
- terminal_return_if_fail (GTK_WIDGET_REALIZED (window));
+ terminal_return_if_fail (gtk_widget_get_realized (screen));
+ terminal_return_if_fail (gtk_widget_get_realized (window));
terminal_screen_get_geometry (screen,
&char_width, &char_height,
@@ -1787,7 +1775,7 @@ terminal_screen_force_resize_window (TerminalScreen *screen,
height = 0;
height += ypad + char_height * rows;
- if (gtk_widget_get_mapped (window))
+ if (gtk_widget_get_mapped (GTK_WIDGET (window)))
gtk_window_resize (window, width, height);
else
gtk_window_set_default_size (window, width, height);
@@ -1818,7 +1806,7 @@ terminal_screen_get_title (TerminalScreen *screen)
if (G_UNLIKELY (screen->custom_title != NULL))
return terminal_screen_parse_title (screen, screen->custom_title);
- vte_title = vte_terminal_get_window_title(VTE_TERMINAL (screen->terminal));
+ vte_title = vte_terminal_get_window_title (VTE_TERMINAL (screen->terminal));
g_object_get (G_OBJECT (screen->preferences),
"title-mode", &mode,
"title-initial", &tmp,
@@ -2082,7 +2070,7 @@ terminal_screen_im_append_menuitems (TerminalScreen *screen,
terminal_return_if_fail (TERMINAL_IS_SCREEN (screen));
terminal_return_if_fail (GTK_IS_MENU_SHELL (menushell));
- // FIXME: functionalit seems to have been removed
+ // FIXME: functionality seems to have been removed
//vte_terminal_im_append_menuitems (VTE_TERMINAL (screen->terminal), menushell);
}
@@ -2152,7 +2140,7 @@ terminal_screen_get_tab_label (TerminalScreen *screen)
terminal_return_val_if_fail (TERMINAL_IS_SCREEN (screen), NULL);
/* create the box */
- hbox = gtk_hbox_new (FALSE, 0);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 2);
gtk_widget_show (hbox);
diff --git a/terminal/terminal-search-dialog.c b/terminal/terminal-search-dialog.c
index a7cc9c4..2b606e0 100644
--- a/terminal/terminal-search-dialog.c
+++ b/terminal/terminal-search-dialog.c
@@ -101,12 +101,12 @@ terminal_search_dialog_init (TerminalSearchDialog *dialog)
gtk_dialog_add_action_widget (GTK_DIALOG (dialog), dialog->button_next, TERMINAL_RESPONSE_SEARCH_NEXT);
gtk_widget_show (dialog->button_next);
- vbox = gtk_vbox_new (FALSE, 6);
+ vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 6);
gtk_widget_show (vbox);
- hbox = gtk_hbox_new (FALSE, 12);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0);
gtk_widget_show (hbox);
diff --git a/terminal/terminal-widget.c b/terminal/terminal-widget.c
index 15651e7..82bf462 100644
--- a/terminal/terminal-widget.c
+++ b/terminal/terminal-widget.c
@@ -28,7 +28,6 @@
#include <string.h>
#endif
-#include <gdk/gdkkeysyms.h>
#include <libxfce4ui/libxfce4ui.h>
#include <terminal/terminal-util.h>
@@ -404,7 +403,7 @@ terminal_widget_button_press_event (GtkWidget *widget,
if (event->button == 2 && event->type == GDK_BUTTON_PRESS)
{
/* middle-clicking on an URI fires the responsible application */
- match = vte_terminal_match_check_event (VTE_TERMINAL (widget), event, &tag);
+ match = vte_terminal_match_check_event (VTE_TERMINAL (widget), (GdkEvent *) event, &tag);
if (G_UNLIKELY (match != NULL))
{
terminal_widget_open_uri (TERMINAL_WIDGET (widget), match, tag);
@@ -431,7 +430,7 @@ terminal_widget_button_press_event (GtkWidget *widget,
{
terminal_widget_context_menu (TERMINAL_WIDGET (widget),
event->button, event->time,
- event);
+ (GdkEvent *) event);
}
}
@@ -450,7 +449,7 @@ terminal_widget_drag_data_received (GtkWidget *widget,
guint32 drag_time)
{
const guint16 *ucs;
- GdkColor color;
+ GdkRGBA color;
GString *str;
GValue value = { 0, };
gchar **uris;
@@ -476,10 +475,10 @@ terminal_widget_drag_data_received (GtkWidget *widget,
break;
case TARGET_TEXT_PLAIN:
- if (gtk_selection_data_get_format(selection_data) != 8 || gtk_selection_data_get_length (selection_data) == 0)
+ if (gtk_selection_data_get_format (selection_data) != 8 || gtk_selection_data_get_length (selection_data) == 0)
{
g_printerr (_("Unable to drop selection of type text/plain to terminal: Wrong format (%d) or length (%d)\n"),
- gtk_selection_data_get_format(selection_data), gtk_selection_data_get_length (selection_data));
+ gtk_selection_data_get_format (selection_data), gtk_selection_data_get_length (selection_data));
}
else
{
@@ -490,12 +489,12 @@ terminal_widget_drag_data_received (GtkWidget *widget,
break;
case TARGET_MOZ_URL:
- if (gtk_selection_data_get_format(selection_data) != 8
+ if (gtk_selection_data_get_format (selection_data) != 8
|| gtk_selection_data_get_length (selection_data) == 0
|| (gtk_selection_data_get_length (selection_data) % 2) != 0)
{
g_printerr (_("Unable to drop Mozilla URL on terminal: Wrong format (%d) or length (%d)\n"),
- gtk_selection_data_get_format(selection_data), gtk_selection_data_get_length (selection_data));
+ gtk_selection_data_get_format (selection_data), gtk_selection_data_get_length (selection_data));
}
else
{
@@ -518,10 +517,10 @@ terminal_widget_drag_data_received (GtkWidget *widget,
break;
case TARGET_URI_LIST:
- if (gtk_selection_data_get_format(selection_data) != 8 || gtk_selection_data_get_length (selection_data) == 0)
+ if (gtk_selection_data_get_format (selection_data) != 8 || gtk_selection_data_get_length (selection_data) == 0)
{
g_printerr (_("Unable to drop URI list on terminal: Wrong format (%d) or length (%d)\n"),
- gtk_selection_data_get_format(selection_data), gtk_selection_data_get_length (selection_data));
+ gtk_selection_data_get_format (selection_data), gtk_selection_data_get_length (selection_data));
}
else
{
@@ -563,20 +562,21 @@ terminal_widget_drag_data_received (GtkWidget *widget,
break;
case TARGET_APPLICATION_X_COLOR:
- if (gtk_selection_data_get_format(selection_data) != 16 || gtk_selection_data_get_length (selection_data) != 8)
+ if (gtk_selection_data_get_format (selection_data) != 16 || gtk_selection_data_get_length (selection_data) != 8)
{
g_printerr (_("Received invalid color data: Wrong format (%d) or length (%d)\n"),
- gtk_selection_data_get_format(selection_data), gtk_selection_data_get_length (selection_data));
+ gtk_selection_data_get_format (selection_data), gtk_selection_data_get_length (selection_data));
}
else
{
/* get the color from the selection data (ignoring the alpha setting) */
- color.red = ((guint16 *) gtk_selection_data_get_data (selection_data))[0];
- color.green = ((guint16 *) gtk_selection_data_get_data (selection_data))[1];
- color.blue = ((guint16 *) gtk_selection_data_get_data (selection_data))[2];
+ const guchar *data = gtk_selection_data_get_data (selection_data);
+ color.red = ((gdouble *) data)[0];
+ color.green = ((gdouble *) data)[1];
+ color.blue = ((gdouble *) data)[2];
/* prepare the value */
- g_value_init (&value, GDK_TYPE_COLOR);
+ g_value_init (&value, GDK_TYPE_RGBA);
g_value_set_boxed (&value, &color);
/* change the background to the specified color */
@@ -612,7 +612,7 @@ static gboolean
terminal_widget_key_press_event (GtkWidget *widget,
GdkEventKey *event)
{
- GtkAdjustment *adjustment = gtk_scrollable_get_vadjustment(GTK_SCROLLABLE (widget));
+ GtkAdjustment *adjustment = gtk_scrollable_get_vadjustment (GTK_SCROLLABLE (widget));
gboolean scrolling_single_line;
gboolean shortcuts_no_menukey;
gdouble value;
@@ -627,7 +627,7 @@ terminal_widget_key_press_event (GtkWidget *widget,
if (event->keyval == GDK_KEY_Menu ||
(!shortcuts_no_menukey && (event->state & GDK_SHIFT_MASK) != 0 && event->keyval == GDK_KEY_F10))
{
- terminal_widget_context_menu (TERMINAL_WIDGET (widget), 0, event->time, event);
+ terminal_widget_context_menu (TERMINAL_WIDGET (widget), 0, event->time, (GdkEvent *) event);
return TRUE;
}
else if (G_LIKELY (scrolling_single_line))
@@ -635,13 +635,13 @@ terminal_widget_key_press_event (GtkWidget *widget,
/* scroll up one line with "<Shift>Up" */
if ((event->state & GDK_SHIFT_MASK) != 0 && (event->keyval == GDK_KEY_Up || event->keyval == GDK_KEY_KP_Up))
{
- gtk_adjustment_set_value (adjustment, gtk_adjustment_get_value(adjustment) - 1);
+ gtk_adjustment_set_value (adjustment, gtk_adjustment_get_value (adjustment) - 1);
return TRUE;
}
/* scroll down one line with "<Shift>Down" */
else if ((event->state & GDK_SHIFT_MASK) != 0 && (event->keyval == GDK_KEY_Down || event->keyval == GDK_KEY_KP_Down))
{
- value = MIN (gtk_adjustment_get_value(adjustment) + 1, gtk_adjustment_get_upper(adjustment) - gtk_adjustment_get_page_size(adjustment));
+ value = MIN (gtk_adjustment_get_value (adjustment) + 1, gtk_adjustment_get_upper (adjustment) - gtk_adjustment_get_page_size (adjustment));
gtk_adjustment_set_value (adjustment, value);
return TRUE;
}
diff --git a/terminal/terminal-window-dropdown.c b/terminal/terminal-window-dropdown.c
index 0b763b5..8c62828 100644
--- a/terminal/terminal-window-dropdown.c
+++ b/terminal/terminal-window-dropdown.c
@@ -265,7 +265,7 @@ terminal_window_dropdown_init (TerminalWindowDropdown *dropdown)
gtk_action_set_visible (action, FALSE);
/* notebook buttons */
- hbox = gtk_hbox_new (TRUE, 2);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 2);
gtk_notebook_set_action_widget (GTK_NOTEBOOK (window->notebook), hbox, GTK_PACK_END);
gtk_widget_show (hbox);
@@ -336,13 +336,13 @@ terminal_window_dropdown_set_property (GObject *object,
break;
case PROP_DROPDOWN_OPACITY:
- screen = gtk_window_get_screen (GTK_WINDOW (dropdown));
+ screen = gtk_widget_get_screen (GTK_WIDGET (dropdown));
if (gdk_screen_is_composited (screen))
opacity = g_value_get_uint (value) / 100.0;
else
opacity = 1.00;
- gtk_window_set_opacity (GTK_WINDOW (dropdown), opacity);
+ gtk_widget_set_opacity (GTK_WIDGET (dropdown), opacity);
return;
case PROP_DROPDOWN_STATUS_ICON:
diff --git a/terminal/terminal-window.c b/terminal/terminal-window.c
index 113d809..ff42d7a 100644
--- a/terminal/terminal-window.c
+++ b/terminal/terminal-window.c
@@ -34,7 +34,6 @@
#include <libxfce4ui/libxfce4ui.h>
-#include <gdk/gdkkeysyms.h>
#if defined(GDK_WINDOWING_X11)
#include <gdk/gdkx.h>
#endif
@@ -290,7 +289,7 @@ terminal_window_init (TerminalWindow *window)
GtkWidget *vbox;
gboolean always_show_tabs;
GdkScreen *screen;
- GdkVisual *visual;
+ GdkVisual *visual;
window->preferences = terminal_preferences_get ();
@@ -321,7 +320,7 @@ terminal_window_init (TerminalWindow *window)
g_signal_connect_after (G_OBJECT (accel_group), "accel-activate",
G_CALLBACK (terminal_window_accel_activate), window);
- window->vbox = vbox = gtk_vbox_new (FALSE, 0);
+ window->vbox = vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
gtk_widget_show (vbox);
@@ -497,11 +496,12 @@ terminal_window_confirm_close (TerminalWindow *window)
dialog = gtk_dialog_new_with_buttons (_("Warning"), GTK_WINDOW (window),
GTK_DIALOG_DESTROY_WITH_PARENT
- | 0
| GTK_DIALOG_MODAL,
+ GTK_STOCK_CANCEL,
+ GTK_RESPONSE_CANCEL,
NULL);
- gtk_dialog_add_button (GTK_DIALOG (dialog), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
+ //gtk_dialog_add_button (GTK_DIALOG (dialog), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
button = xfce_gtk_button_new_mixed (GTK_STOCK_CLOSE, _("Close T_ab"));
gtk_dialog_add_action_widget (GTK_DIALOG (dialog), button, GTK_RESPONSE_CLOSE);
@@ -512,8 +512,9 @@ terminal_window_confirm_close (TerminalWindow *window)
gtk_widget_grab_focus (button);
gtk_widget_show (button);
- hbox = gtk_hbox_new (FALSE, 6);
+ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 8);
+ gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), hbox, TRUE, TRUE, 0);
gtk_widget_show (hbox);
image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_DIALOG);
@@ -521,7 +522,7 @@ terminal_window_confirm_close (TerminalWindow *window)
gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, FALSE, 0);
gtk_widget_show (image);
- vbox = gtk_vbox_new (FALSE, 6);
+ vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 0);
gtk_widget_show (vbox);
@@ -934,27 +935,23 @@ terminal_window_notebook_page_removed (GtkNotebook *notebook,
static gboolean
terminal_window_notebook_event_in_allocation (gint event_x,
- gint event_y,
- GtkWidget *widget)
-{
- cairo_rectangle_int_t *allocation;
- gtk_widget_get_allocation (widget, allocation);
-
- if(allocation == NULL)
- return FALSE;
-
-
- if (event_x >= allocation->x \
- && event_x <= allocation->x + allocation->width \
- && event_y >= allocation->y \
- && event_y <= allocation->y + allocation->height)
- {
- return TRUE;
- }
- else
- return FALSE;
+ gint event_y,
+ GtkWidget *widget)
+{
+ cairo_rectangle_int_t allocation;
+ gtk_widget_get_allocation (widget, &allocation);
+
+ if (event_x >= allocation.x \
+ && event_x <= allocation.x + allocation.width \
+ && event_y >= allocation.y \
+ && event_y <= allocation.y + allocation.height)
+ {
+ return TRUE;
+ }
+ return FALSE;
}
+
static gboolean
terminal_window_notebook_button_press_event (GtkNotebook *notebook,
GdkEventButton *event,
@@ -1057,7 +1054,7 @@ terminal_window_notebook_drag_data_received (GtkWidget *widget,
GtkWidget *child, *label;
gint i, n_pages;
gboolean succeed = FALSE;
- cairo_rectangle_int_t *allocation;
+ cairo_rectangle_int_t allocation;
terminal_return_if_fail (TERMINAL_IS_WINDOW (window));
terminal_return_if_fail (TERMINAL_IS_SCREEN (widget));
@@ -1082,9 +1079,10 @@ terminal_window_notebook_drag_data_received (GtkWidget *widget,
/* get the child label */
child = gtk_notebook_get_nth_page (GTK_NOTEBOOK (window->notebook), i);
label = gtk_notebook_get_tab_label (GTK_NOTEBOOK (window->notebook), child);
- gtk_widget_get_allocation (label, allocation);
+ gtk_widget_get_allocation (label, &allocation);
+
/* break if we have a matching drop position */
- if (x < (allocation->x + allocation->width / 2))
+ if (x < (allocation.x + allocation.width / 2))
break;
}
@@ -1603,8 +1601,9 @@ terminal_window_action_set_title (GtkAction *action,
NULL);
gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_CLOSE);
- box = gtk_hbox_new (FALSE, 12);
+ box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
gtk_container_set_border_width (GTK_CONTAINER (box), 6);
+ gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))), box, TRUE, TRUE, 0);
gtk_widget_show (box);
label = gtk_label_new_with_mnemonic (_("_Title:"));
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Xfce4-commits
mailing list