From 6abed195cc8b8e1f715d42796e261a402e5555fb Mon Sep 17 00:00:00 2001 From: burakerturk Date: Fri, 17 Jul 2015 02:03:55 +0300 Subject: [PATCH] vte add repo --- x11/terminal/vte/actions.py | 31 ++ x11/terminal/vte/files/vte-0.28.0-link.patch | 22 ++ .../files/vte-0.28.2-limit-arguments.patch | 40 ++ x11/terminal/vte/files/vte-0.28.2-scale.patch | 348 ++++++++++++++++++ .../vte/files/vte-alt-meta-confusion.patch | 73 ++++ .../vte/files/vte-python-bugfixes.patch | 86 +++++ x11/terminal/vte/pspec.xml | 129 +++++++ x11/terminal/vte/translations.xml | 17 + 8 files changed, 746 insertions(+) create mode 100644 x11/terminal/vte/actions.py create mode 100644 x11/terminal/vte/files/vte-0.28.0-link.patch create mode 100644 x11/terminal/vte/files/vte-0.28.2-limit-arguments.patch create mode 100644 x11/terminal/vte/files/vte-0.28.2-scale.patch create mode 100644 x11/terminal/vte/files/vte-alt-meta-confusion.patch create mode 100644 x11/terminal/vte/files/vte-python-bugfixes.patch create mode 100644 x11/terminal/vte/pspec.xml create mode 100644 x11/terminal/vte/translations.xml diff --git a/x11/terminal/vte/actions.py b/x11/terminal/vte/actions.py new file mode 100644 index 0000000000..959045da4b --- /dev/null +++ b/x11/terminal/vte/actions.py @@ -0,0 +1,31 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/copyleft/gpl.txt. + +from pisi.actionsapi import shelltools +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import get + + +def setup(): + autotools.configure("--disable-static \ + --enable-python \ + --enable-introspection \ + --libexecdir=/usr/lib/vte \ + --localstatedir=/var \ + --without-glX \ + --disable-gtk-doc \ + --with-gtk=2.0") + + pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ") + +def build(): + autotools.make() + +def install(): + autotools.rawInstall("DESTDIR=%s" % get.installDIR()) + + pisitools.dodoc("AUTHORS", "ChangeLog", "HACKING", "MAINTAINERS", "COPYING", "NEWS", "README") diff --git a/x11/terminal/vte/files/vte-0.28.0-link.patch b/x11/terminal/vte/files/vte-0.28.0-link.patch new file mode 100644 index 0000000000..79b20ddb91 --- /dev/null +++ b/x11/terminal/vte/files/vte-0.28.0-link.patch @@ -0,0 +1,22 @@ +--- vte-0.28.0/python/Makefile.am.link 2011-04-10 18:37:45.000000000 +0200 ++++ vte-0.28.0/python/Makefile.am 2011-04-10 18:37:56.000000000 +0200 +@@ -22,7 +22,7 @@ + # we do this to suport building with -Wl,-z,defs which errors on + # vtemodule.so as we cannot include $(PYTHON_LIBS) due to bug 410986. + vtemodule_la_LDFLAGS = -module -avoid-version -export-symbols-regex initvte $(PYTHON_LDFLAGS) $(AM_LDFLAGS) +-vtemodule_la_LIBADD = $(top_builddir)/src/libvte.la $(LIBS) $(PYGTK_LIBS) $(VTE_LIBS) $(X_LIBS) ++vtemodule_la_LIBADD = $(top_builddir)/src/libvte.la $(LIBS) $(PYGTK_LIBS) $(VTE_LIBS) $(X_LIBS) $(PYTHON_LIBS) + nodist_vtemodule_la_SOURCES = vte.c + + vte.c: vte.defs vte.override +--- vte-0.28.0/python/Makefile.in.link 2011-04-10 18:38:01.000000000 +0200 ++++ vte-0.28.0/python/Makefile.in 2011-04-10 18:38:12.000000000 +0200 +@@ -339,7 +339,7 @@ + # we do this to suport building with -Wl,-z,defs which errors on + # vtemodule.so as we cannot include $(PYTHON_LIBS) due to bug 410986. + @BUILD_PYTHON_MODULES_TRUE@vtemodule_la_LDFLAGS = -module -avoid-version -export-symbols-regex initvte $(PYTHON_LDFLAGS) $(AM_LDFLAGS) +-@BUILD_PYTHON_MODULES_TRUE@vtemodule_la_LIBADD = $(top_builddir)/src/libvte.la $(LIBS) $(PYGTK_LIBS) $(VTE_LIBS) $(X_LIBS) ++@BUILD_PYTHON_MODULES_TRUE@vtemodule_la_LIBADD = $(top_builddir)/src/libvte.la $(LIBS) $(PYGTK_LIBS) $(VTE_LIBS) $(X_LIBS) $(PYTHON_LIBS) + @BUILD_PYTHON_MODULES_TRUE@nodist_vtemodule_la_SOURCES = vte.c + all: all-am + \ No newline at end of file diff --git a/x11/terminal/vte/files/vte-0.28.2-limit-arguments.patch b/x11/terminal/vte/files/vte-0.28.2-limit-arguments.patch new file mode 100644 index 0000000000..597dec0fcf --- /dev/null +++ b/x11/terminal/vte/files/vte-0.28.2-limit-arguments.patch @@ -0,0 +1,40 @@ +From feeee4b5832b17641e505b7083e0d299fdae318e Mon Sep 17 00:00:00 2001 +From: Christian Persch +Date: Sat, 19 May 2012 17:36:09 +0000 +Subject: emulation: Limit integer arguments to 65535 + +To guard against malicious sequences containing excessively big numbers, +limit all parsed numbers to 16 bit range. Doing this here in the parsing +routine is a catch-all guard; this doesn't preclude enforcing +more stringent limits in the handlers themselves. + +https://bugzilla.gnome.org/show_bug.cgi?id=676090 +--- +diff --git a/src/table.c b/src/table.c +index 140e8c8..85cf631 100644 +--- a/src/table.c ++++ b/src/table.c +@@ -550,7 +550,7 @@ _vte_table_extract_numbers(GValueArray **array, + if (G_UNLIKELY (*array == NULL)) { + *array = g_value_array_new(1); + } +- g_value_set_long(&value, total); ++ g_value_set_long(&value, CLAMP (total, 0, G_MAXUSHORT)); + g_value_array_append(*array, &value); + } while (i++ < arginfo->length); + g_value_unset(&value); +diff --git a/src/vteseq.c b/src/vteseq.c +index 457c06a..46def5b 100644 +--- a/src/vteseq.c ++++ b/src/vteseq.c +@@ -557,7 +557,7 @@ vte_sequence_handler_multiple(VteTerminal *terminal, + GValueArray *params, + VteTerminalSequenceHandler handler) + { +- vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXLONG); ++ vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXUSHORT); + } + + static void +-- +cgit v0.9.0.2 \ No newline at end of file diff --git a/x11/terminal/vte/files/vte-0.28.2-scale.patch b/x11/terminal/vte/files/vte-0.28.2-scale.patch new file mode 100644 index 0000000000..03c4cdf9e3 --- /dev/null +++ b/x11/terminal/vte/files/vte-0.28.2-scale.patch @@ -0,0 +1,348 @@ +diff -NurpP --minimal vte-0.28.2.orig/src/vte-private.h vte-0.28.2/src/vte-private.h +--- vte-0.28.2.orig/src/vte-private.h 2011-08-16 21:52:48.000000000 +0000 ++++ vte-0.28.2/src/vte-private.h 2012-04-06 00:23:46.000000000 +0000 +@@ -281,6 +281,9 @@ struct _VteTerminalPrivate { + gboolean scroll_on_keystroke; + long scrollback_lines; + ++ /* Scaling options */ ++ gboolean scale_background; ++ + /* Cursor shape */ + VteTerminalCursorShape cursor_shape; + float cursor_aspect_ratio; +diff -NurpP --minimal vte-0.28.2.orig/src/vte.c vte-0.28.2/src/vte.c +--- vte-0.28.2.orig/src/vte.c 2011-08-28 21:31:45.000000000 +0000 ++++ vte-0.28.2/src/vte.c 2012-04-06 00:23:46.000000000 +0000 +@@ -179,7 +179,8 @@ enum { + PROP_SCROLL_ON_OUTPUT, + PROP_WINDOW_TITLE, + PROP_WORD_CHARS, +- PROP_VISIBLE_BELL ++ PROP_VISIBLE_BELL, ++ PROP_SCALE_BACKGROUND + }; + + /* these static variables are guarded by the GDK mutex */ +@@ -11179,6 +11180,10 @@ vte_terminal_paint(GtkWidget *widget, Gd + 0, + terminal->pvt->screen->scroll_delta * + terminal->char_height); ++ } else if (terminal->pvt->scale_background) { ++ _vte_draw_set_background_scale(terminal->pvt->draw, ++ terminal->char_width * terminal->column_count, ++ terminal->char_height * terminal->row_count); + } else { + _vte_draw_set_background_scroll(terminal->pvt->draw, 0, 0); + } +@@ -11574,6 +11579,9 @@ vte_terminal_get_property (GObject *obje + case PROP_SCROLL_BACKGROUND: + g_value_set_boolean (value, pvt->scroll_background); + break; ++ case PROP_SCALE_BACKGROUND: ++ g_value_set_boolean (value, pvt->scale_background); ++ break; + case PROP_SCROLLBACK_LINES: + g_value_set_uint (value, pvt->scrollback_lines); + break; +@@ -11680,6 +11688,9 @@ vte_terminal_set_property (GObject *obje + case PROP_PTY_OBJECT: + vte_terminal_set_pty_object (terminal, g_value_get_object (value)); + break; ++ case PROP_SCALE_BACKGROUND: ++ vte_terminal_set_scale_background (terminal, g_value_get_boolean (value)); ++ break; + case PROP_SCROLL_BACKGROUND: + vte_terminal_set_scroll_background (terminal, g_value_get_boolean (value)); + break; +@@ -12697,6 +12708,19 @@ vte_terminal_class_init(VteTerminalClass + G_PARAM_STATIC_STRINGS)); + + /** ++ * VteTerminal:scale-background: ++ * ++ * Controls whether or not the terminal will scale the background image ++ * (if one is set) ++ */ ++ g_object_class_install_property ++ (gobject_class, ++ PROP_SCALE_BACKGROUND, ++ g_param_spec_boolean ("scale-background", NULL, NULL, ++ FALSE, ++ G_PARAM_READWRITE | STATIC_PARAMS)); ++ ++ /** + * VteTerminal:scroll-background: + * + * Controls whether or not the terminal will scroll the background image (if +@@ -12991,6 +13015,36 @@ vte_terminal_get_allow_bold(VteTerminal + } + + /** ++ * vte_terminal_set_scale_background: ++ * @terminal: a #VteTerminal ++ * @scale: whether the terminal should scale the background ++ * ++ * Controls whether or not the terminal will scale the background image (if ++ * one is set) to the widget size. ++ * ++ * Since: 0.11 ++ */ ++void ++vte_terminal_set_scale_background(VteTerminal *terminal, gboolean scale) ++{ ++ VteTerminalPrivate *pvt; ++ ++ g_return_if_fail(VTE_IS_TERMINAL(terminal)); ++ ++ pvt = terminal->pvt; ++ ++ scale = scale != FALSE; ++ if (scale == pvt->scale_background) ++ return; ++ ++ pvt->scale_background = scale; ++ ++ g_object_notify (G_OBJECT (terminal), "scale-background"); ++ ++ vte_terminal_queue_background_update(terminal); ++} ++ ++/** + * vte_terminal_set_scroll_background: + * @terminal: a #VteTerminal + * @scroll: whether the terminal should scroll the background image along with +diff -NurpP --minimal vte-0.28.2.orig/src/vte.c.orig vte-0.28.2/src/vte.c.orig +diff -NurpP --minimal vte-0.28.2.orig/src/vte.h vte-0.28.2/src/vte.h +--- vte-0.28.2.orig/src/vte.h 2011-08-16 21:52:48.000000000 +0000 ++++ vte-0.28.2/src/vte.h 2012-04-06 00:23:46.000000000 +0000 +@@ -306,6 +306,7 @@ void vte_terminal_set_audible_bell(VteTe + gboolean vte_terminal_get_audible_bell(VteTerminal *terminal); + void vte_terminal_set_visible_bell(VteTerminal *terminal, gboolean is_visible); + gboolean vte_terminal_get_visible_bell(VteTerminal *terminal); ++void vte_terminal_set_scale_background(VteTerminal *terminal, gboolean scale); + void vte_terminal_set_scroll_background(VteTerminal *terminal, gboolean scroll); + void vte_terminal_set_scroll_on_output(VteTerminal *terminal, gboolean scroll); + void vte_terminal_set_scroll_on_keystroke(VteTerminal *terminal, +diff -NurpP --minimal vte-0.28.2.orig/src/vte.h.orig vte-0.28.2/src/vte.h.orig +diff -NurpP --minimal vte-0.28.2.orig/src/vteapp.c vte-0.28.2/src/vteapp.c +--- vte-0.28.2.orig/src/vteapp.c 2011-08-16 21:52:48.000000000 +0000 ++++ vte-0.28.2/src/vteapp.c 2012-04-06 00:23:46.000000000 +0000 +@@ -553,7 +553,7 @@ main(int argc, char **argv) + const char *background = NULL; + gboolean transparent = FALSE, audible = TRUE, + debug = FALSE, dingus = FALSE, dbuffer = TRUE, +- console = FALSE, scroll = FALSE, keep = FALSE, ++ console = FALSE, scroll = FALSE, scale = FALSE, keep = FALSE, + icon_title = FALSE, shell = TRUE, highlight_set = FALSE, + cursor_set = FALSE, reverse = FALSE, use_geometry_hints = TRUE, + antialias = TRUE, use_scrolled_window = FALSE, +@@ -669,6 +669,11 @@ main(int argc, char **argv) + "Set cursor shape (block|underline|ibeam)", NULL + }, + { ++ "scale-background", 'z', 0, ++ G_OPTION_ARG_NONE, &scale, ++ "Enable a scaling background", NULL ++ }, ++ { + "scroll-background", 's', 0, + G_OPTION_ARG_NONE, &scroll, + "Enable a scrolling background", NULL +@@ -891,6 +896,7 @@ main(int argc, char **argv) + vte_terminal_set_audible_bell(terminal, audible); + vte_terminal_set_visible_bell(terminal, !audible); + vte_terminal_set_cursor_blink_mode(terminal, cursor_blink_mode); ++ vte_terminal_set_scale_background(terminal, scale); + vte_terminal_set_scroll_background(terminal, scroll); + vte_terminal_set_scroll_on_output(terminal, FALSE); + vte_terminal_set_scroll_on_keystroke(terminal, TRUE); +diff -NurpP --minimal vte-0.28.2.orig/src/vteapp.c.orig vte-0.28.2/src/vteapp.c.orig +diff -NurpP --minimal vte-0.28.2.orig/src/vtebg.c vte-0.28.2/src/vtebg.c +--- vte-0.28.2.orig/src/vtebg.c 2011-08-16 21:52:48.000000000 +0000 ++++ vte-0.28.2/src/vtebg.c 2012-04-06 00:23:46.000000000 +0000 +@@ -56,6 +56,8 @@ typedef struct { + PangoColor tint_color; + double saturation; + cairo_surface_t *surface; ++ int width; ++ int height; + } VteBgCacheItem; + + static void vte_bg_cache_item_free(VteBgCacheItem *item); +@@ -321,6 +323,8 @@ static void item_surface_destroy_func(vo + "VteBgCacheItem %p surface destroyed\n", item); + + item->surface = NULL; ++ item->width = 1; ++ item->height = 1; + } + + /* +@@ -364,7 +368,9 @@ vte_bg_cache_search(VteBg *bg, + const GdkPixbuf *source_pixbuf, + const char *source_file, + const PangoColor *tint, +- double saturation) ++ double saturation, ++ int *surface_width, ++ int *surface_height) + { + GList *i; + +@@ -392,6 +398,11 @@ vte_bg_cache_search(VteBg *bg, + break; + } + ++ if (surface_width) ++ *surface_width = item->width; ++ if (surface_height) ++ *surface_height = item->height; ++ + return cairo_surface_reference(item->surface); + } + } +@@ -407,6 +418,8 @@ vte_bg_cache_search(VteBg *bg, + * @tint: a #PangoColor to use as tint color + * @saturation: the saturation as a value between 0.0 and 1.0 + * @other: a #cairo_surface_t ++ * @surface_width: pointer to store the surface width ++ * @surface_height: pointer to store the surface height + * + * Returns: a reference to a #cairo_surface_t, or %NULL on failure + */ +@@ -417,7 +430,9 @@ vte_bg_get_surface(VteBg *bg, + const char *source_file, + const PangoColor *tint, + double saturation, +- cairo_surface_t *other) ++ cairo_surface_t *other, ++ int *surface_width, ++ int *surface_height) + { + VteBgPrivate *pvt; + VteBgCacheItem *item; +@@ -440,7 +455,8 @@ vte_bg_get_surface(VteBg *bg, + + cached = vte_bg_cache_search(bg, source_type, + source_pixbuf, source_file, +- tint, saturation); ++ tint, saturation, ++ surface_width, surface_height); + if (cached != NULL) { + return cached; + } +@@ -494,6 +510,13 @@ vte_bg_get_surface(VteBg *bg, + else + goto out; + ++ if (surface_width) ++ *surface_width = width; ++ if (surface_height) ++ *surface_height = height; ++ ++ item->width = width; ++ item->height = height; + item->surface = + cairo_surface_create_similar(other, CAIRO_CONTENT_COLOR_ALPHA, + width, height); +diff -NurpP --minimal vte-0.28.2.orig/src/vtebg.c.orig vte-0.28.2/src/vtebg.c.orig +diff -NurpP --minimal vte-0.28.2.orig/src/vtebg.h vte-0.28.2/src/vtebg.h +--- vte-0.28.2.orig/src/vtebg.h 2011-08-16 21:52:48.000000000 +0000 ++++ vte-0.28.2/src/vtebg.h 2012-04-06 00:23:46.000000000 +0000 +@@ -63,7 +63,9 @@ vte_bg_get_surface(VteBg *bg, + const char *source_file, + const PangoColor *tint, + double saturation, +- cairo_surface_t *other); ++ cairo_surface_t *other, ++ int *surface_width, ++ int *surface_height); + + G_END_DECLS + +diff -NurpP --minimal vte-0.28.2.orig/src/vtedraw.c vte-0.28.2/src/vtedraw.c +--- vte-0.28.2.orig/src/vtedraw.c 2011-08-16 21:52:48.000000000 +0000 ++++ vte-0.28.2/src/vtedraw.c 2012-04-06 00:23:46.000000000 +0000 +@@ -752,6 +752,7 @@ struct _vte_draw { + struct font_info *font; + struct font_info *font_bold; + cairo_pattern_t *bg_pattern; ++ gint bg_width, bg_height; + + cairo_t *cr; + }; +@@ -839,6 +840,8 @@ _vte_draw_set_background_solid(struct _v + green, + blue, + opacity); ++ draw->bg_width = 1; ++ draw->bg_height = 1; + } + + void +@@ -850,6 +853,7 @@ _vte_draw_set_background_image (struct _ + double saturation) + { + cairo_surface_t *surface; ++ int surface_width, surface_height; + + /* Need a valid draw->cr for cairo_get_target () */ + _vte_draw_start (draw); +@@ -857,7 +861,8 @@ _vte_draw_set_background_image (struct _ + surface = vte_bg_get_surface (vte_bg_get_for_screen (gtk_widget_get_screen (draw->widget)), + type, pixbuf, filename, + color, saturation, +- cairo_get_target(draw->cr)); ++ cairo_get_target(draw->cr), ++ &surface_width, &surface_height); + + _vte_draw_end (draw); + +@@ -868,6 +873,8 @@ _vte_draw_set_background_image (struct _ + cairo_pattern_destroy (draw->bg_pattern); + + draw->bg_pattern = cairo_pattern_create_for_surface (surface); ++ draw->bg_width = surface_width; ++ draw->bg_height = surface_height; + cairo_surface_destroy (surface); + cairo_pattern_set_extend (draw->bg_pattern, CAIRO_EXTEND_REPEAT); + } +@@ -888,6 +895,24 @@ _vte_draw_set_background_scroll (struct + cairo_pattern_set_matrix (draw->bg_pattern, &matrix); + } + ++void ++_vte_draw_set_background_scale (struct _vte_draw *draw, ++ gint sx, gint sy) ++{ ++ cairo_matrix_t matrix; ++ ++ _vte_debug_print (VTE_DEBUG_DRAW, ++ "draw_set_scale (%d, %d)\n", ++ sx, sy); ++ ++ g_return_if_fail (draw->bg_pattern != NULL); ++ ++ cairo_matrix_init_scale (&matrix, ++ (1.0 * draw->bg_width) / sx, ++ (1.0 * draw->bg_height) / sy); ++ cairo_pattern_set_matrix (draw->bg_pattern, &matrix); ++} ++ + void + _vte_draw_clip (struct _vte_draw *draw, GdkRegion *region) + { +diff -NurpP --minimal vte-0.28.2.orig/src/vtedraw.c.orig vte-0.28.2/src/vtedraw.c.orig +diff -NurpP --minimal vte-0.28.2.orig/src/vtedraw.h vte-0.28.2/src/vtedraw.h +--- vte-0.28.2.orig/src/vtedraw.h 2011-08-16 21:52:48.000000000 +0000 ++++ vte-0.28.2/src/vtedraw.h 2012-04-06 00:23:46.000000000 +0000 +@@ -82,6 +82,8 @@ void _vte_draw_set_background_image(stru + double saturation); + void _vte_draw_set_background_scroll(struct _vte_draw *draw, + gint x, gint y); ++void _vte_draw_set_background_scale(struct _vte_draw *draw, ++ gint sx, gint sy); + + void _vte_draw_clip(struct _vte_draw *draw, GdkRegion *region); + void _vte_draw_clear(struct _vte_draw *draw, diff --git a/x11/terminal/vte/files/vte-alt-meta-confusion.patch b/x11/terminal/vte/files/vte-alt-meta-confusion.patch new file mode 100644 index 0000000000..b081574fc9 --- /dev/null +++ b/x11/terminal/vte/files/vte-alt-meta-confusion.patch @@ -0,0 +1,73 @@ +From 180dcc578e13c6096e277fb853e7162db640f207 Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev +Date: Tue, 15 Nov 2011 03:06:40 -0500 +Subject: [PATCH] Map both gdk's Meta and Alt to vte's Meta for >=gtk+-3.2.2 + compatibility + +Also, since VTE_META_MASK is now a mask with multiple bits set, code that +compares gdk key modifiers to VTE_META_MASK by numerical equality is no +longer guaranteed to work. Therefore, for such comparisons a new function, +vte_keymap_fixup_modifiers, is introduced; it ensures that if any bits +matching matching VTE_META_MASK are set, then all are set. + +https://bugzilla.gnome.org/show_bug.cgi?id=663779 +--- + src/keymap.c | 15 +++++++++++++-- + src/keymap.h | 2 +- + 2 files changed, 14 insertions(+), 3 deletions(-) + +diff --git a/src/keymap.c b/src/keymap.c +index 9a21669..95b4c5b 100644 +--- a/src/keymap.c ++++ b/src/keymap.c +@@ -990,6 +990,17 @@ static const struct _vte_keymap_group { + {GDK_KEY (F35), _vte_keymap_GDK_F35}, + }; + ++/* Restrict modifiers to the specified mask and ensure that VTE_META_MASK, ++ * despite being a compound mask, is treated as indivisible. */ ++GdkModifierType ++_vte_keymap_fixup_modifiers(GdkModifierType modifiers, ++ GdkModifierType mask) ++{ ++ if (modifiers & VTE_META_MASK) ++ modifiers |= VTE_META_MASK; ++ return modifiers & mask; ++} ++ + /* Map the specified keyval/modifier setup, dependent on the mode, to either + * a literal string or a capability name. */ + void +@@ -1104,7 +1115,7 @@ _vte_keymap_map(guint keyval, + } else { + fkey_mode = fkey_default; + } +- modifiers &= (GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK); ++ modifiers = _vte_keymap_fixup_modifiers(modifiers, GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK); + + /* Search for the conditions. */ + for (i = 0; entries[i].normal_length || entries[i].special[0]; i++) +@@ -1375,7 +1386,7 @@ _vte_keymap_key_add_key_modifiers(guint keyval, + return; + } + +- switch (modifiers & significant_modifiers) { ++ switch (_vte_keymap_fixup_modifiers(modifiers, significant_modifiers)) { + case 0: + modifier = 0; + break; +diff --git a/src/keymap.h b/src/keymap.h +index 243e22e..21d9b8e 100644 +--- a/src/keymap.h ++++ b/src/keymap.h +@@ -27,7 +27,7 @@ + + G_BEGIN_DECLS + +-#define VTE_META_MASK GDK_META_MASK ++#define VTE_META_MASK (GDK_META_MASK | GDK_MOD1_MASK) + #define VTE_NUMLOCK_MASK GDK_MOD2_MASK + + /* Map the specified keyval/modifier setup, dependent on the mode, to either +-- +1.7.8.rc3 \ No newline at end of file diff --git a/x11/terminal/vte/files/vte-python-bugfixes.patch b/x11/terminal/vte/files/vte-python-bugfixes.patch new file mode 100644 index 0000000000..edb1bb3450 --- /dev/null +++ b/x11/terminal/vte/files/vte-python-bugfixes.patch @@ -0,0 +1,86 @@ +diff -ur vte-0.22.5-orig/python/vte.override vte-0.22.5-python-get-text/python/vte.override +--- vte-0.22.5-orig/python/vte.override 2010-01-16 20:54:40.515014436 -0500 ++++ vte-0.22.5-python-get-text/python/vte.override 2010-01-16 22:14:40.881828300 -0500 +@@ -306,9 +306,9 @@ + } + + cb = PySequence_GetItem(data, 0); /* INCREFs */ +- Py_XDECREF(cb); + + if (!PyCallable_Check(cb)) { ++ Py_XDECREF(cb); + PyErr_SetString(PyExc_TypeError, "callback is not a callable object"); + return FALSE; + } +@@ -320,6 +320,7 @@ + PyTuple_SetItem(args, 3, PySequence_GetItem(data, 2)); + + result = PyObject_CallObject(cb, args); ++ Py_XDECREF(cb); + Py_DECREF(args); + + ret = (result && PyObject_IsTrue(result)); +@@ -332,7 +333,7 @@ + build_attributes(GArray *attrs) + { + PyObject *py_attrs = PyTuple_New(attrs->len); +- int count; ++ guint count; + PyObject *row = PyString_FromString("row"); + PyObject *column = PyString_FromString("column"); + PyObject *fore = PyString_FromString("fore"); +@@ -344,6 +345,8 @@ + VteCharAttributes *cht; + PyObject *py_char_attr; + ++ cht = &g_array_index(attrs, VteCharAttributes, count); ++ + py_char_attr = Py_BuildValue("{S:l,S:l,S:N,S:N,S:I,S:I}", + row, cht->row, + column, cht->column, +@@ -380,10 +383,9 @@ + GArray *attrs = NULL; + char *text; + PyObject *py_attrs; +- int count; + long length; + +- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OO:terminal_get_text", ++ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OOO:terminal_get_text", + kwlist, &callback, &do_attr, &data)) { + return NULL; + } +@@ -451,10 +453,9 @@ + GArray *attrs = NULL; + char *text; + PyObject *py_attrs; +- int count; + long length; + +- if (!PyArg_ParseTupleAndKeywords(args, kwargs, "O|OO:terminal_get_text_include_trailing_spaces", ++ if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|OOO:terminal_get_text_include_trailing_spaces", + kwlist, &callback, &do_attr, &data)) { + return NULL; + } +@@ -522,11 +523,10 @@ + GArray *attrs = NULL; + char *text; + PyObject *py_attrs; +- int count; + long length; + + if (!PyArg_ParseTupleAndKeywords(args, kwargs, +- "llllO|OO:terminal_get_text_range", ++ "llll|OOO:terminal_get_text_range", + kwlist, + &start_row, &start_col, &end_row, &end_col, + &callback, &do_attr, &data)) { +@@ -641,7 +641,7 @@ + static char *kwlist[] = { "column", "row", NULL }; + gchar *ret; + glong column, row; +- int *tag; ++ int tag; + + if (!PyArg_ParseTupleAndKeywords(args, kwargs, "ll:VteTerminal.match_check", kwlist, &column, &row)) + return NULL; \ No newline at end of file diff --git a/x11/terminal/vte/pspec.xml b/x11/terminal/vte/pspec.xml new file mode 100644 index 0000000000..0a395abce6 --- /dev/null +++ b/x11/terminal/vte/pspec.xml @@ -0,0 +1,129 @@ + + + + + vte + http://www.gnome.org + + PisiLinux Community + admins@pisilinux.org + + LGPLv2 + Xft powered terminal widget + The VTE package contains a termcap file implementation for terminal emulators. + mirrors://gnome/vte/0.28/vte-0.28.2.tar.xz + + fontconfig-devel + gtk2-devel + pango-devel + cairo-devel + gtk-doc + gdk-pixbuf-devel + atk-devel + ncurses-devel + glib2-devel + libX11-devel + + + vte-0.28.2-limit-arguments.patch + vte-alt-meta-confusion.patch + vte-python-bugfixes.patch + vte-0.28.0-link.patch + vte-0.28.2-scale.patch + + + + + vte + library + + gtk2 + atk + cairo + gdk-pixbuf + pango + ncurses + glib2 + libX11 + + + /usr/bin + /usr/lib + /usr/libexec + /usr/share/doc + /usr/share/locale + /usr/share/vte + /usr/share/pygtk + /usr/share/gir-1.0/Vte-0.0.gir + + + + + vte-docs + data:doc + GTK reference documents for vte + + /usr/share/gtk-doc + + + + + vte-devel + Development files for vte + + vte + gtk2-devel + pango-devel + cairo-devel + + + /usr/include + /usr/lib/pkgconfig + + + + + + 2014-05-16 + 0.28.2 + Release bump. + Marcin Bojara + marcin@pisilinux.org + + + 2014-01-25 + 0.28.2 + rebuild for unused + Yusuf Aydemir + yusuf.aydemir@pisilinux.org + + + 2013-11-06 + 0.28.2 + Fix deps + Serdar Soytetir + kaptan@pisilinux.org + + + 2013-08-25 + 0.28.2 + Release bump. + Marcin Bojara + marcin@pisilinux.org + + + 2013-07-30 + 0.28.2 + Rebuild + Osman Erkan + osman.erkan@pisilinux.org + + + 2012-11-24 + 0.28.2 + First release + Osman Erkan + namso-0"@hotmail.it + + + diff --git a/x11/terminal/vte/translations.xml b/x11/terminal/vte/translations.xml new file mode 100644 index 0000000000..b2038af58b --- /dev/null +++ b/x11/terminal/vte/translations.xml @@ -0,0 +1,17 @@ + + + + vte + Widget terminal utilisant Xft + Vte paketi, terminal emülatörleri için termcap uygulama dosyası içerir. + + + vte-docs + Vte referans dökümanları + + + + vte-devel + vte için geliştirme dosyaları + +