bug#43176: 26.1; EWW fails to display text in textarea

0 views
Skip to first unread message

Nicolas Graner

unread,
Sep 3, 2020, 1:10:06 AM9/3/20
to 43...@debbugs.gnu.org

Whenever EWW renders a page that includes a <textarea> element which
contains text, that text is not displayed.

The reason is that the text of a textarea is not given in an
attribute, as with other input elements, but as the textual contents
of the element.

Specifically, in function 'eww-tag-textarea', the line:
(value (or (dom-attr dom 'value) ""))
should be replaced with:
(value (or (dom-text dom) ""))

Hope this helps,
Nicolas Graner



In GNU Emacs 26.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.5)
of 2019-09-23, modified by Debian built on x86-grnet-01
System Description: Debian GNU/Linux 10 (buster)

Recent messages:
Loading /var/cache/dictionaries-common/emacsen-ispell-default.el (source)...done
Loading debian-ispell...done
Loading /var/cache/dictionaries-common/emacsen-ispell-dicts.el (source)...done
Loading /etc/emacs/site-start.d/50dictionaries-common.el (source)...done
Loading /etc/emacs/site-start.d/50gforth.el (source)...done
Loading /etc/emacs/site-start.d/50lilypond-data.el (source)...done
Loading /etc/emacs/site-start.d/50speechd-el.el (source)...done
Loading /etc/emacs/site-start.d/50tcsh.el (source)...done
Rate set to 25.
Speech rate set to 25

Configured using:
'configure --build x86_64-linux-gnu --prefix=/usr
--sharedstatedir=/var/lib --libexecdir=/usr/lib
--localstatedir=/var/lib --infodir=/usr/share/info
--mandir=/usr/share/man --enable-libsystemd --with-pop=yes
--enable-locallisppath=/etc/emacs:/usr/local/share/emacs/26.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/26.1/site-lisp:/usr/share/emacs/site-lisp
--with-sound=alsa --without-gconf --with-mailutils --build
x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib
--libexecdir=/usr/lib --localstatedir=/var/lib
--infodir=/usr/share/info --mandir=/usr/share/man --enable-libsystemd
--with-pop=yes
--enable-locallisppath=/etc/emacs:/usr/local/share/emacs/26.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/26.1/site-lisp:/usr/share/emacs/site-lisp
--with-sound=alsa --without-gconf --with-mailutils --with-x=yes
--with-x-toolkit=gtk3 --with-toolkit-scroll-bars 'CFLAGS=-g -O2
-fdebug-prefix-map=/build/emacs-StqULU/emacs-26.1+1=.
-fstack-protector-strong -Wformat -Werror=format-security -Wall'
'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' LDFLAGS=-Wl,-z,relro'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS NOTIFY
ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 THREADS LIBSYSTEMD LCMS2

Important settings:
value of $LC_ALL: fr_FR.UTF-8
value of $LANG: fr_FR.UTF-8
value of $XMODIFIERS: @im=ibus
locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
global-speechd-speak-mode: t
speechd-speak-mode: t
global-speechd-speak-map-mode: t
speechd-speak-map-mode: t
tooltip-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
file-name-shadow-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t

Load-path shadows:
~/bin/Emacs/speechd-speak hides /usr/share/emacs/site-lisp/speechd-el/speechd-speak
~/bin/Emacs/speechd hides /usr/share/emacs/site-lisp/speechd-el/speechd
/usr/share/emacs/site-lisp/speechd-el/braille hides /usr/share/emacs/site-lisp/speechd-el-2.8/braille
/usr/share/emacs/site-lisp/speechd-el/speechd-common hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd-common
/usr/share/emacs/site-lisp/speechd-el/speechd-el-pkg hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd-el-pkg
/usr/share/emacs/site-lisp/speechd-el/speechd-bug hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd-bug
~/bin/Emacs/speechd-speak hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd-speak
/usr/share/emacs/site-lisp/speechd-el/speechd-brltty hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd-brltty
/usr/share/emacs/site-lisp/speechd-el/speechd-ssip hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd-ssip
/usr/share/emacs/site-lisp/speechd-el/speechd-version hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd-version
/usr/share/emacs/site-lisp/speechd-el/mmanager hides /usr/share/emacs/site-lisp/speechd-el-2.8/mmanager
/usr/share/emacs/site-lisp/speechd-el/brltty hides /usr/share/emacs/site-lisp/speechd-el-2.8/brltty
/usr/share/emacs/site-lisp/speechd-el/speechd-braille hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd-braille
/usr/share/emacs/site-lisp/speechd-el/speechd-out hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd-out
~/bin/Emacs/speechd hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd
/usr/share/emacs/site-lisp/speechd-el/speechd-compile hides /usr/share/emacs/site-lisp/speechd-el-2.8/speechd-compile
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-mode hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-mode
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-array hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-array
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-pcre hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-pcre
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-math hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-math
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-var hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-var
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-gd hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-gd
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-simplexml hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-simplexml
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-dom hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-dom
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-exif hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-exif
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-strings hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-strings
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-mode-pkg hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-mode-pkg
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-xmlparser hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-xmlparser
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-ext hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-ext
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-control-structures hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-control-structures
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-filesystem hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-filesystem
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-crack hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-crack
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-regex hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-regex
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-mode-test hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-mode-test
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-project hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-project
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-classobj hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-classobj
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-exceptions hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-exceptions
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-xmlreader hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-xmlreader
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-dio hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-dio
/usr/share/emacs/site-lisp/elpa/php-mode-1.21.0/php-mode-autoloads hides /usr/share/emacs/site-lisp/elpa-src/php-mode-1.21.0/php-mode-autoloads
~/bin/Emacs/eww hides /usr/share/emacs/26.1/lisp/net/eww
~/bin/Emacs/undigest hides /usr/share/emacs/26.1/lisp/mail/undigest
~/bin/Emacs/map-ynp hides /usr/share/emacs/26.1/lisp/emacs-lisp/map-ynp

Features:
(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
format-spec rfc822 mml mml-sec epa derived epg gnus-util rmail
rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils term/xterm xterm elec-pair time-date
speechd-speak easy-mmode speechd-ssip speechd-brltty speechd-braille
braille mmanager brltty speechd-out speechd speechd-common url-privacy
advice xclip mailcap cl finder-inf rx package easymenu epg-config
url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs
eieio-loaddefs password-cache url-vars seq byte-opt gv bytecomp
byte-compile cconv cl-loaddefs cl-lib mule-util tooltip eldoc electric
uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page menu-bar rfn-eshadow isearch timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932
hebrew greek romanian slovak czech european ethiopic indian cyrillic
chinese composite charscript charprop case-table epa-hook jka-cmpr-hook
help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote dbusbind inotify lcms2 dynamic-setting system-font-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty
make-network-process emacs)

Memory information:
((conses 16 155217 16368)
(symbols 48 24539 64)
(miscs 40 42 71)
(strings 32 38500 3133)
(string-bytes 1 1024515)
(vectors 16 16924)
(vector-slots 8 498542 1654)
(floats 8 60 249)
(intervals 56 590 482)
(buffers 992 11))



Robert Pluim

unread,
Sep 3, 2020, 3:05:06 AM9/3/20
to Nicolas Graner, 43176...@debbugs.gnu.org
>>>>> On Wed, 02 Sep 2020 23:05:44 +0200, Nicolas Graner <nicolas...@universite-paris-saclay.fr> said:

Nicolas> Whenever EWW renders a page that includes a <textarea> element which
Nicolas> contains text, that text is not displayed.

Nicolas> The reason is that the text of a textarea is not given in an
Nicolas> attribute, as with other input elements, but as the textual contents
Nicolas> of the element.

Nicolas> Specifically, in function 'eww-tag-textarea', the line:
Nicolas> (value (or (dom-attr dom 'value) ""))
Nicolas> should be replaced with:
Nicolas> (value (or (dom-text dom) ""))

Nicolas> Hope this helps,
Nicolas> Nicolas Graner

Thanks. This bug had already been fixed on master, and will be part of
emacs-28

Robert



Reply all
Reply to author
Forward
0 new messages