--- /dev/null
+(in-package :gdk)
+
+(defcfun gdk-screen-get-monitor-geometry :void
+ (screen (g-object screen))
+ (monitor-num :int)
+ (dest (g-boxed-foreign rectangle)))
+
+(defun screen-get-monitor-geometry (screen monitor-num)
+ (let ((dest (make-rectangle)))
+ (gdk-screen-get-monitor-geometry screen monitor-num dest)
+ dest))
+
+(export 'screen-get-monitor-geometry)
+
+(defcfun (screen-get-monitor-at-point "gdk_screen_get_monitor_at_point") :int
+ (screen (g-object screen))
+ (x :int)
+ (y :int))
+
+(export 'screen-get-monitor-at-point)
+
+(defcfun (screen-get-monitor-at-window "gdk_screen_get_monitor_at_window") :int
+ (screen (g-object screen))
+ (window (g-object gdk-window)))
+
+(export 'screen-get-monitor-at-window)
+
+(defcfun (screen-get-monitor-height-mm "gdk_screen_get_monitor_height_mm") :int
+ (screen (g-object screen))
+ (monitor-num :int))
+
+(defcfun (screen-get-monitor-width-mm "gdk_screen_get_monitor_width_mm") :int
+ (screen (g-object screen))
+ (monitor-num :int))
+
+(export '(screen-get-monitor-height-mm screen-get-monitor-width-mm))
+
+(defcfun (screen-get-monitor-plug-name "gdk_screen_get_monitor_plug_name") (glib:g-string :free-from-foreign t)
+ (screen (g-object screen))
+ (monitor-num :int))
+
+(export 'screen-get-monitor-plug-name)
+
+(defcfun (screen-broadcast-client-message "gdk_screen_broadcast_client_message") :void
+ (screen (g-object screen))
+ (event (g-boxed-foreign event)))
+
+(export 'screen-broadcast-client-message)
+
+(defcfun gdk-screen-get-setting :boolean
+ (screen (g-object screen))
+ (name :string)
+ (value :pointer))
+
+(defun screen-get-setting (screen name)
+ (with-foreign-object (value 'g-value)
+ (g-value-zero value)
+ (when (gdk-screen-get-setting screen name value)
+ (prog1 (parse-g-value value)
+ (g-value-unset value)))))
+
+(export 'screen-get-setting)
+
+(defcfun gdk-spawn-command-line-on-screen :boolean
+ (screen (g-object screen))
+ (command-line :string)
+ (error :pointer))
+
+(defun spawn-command-line-on-screen (screen command-line)
+ (glib:with-g-error (err)
+ (gdk-spawn-command-line-on-screen screen command-line err)))
+
+(export 'spawn-command-line-on-screen)