diff options
author | Chong Yidong <cyd@stupidchicken.com> | 2010-07-31 17:26:56 -0400 |
---|---|---|
committer | Chong Yidong <cyd@stupidchicken.com> | 2010-07-31 17:26:56 -0400 |
commit | 1604140125ce14c18a9d42a655af40dab892e959 (patch) | |
tree | d0d9faaea1d71a23609d6fbca20f1b5fed37eb2a /src/xselect.c | |
parent | 452ea85502011e18e4b290fbcb4fe461ab6aace9 (diff) | |
download | emacs-1604140125ce14c18a9d42a655af40dab892e959.tar.gz |
Adapt mouse-3 behavior to recent selection changes (Bug#6701).
* lisp/mouse.el (mouse-save-then-kill): Doc fix. Deactivate mark
before killing to preserve the primary selection.
* lisp/term/x-win.el (x-select-text): Doc fix.
* src/xselect.c (x_own_selection): Use list4.
Diffstat (limited to 'src/xselect.c')
-rw-r--r-- | src/xselect.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/src/xselect.c b/src/xselect.c index 69d9ca868c4..ceb856b8dae 100644 --- a/src/xselect.c +++ b/src/xselect.c @@ -392,7 +392,7 @@ x_own_selection (Lisp_Object selection_name, Lisp_Object selection_value) selecting_window = FRAME_X_WINDOW (sf); display = FRAME_X_DISPLAY (sf); dpyinfo = FRAME_X_DISPLAY_INFO (sf); - + CHECK_SYMBOL (selection_name); selection_atom = symbol_to_x_atom (dpyinfo, display, selection_name); @@ -410,10 +410,8 @@ x_own_selection (Lisp_Object selection_name, Lisp_Object selection_value) Lisp_Object prev_value; selection_time = long_to_cons ((unsigned long) time); - selection_data = Fcons (selection_name, - Fcons (selection_value, - Fcons (selection_time, - Fcons (selected_frame, Qnil)))); + selection_data = list4 (selection_name, selection_value, + selection_time, selected_frame); prev_value = assq_no_quit (selection_name, Vselection_alist); Vselection_alist = Fcons (selection_data, Vselection_alist); @@ -1015,7 +1013,7 @@ x_handle_selection_clear (struct input_event *event) } } UNBLOCK_INPUT; - + selection_symbol = x_atom_to_symbol (display, selection); local_selection_data = assq_no_quit (selection_symbol, Vselection_alist); @@ -2416,7 +2414,7 @@ Positive N means shift the values forward, negative means backward. */) Atom props[8]; Display *display; struct frame *sf = SELECTED_FRAME (); - + check_x (); if (! FRAME_X_P (sf)) |