diff options
Diffstat (limited to 'x11-libs')
| -rw-r--r-- | x11-libs/vte/Manifest | 3 | ||||
| -rw-r--r-- | x11-libs/vte/files/vte-0.32.2-expose_select_text.patch | 214 | ||||
| -rw-r--r-- | x11-libs/vte/vte-0.34.2.ebuild | 6 |
3 files changed, 220 insertions, 3 deletions
diff --git a/x11-libs/vte/Manifest b/x11-libs/vte/Manifest index cff1792c..b267046f 100644 --- a/x11-libs/vte/Manifest +++ b/x11-libs/vte/Manifest @@ -1,4 +1,5 @@ AUX vte-0.30.1-alt-meta.patch 2490 SHA256 31a46fee8fe59bd1d6df54bc502b608fe80da57bf3786e2dc6e9856a4e793ed6 SHA512 69ed3038f3dcbbd09709667caff5692e4e11e30926bc7692cdbbdef2bb1ae4584ef64b824b5afcb3c57c237a3c0db4d9588ec36778d0994a546b1e6f74c2e430 WHIRLPOOL bc51d9467bb13d627e7355872db5777e3d39ca07753dda9237110f8857d16bca5f8bc4334f9d97df54a2fcbc9234f123247ec8f40508e8120f00ffc46ff0a570 +AUX vte-0.32.2-expose_select_text.patch 6919 SHA256 268606b57675cf9d453c9656ea3f41be01432464018df3ff4ed7139908769157 SHA512 505cf3bba2ba5ed22ea5c7e09c85604c17b02daa66fd4dcd78a7f7fdab1a12f82578182e139d53b782041576beea46f6f78a3e5309ec0e0eb2de7a76adcad75f WHIRLPOOL 53d8e2630fca46923e05d035437b9887f86e78ffd5f5f36dad157fd655f04507f72e0d94c1f5e625f01fce9c46ebd891c181f282aee819f54a6d8cec77763738 DIST vte-0.34.2.tar.xz 981688 SHA256 f40f9fe0bcc6d65bc44b2fab5469b56a9f0631132c6b90e06053e421711159cf SHA512 4a89f149e9c101ed31b76086de1a05287d9c2a750ee098792fa9508b8712fa065a63e60d50cfb4a060991c2f6f182ddb91d3f21d4c7baf61337f08dc1a960a35 WHIRLPOOL b630b71cc873b933ec7ffd842b2a346092f3086936626ec4dcfadb7eaa8c474f3a9539e3932f16aa7f900f5e9cbdc8e8ceaed6fbac2247aebabd73451748d236 -EBUILD vte-0.34.2.ebuild 1722 SHA256 69127bd46c38a71bf5f211bed3f230d6157647a3c81e80a9bb22aeb36e39ada7 SHA512 90165dea4381a664e629310ccd711409d0bc266a14dc1a71f355a1f9db0982b2c05571bdfcb45b5a91aab7d4489c3f3ddb4c551cfc013f32f10675fa1cdd9f1c WHIRLPOOL d9add5631d5169773d132d7d88468fa40a3e56c3b3602e6c7ae4087d4a85fe91e0fb8e3c7838c0fde29021b5e1a0397f1f60d7b7e7f1f5d5fe89b5c18b848b83 +EBUILD vte-0.34.2.ebuild 1679 SHA256 0dfc6cce548744ac3c4357639e97ec050ca2b37a748330c5a2cf6e97c012cdfe SHA512 00c601b5158586e24daf885690fd82478e94eb0d2edc8f31429cdcbfe9d865ef62a097a5c9aa116e6b885b533907a2ef0a66bf9b857cba0cd5f6adb7f4f72e38 WHIRLPOOL 9dbbc3bbf5895d12c1f80ab9acdf1e79e2733aef19741f843b7847c0fcf567ee50e7e27c14325d607382e55061ec74c4e633c032f54a3ce4588b8b692859e557 MISC metadata.xml 350 SHA256 16e77360aaa3f204d03bfad2997aabf51d51c3360f59f6c4d5f24076e9bae0d1 SHA512 3c4547eed3975ceb8ab4f7bf065673d1cd42826d934204d01215d059f986d8ea22523d356faea2afd60a0dbe90cb931b98a0b4c8f023ac7b9c2a184ff3037f23 WHIRLPOOL 718ae321f267549634614d15ae18c673842d094d8de28cbb853f43a3916749b601c662a75ca0e033122ea938b557abc76c48fc2dac724efa829969d109b13521 diff --git a/x11-libs/vte/files/vte-0.32.2-expose_select_text.patch b/x11-libs/vte/files/vte-0.32.2-expose_select_text.patch new file mode 100644 index 00000000..80a2a445 --- /dev/null +++ b/x11-libs/vte/files/vte-0.32.2-expose_select_text.patch @@ -0,0 +1,214 @@ +diff -aur vte-0.32.2-old/src/vte.c vte-0.32.2/src/vte.c +--- vte-0.32.2-old/src/vte.c 2012-07-13 21:09:04.003969877 -0400 ++++ vte-0.32.2/src/vte.c 2012-08-30 04:30:04.285924831 -0400 +@@ -129,7 +129,6 @@ + gpointer data, + GArray *attributes, + gboolean include_trailing_spaces); +-static void _vte_terminal_disconnect_pty_read(VteTerminal *terminal); + static void _vte_terminal_disconnect_pty_write(VteTerminal *terminal); + static void vte_terminal_stop_processing (VteTerminal *terminal); + +@@ -3508,8 +3507,8 @@ + _vte_debug_print (VTE_DEBUG_IO, "removed poll of vte_terminal_io_read\n"); + terminal->pvt->pty_input_source = 0; + } +-static void +-_vte_terminal_connect_pty_read(VteTerminal *terminal) ++void ++vte_terminal_connect_pty_read(VteTerminal *terminal) + { + if (terminal->pvt->pty_channel == NULL) { + return; +@@ -3560,8 +3559,8 @@ + } + } + +-static void +-_vte_terminal_disconnect_pty_read(VteTerminal *terminal) ++void ++vte_terminal_disconnect_pty_read(VteTerminal *terminal) + { + if (terminal->pvt->pty_input_source != 0) { + _vte_debug_print (VTE_DEBUG_IO, "disconnecting poll of vte_terminal_io_read\n"); +@@ -3708,8 +3707,8 @@ + return NULL; + } + +-static char * +-_vte_terminal_get_user_shell_with_fallback (void) ++char * ++vte_terminal_get_user_shell_with_fallback (void) + { + char *command; + const gchar *env; +@@ -3744,7 +3743,7 @@ + char **argv2; + char *shell = NULL; + +- argv2 = __vte_pty_get_argv(command ? command : (shell = _vte_terminal_get_user_shell_with_fallback ()), ++ argv2 = __vte_pty_get_argv(command ? command : (shell = vte_terminal_get_user_shell_with_fallback ()), + argv, + flags); + g_free(shell); +@@ -6545,6 +6544,28 @@ + } + } + ++/** ++ * vte_terminal_set_cursor_position: ++ * @terminal: a #VteTerminal ++ * @column: the new cursor column ++ * @row: the new cursor row ++ * ++ * Set the location of the cursor. ++ */ ++void ++vte_terminal_set_cursor_position(VteTerminal *terminal, ++ long column, long row) ++{ ++ g_return_if_fail(VTE_IS_TERMINAL(terminal)); ++ ++ _vte_invalidate_cursor_once(terminal, FALSE); ++ terminal->pvt->screen->cursor_current.col = column; ++ terminal->pvt->screen->cursor_current.row = row; ++ _vte_invalidate_cursor_once(terminal, FALSE); ++ _vte_check_cursor_blink(terminal); ++ vte_terminal_queue_cursor_moved(terminal); ++} ++ + static GtkClipboard * + vte_terminal_clipboard_get(VteTerminal *terminal, GdkAtom board) + { +@@ -6676,7 +6697,7 @@ + terminal->pvt->selection_start.row); + + /* Temporarily stop caring about input from the child. */ +- _vte_terminal_disconnect_pty_read(terminal); ++ vte_terminal_disconnect_pty_read(terminal); + } + + static gboolean +@@ -6693,7 +6714,7 @@ + terminal->pvt->selecting = FALSE; + + /* Reconnect to input from the child if we paused it. */ +- _vte_terminal_connect_pty_read(terminal); ++ vte_terminal_connect_pty_read(terminal); + + return TRUE; + } +@@ -8994,7 +9015,7 @@ + #endif + kill(terminal->pvt->pty_pid, SIGHUP); + } +- _vte_terminal_disconnect_pty_read(terminal); ++ vte_terminal_disconnect_pty_read(terminal); + _vte_terminal_disconnect_pty_write(terminal); + if (terminal->pvt->pty_channel != NULL) { + g_io_channel_unref (terminal->pvt->pty_channel); +@@ -14384,7 +14405,7 @@ + g_object_freeze_notify(object); + + if (pvt->pty != NULL) { +- _vte_terminal_disconnect_pty_read(terminal); ++ vte_terminal_disconnect_pty_read(terminal); + _vte_terminal_disconnect_pty_write(terminal); + + if (terminal->pvt->pty_channel != NULL) { +@@ -14440,7 +14461,7 @@ + _vte_terminal_setup_utf8 (terminal); + + /* Open channels to listen for input on. */ +- _vte_terminal_connect_pty_read (terminal); ++ vte_terminal_connect_pty_read (terminal); + + g_object_notify(object, "pty"); + g_object_notify(object, "pty-object"); +@@ -14567,6 +14588,50 @@ + } + } + ++/** ++ * vte_terminal_get_selection_block_mode: ++ * @terminal: a #VteTerminal ++ * ++ * Checks whether or not block selection is enabled. ++ * ++ * Returns: %TRUE if block selection is enabled, %FALSE if not ++ */ ++gboolean ++vte_terminal_get_selection_block_mode(VteTerminal *terminal) { ++ g_return_val_if_fail(VTE_IS_TERMINAL(terminal), FALSE); ++ return terminal->pvt->selection_block_mode; ++} ++ ++/** ++ * vte_terminal_set_selection_block_mode: ++ * @terminal: a #VteTerminal ++ * @block_mode: whether block selection is enabled ++ * ++ * Sets whether or not block selection is enabled. ++ */ ++void ++vte_terminal_set_selection_block_mode(VteTerminal *terminal, gboolean block_mode) { ++ g_return_if_fail(VTE_IS_TERMINAL(terminal)); ++ terminal->pvt->selection_block_mode = block_mode; ++} ++ ++/** ++ * vte_terminal_select_text: ++ * @terminal: a #VteTerminal ++ * @start_col: the starting column for the selection ++ * @start_row: the starting row for the selection ++ * @end_col: the end column for the selection ++ * @end_row: the end row for the selection ++ * ++ * Sets the current selection region. ++ */ ++void ++vte_terminal_select_text(VteTerminal *terminal, ++ long start_col, long start_row, ++ long end_col, long end_row) { ++ _vte_terminal_select_text(terminal, start_col, start_row, end_col, end_row, 0, 0); ++} ++ + void + _vte_terminal_select_text(VteTerminal *terminal, + long start_col, long start_row, +diff -aur vte-0.32.2-old/src/vte.h vte-0.32.2/src/vte.h +--- vte-0.32.2-old/src/vte.h 2012-07-13 21:09:04.003969877 -0400 ++++ vte-0.32.2/src/vte.h 2012-08-30 04:30:09.695999432 -0400 +@@ -296,6 +296,15 @@ + /* simple manipulation of selection */ + void vte_terminal_select_all(VteTerminal *terminal); + void vte_terminal_select_none(VteTerminal *terminal); ++gboolean vte_terminal_get_selection_block_mode(VteTerminal *terminal); ++void vte_terminal_set_selection_block_mode(VteTerminal *terminal, gboolean block_mode); ++void vte_terminal_select_text(VteTerminal *terminal, ++ long start_col, long start_row, ++ long end_col, long end_row); ++ ++/* pause and unpause output */ ++void vte_terminal_disconnect_pty_read(VteTerminal *vte); ++void vte_terminal_connect_pty_read(VteTerminal *vte); + + /* Set the terminal's size. */ + void vte_terminal_set_size(VteTerminal *terminal, +@@ -435,6 +444,8 @@ + GArray *attributes); + void vte_terminal_get_cursor_position(VteTerminal *terminal, + glong *column, glong *row); ++void vte_terminal_set_cursor_position(VteTerminal *terminal, ++ long column, long row); + /* Display string matching: clear all matching expressions. */ + void vte_terminal_match_clear_all(VteTerminal *terminal); + +@@ -484,6 +495,7 @@ + VtePty *vte_terminal_get_pty_object(VteTerminal *terminal); + + char *vte_get_user_shell (void); ++char *vte_terminal_get_user_shell_with_fallback(void); + + /* Accessors for bindings. */ + #if !GTK_CHECK_VERSION (2, 91, 2) diff --git a/x11-libs/vte/vte-0.34.2.ebuild b/x11-libs/vte/vte-0.34.2.ebuild index 622131ef..9b2b852a 100644 --- a/x11-libs/vte/vte-0.34.2.ebuild +++ b/x11-libs/vte/vte-0.34.2.ebuild @@ -13,8 +13,8 @@ HOMEPAGE="https://live.gnome.org/Terminal/VTE" LICENSE="LGPL-2+" SLOT="2.90" -IUSE="debug glade +introspection" -KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sh sparc x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~x86-linux ~x64-solaris ~x86-solaris" +IUSE="debug glade +introspection termite-patch" +KEYWORDS="~amd64 ~x86" PDEPEND="x11-libs/gnome-pty-helper" RDEPEND=">=dev-libs/glib-2.31.13:2 @@ -54,6 +54,8 @@ src_prepare() { # https://bugzilla.gnome.org/show_bug.cgi?id=663779 epatch "${FILESDIR}/${PN}-0.30.1-alt-meta.patch" + + use termite-patch && epatch "${FILESDIR}"/${PN}-0.32.2-expose_select_text.patch gnome2_src_prepare } |
