aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPo Lu2021-11-20 18:23:02 +0800
committerPo Lu2021-11-20 18:24:43 +0800
commitfbf361f593df52ff414a4483f105e2e4c1a921e2 (patch)
treed3da8d4e8060b6285a6ef57a5c2f236ded6b384a /src
parent2ba7d1e84e76fa4d08fd8ed5a915793d4bf881cd (diff)
downloademacs-fbf361f593df52ff414a4483f105e2e4c1a921e2.tar.gz
emacs-fbf361f593df52ff414a4483f105e2e4c1a921e2.zip
Allow terminating page loading operations in webkit xwidgets
* doc/lispref/display.texi (Xwidgets): Document new function. * etc/NEWS: Announce `xwidget-webkit-stop-loading'. * src/xwidget.c (Fxwidget_webkit_stop_loading): New function. (syms_of_xwidget): Define new subr.
Diffstat (limited to 'src')
-rw-r--r--src/xwidget.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/xwidget.c b/src/xwidget.c
index 8cad2fbc2c1..b1bf291a168 100644
--- a/src/xwidget.c
+++ b/src/xwidget.c
@@ -2615,6 +2615,30 @@ store cookies in FILE and load them from there. */)
2615 return Qnil; 2615 return Qnil;
2616} 2616}
2617 2617
2618DEFUN ("xwidget-webkit-stop-loading", Fxwidget_webkit_stop_loading,
2619 Sxwidget_webkit_stop_loading,
2620 1, 1, 0, doc: /* Stop loading data in the WebKit widget XWIDGET.
2621This will stop any data transfer that may still be in progress inside
2622XWIDGET as part of loading a page. */)
2623 (Lisp_Object xwidget)
2624{
2625#ifdef USE_GTK
2626 struct xwidget *xw;
2627 WebKitWebView *webview;
2628
2629 CHECK_LIVE_XWIDGET (xwidget);
2630 xw = XXWIDGET (xwidget);
2631 CHECK_WEBKIT_WIDGET (xw);
2632
2633 block_input ();
2634 webview = WEBKIT_WEB_VIEW (xw->widget_osr);
2635 webkit_web_view_stop_loading (webview);
2636 unblock_input ();
2637#endif
2638
2639 return Qnil;
2640}
2641
2618void 2642void
2619syms_of_xwidget (void) 2643syms_of_xwidget (void)
2620{ 2644{
@@ -2656,6 +2680,7 @@ syms_of_xwidget (void)
2656 defsubr (&Sxwidget_webkit_previous_result); 2680 defsubr (&Sxwidget_webkit_previous_result);
2657 defsubr (&Sset_xwidget_buffer); 2681 defsubr (&Sset_xwidget_buffer);
2658 defsubr (&Sxwidget_webkit_set_cookie_storage_file); 2682 defsubr (&Sxwidget_webkit_set_cookie_storage_file);
2683 defsubr (&Sxwidget_webkit_stop_loading);
2659#ifdef USE_GTK 2684#ifdef USE_GTK
2660 defsubr (&Sxwidget_webkit_load_html); 2685 defsubr (&Sxwidget_webkit_load_html);
2661 defsubr (&Sxwidget_webkit_back_forward_list); 2686 defsubr (&Sxwidget_webkit_back_forward_list);