diff options
author | Po Lu <luangruo@yahoo.com> | 2022-08-01 09:56:12 +0800 |
---|---|---|
committer | Po Lu <luangruo@yahoo.com> | 2022-08-01 09:56:12 +0800 |
commit | 3b5c03eeb2bc559767555fbb5b9916721ce9f853 (patch) | |
tree | d2f7c20799fc577e70e54b00f2f1ee2073124582 /doc/lispref | |
parent | eef591072ab1cbcf2168d7b30b3e1ca1f50717ad (diff) | |
download | emacs-3b5c03eeb2bc559767555fbb5b9916721ce9f853.tar.gz emacs-3b5c03eeb2bc559767555fbb5b9916721ce9f853.tar.bz2 emacs-3b5c03eeb2bc559767555fbb5b9916721ce9f853.zip |
Make frame synchronization a frame parameter
* doc/lispref/frames.texi (Management Parameters): Document
`use-frame-synchronization'.
* etc/NEWS: Update entry.
* src/frame.c (frame_parms): New frame parameter
`use-frame-synchronization'.
(syms_of_frame): New defsym.
* src/haikufns.c (haiku_frame_parm_handlers):
* src/nsfns.m (ns_frame_parm_handlers):
* src/pgtkfns.c (pgtk_frame_parm_handlers):
* src/w32fns.c (w32_frame_parm_handlers): Update frame param
handlers correctly.
* src/xfns.c (x_set_use_frame_synchronization): New function.
(Fx_create_frame): Set default value of said parameter.
(x_frame_parm_handlers): Add handler.
* src/xterm.c (x_sync_wait_for_frame_drawn_event): Clear
parameter if sync fails.
Diffstat (limited to 'doc/lispref')
-rw-r--r-- | doc/lispref/frames.texi | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi index ed56fa777d2..e5dec4f8072 100644 --- a/doc/lispref/frames.texi +++ b/doc/lispref/frames.texi @@ -2180,10 +2180,20 @@ If non-@code{nil}, the frame is visible on all virtual desktops on systems with virtual desktops. @vindex shaded@r{, a frame parameter} -@item sticky +@item shaded If non-@code{nil}, tell the window manager to display the frame in a way that its contents are hidden, leaving only the title bar. +@vindex use-frame-synchronization@r{, a frame parameter} +@item use-frame-synchronization +If non-@code{nil}, synchronize the frame redisplay with the refresh +rate of the monitor to avoid graphics tearing. At present, this is +only implemented on the X window system inside no-toolkit and X +toolkit builds, does not work correctly with toolkit scroll bars, and +requires a compositing manager supporting the relevant display +synchronization protocols. The @code{synchronizeResize} X resource +must also be set to the string @code{"extended"}. + @vindex inhibit-double-buffering@r{, a frame parameter} @item inhibit-double-buffering If non-@code{nil}, the frame is drawn to the screen without double |