summaryrefslogtreecommitdiffstats
path: root/x11-libs/vte/files/vte-0.30.1-ds-mc.diff
diff options
context:
space:
mode:
Diffstat (limited to 'x11-libs/vte/files/vte-0.30.1-ds-mc.diff')
-rw-r--r--x11-libs/vte/files/vte-0.30.1-ds-mc.diff43
1 files changed, 43 insertions, 0 deletions
diff --git a/x11-libs/vte/files/vte-0.30.1-ds-mc.diff b/x11-libs/vte/files/vte-0.30.1-ds-mc.diff
new file mode 100644
index 0000000..effeff2
--- /dev/null
+++ b/x11-libs/vte/files/vte-0.30.1-ds-mc.diff
@@ -0,0 +1,43 @@
+diff -dPNur vte-0.30.1/src/vte.c vte-0.30.1-ds/src/vte.c
+--- vte-0.30.1/src/vte.c 2011-09-26 14:32:48.000000000 +0200
++++ vte-0.30.1-ds/src/vte.c 2012-01-23 02:12:16.000000000 +0100
+@@ -5389,7 +5390,9 @@
+ break;
+ case GDK_KEY (KP_Insert):
+ case GDK_KEY (Insert):
+- if (modifiers & GDK_SHIFT_MASK) {
++ //printf("%lx %s\n", modifiers, terminal->window_title);
++ if (strncmp(terminal->window_title, "mc", 2)) {
++ if (modifiers & GDK_SHIFT_MASK) {
+ if (modifiers & GDK_CONTROL_MASK) {
+ vte_terminal_paste_clipboard(terminal);
+ handled = TRUE;
+@@ -5399,10 +5402,27 @@
+ handled = TRUE;
+ suppress_meta_esc = TRUE;
+ }
+- } else if (modifiers & GDK_CONTROL_MASK) {
++ } else if (modifiers & GDK_CONTROL_MASK) {
+ vte_terminal_copy_clipboard(terminal);
+ handled = TRUE;
+ suppress_meta_esc = TRUE;
++ }
++ }
++
++ if ((modifiers & (GDK_CONTROL_MASK|GDK_SHIFT_MASK)) == (GDK_CONTROL_MASK|GDK_SHIFT_MASK)) {
++ vte_terminal_paste_primary(terminal);
++ handled = TRUE;
++ suppress_meta_esc = TRUE;
++ } else if (modifiers & (GDK_MOD1_MASK|GDK_META_MASK|0x2000)) {
++ if (modifiers & GDK_CONTROL_MASK) {
++ vte_terminal_copy_clipboard(terminal);
++ handled = TRUE;
++ suppress_meta_esc = TRUE;
++ } else if (modifiers & GDK_SHIFT_MASK) {
++ vte_terminal_paste_clipboard(terminal);
++ handled = TRUE;
++ suppress_meta_esc = TRUE;
++ }
+ }
+ break;
+ /* Keypad/motion keys. */