Function: eww-tag-input
eww-tag-input is a byte-compiled function defined in eww.el.gz.
Signature
(eww-tag-input DOM)
Source Code
;; Defined in /usr/src/emacs/lisp/net/eww.el.gz
(defun eww-tag-input (dom)
(let ((type (downcase (or (dom-attr dom 'type) "text")))
(start (point)))
(cond
((or (equal type "checkbox")
(equal type "radio"))
(eww-form-checkbox dom))
((equal type "file")
(eww-form-file dom))
((equal type "submit")
(eww-form-submit dom))
((equal type "hidden")
(let ((form eww-form)
(name (dom-attr dom 'name)))
;; Don't add <input type=hidden> elements repeatedly.
(while (and form
(or (not (consp (car form)))
(not (eq (caar form) 'hidden))
(not (equal (plist-get (cdr (car form)) :name)
name))))
(setq form (cdr form)))
(unless form
(nconc eww-form (list
(list 'hidden
:name name
:value (or (dom-attr dom 'value) "")))))))
(t
(eww-form-text dom)))
(unless (= start (point))
(put-text-property start (1+ start) 'help-echo "Input field")
;; Mark this as an element we can TAB to.
(put-text-property start (1+ start) 'shr-tab-stop t))))