summaryrefslogtreecommitdiff
path: root/doc/lispref/frames.texi
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2022-08-01 09:56:12 +0800
committerPo Lu <luangruo@yahoo.com>2022-08-01 09:56:12 +0800
commit3b5c03eeb2bc559767555fbb5b9916721ce9f853 (patch)
treed2f7c20799fc577e70e54b00f2f1ee2073124582 /doc/lispref/frames.texi
parenteef591072ab1cbcf2168d7b30b3e1ca1f50717ad (diff)
downloademacs-3b5c03eeb2bc559767555fbb5b9916721ce9f853.tar.gz
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/frames.texi')
-rw-r--r--doc/lispref/frames.texi12
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