Upgraded termite to v8, and its dependency vte to v0.38.0
This commit is contained in:
parent
6281bc0936
commit
f53ba30c87
@ -2,12 +2,12 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "termite-${version}";
|
name = "termite-${version}";
|
||||||
version = "8";
|
version = "v8";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "https://github.com/thestinger/termite.git";
|
url = "https://github.com/thestinger/termite";
|
||||||
rev = "05f3bbf626245a344eb74859ef2aa49f715ebd55";
|
rev = "7f03ded7308ad0e26b72b150080e4f3e70401815";
|
||||||
sha256 = "01dfg4zg7sgw0cbh0j9sbwdvn43rw7xfcnijfh1dhd6n5yx00b18";
|
sha256 = "1yj4jvjwv73a02p8a0yip8q39znlhfc9zdr19zm1zik2k4h62c2l";
|
||||||
};
|
};
|
||||||
|
|
||||||
makeFlags = "VERSION=v${version}";
|
makeFlags = "VERSION=v${version}";
|
||||||
|
43
pkgs/desktops/gnome-3/3.12/core/vte/0.38.0.nix
Normal file
43
pkgs/desktops/gnome-3/3.12/core/vte/0.38.0.nix
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
{ stdenv, fetchurl, intltool, pkgconfig, gnome3, ncurses, gobjectIntrospection, vala, libxml2
|
||||||
|
, selectTextPatch ? false }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
versionMajor = "0.38";
|
||||||
|
versionMinor = "0";
|
||||||
|
moduleName = "vte";
|
||||||
|
|
||||||
|
name = "${moduleName}-${versionMajor}.${versionMinor}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
|
||||||
|
sha256 = "1llg2xnjpn630vd86ci8csbjjacj3ia6syck2bsq4kinr66z5zsw";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = with stdenv.lib; optional selectTextPatch ./expose_select_text.0.38.0.patch;
|
||||||
|
|
||||||
|
buildInputs = [ gobjectIntrospection intltool pkgconfig gnome3.glib gnome3.gtk3 ncurses vala libxml2 ];
|
||||||
|
|
||||||
|
configureFlags = [ "--enable-introspection" ];
|
||||||
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
substituteInPlace $out/lib/libvte2_90.la --replace "-lncurses" "-L${ncurses}/lib -lncurses"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
homepage = http://www.gnome.org/;
|
||||||
|
description = "A library implementing a terminal emulator widget for GTK+";
|
||||||
|
longDescription = ''
|
||||||
|
VTE is a library (libvte) implementing a terminal emulator widget for
|
||||||
|
GTK+, and a minimal sample application (vte) using that. Vte is
|
||||||
|
mainly used in gnome-terminal, but can also be used to embed a
|
||||||
|
console/terminal in games, editors, IDEs, etc. VTE supports Unicode and
|
||||||
|
character set conversion, as well as emulating any terminal known to
|
||||||
|
the system's terminfo database.
|
||||||
|
'';
|
||||||
|
license = licenses.lgpl2;
|
||||||
|
maintainers = with maintainers; [ astsmtl antono lethalman ];
|
||||||
|
platforms = platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, intltool, pkgconfig, gnome3, ncurses, gobjectIntrospection, vala, libxml2
|
{ stdenv, fetchurl, intltool, pkgconfig, gnome3, ncurses, gobjectIntrospection
|
||||||
, selectTextPatch ? false }:
|
, selectTextPatch ? false }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
|
@ -0,0 +1,227 @@
|
|||||||
|
Only in vte-0.38.0.new: expose_select_text.patch
|
||||||
|
diff -aur vte-0.38.0/src/vteaccess.c vte-0.38.0.new/src/vteaccess.c
|
||||||
|
--- vte-0.38.0/src/vteaccess.c 2014-08-13 08:00:38.000000000 -0400
|
||||||
|
+++ vte-0.38.0.new/src/vteaccess.c 2014-09-21 17:05:23.934641193 -0400
|
||||||
|
@@ -1427,7 +1427,7 @@
|
||||||
|
*start_offset = offset_from_xy (priv, start_x, start_y);
|
||||||
|
_vte_terminal_get_end_selection (terminal, &end_x, &end_y);
|
||||||
|
*end_offset = offset_from_xy (priv, end_x, end_y);
|
||||||
|
- return _vte_terminal_get_selection (terminal);
|
||||||
|
+ return vte_terminal_get_selection (terminal);
|
||||||
|
}
|
||||||
|
|
||||||
|
static gboolean
|
||||||
|
diff -aur vte-0.38.0/src/vte.c vte-0.38.0.new/src/vte.c
|
||||||
|
--- vte-0.38.0/src/vte.c 2014-09-13 03:23:47.000000000 -0400
|
||||||
|
+++ vte-0.38.0.new/src/vte.c 2014-09-21 17:03:04.671656749 -0400
|
||||||
|
@@ -122,7 +122,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);
|
||||||
|
|
||||||
|
@@ -3267,9 +3266,10 @@
|
||||||
|
_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)
|
||||||
|
{
|
||||||
|
+ g_return_if_fail(VTE_IS_TERMINAL(terminal));
|
||||||
|
if (terminal->pvt->pty_channel == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
@@ -3321,9 +3321,10 @@
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
-static void
|
||||||
|
-_vte_terminal_disconnect_pty_read(VteTerminal *terminal)
|
||||||
|
+void
|
||||||
|
+vte_terminal_disconnect_pty_read(VteTerminal *terminal)
|
||||||
|
{
|
||||||
|
+ g_return_if_fail(VTE_IS_TERMINAL(terminal));
|
||||||
|
if (terminal->pvt->pty_input_source != 0) {
|
||||||
|
_vte_debug_print (VTE_DEBUG_IO, "disconnecting poll of vte_terminal_io_read\n");
|
||||||
|
g_source_remove(terminal->pvt->pty_input_source);
|
||||||
|
@@ -6154,6 +6155,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)
|
||||||
|
{
|
||||||
|
@@ -6319,7 +6342,7 @@
|
||||||
|
vte_terminal_extend_selection(terminal, x, y, FALSE, TRUE);
|
||||||
|
|
||||||
|
/* Temporarily stop caring about input from the child. */
|
||||||
|
- _vte_terminal_disconnect_pty_read(terminal);
|
||||||
|
+ vte_terminal_disconnect_pty_read(terminal);
|
||||||
|
}
|
||||||
|
|
||||||
|
static gboolean
|
||||||
|
@@ -6336,7 +6359,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;
|
||||||
|
}
|
||||||
|
@@ -6834,6 +6857,50 @@
|
||||||
|
vte_terminal_deselect_all (terminal);
|
||||||
|
}
|
||||||
|
|
||||||
|
+/**
|
||||||
|
+ * 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);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
/* Autoscroll a bit. */
|
||||||
|
static gboolean
|
||||||
|
vte_terminal_autoscroll(VteTerminal *terminal)
|
||||||
|
@@ -8476,7 +8543,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);
|
||||||
|
@@ -12533,7 +12600,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) {
|
||||||
|
@@ -12588,7 +12655,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");
|
||||||
|
|
||||||
|
@@ -12623,7 +12690,7 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
char *
|
||||||
|
-_vte_terminal_get_selection(VteTerminal *terminal)
|
||||||
|
+vte_terminal_get_selection(VteTerminal *terminal)
|
||||||
|
{
|
||||||
|
g_return_val_if_fail(VTE_IS_TERMINAL(terminal), NULL);
|
||||||
|
|
||||||
|
Only in vte-0.38.0.new/src: .vte.c.swp
|
||||||
|
diff -aur vte-0.38.0/src/vteint.h vte-0.38.0.new/src/vteint.h
|
||||||
|
--- vte-0.38.0/src/vteint.h 2014-05-16 13:51:26.000000000 -0400
|
||||||
|
+++ vte-0.38.0.new/src/vteint.h 2014-09-21 17:05:44.934589281 -0400
|
||||||
|
@@ -25,7 +25,6 @@
|
||||||
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
void _vte_terminal_accessible_ref(VteTerminal *terminal);
|
||||||
|
-char* _vte_terminal_get_selection(VteTerminal *terminal);
|
||||||
|
void _vte_terminal_get_start_selection(VteTerminal *terminal, long *x, long *y);
|
||||||
|
void _vte_terminal_get_end_selection(VteTerminal *terminal, long *x, long *y);
|
||||||
|
void _vte_terminal_select_text(VteTerminal *terminal, long start_x, long start_y, long end_x, long end_y, int start_offset, int end_offset);
|
||||||
|
diff -aur vte-0.38.0/src/vteterminal.h vte-0.38.0.new/src/vteterminal.h
|
||||||
|
--- vte-0.38.0/src/vteterminal.h 2014-09-13 03:23:47.000000000 -0400
|
||||||
|
+++ vte-0.38.0.new/src/vteterminal.h 2014-09-21 17:03:39.094903032 -0400
|
||||||
|
@@ -170,6 +170,18 @@
|
||||||
|
|
||||||
|
void vte_terminal_select_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
|
||||||
|
void vte_terminal_unselect_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
|
||||||
|
+gboolean vte_terminal_get_selection_block_mode(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
|
||||||
|
+void vte_terminal_set_selection_block_mode(VteTerminal *terminal,
|
||||||
|
+ gboolean block_mode) _VTE_GNUC_NONNULL(1);
|
||||||
|
+void vte_terminal_select_text(VteTerminal *terminal,
|
||||||
|
+ long start_col, long start_row,
|
||||||
|
+ long end_col, long end_row) _VTE_GNUC_NONNULL(1);
|
||||||
|
+char *
|
||||||
|
+vte_terminal_get_selection(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
|
||||||
|
+
|
||||||
|
+/* 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,
|
||||||
|
@@ -276,6 +288,8 @@
|
||||||
|
void vte_terminal_get_cursor_position(VteTerminal *terminal,
|
||||||
|
glong *column,
|
||||||
|
glong *row) _VTE_GNUC_NONNULL(1);
|
||||||
|
+void vte_terminal_set_cursor_position(VteTerminal *terminal,
|
||||||
|
+ long column, long row) _VTE_GNUC_NONNULL(1);
|
||||||
|
|
||||||
|
/* Add a matching expression, returning the tag the widget assigns to that
|
||||||
|
* expression. */
|
@ -1,7 +1,20 @@
|
|||||||
diff -aur vte-0.32.2-old/src/vte.c vte-0.32.2/src/vte.c
|
Only in vte-0.38.0.new: expose_select_text.patch
|
||||||
--- vte-0.32.2-old/src/vte.c 2012-07-13 21:09:04.003969877 -0400
|
diff -aur vte-0.38.0/src/vteaccess.c vte-0.38.0.new/src/vteaccess.c
|
||||||
+++ vte-0.32.2/src/vte.c 2012-08-30 04:30:04.285924831 -0400
|
--- vte-0.38.0/src/vteaccess.c 2014-08-13 08:00:38.000000000 -0400
|
||||||
@@ -129,7 +129,6 @@
|
+++ vte-0.38.0.new/src/vteaccess.c 2014-09-21 17:05:23.934641193 -0400
|
||||||
|
@@ -1427,7 +1427,7 @@
|
||||||
|
*start_offset = offset_from_xy (priv, start_x, start_y);
|
||||||
|
_vte_terminal_get_end_selection (terminal, &end_x, &end_y);
|
||||||
|
*end_offset = offset_from_xy (priv, end_x, end_y);
|
||||||
|
- return _vte_terminal_get_selection (terminal);
|
||||||
|
+ return vte_terminal_get_selection (terminal);
|
||||||
|
}
|
||||||
|
|
||||||
|
static gboolean
|
||||||
|
diff -aur vte-0.38.0/src/vte.c vte-0.38.0.new/src/vte.c
|
||||||
|
--- vte-0.38.0/src/vte.c 2014-09-13 03:23:47.000000000 -0400
|
||||||
|
+++ vte-0.38.0.new/src/vte.c 2014-09-21 17:03:04.671656749 -0400
|
||||||
|
@@ -122,7 +122,6 @@
|
||||||
gpointer data,
|
gpointer data,
|
||||||
GArray *attributes,
|
GArray *attributes,
|
||||||
gboolean include_trailing_spaces);
|
gboolean include_trailing_spaces);
|
||||||
@ -9,7 +22,7 @@ diff -aur vte-0.32.2-old/src/vte.c vte-0.32.2/src/vte.c
|
|||||||
static void _vte_terminal_disconnect_pty_write(VteTerminal *terminal);
|
static void _vte_terminal_disconnect_pty_write(VteTerminal *terminal);
|
||||||
static void vte_terminal_stop_processing (VteTerminal *terminal);
|
static void vte_terminal_stop_processing (VteTerminal *terminal);
|
||||||
|
|
||||||
@@ -3508,8 +3507,8 @@
|
@@ -3267,9 +3266,10 @@
|
||||||
_vte_debug_print (VTE_DEBUG_IO, "removed poll of vte_terminal_io_read\n");
|
_vte_debug_print (VTE_DEBUG_IO, "removed poll of vte_terminal_io_read\n");
|
||||||
terminal->pvt->pty_input_source = 0;
|
terminal->pvt->pty_input_source = 0;
|
||||||
}
|
}
|
||||||
@ -18,9 +31,11 @@ diff -aur vte-0.32.2-old/src/vte.c vte-0.32.2/src/vte.c
|
|||||||
+void
|
+void
|
||||||
+vte_terminal_connect_pty_read(VteTerminal *terminal)
|
+vte_terminal_connect_pty_read(VteTerminal *terminal)
|
||||||
{
|
{
|
||||||
|
+ g_return_if_fail(VTE_IS_TERMINAL(terminal));
|
||||||
if (terminal->pvt->pty_channel == NULL) {
|
if (terminal->pvt->pty_channel == NULL) {
|
||||||
return;
|
return;
|
||||||
@@ -3560,8 +3559,8 @@
|
}
|
||||||
|
@@ -3321,9 +3321,10 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -29,29 +44,11 @@ diff -aur vte-0.32.2-old/src/vte.c vte-0.32.2/src/vte.c
|
|||||||
+void
|
+void
|
||||||
+vte_terminal_disconnect_pty_read(VteTerminal *terminal)
|
+vte_terminal_disconnect_pty_read(VteTerminal *terminal)
|
||||||
{
|
{
|
||||||
|
+ g_return_if_fail(VTE_IS_TERMINAL(terminal));
|
||||||
if (terminal->pvt->pty_input_source != 0) {
|
if (terminal->pvt->pty_input_source != 0) {
|
||||||
_vte_debug_print (VTE_DEBUG_IO, "disconnecting poll of vte_terminal_io_read\n");
|
_vte_debug_print (VTE_DEBUG_IO, "disconnecting poll of vte_terminal_io_read\n");
|
||||||
@@ -3708,8 +3707,8 @@
|
g_source_remove(terminal->pvt->pty_input_source);
|
||||||
return NULL;
|
@@ -6154,6 +6155,28 @@
|
||||||
}
|
|
||||||
|
|
||||||
-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 @@
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -80,8 +77,8 @@ diff -aur vte-0.32.2-old/src/vte.c vte-0.32.2/src/vte.c
|
|||||||
static GtkClipboard *
|
static GtkClipboard *
|
||||||
vte_terminal_clipboard_get(VteTerminal *terminal, GdkAtom board)
|
vte_terminal_clipboard_get(VteTerminal *terminal, GdkAtom board)
|
||||||
{
|
{
|
||||||
@@ -6676,7 +6697,7 @@
|
@@ -6319,7 +6342,7 @@
|
||||||
terminal->pvt->selection_start.row);
|
vte_terminal_extend_selection(terminal, x, y, FALSE, TRUE);
|
||||||
|
|
||||||
/* Temporarily stop caring about input from the child. */
|
/* Temporarily stop caring about input from the child. */
|
||||||
- _vte_terminal_disconnect_pty_read(terminal);
|
- _vte_terminal_disconnect_pty_read(terminal);
|
||||||
@ -89,7 +86,7 @@ diff -aur vte-0.32.2-old/src/vte.c vte-0.32.2/src/vte.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
@@ -6693,7 +6714,7 @@
|
@@ -6336,7 +6359,7 @@
|
||||||
terminal->pvt->selecting = FALSE;
|
terminal->pvt->selecting = FALSE;
|
||||||
|
|
||||||
/* Reconnect to input from the child if we paused it. */
|
/* Reconnect to input from the child if we paused it. */
|
||||||
@ -98,35 +95,8 @@ diff -aur vte-0.32.2-old/src/vte.c vte-0.32.2/src/vte.c
|
|||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
@@ -8994,7 +9015,7 @@
|
@@ -6834,6 +6857,50 @@
|
||||||
#endif
|
vte_terminal_deselect_all (terminal);
|
||||||
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 @@
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
+/**
|
+/**
|
||||||
@ -173,21 +143,72 @@ diff -aur vte-0.32.2-old/src/vte.c vte-0.32.2/src/vte.c
|
|||||||
+ _vte_terminal_select_text(terminal, start_col, start_row, end_col, end_row, 0, 0);
|
+ _vte_terminal_select_text(terminal, start_col, start_row, end_col, end_row, 0, 0);
|
||||||
+}
|
+}
|
||||||
+
|
+
|
||||||
void
|
/* Autoscroll a bit. */
|
||||||
_vte_terminal_select_text(VteTerminal *terminal,
|
static gboolean
|
||||||
long start_col, long start_row,
|
vte_terminal_autoscroll(VteTerminal *terminal)
|
||||||
diff -aur vte-0.32.2-old/src/vte.h vte-0.32.2/src/vte.h
|
@@ -8476,7 +8543,7 @@
|
||||||
--- vte-0.32.2-old/src/vte.h 2012-07-13 21:09:04.003969877 -0400
|
#endif
|
||||||
+++ vte-0.32.2/src/vte.h 2012-08-30 04:30:09.695999432 -0400
|
kill(terminal->pvt->pty_pid, SIGHUP);
|
||||||
@@ -296,6 +296,15 @@
|
}
|
||||||
/* simple manipulation of selection */
|
- _vte_terminal_disconnect_pty_read(terminal);
|
||||||
void vte_terminal_select_all(VteTerminal *terminal);
|
+ vte_terminal_disconnect_pty_read(terminal);
|
||||||
void vte_terminal_select_none(VteTerminal *terminal);
|
_vte_terminal_disconnect_pty_write(terminal);
|
||||||
+gboolean vte_terminal_get_selection_block_mode(VteTerminal *terminal);
|
if (terminal->pvt->pty_channel != NULL) {
|
||||||
+void vte_terminal_set_selection_block_mode(VteTerminal *terminal, gboolean block_mode);
|
g_io_channel_unref (terminal->pvt->pty_channel);
|
||||||
|
@@ -12533,7 +12600,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) {
|
||||||
|
@@ -12588,7 +12655,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");
|
||||||
|
|
||||||
|
@@ -12623,7 +12690,7 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
char *
|
||||||
|
-_vte_terminal_get_selection(VteTerminal *terminal)
|
||||||
|
+vte_terminal_get_selection(VteTerminal *terminal)
|
||||||
|
{
|
||||||
|
g_return_val_if_fail(VTE_IS_TERMINAL(terminal), NULL);
|
||||||
|
|
||||||
|
Only in vte-0.38.0.new/src: .vte.c.swp
|
||||||
|
diff -aur vte-0.38.0/src/vteint.h vte-0.38.0.new/src/vteint.h
|
||||||
|
--- vte-0.38.0/src/vteint.h 2014-05-16 13:51:26.000000000 -0400
|
||||||
|
+++ vte-0.38.0.new/src/vteint.h 2014-09-21 17:05:44.934589281 -0400
|
||||||
|
@@ -25,7 +25,6 @@
|
||||||
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
void _vte_terminal_accessible_ref(VteTerminal *terminal);
|
||||||
|
-char* _vte_terminal_get_selection(VteTerminal *terminal);
|
||||||
|
void _vte_terminal_get_start_selection(VteTerminal *terminal, long *x, long *y);
|
||||||
|
void _vte_terminal_get_end_selection(VteTerminal *terminal, long *x, long *y);
|
||||||
|
void _vte_terminal_select_text(VteTerminal *terminal, long start_x, long start_y, long end_x, long end_y, int start_offset, int end_offset);
|
||||||
|
diff -aur vte-0.38.0/src/vteterminal.h vte-0.38.0.new/src/vteterminal.h
|
||||||
|
--- vte-0.38.0/src/vteterminal.h 2014-09-13 03:23:47.000000000 -0400
|
||||||
|
+++ vte-0.38.0.new/src/vteterminal.h 2014-09-21 17:03:39.094903032 -0400
|
||||||
|
@@ -170,6 +170,18 @@
|
||||||
|
|
||||||
|
void vte_terminal_select_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
|
||||||
|
void vte_terminal_unselect_all(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
|
||||||
|
+gboolean vte_terminal_get_selection_block_mode(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
|
||||||
|
+void vte_terminal_set_selection_block_mode(VteTerminal *terminal,
|
||||||
|
+ gboolean block_mode) _VTE_GNUC_NONNULL(1);
|
||||||
+void vte_terminal_select_text(VteTerminal *terminal,
|
+void vte_terminal_select_text(VteTerminal *terminal,
|
||||||
+ long start_col, long start_row,
|
+ long start_col, long start_row,
|
||||||
+ long end_col, long end_row);
|
+ long end_col, long end_row) _VTE_GNUC_NONNULL(1);
|
||||||
|
+char *
|
||||||
|
+vte_terminal_get_selection(VteTerminal *terminal) _VTE_GNUC_NONNULL(1);
|
||||||
+
|
+
|
||||||
+/* pause and unpause output */
|
+/* pause and unpause output */
|
||||||
+void vte_terminal_disconnect_pty_read(VteTerminal *vte);
|
+void vte_terminal_disconnect_pty_read(VteTerminal *vte);
|
||||||
@ -195,20 +216,12 @@ diff -aur vte-0.32.2-old/src/vte.h vte-0.32.2/src/vte.h
|
|||||||
|
|
||||||
/* Set the terminal's size. */
|
/* Set the terminal's size. */
|
||||||
void vte_terminal_set_size(VteTerminal *terminal,
|
void vte_terminal_set_size(VteTerminal *terminal,
|
||||||
@@ -435,6 +444,8 @@
|
@@ -276,6 +288,8 @@
|
||||||
GArray *attributes);
|
|
||||||
void vte_terminal_get_cursor_position(VteTerminal *terminal,
|
void vte_terminal_get_cursor_position(VteTerminal *terminal,
|
||||||
glong *column, glong *row);
|
glong *column,
|
||||||
|
glong *row) _VTE_GNUC_NONNULL(1);
|
||||||
+void vte_terminal_set_cursor_position(VteTerminal *terminal,
|
+void vte_terminal_set_cursor_position(VteTerminal *terminal,
|
||||||
+ long column, long row);
|
+ long column, long row) _VTE_GNUC_NONNULL(1);
|
||||||
/* Display string matching: clear all matching expressions. */
|
|
||||||
void vte_terminal_match_clear_all(VteTerminal *terminal);
|
|
||||||
|
|
||||||
@@ -484,6 +495,7 @@
|
/* Add a matching expression, returning the tag the widget assigns to that
|
||||||
VtePty *vte_terminal_get_pty_object(VteTerminal *terminal);
|
* expression. */
|
||||||
|
|
||||||
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)
|
|
||||||
|
@ -168,7 +168,9 @@ rec {
|
|||||||
|
|
||||||
vte = callPackage ./core/vte { };
|
vte = callPackage ./core/vte { };
|
||||||
|
|
||||||
vte-select-text = callPackage ./core/vte { selectTextPatch = true; };
|
vte_038 = callPackage ./core/vte/0.38.0.nix { }; # To be moved in gnome 3.14 when available
|
||||||
|
|
||||||
|
vte-select-text = vte_038.override { selectTextPatch = true; };
|
||||||
|
|
||||||
vino = callPackage ./core/vino { };
|
vino = callPackage ./core/vino { };
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user