http://www.jwz.org/xscreensaver/xscreensaver-5.09.tar.gz
[xscreensaver] / README.hacking
index 28767a5fb7ebe30936a756769f168c73484c01bd..72489a2d5504c065180a4ba2bfd5858e1bd829d8 100644 (file)
@@ -56,9 +56,13 @@ The XScreenSaver API
       yoursavername_free     -- Free everything you've allocated.
       yoursavername_reshape  -- Called when the window is resized.
       yoursavername_event    -- Called when a keyboard or mouse event happens.
-                                The "reshape" and "event" functions are only
-                                called when running in a window (not as a
-                                screen saver). It's ok for them to do nothing.
+
+      The "event" function will only be called when running in a window
+      (not as a screen saver).  The "reshape" event will be called when the
+      window size changes, or (as a screen saver) when the display size
+      changes as a result of a RANDR event (e.g., plugging in a new monitor).
+
+      It's ok for both the "event" and "resize" functions to do nothing.
 
   - All other functions should be static.
 
@@ -94,7 +98,7 @@ The XLockMore API
   hacks like "Flag".  The XLockMore ones are the ones that begin with
   "#ifdef STANDALONE" and #include "xlockmore.h".
 
-  All of the OpenGL screen savers follow the XLockMore API.
+  But, all OpenGL screen savers have to follow the XLockMore API.
 
   The XLockMore API is similar to the XScreenSaver API, in that you define
   (roughly) the same set of functions, but the naming conventions are