anchor.diff:           (:body
             (:div :id "container"
                   (:div :id "input" (:span :id "prompt" "") (:span :id "input-buffer" ""))
  -                (:div :id "completions" "")))))
  -  ;; TODO: See TODO in `evaluate-script'.
  -  (rpc-minibuffer-evaluate-javascript
  -   *interface* (last-active-window *interface*)
  -   (ps:ps (ps:chain document
  -                    (write (ps:lisp (content minibuffer)))))))
  -
  -(defmethod evaluate-script ((minibuffer minibuffer) script) ; TODO: Rename function?  `set-content'?  Or `defmethod (setf content)' instead?  If we do, then `show' does not need to call anything like `evaluate-script' or `show'.  Question: Do we need to "stack" content parts before updating it?  We can do both: Have evaluate-script that takes a parenscript, and (setf content) that takes an HTML string.
  +                (:div :id "completions" ""))))))
  +
  +(defmethod evaluate-script ((minibuffer minibuffer) script)
     "Evaluate SCRIPT into MINIBUFFER's webview.
  -The new webview HTML document it set as the MINIBUFFER's `content'."
  +The new webview HTML content it set as the MINIBUFFER's `content'."
     (let ((active-window (rpc-window-active *interface*)))
       (when minibuffer
         (with-result (new-content (rpc-minibuffer-evaluate-javascript
                                    *interface* active-window
                                    (str:concat
  -                                  ;; Sync `content' now so that SCRIPT does not run on an out-of-sync content.
  -                                  ;; TODO: If we'd put this in (defmethod (setf
  -                                  ;; content) (html (minibuffer minibuffer))),
  -                                  ;; there'd be no need for this measure, at the
  -                                  ;; cost of more Javascript evaluations.
  -                                  ;; (ps:ps (ps:chain document
  -                                  ;;                  (write (ps:lisp (content minibuffer)))))
                                     script
                                     ;; Return the new HTML body.
                                     (ps:ps (ps:chain document body |outerHTML|)))))
  -        (setf (content minibuffer) new-content)))))
  +        ;; Since the script may have changed the content on the platform port,
  +        ;; we need to update the slot's value.
  +        (setf (slot-value minibuffer 'content) new-content)))))
   
   (defmethod show ((interface remote-interface) &key
                                                   (minibuffer (first (active-minibuffers
  
positive.code:                                    :color "white")))
                       :documentation "The CSS applied to a minibuffer when it is set-up.")))
  
  (defmethod initialize-instance :after ((minibuffer minibuffer) &key)
    ;; We don't want to show the input in the candidate list when invisible.
    (setf (empty-complete-immediate minibuffer)
  
negative.code:   (setf (input-buffer-cursor minibuffer) 0)
    (setf (content minibuffer) ""))
  
  ;; TODO: Move `erase-document' into the `show' function?
  (defmethod erase-document ((minibuffer minibuffer))
    (evaluate-script minibuffer
                     (ps:ps
  