diff options
| author | Chong Yidong | 2010-07-31 17:26:56 -0400 |
|---|---|---|
| committer | Chong Yidong | 2010-07-31 17:26:56 -0400 |
| commit | 1604140125ce14c18a9d42a655af40dab892e959 (patch) | |
| tree | d0d9faaea1d71a23609d6fbca20f1b5fed37eb2a /src | |
| parent | 452ea85502011e18e4b290fbcb4fe461ab6aace9 (diff) | |
| download | emacs-1604140125ce14c18a9d42a655af40dab892e959.tar.gz emacs-1604140125ce14c18a9d42a655af40dab892e959.zip | |
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')
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/xselect.c | 12 |
2 files changed, 9 insertions, 7 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index e2832c49bde..ee745778951 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2010-07-31 Chong Yidong <cyd@stupidchicken.com> | ||
| 2 | |||
| 3 | * xselect.c (x_own_selection): Use list4. | ||
| 4 | |||
| 1 | 2010-07-30 Dan Nicolaescu <dann@ics.uci.edu> | 5 | 2010-07-30 Dan Nicolaescu <dann@ics.uci.edu> |
| 2 | 6 | ||
| 3 | * buffer.c (Qwindow): Do not define, already defined in data.c. | 7 | * buffer.c (Qwindow): Do not define, already defined in data.c. |
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) | |||
| 392 | selecting_window = FRAME_X_WINDOW (sf); | 392 | selecting_window = FRAME_X_WINDOW (sf); |
| 393 | display = FRAME_X_DISPLAY (sf); | 393 | display = FRAME_X_DISPLAY (sf); |
| 394 | dpyinfo = FRAME_X_DISPLAY_INFO (sf); | 394 | dpyinfo = FRAME_X_DISPLAY_INFO (sf); |
| 395 | 395 | ||
| 396 | CHECK_SYMBOL (selection_name); | 396 | CHECK_SYMBOL (selection_name); |
| 397 | selection_atom = symbol_to_x_atom (dpyinfo, display, selection_name); | 397 | selection_atom = symbol_to_x_atom (dpyinfo, display, selection_name); |
| 398 | 398 | ||
| @@ -410,10 +410,8 @@ x_own_selection (Lisp_Object selection_name, Lisp_Object selection_value) | |||
| 410 | Lisp_Object prev_value; | 410 | Lisp_Object prev_value; |
| 411 | 411 | ||
| 412 | selection_time = long_to_cons ((unsigned long) time); | 412 | selection_time = long_to_cons ((unsigned long) time); |
| 413 | selection_data = Fcons (selection_name, | 413 | selection_data = list4 (selection_name, selection_value, |
| 414 | Fcons (selection_value, | 414 | selection_time, selected_frame); |
| 415 | Fcons (selection_time, | ||
| 416 | Fcons (selected_frame, Qnil)))); | ||
| 417 | prev_value = assq_no_quit (selection_name, Vselection_alist); | 415 | prev_value = assq_no_quit (selection_name, Vselection_alist); |
| 418 | 416 | ||
| 419 | Vselection_alist = Fcons (selection_data, Vselection_alist); | 417 | Vselection_alist = Fcons (selection_data, Vselection_alist); |
| @@ -1015,7 +1013,7 @@ x_handle_selection_clear (struct input_event *event) | |||
| 1015 | } | 1013 | } |
| 1016 | } | 1014 | } |
| 1017 | UNBLOCK_INPUT; | 1015 | UNBLOCK_INPUT; |
| 1018 | 1016 | ||
| 1019 | selection_symbol = x_atom_to_symbol (display, selection); | 1017 | selection_symbol = x_atom_to_symbol (display, selection); |
| 1020 | 1018 | ||
| 1021 | local_selection_data = assq_no_quit (selection_symbol, Vselection_alist); | 1019 | local_selection_data = assq_no_quit (selection_symbol, Vselection_alist); |
| @@ -2416,7 +2414,7 @@ Positive N means shift the values forward, negative means backward. */) | |||
| 2416 | Atom props[8]; | 2414 | Atom props[8]; |
| 2417 | Display *display; | 2415 | Display *display; |
| 2418 | struct frame *sf = SELECTED_FRAME (); | 2416 | struct frame *sf = SELECTED_FRAME (); |
| 2419 | 2417 | ||
| 2420 | check_x (); | 2418 | check_x (); |
| 2421 | 2419 | ||
| 2422 | if (! FRAME_X_P (sf)) | 2420 | if (! FRAME_X_P (sf)) |