From: Lars Magne Ingebrigtsen Date: Thu, 27 Nov 2014 16:42:28 +0000 (+0100) Subject: (eww-process-text-input): Fix deletion at the start of the field, too. X-Git-Tag: emacs-25.0.90~2635^2~294 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=604ce9124efd295b46e3fbb2d6880302fe55a33f;p=emacs.git (eww-process-text-input): Fix deletion at the start of the field, too. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 26c68df7395..6f22474d199 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -6,6 +6,7 @@ deleting at the last character (bug#19085). (eww-restore-history): Inhibit change functions while restoring the history. + (eww-process-text-input): Fix deletion at the start of the field, too. * dom.el (dom-pp): New function. diff --git a/lisp/net/eww.el b/lisp/net/eww.el index 75af7fbf64d..63a6c0d7af0 100644 --- a/lisp/net/eww.el +++ b/lisp/net/eww.el @@ -674,7 +674,6 @@ the like." (setq-local tool-bar-map eww-tool-bar-map)) ;; desktop support (setq-local desktop-save-buffer 'eww-desktop-misc-data) - (buffer-disable-undo) (setq buffer-read-only t)) ;;;###autoload @@ -954,9 +953,14 @@ appears in a or tag." See URL `https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input'.") (defun eww-process-text-input (beg end length) - (let* ((form (get-text-property (min (1- end) (point-max)) 'eww-form)) + (let* ((pos (cond + ((get-text-property (1- end) 'eww-form) + (1- end)) + ((get-text-property (1+ end) 'eww-form) + (1+ end)))) + (form (get-text-property pos 'eww-form)) + (properties (text-properties-at pos)) (inhibit-read-only t) - (properties (text-properties-at (1- end))) (type (plist-get form :type))) (when (and form (member type eww-text-input-types))