diff options
| author | Chong Yidong | 2011-05-27 12:17:59 -0400 |
|---|---|---|
| committer | Chong Yidong | 2011-05-27 12:17:59 -0400 |
| commit | a9f737eef69ffe03dd045df555300ae6b41d0edf (patch) | |
| tree | 515b335a2f07a324ecc71b6a9331b7e0bc712586 /src/xterm.h | |
| parent | be520aca79dd429d55012a1916bdc97f06773fc5 (diff) | |
| download | emacs-a9f737eef69ffe03dd045df555300ae6b41d0edf.tar.gz emacs-a9f737eef69ffe03dd045df555300ae6b41d0edf.zip | |
Support X clipboard managers.
* lisp/select.el (xselect-convert-to-targets): Add MULTIPLE target to list.
(xselect-convert-to-save-targets): New function.
* src/xselect.c: Support for clipboard managers.
(Vselection_alist): Move to termhooks.h as terminal-local var.
(LOCAL_SELECTION): New macro.
(x_atom_to_symbol): Handle x_display_info_for_display fail case.
(symbol_to_x_atom): Remove gratuitous arg.
(x_handle_selection_request, lisp_data_to_selection_data)
(x_get_foreign_selection, Fx_register_dnd_atom): Callers changed.
(x_own_selection, x_get_local_selection, x_convert_selection): New
arg, specifying work frame. Use terminal-local Vselection_alist.
(some_frame_on_display): Delete unused function.
(Fx_own_selection_internal, Fx_get_selection_internal)
(Fx_disown_selection_internal, Fx_selection_owner_p)
(Fx_selection_exists_p): New optional frame arg.
(frame_for_x_selection, Fx_clipboard_manager_save): New functions.
(x_handle_selection_clear): Don't treat other terminals with the
same keyboard specially. Use the terminal-local Vselection_alist.
(x_clear_frame_selections): Use Frun_hook_with_args.
* src/termhooks.h (Vselection_alist): Make it terminal-local.
* src/terminal.c (create_terminal): Initialize it.
* src/xterm.c (x_term_init): Intern ATOM and CLIPBOARD_MANAGER atoms.
* src/xterm.h: Add support for those atoms.
Diffstat (limited to 'src/xterm.h')
| -rw-r--r-- | src/xterm.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/xterm.h b/src/xterm.h index 1b90b6d8ff4..c44978d5386 100644 --- a/src/xterm.h +++ b/src/xterm.h | |||
| @@ -254,7 +254,7 @@ struct x_display_info | |||
| 254 | Atom Xatom_CLIPBOARD, Xatom_TIMESTAMP, Xatom_TEXT, Xatom_DELETE, | 254 | Atom Xatom_CLIPBOARD, Xatom_TIMESTAMP, Xatom_TEXT, Xatom_DELETE, |
| 255 | Xatom_COMPOUND_TEXT, Xatom_UTF8_STRING, | 255 | Xatom_COMPOUND_TEXT, Xatom_UTF8_STRING, |
| 256 | Xatom_MULTIPLE, Xatom_INCR, Xatom_EMACS_TMP, Xatom_TARGETS, Xatom_NULL, | 256 | Xatom_MULTIPLE, Xatom_INCR, Xatom_EMACS_TMP, Xatom_TARGETS, Xatom_NULL, |
| 257 | Xatom_ATOM_PAIR; | 257 | Xatom_ATOM, Xatom_ATOM_PAIR, Xatom_CLIPBOARD_MANAGER; |
| 258 | 258 | ||
| 259 | /* More atoms for font properties. The last three are private | 259 | /* More atoms for font properties. The last three are private |
| 260 | properties, see the comments in src/fontset.h. */ | 260 | properties, see the comments in src/fontset.h. */ |
| @@ -1027,7 +1027,7 @@ extern Lisp_Object x_property_data_to_lisp (struct frame *, | |||
| 1027 | 1027 | ||
| 1028 | /* Defined in xfns.c */ | 1028 | /* Defined in xfns.c */ |
| 1029 | 1029 | ||
| 1030 | extern struct x_display_info * check_x_display_info (Lisp_Object frame); | 1030 | extern struct x_display_info * check_x_display_info (Lisp_Object); |
| 1031 | extern Lisp_Object x_get_focus_frame (struct frame *); | 1031 | extern Lisp_Object x_get_focus_frame (struct frame *); |
| 1032 | 1032 | ||
| 1033 | #ifdef USE_GTK | 1033 | #ifdef USE_GTK |