diff options
| author | Grégoire Jadi | 2013-07-18 14:12:03 +0200 |
|---|---|---|
| committer | Grégoire Jadi | 2013-07-18 14:12:03 +0200 |
| commit | 1eea231d3ebcc2801fe1a8459e60fdb687631ba9 (patch) | |
| tree | a34a0064f7d41b15f2534a8c51e7cee3739dff22 | |
| parent | e14802f037047b288a45b621a4121550d6a2aca1 (diff) | |
| download | emacs-1eea231d3ebcc2801fe1a8459e60fdb687631ba9.tar.gz emacs-1eea231d3ebcc2801fe1a8459e60fdb687631ba9.zip | |
* src/xwidget.c (Fset_frame_visible): Hack to force a frame to be
considered as visible to trigger the display engine.
* lisp/xwidget.el (xwidget-display): Force the display engine to create a
xwidget_view of the given xwidget.
| -rw-r--r-- | lisp/xwidget.el | 8 | ||||
| -rw-r--r-- | src/xwidget.c | 12 |
2 files changed, 19 insertions, 1 deletions
diff --git a/lisp/xwidget.el b/lisp/xwidget.el index 81589e3d57d..b38f7948c6c 100644 --- a/lisp/xwidget.el +++ b/lisp/xwidget.el | |||
| @@ -58,7 +58,13 @@ see `make-xwidget' for types suitable for TYPE." | |||
| 58 | ;; ;; (start-process "xembed2" "*xembed2*" "uzbl-core" "-s" (number-to-string xembed-id) "http://www.fsf.org" ) ) | 58 | ;; ;; (start-process "xembed2" "*xembed2*" "uzbl-core" "-s" (number-to-string xembed-id) "http://www.fsf.org" ) ) |
| 59 | ;; ))))) | 59 | ;; ))))) |
| 60 | 60 | ||
| 61 | 61 | (defun xwidget-display (xwidget) | |
| 62 | "Force xwidget to be displayed to create a xwidget_view." | ||
| 63 | (let* ((buffer (xwidget-buffer xwidget)) | ||
| 64 | (window (display-buffer buffer)) | ||
| 65 | (frame (window-frame window))) | ||
| 66 | (set-frame-visible frame t) | ||
| 67 | (redisplay t))) | ||
| 62 | 68 | ||
| 63 | 69 | ||
| 64 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 70 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
diff --git a/src/xwidget.c b/src/xwidget.c index 28bb056954e..660c4ef9961 100644 --- a/src/xwidget.c +++ b/src/xwidget.c | |||
| @@ -1554,6 +1554,17 @@ WINDOW if specified, otherwise it uses the selected window. */) | |||
| 1554 | return Qnil; | 1554 | return Qnil; |
| 1555 | } | 1555 | } |
| 1556 | 1556 | ||
| 1557 | DEFUN ("set-frame-visible", Fset_frame_visible, Sset_frame_visible, | ||
| 1558 | 2, 2, 0, | ||
| 1559 | doc: /* HACKY */) | ||
| 1560 | (Lisp_Object frame, Lisp_Object flag) | ||
| 1561 | { | ||
| 1562 | CHECK_FRAME (frame); | ||
| 1563 | struct frame *f = XFRAME (frame); | ||
| 1564 | SET_FRAME_VISIBLE (f, !NILP (flag)); | ||
| 1565 | return flag; | ||
| 1566 | } | ||
| 1567 | |||
| 1557 | DEFUN ("xwidget-plist", Fxwidget_plist, Sxwidget_plist, | 1568 | DEFUN ("xwidget-plist", Fxwidget_plist, Sxwidget_plist, |
| 1558 | 1, 1, 0, | 1569 | 1, 1, 0, |
| 1559 | doc: /* Return the plist of XWIDGET. */) | 1570 | doc: /* Return the plist of XWIDGET. */) |
| @@ -1627,6 +1638,7 @@ syms_of_xwidget (void) | |||
| 1627 | defsubr (&Sxwidget_view_lookup); | 1638 | defsubr (&Sxwidget_view_lookup); |
| 1628 | defsubr (&Sxwidget_query_on_exit_flag); | 1639 | defsubr (&Sxwidget_query_on_exit_flag); |
| 1629 | defsubr (&Sset_xwidget_query_on_exit_flag); | 1640 | defsubr (&Sset_xwidget_query_on_exit_flag); |
| 1641 | defsubr (&Sset_frame_visible); | ||
| 1630 | 1642 | ||
| 1631 | #ifdef HAVE_WEBKIT_OSR | 1643 | #ifdef HAVE_WEBKIT_OSR |
| 1632 | defsubr (&Sxwidget_webkit_goto_uri); | 1644 | defsubr (&Sxwidget_webkit_goto_uri); |