[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH RFC 1/2] Expose webkit view settings via lisp
From: |
Aaron Conole |
Subject: |
[PATCH RFC 1/2] Expose webkit view settings via lisp |
Date: |
Mon, 6 Jun 2016 14:18:09 -0400 |
* src/xwidget.c (xwidget-webkit-get-web-string-setting): New function getter
for webkit settings
(xwidget-webkit-set-web-string-setting): New function setter for webkit
settings
(syms_of_xwidget): Expose the new functions
---
src/xwidget.c | 41 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/src/xwidget.c b/src/xwidget.c
index 82449f7..aac5850 100644
--- a/src/xwidget.c
+++ b/src/xwidget.c
@@ -695,6 +695,45 @@ exec method. */ )
return build_string (str);
}
+DEFUN ("xwidget-webkit-get-web-string-setting",
+ Fxwidget_webkit_get_web_string_setting,
+ Sxwidget_webkit_get_web_string_setting,
+ 2, 2, 0,
+ doc: /* Gets the Webkit XWIDGET setting stored as string. */)
+ (Lisp_Object xwidget, Lisp_Object setting)
+{
+ WEBKIT_FN_INIT ();
+ CHECK_STRING(setting);
+ char *str = (char*)"";
+ WebKitWebSettings *settings =
+ webkit_web_view_get_settings (WEBKIT_WEB_VIEW (xw->widget_osr));
+ if (settings)
+ {
+ g_object_get(settings, SSDATA(setting), &str, NULL);
+ }
+ return build_string(str);
+}
+
+DEFUN ("xwidget-webkit-set-web-string-setting",
+ Fxwidget_webkit_set_web_string_setting,
+ Sxwidget_webkit_set_web_string_setting,
+ 3, 3, 0,
+ doc: /* Sets the Webkit XWIDGET string setting. */)
+ (Lisp_Object xwidget, Lisp_Object setting, Lisp_Object value)
+{
+ WEBKIT_FN_INIT ();
+ CHECK_STRING (setting);
+ CHECK_STRING (value);
+ WebKitWebSettings *settings =
+ webkit_web_view_get_settings (WEBKIT_WEB_VIEW (xw->widget_osr));
+ if (settings)
+ {
+ g_object_set (settings, SSDATA(setting), SSDATA(value), NULL);
+ }
+
+ return Qnil;
+}
+
DEFUN ("xwidget-resize", Fxwidget_resize, Sxwidget_resize, 3, 3, 0,
doc: /* Resize XWIDGET. NEW_WIDTH, NEW_HEIGHT define the new size. */
)
(Lisp_Object xwidget, Lisp_Object new_width, Lisp_Object new_height)
@@ -975,6 +1014,8 @@ syms_of_xwidget (void)
defsubr (&Sxwidget_webkit_goto_uri);
defsubr (&Sxwidget_webkit_execute_script);
defsubr (&Sxwidget_webkit_get_title);
+ defsubr (&Sxwidget_webkit_get_web_string_setting);
+ defsubr (&Sxwidget_webkit_set_web_string_setting);
DEFSYM (Qwebkit, "webkit");
defsubr (&Sxwidget_size_request);
--
2.5.5