aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/dispnew.c2
-rw-r--r--src/xwidget.c55
2 files changed, 55 insertions, 2 deletions
diff --git a/src/dispnew.c b/src/dispnew.c
index 879ff88ff14..22695df1dc0 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -4297,7 +4297,7 @@ scrolling_window (struct window *w, int header_line_p)
4297 4297
4298#ifdef HAVE_XWIDGETS 4298#ifdef HAVE_XWIDGETS
4299 //currently this is needed to detect xwidget movement reliably. or probably not. 4299 //currently this is needed to detect xwidget movement reliably. or probably not.
4300 printf("scrolling_window\n"); 4300 //printf("scrolling_window\n");
4301 return 0; 4301 return 0;
4302#endif 4302#endif
4303 4303
diff --git a/src/xwidget.c b/src/xwidget.c
index b2fa6c30561..271cbd07f2d 100644
--- a/src/xwidget.c
+++ b/src/xwidget.c
@@ -97,6 +97,7 @@
97#include <webkit/webkitwebplugindatabase.h> 97#include <webkit/webkitwebplugindatabase.h>
98#include <webkit/webkitwebplugin.h> 98#include <webkit/webkitwebplugin.h>
99#include <webkit/webkitglobals.h> 99#include <webkit/webkitglobals.h>
100#include <webkit/webkitwebnavigationaction.h>
100#endif 101#endif
101 102
102#include "xwidget.h" 103#include "xwidget.h"
@@ -157,6 +158,23 @@ gboolean webkit_osr_mime_type_policy_typedecision_requested_callback(WebKitWebV
157 gchar *mimetype, 158 gchar *mimetype,
158 WebKitWebPolicyDecision *policy_decision, 159 WebKitWebPolicyDecision *policy_decision,
159 gpointer user_data); 160 gpointer user_data);
161
162gboolean webkit_osr_new_window_policy_decision_requested_callback(WebKitWebView *webView,
163 WebKitWebFrame *frame,
164 WebKitNetworkRequest *request,
165 WebKitWebNavigationAction *navigation_action,
166 WebKitWebPolicyDecision *policy_decision,
167 gpointer user_data);
168
169
170gboolean webkit_osr_navigation_policy_decision_requested_callback(WebKitWebView *webView,
171 WebKitWebFrame *frame,
172 WebKitNetworkRequest *request,
173 WebKitWebNavigationAction *navigation_action,
174 WebKitWebPolicyDecision *policy_decision,
175 gpointer user_data);
176
177
160DEFUN ("make-xwidget", Fmake_xwidget, Smake_xwidget, 7, 7, 0, 178DEFUN ("make-xwidget", Fmake_xwidget, Smake_xwidget, 7, 7, 0,
161 doc: /* xw */ 179 doc: /* xw */
162 ) 180 )
@@ -228,12 +246,23 @@ DEFUN ("make-xwidget", Fmake_xwidget, Smake_xwidget, 7, 7, 0,
228 G_CALLBACK (webkit_osr_mime_type_policy_typedecision_requested_callback), 246 G_CALLBACK (webkit_osr_mime_type_policy_typedecision_requested_callback),
229 xw); 247 xw);
230 248
231 249 g_signal_connect (G_OBJECT ( xw->widget_osr),
250 "new-window-policy-decision-requested",
251 G_CALLBACK (webkit_osr_new_window_policy_decision_requested_callback),
252 xw);
253
254 g_signal_connect (G_OBJECT ( xw->widget_osr),
255 "navigation-policy-decision-requested",
256 G_CALLBACK (webkit_osr_navigation_policy_decision_requested_callback),
257 xw);
258
259
232 webkit_web_view_load_uri(WEBKIT_WEB_VIEW(xw->widget_osr), "http://www.fsf.org"); 260 webkit_web_view_load_uri(WEBKIT_WEB_VIEW(xw->widget_osr), "http://www.fsf.org");
233 UNBLOCK_INPUT; 261 UNBLOCK_INPUT;
234 262
235 } 263 }
236#endif 264#endif
265
237 if (EQ(xw->type, Qsocket_osr)){ 266 if (EQ(xw->type, Qsocket_osr)){
238 printf("init socket osr\n"); 267 printf("init socket osr\n");
239 BLOCK_INPUT; 268 BLOCK_INPUT;
@@ -492,6 +521,30 @@ gboolean webkit_osr_mime_type_policy_typedecision_requested_callback(WebKitWebV
492} 521}
493 522
494 523
524gboolean webkit_osr_new_window_policy_decision_requested_callback(WebKitWebView *webView,
525 WebKitWebFrame *frame,
526 WebKitNetworkRequest *request,
527 WebKitWebNavigationAction *navigation_action,
528 WebKitWebPolicyDecision *policy_decision,
529 gpointer user_data)
530{
531 printf("webkit_osr_new_window_policy_decision_requested_callback %s\n",
532 webkit_web_navigation_action_get_original_uri (navigation_action));
533
534 return FALSE;
535}
536
537gboolean webkit_osr_navigation_policy_decision_requested_callback(WebKitWebView *webView,
538 WebKitWebFrame *frame,
539 WebKitNetworkRequest *request,
540 WebKitWebNavigationAction *navigation_action,
541 WebKitWebPolicyDecision *policy_decision,
542 gpointer user_data)
543{
544 printf("webkit_osr_navigation_policy_decision_requested_callback\n");
545 return FALSE;
546}
547
495//for gtk3 webkit_osr 548//for gtk3 webkit_osr
496gboolean 549gboolean
497xwidget_osr_draw_callback (GtkWidget *widget, cairo_t *cr, gpointer data) 550xwidget_osr_draw_callback (GtkWidget *widget, cairo_t *cr, gpointer data)