anchor.diff:      ((clipboard pointer) (atoms (vector gdk:atom n-atoms))
        (n-atoms unsigned-int) (callback-id unsigned-int))
     (declare (ignore clipboard))
  -  (funcall (find-user-data callback-id) atoms))
  +  (funcall (find-user-data callback-id) (map-into atoms #'gdk:atom-name atoms)))
   
   (defbinding clipboard-request-targets (clipboard callback) nil
     (clipboard clipboard)
     (%clipboard-targets-receive-callback callback)
     ((register-callback-function callback) unsigned-int))
   
  -(defbinding clipboard-wait-for-contents () selection-data
  -  (clipboard clipboard))
  +(defbinding clipboard-wait-for-contents (clipboard target) selection-data
  +  (clipboard clipboard)
  +  ((gdk:atom-intern target) gdk:atom))
   
   (defbinding clipboard-wait-for-text () string
     (clipboard clipboard))
  
positive.code:   (defbinding selection-data-get-uris () (null-terminated-vector string)
      (selection-data selection-data)))
  
  (defbinding selection-data-get-targets () boolean
    (selection-data selection-data)
    (targets (vector gdk:atom n-atoms))
    (n-atoms int))
  
  #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.6.0")
  (defbinding selection-data-targets-include-image-p (selection-data &optional writable-p) boolean
    (selection-data selection-data)
    (writable-p boolean))
  
  (defbinding selection-data-targets-include-text-p (selection-data) boolean
    (selection-data selection-data))
  
  (defbinding selection-remove-all () boolean
  
negative.code: (defbinding clipboard-wait-is-image-available-p () boolean
    (clipboard clipboard))
  
  (defbinding %clipboard-wait-for-targets () boolean
    (clipboard clipboard)
    (targets (vector gdk:atom n-targets) :out)
    (n-targets unsigned-int :out))
  
  (defun clipboard-wait-for-targets (clipboard)
    (multiple-value-bind (valid-p targets) 
        (%clipboard-wait-for-targets clipboard) 
      (when valid-p
        (map-into targets #'gdk:atom-name targets))))
  
  #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.6.0")
  (defbinding clipboard-wait-is-target-available-p (clipboard target) boolean
    (clipboard clipboard)
    ((gdk:atom-intern target) gdk:atom))
  
  #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.6.0")
  (defbinding clipboard-set-can-store (clipboard targets) nil
    (clipboard clipboard)
    ((map 'vector #'gdk:atom-intern targets) (vector gdk:atom))
    ((length targets) int))
  
  #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.6.0")
  