diff options
author | Joakim Verona <joakim@verona.se> | 2012-03-20 18:53:34 +0100 |
---|---|---|
committer | Joakim Verona <joakim@verona.se> | 2012-03-20 18:53:34 +0100 |
commit | 28d5f38df4f3b2f2cd9bc36494b3c0d8034c6f6b (patch) | |
tree | 9053b2bd540e84cc936327444d53788b285ffb99 /lisp/xwidget.el | |
parent | 4b2cea2874f3a699ebe96349ef34fb7206cc0fa5 (diff) | |
download | emacs-28d5f38df4f3b2f2cd9bc36494b3c0d8034c6f6b.tar.gz |
textarea
Diffstat (limited to 'lisp/xwidget.el')
-rw-r--r-- | lisp/xwidget.el | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/lisp/xwidget.el b/lisp/xwidget.el index 78bef103d34..d90dca3f755 100644 --- a/lisp/xwidget.el +++ b/lisp/xwidget.el @@ -261,11 +261,28 @@ Argument STR string." (list xww (cond ( (equal "text" field-type) (read-string "text:" field-value)) ( (equal "password" field-type) (read-passwd "password:" nil field-value)) - ( (equal "textarea" field-type) (read-string "textarea:" field-value)) + ( (equal "textarea" field-type) (xwidget-webkit-begin-edit-textarea xww field-value)) )))) (xwidget-webkit-execute-script xw (format "findactiveelement(document).value='%s'" str))) +(defun xwidget-webkit-begin-edit-textarea (xw text) + (switch-to-buffer + (generate-new-buffer "textarea")) + + (set (make-local-variable 'xwbl) xw) + (insert text) + ) + +(defun xwidget-webkit-end-edit-textarea () + (interactive) + (goto-char (point-min)) + (replace-string "\n" "\\n") + (xwidget-webkit-execute-script xwbl (format "findactiveelement(document).value='%s'" + (buffer-substring (point-min) (point-max)))) + ;;TODO convert linefeed to \n + ) + (defun xwidget-webkit-show-named-element (xw element-name) "make named-element show. for instance an anchor." (interactive (list (xwidget-webkit-current-session) (read-string "element name:"))) |