anchor.diff:  (define-ffi-method ffi-buffer-make ((buffer gtk-buffer))
     "Initialize BUFFER's GTK web view."
     (unless (gtk-object buffer) ; Buffer may already have a view, e.g. the prompt-buffer.
  -    (setf (gtk-object buffer) (make-web-view :buffer buffer)))
  +    (setf (gtk-object buffer) (make-web-view (profile buffer) buffer)))
     (when (navigable-buffer-p buffer)
       (if (smooth-scrolling buffer)
           (ffi-buffer-enable-smooth-scrolling buffer t)
  
positive.code:        (gtk:gtk-box-pack-start horizontal-box-layout panel-buffer-container-right :expand nil)
         (gtk:gtk-box-pack-start root-box-layout horizontal-box-layout :expand t :fill t)
  
         (setf message-view (make-web-view))
         (gtk:gtk-box-pack-end root-box-layout message-container :expand nil)
         (gtk:gtk-box-pack-start message-container message-view :expand t)
         (setf (gtk:gtk-widget-size-request message-container)
  
negative.code:     (error 'nyxt-web-context-condition :context web-context
                                         :message "Tried to make an ephemeral web-view in a non-ephemeral context")))
  
  (defmethod make-web-view ((profile nyxt-profile) (buffer t))
    "Return an ephemeral web view instance for basic buffers."
    (declare (ignorable profile buffer))
    (make-instance 'webkit-web-view-ephemeral
                   :web-context (get-context *browser* +internal+
                                             :ephemeral-p t)))
  
  (defmethod make-web-view ((profile nyxt-profile) (buffer focusable-buffer))
    "Return a regular web view instance for buffers with context."
    (declare (ignorable profile))
    (make-instance 'webkit:webkit-web-view
                   :web-context (get-context *browser* (context-name buffer)
                                             :ephemeral-p nil)))
  
  (defmethod make-web-view ((profile nyxt-profile) (buffer nosave-buffer))
    "Return an ephemeral web view instance for nosave buffers."
    (declare (ignorable profile))
    (make-instance 'webkit-web-view-ephemeral
                   :web-context (get-context *browser* (context-name buffer)
                                             :ephemeral-p t)))
  
  (defmethod make-web-view ((profile nosave-profile) (buffer buffer))
    "Return an ephemeral web view instance for nosave profiles."
    (declare (ignorable profile))
    (make-instance 'webkit-web-view-ephemeral
                   :web-context (get-context *browser* (context-name buffer)
                                             :ephemeral-p t)))
  
  (defun make-decide-policy-handler (buffer)
    (lambda (web-view response-policy-decision policy-decision-type-response)
  