diff options
author | Michael Januszewski <spock@gentoo.org> | 2004-03-30 16:22:21 +0000 |
---|---|---|
committer | Michael Januszewski <spock@gentoo.org> | 2004-03-30 16:22:21 +0000 |
commit | 9e63180d9373554d14cf358bb137d3bf01069b69 (patch) | |
tree | 4f7f5fdc9887f3655a7674c2fe8e5f7009f336c3 /x11-terms/aterm | |
parent | dont force autoconf 2.5 anymore (diff) | |
download | historical-9e63180d9373554d14cf358bb137d3bf01069b69.tar.gz historical-9e63180d9373554d14cf358bb137d3bf01069b69.tar.bz2 historical-9e63180d9373554d14cf358bb137d3bf01069b69.zip |
Fixed a bug in the copynpaste patch
Diffstat (limited to 'x11-terms/aterm')
-rw-r--r-- | x11-terms/aterm/ChangeLog | 7 | ||||
-rw-r--r-- | x11-terms/aterm/Manifest | 4 | ||||
-rw-r--r-- | x11-terms/aterm/files/aterm-0.4.2-copynpaste-r3.patch | 67 |
3 files changed, 52 insertions, 26 deletions
diff --git a/x11-terms/aterm/ChangeLog b/x11-terms/aterm/ChangeLog index a65432196f47..13174e96f8e8 100644 --- a/x11-terms/aterm/ChangeLog +++ b/x11-terms/aterm/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for x11-terms/aterm # Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-terms/aterm/ChangeLog,v 1.26 2004/03/29 18:17:01 spock Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-terms/aterm/ChangeLog,v 1.27 2004/03/30 16:22:21 spock Exp $ + + 30 Mar 2004; Michal Januszewski <spock@gentoo.org> + files/aterm-0.4.2-copynpaste-r3.patch: + There was a nasty bug in the patch I created yesterday, so here it is - an + updated version. 28 Mar 2004; Jon Portnoy <avenj@gentoo.org> aterm-0.4.2-r8.ebuild : Stable on AMD64. diff --git a/x11-terms/aterm/Manifest b/x11-terms/aterm/Manifest index e05147f37619..019b5b260173 100644 --- a/x11-terms/aterm/Manifest +++ b/x11-terms/aterm/Manifest @@ -2,7 +2,7 @@ MD5 39fab23f3d154c504290a1f5b05b7bfa aterm-0.4.2-r6.ebuild 1728 MD5 82d6a84c880beaaf828b403f85c7947a aterm-0.4.2-r8.ebuild 2072 MD5 de532a0e98220e88d435f1e71277a65e aterm-0.4.2-r5.ebuild 1683 MD5 a16f26c1a4907189f4abee01d3b7a2da aterm-0.4.2-r7.ebuild 1867 -MD5 c326cbe17dc5311c504f7b5bf0ed576a ChangeLog 4856 +MD5 ebff51b294e543fec52dfeff9bbe93d7 ChangeLog 5047 MD5 29c21e0e5929d2c56db886e5863b8206 aterm-0.4.2-r9.ebuild 2076 MD5 d94d306da3804e41296e1bf04c7c9cae metadata.xml 255 MD5 d596cd5469dbf091309b86930c24c09c aterm-0.4.2-r4.ebuild 1624 @@ -16,7 +16,7 @@ MD5 4f1a0f3cc352be6439ac5810085e1be0 files/digest-aterm-0.4.2-r9 128 MD5 1ddbe9b625c32cb9e67d8ee23af57110 files/aterm-0.4.2-patch-pack000.patch 4124 MD5 df2652026f1f4f3e4444db9cddc145b6 files/aterm-0.4.2-qtpaste.patch 2510 MD5 cc3291cba64add4b46d22268878043f7 files/aterm-0.4.2-copynpaste-r2.patch 5308 -MD5 3f4cd84a716934eb1fdb3e380f839072 files/aterm-0.4.2-copynpaste-r3.patch 5518 +MD5 80558db5a2d61eaaf6998877b616bbd0 files/aterm-0.4.2-copynpaste-r3.patch 6358 MD5 e91e244a20f4bff5ed4238e4cdb4d87a files/aterm-0.4.2-paste_mouse_outside.patch 6267 MD5 1c869d8199dea55badd3758c5967e182 files/aterm-0.4.2-copynpaste.patch 3668 MD5 56383dccdb085d09e33858081b774724 files/aterm-0.4.2-borderless.patch 4692 diff --git a/x11-terms/aterm/files/aterm-0.4.2-copynpaste-r3.patch b/x11-terms/aterm/files/aterm-0.4.2-copynpaste-r3.patch index bf837a6f3d90..7d6db9becae8 100644 --- a/x11-terms/aterm/files/aterm-0.4.2-copynpaste-r3.patch +++ b/x11-terms/aterm/files/aterm-0.4.2-copynpaste-r3.patch @@ -1,6 +1,6 @@ diff -Naur aterm-orig/configure aterm-0.4.2/configure --- aterm-orig/configure 2001-09-06 18:38:07.000000000 +0200 -+++ aterm-0.4.2/configure 2004-03-29 19:38:49.923263224 +0200 ++++ aterm-0.4.2/configure 2004-03-30 18:14:38.189000472 +0200 @@ -2609,7 +2609,7 @@ ; \ do @@ -12,7 +12,7 @@ diff -Naur aterm-orig/configure aterm-0.4.2/configure #include "confdefs.h" diff -Naur aterm-orig/src/command.c aterm-0.4.2/src/command.c --- aterm-orig/src/command.c 2001-09-06 18:38:07.000000000 +0200 -+++ aterm-0.4.2/src/command.c 2004-03-29 19:38:49.928262464 +0200 ++++ aterm-0.4.2/src/command.c 2004-03-30 18:14:38.193999712 +0200 @@ -2653,7 +2653,7 @@ switch (ev->xbutton.button) { case Button1: @@ -23,8 +23,8 @@ diff -Naur aterm-orig/src/command.c aterm-0.4.2/src/command.c case Button2: diff -Naur aterm-orig/src/screen.c aterm-0.4.2/src/screen.c ---- aterm-orig/src/screen.c 2004-03-29 19:38:25.944908488 +0200 -+++ aterm-0.4.2/src/screen.c 2004-03-29 19:28:56.000000000 +0200 +--- aterm-orig/src/screen.c 2004-03-30 18:13:11.070244536 +0200 ++++ aterm-0.4.2/src/screen.c 2004-03-30 18:06:42.000000000 +0200 @@ -44,7 +44,7 @@ #include <X11/Xatom.h> @@ -34,23 +34,34 @@ diff -Naur aterm-orig/src/screen.c aterm-0.4.2/src/screen.c static screen_t screen; -@@ -2759,21 +2759,88 @@ +@@ -2759,21 +2759,97 @@ long nread; unsigned long bytes_after, nitems; unsigned char *data; + XTextProperty ct; Atom actual_type; int actual_fmt; -- + int dummy_count; + char **cl; + XEvent ev; + XWindowAttributes wa; + int setpropertyevent = 0; + - if (prop == None) - return; -+ ++ if (prop == None) { ++ prop = XInternAtom(Xdisplay, "VT_SELECTION", False); ++ ++ if (selection.type == 0) { ++ selection.type++; ++ XConvertSelection(Xdisplay, XA_PRIMARY, XA_UTF8_STRING(Xdisplay), prop, TermWin.vt,selection.request_time); ++ } else if (selection.type == 1) { ++ selection.type++; ++ XConvertSelection(Xdisplay, XA_PRIMARY, XA_STRING, prop, TermWin.vt,selection.request_time); ++ } ++ return; ++ } + +- if (prop == None) +- return; for (nread = 0, bytes_after = 1; bytes_after > 0; nread += nitems) { if ((XGetWindowProperty(Xdisplay, win, prop, (nread / 4), PROP_SIZE, - Delete, AnyPropertyType, &actual_type, @@ -114,47 +125,45 @@ diff -Naur aterm-orig/src/screen.c aterm-0.4.2/src/screen.c + /* + * This is a normal 1-time paste + */ ++ if (Delete) { ++ XDeleteProperty(Xdisplay, win, prop); ++ } ++ + if (XmbTextPropertyToTextList(Xdisplay, &ct, &cl, &dummy_count) == Success && cl) { + PasteIt(cl[0], strlen(cl[0])); + XFreeStringList(cl); + } else { + PasteIt(ct.value, (unsigned int)ct.nitems); + } -+ -+ if (Delete) { -+ XDeleteProperty(Xdisplay, win, prop); -+ } -+ + XFree(ct.value); + } } } -@@ -2787,6 +2854,9 @@ +@@ -2787,6 +2863,11 @@ selection_request(Time tm, int x, int y) { Atom prop; + Atom xa; + + xa = XInternAtom(Xdisplay, "COMPOUND_TEXT", False); ++ ++ selection.request_time = tm; if (!(Options & Opt_pasteMouseOutside)) if (x < 0 || x >= TermWin.width || y < 0 || y >= TermWin.height) -@@ -2798,8 +2868,11 @@ +@@ -2798,8 +2879,8 @@ selection_paste(Xroot, XA_CUT_BUFFER0, False); } else { prop = XInternAtom(Xdisplay, "VT_SELECTION", False); - XConvertSelection(Xdisplay, XA_PRIMARY, XA_STRING, prop, TermWin.vt, - tm); -+ if (XConvertSelection(Xdisplay, XA_PRIMARY, xa, prop, TermWin.vt,tm) != Success) { -+ if (XConvertSelection(Xdisplay, XA_PRIMARY, XA_UTF8_STRING(Xdisplay), prop, TermWin.vt,tm) != Success) {; -+ XConvertSelection(Xdisplay, XA_PRIMARY, XA_STRING, prop, TermWin.vt,tm); -+ } -+ } ++ selection.type = 0; ++ XConvertSelection(Xdisplay, XA_PRIMARY, xa, prop, TermWin.vt,tm); } } -@@ -2828,7 +2901,7 @@ +@@ -2828,7 +2909,7 @@ */ /* PROTO */ void @@ -163,7 +172,7 @@ diff -Naur aterm-orig/src/screen.c aterm-0.4.2/src/screen.c { int i, col, end_col, row, end_row; unsigned char *new_selection_text; -@@ -2895,7 +2968,13 @@ +@@ -2895,7 +2976,13 @@ FREE(selection.text); selection.text = new_selection_text; @@ -178,3 +187,15 @@ diff -Naur aterm-orig/src/screen.c aterm-0.4.2/src/screen.c if (XGetSelectionOwner(Xdisplay, XA_PRIMARY) != TermWin.vt) print_error("can't get primary selection"); XChangeProperty(Xdisplay, Xroot, XA_CUT_BUFFER0, XA_STRING, 8, +diff -Naur aterm-orig/src/screen.h aterm-0.4.2/src/screen.h +--- aterm-orig/src/screen.h 2001-09-06 18:38:07.000000000 +0200 ++++ aterm-0.4.2/src/screen.h 2004-03-30 18:00:53.000000000 +0200 +@@ -88,6 +88,8 @@ + short screen; /* screen being used */ + short clicks; /* number of clicks */ + row_col_t beg, mark, end; ++ char type; ++ int request_time; + } selection_t; + + /* ------------------------------------------------------------------------- */ |