mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-16 17:24:23 +00:00
Fix execution of x selection hooks.
* xselect.c (Qx_lost_selection_functions) (Qx_sent_selection_functions): New vars. (syms_of_xselect): DEFSYM them. (x_handle_selection_request): Pass Qx_sent_selection_functions rather than Vx_sent_selection_functions to Frun_hook_with_args. (x_handle_selection_clear,x_clear_frame_selections): Pass Qx_lost_selection_functions rather than Vx_lost_selection_functions to Frun_hook_with_args.
This commit is contained in:
parent
2941c447eb
commit
cd18e7e3f4
2 changed files with 19 additions and 4 deletions
|
|
@ -1,3 +1,15 @@
|
|||
2011-07-13 Johan Bockgård <bojohan@gnu.org>
|
||||
|
||||
Fix execution of x selection hooks.
|
||||
* xselect.c (Qx_lost_selection_functions)
|
||||
(Qx_sent_selection_functions): New vars.
|
||||
(syms_of_xselect): DEFSYM them.
|
||||
(x_handle_selection_request): Pass Qx_sent_selection_functions
|
||||
rather than Vx_sent_selection_functions to Frun_hook_with_args.
|
||||
(x_handle_selection_clear,x_clear_frame_selections):
|
||||
Pass Qx_lost_selection_functions rather than
|
||||
Vx_lost_selection_functions to Frun_hook_with_args.
|
||||
|
||||
2011-07-13 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
* buffer.c (Fget_buffer_create): Initialized inhibit_shrinking.
|
||||
|
|
|
|||
|
|
@ -112,6 +112,7 @@ static Lisp_Object QUTF8_STRING; /* This is a type of selection. */
|
|||
static Lisp_Object Qcompound_text_with_extensions;
|
||||
|
||||
static Lisp_Object Qforeign_selection;
|
||||
static Lisp_Object Qx_lost_selection_functions, Qx_sent_selection_functions;
|
||||
|
||||
/* If this is a smaller number than the max-request-size of the display,
|
||||
emacs will use INCR selection transfer when the selection is larger
|
||||
|
|
@ -855,7 +856,7 @@ x_handle_selection_request (struct input_event *event)
|
|||
&& !EQ (Vx_sent_selection_functions, Qunbound))
|
||||
{
|
||||
Lisp_Object args[4];
|
||||
args[0] = Vx_sent_selection_functions;
|
||||
args[0] = Qx_sent_selection_functions;
|
||||
args[1] = selection_symbol;
|
||||
args[2] = target_symbol;
|
||||
args[3] = success ? Qt : Qnil;
|
||||
|
|
@ -979,7 +980,7 @@ x_handle_selection_clear (struct input_event *event)
|
|||
/* Run the `x-lost-selection-functions' abnormal hook. */
|
||||
{
|
||||
Lisp_Object args[2];
|
||||
args[0] = Vx_lost_selection_functions;
|
||||
args[0] = Qx_lost_selection_functions;
|
||||
args[1] = selection_symbol;
|
||||
Frun_hook_with_args (2, args);
|
||||
}
|
||||
|
|
@ -1020,7 +1021,7 @@ x_clear_frame_selections (FRAME_PTR f)
|
|||
{
|
||||
/* Run the `x-lost-selection-functions' abnormal hook. */
|
||||
Lisp_Object args[2];
|
||||
args[0] = Vx_lost_selection_functions;
|
||||
args[0] = Qx_lost_selection_functions;
|
||||
args[1] = Fcar (Fcar (t->Vselection_alist));
|
||||
Frun_hook_with_args (2, args);
|
||||
|
||||
|
|
@ -1033,7 +1034,7 @@ x_clear_frame_selections (FRAME_PTR f)
|
|||
&& EQ (frame, XCAR (XCDR (XCDR (XCDR (XCAR (XCDR (rest))))))))
|
||||
{
|
||||
Lisp_Object args[2];
|
||||
args[0] = Vx_lost_selection_functions;
|
||||
args[0] = Qx_lost_selection_functions;
|
||||
args[1] = XCAR (XCAR (XCDR (rest)));
|
||||
Frun_hook_with_args (2, args);
|
||||
XSETCDR (rest, XCDR (XCDR (rest)));
|
||||
|
|
@ -2679,4 +2680,6 @@ A value of 0 means wait as long as necessary. This is initialized from the
|
|||
DEFSYM (QNULL, "NULL");
|
||||
DEFSYM (Qcompound_text_with_extensions, "compound-text-with-extensions");
|
||||
DEFSYM (Qforeign_selection, "foreign-selection");
|
||||
DEFSYM (Qx_lost_selection_functions, "x-lost-selection-functions");
|
||||
DEFSYM (Qx_sent_selection_functions, "x-sent-selection-functions");
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue