[PATCH] webkit: New library.
Jan Nieuwenhuizen <[email protected]> Tue, 04 Jun 2019 19:29:55 +0200
| Newsgroups | gmane.lisp.guile.gtk |
|---|---|
| Message-ID | <[email protected]> |
--=-=-= Content-Type: text/plain Hi, As discussed on irc, find a minimal webkit1gtk patch included. Also available on `wip' here: https://gitlab.com/janneke/guile-gnome.git I have only wrapped two header files, enough to create a new web browser and load an url. I'm planning to include this for inclusion in Guix. Greetings, janneke --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-webkit-New-library.patch From 1a8749af805cb18661cb687e6e236c1678ded51f Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen <[email protected]> Date: Thu, 30 May 2019 22:53:56 +0200 Subject: [PATCH] webkit: New library. * .gitignore: Update for webkit. * Makefile.am (SUBDIRS): Add webkit. * common.mk (PACKAGES): Likewise. * configure.ac: Check for webkit1-1.0 2.4.11, the latest version to support gtk2. * defs/gnome/defs/Makefile.am (webkit): New target. (WEBKIT_INCLS): New variable. Only wrap the minimal required set. * defs/gnome/defs/webkit-types.defs: New file. * defs/gnome/defs/webkit.defs (webkit_web_view_get_type): New file. * dev-environ.in (builddir): Add webkit, also add GUILE_LOAD_COMPILED_PATH. * webkit/.gitignore: New file. * webkit/AUTHORS: New file. * webkit/Makefile.am: New file. * webkit/README: New file. * webkit/doc/Makefile.am: New file. * webkit/doc/guile-gnome-webkit.texi: New file. * webkit/doc/overview.texi: New file. * webkit/doc/undocumented.texi: New file. * webkit/examples/Makefile.am: New file. * webkit/examples/browser.scm: New file. * webkit/gnome/Makefile.am: New file. * webkit/gnome/gw/Makefile.am: New file. * webkit/tests/Makefile.am: New file. --- .gitignore | 2 + Makefile.am | 3 +- common.mk | 2 +- configure.ac | 14 + defs/gnome/defs/Makefile.am | 26 ++ defs/gnome/defs/webkit-types.defs | 70 ++++ defs/gnome/defs/webkit.defs | 630 +++++++++++++++++++++++++++++ dev-environ.in | 7 +- webkit/.gitignore | 9 + webkit/AUTHORS | 13 + webkit/Makefile.am | 3 + webkit/README | 32 ++ webkit/doc/Makefile.am | 15 + webkit/doc/guile-gnome-webkit.texi | 69 ++++ webkit/doc/overrides.texi | 0 webkit/doc/overview.texi | 16 + webkit/doc/undocumented.texi | 10 + webkit/examples/Makefile.am | 1 + webkit/examples/browser.scm | 70 ++++ webkit/gnome/Makefile.am | 13 + webkit/gnome/gw/Makefile.am | 31 ++ webkit/gnome/gw/webkit-spec.scm | 51 +++ webkit/gnome/gw/webkit-support.c | 26 ++ webkit/gnome/gw/webkit-support.h | 42 ++ webkit/gnome/overrides/Makefile.am | 8 + webkit/gnome/overrides/webkit.defs | 20 + webkit/gnome/webkit.scm | 36 ++ webkit/tests/Makefile.am | 3 + 28 files changed, 1219 insertions(+), 3 deletions(-) create mode 100644 defs/gnome/defs/webkit-types.defs create mode 100644 defs/gnome/defs/webkit.defs create mode 100644 webkit/.gitignore create mode 100644 webkit/AUTHORS create mode 100644 webkit/Makefile.am create mode 100644 webkit/README create mode 100644 webkit/doc/Makefile.am create mode 100644 webkit/doc/guile-gnome-webkit.texi create mode 100644 webkit/doc/overrides.texi create mode 100644 webkit/doc/overview.texi create mode 100644 webkit/doc/undocumented.texi create mode 100644 webkit/examples/Makefile.am create mode 100755 webkit/examples/browser.scm create mode 100644 webkit/gnome/Makefile.am create mode 100644 webkit/gnome/gw/Makefile.am create mode 100644 webkit/gnome/gw/webkit-spec.scm create mode 100644 webkit/gnome/gw/webkit-support.c create mode 100644 webkit/gnome/gw/webkit-support.h create mode 100644 webkit/gnome/overrides/Makefile.am create mode 100644 webkit/gnome/overrides/webkit.defs create mode 100644 webkit/gnome/webkit.scm create mode 100644 webkit/tests/Makefile.am diff --git a/.gitignore b/.gitignore index 8cc3157..f85edc5 100644 --- a/.gitignore +++ b/.gitignore @@ -73,3 +73,5 @@ m4/lt~obsolete.m4 /pango/doc/pango/version.texi /pango/doc/pangocairo/guile-gnome-pangocairo.info /pango/doc/pangocairo/version.texi +/webkit/doc/guile-gnome-webkit.info +/webkit/doc/version.texi diff --git a/Makefile.am b/Makefile.am index 1b5a3c4..a67e800 100644 --- a/Makefile.am +++ b/Makefile.am @@ -11,7 +11,8 @@ SUBDIRS = \ libgnomecanvas \ libgnome \ libglade \ - gconf + gconf \ + webkit # corba # gnome-vfs diff --git a/common.mk b/common.mk index ade18cf..02fe226 100644 --- a/common.mk +++ b/common.mk @@ -38,7 +38,7 @@ SUFFIXES = .x .doc GUILE_SNARF_CFLAGS = $(DEFS) $(AM_CFLAGS) $(GUILE_CFLAGS) $(G_WRAP_CFLAGS) -PACKAGES = atk cairo defs gconf glib gtk libglade libgnome libgnomecanvas libgnomeui pango +PACKAGES = atk cairo defs gconf glib gtk libglade libgnome libgnomecanvas libgnomeui pango webkit # gnome-vfs corba SOURCE_GUILE_PATH=$(shell echo $(addprefix $(abs_top_srcdir)/,$(PACKAGES)) | sed -e 's/ /:/g'):$(srcdir) diff --git a/configure.ac b/configure.ac index d38dd72..e8a8001 100644 --- a/configure.ac +++ b/configure.ac @@ -282,6 +282,13 @@ AC_SUBST(PANGOCAIRO_LIBS) AM_CONDITIONAL(HAVE_PANGOCAIRO, $HAVE_PANGOCAIRO) record_check pango $HAVE_PANGO +# webkit +PKG_CHECK_MODULES(WEBKIT, webkit-1.0 >= 2.4.11, HAVE_WEBKIT=true, HAVE_WEBKIT=false) +AC_SUBST(WEBKIT_CFLAGS) +AC_SUBST(WEBKIT_LIBS) +AM_CONDITIONAL(HAVE_WEBKIT, $HAVE_WEBKIT) +record_check webkit $HAVE_WEBKIT + if test -z "$PACKAGES_TO_BUILD"; then AC_MSG_ERROR([All wrappers failed their prerequisites. @@ -432,5 +439,12 @@ gtk/guile-gnome-gtk.pc gtk/guile-gnome-gtk-uninstalled.pc libgnomeui/guile-gnome-libgnomeui.pc libgnomeui/guile-gnome-libgnomeui-uninstalled.pc +webkit/examples/Makefile +webkit/doc/Makefile +webkit/tests/Makefile +webkit/gnome/gw/Makefile +webkit/gnome/Makefile +webkit/gnome/overrides/Makefile +webkit/Makefile ) AC_OUTPUT diff --git a/defs/gnome/defs/Makefile.am b/defs/gnome/defs/Makefile.am index 4936dae..79a3ba4 100644 --- a/defs/gnome/defs/Makefile.am +++ b/defs/gnome/defs/Makefile.am @@ -123,3 +123,29 @@ gconf: --with-header='(include type-ignores) (include "gconf-types.defs") (include overrides)' \ $(DEFS_HEADER_DIR)/gconf/2/gconf/*.h > gconf.defs +WEBKIT_INCLS = webkit/webkitwebview.h\ + webkit/webkitenumtypes.h + +# WebKit uses camel case in a way that confuses (gnome gobject util) +# Type use the WebKit prefix, e.g. WebKitWebView, while the member +# functions, e.g., are named webkit_web_view_new, instead of +# web_kit_web_view_new. We repair that by using "Webkit"; see also +# webkit/gnome/gw/webkit-support.h +webkit: + ../../../h2def.py --types \ + $(addprefix $(DEFS_HEADER_DIR)/webkitgtk-1.0/,$(WEBKIT_INCLS)) \ + | sed \ + -e 's,WEB_TYPE_KIT,WEBKIT_TYPE,'g\ + -e 's,"Web","WebKit",'g\ + -e 's, Kit, ,'g\ + -e 's,WebKit,Webkit,'g\ + > webkit-types.defs + ../../../h2def.py --procs \ + --with-header='(include "common-ignores.defs") (include "webkit-types.defs") (include overrides)' \ + $(addprefix $(DEFS_HEADER_DIR)/webkitgtk-1.0/,$(WEBKIT_INCLS)) \ + | sed \ + -e 's,WEB_TYPE_KIT,WEBKIT_TYPE,'g\ + -e 's,WEBKIT_API-void,none,'g\ + -e 's,WEBKIT_API-,,'g\ + -e 's,WebKit,Webkit,'g\ + > webkit.defs diff --git a/defs/gnome/defs/webkit-types.defs b/defs/gnome/defs/webkit-types.defs new file mode 100644 index 0000000..aae7dca --- /dev/null +++ b/defs/gnome/defs/webkit-types.defs @@ -0,0 +1,70 @@ +;; -*- scheme -*- +;; Enumerations and flags ... + +(define-enum NavigationResponse + (in-module "Webkit") + (c-name "WebkitNavigationResponse") + (gtype-id "WEBKIT_TYPE_NAVIGATION_RESPONSE") + (values + '("accept" "WEBKIT_NAVIGATION_RESPONSE_ACCEPT") + '("ignore" "WEBKIT_NAVIGATION_RESPONSE_IGNORE") + '("download" "WEBKIT_NAVIGATION_RESPONSE_DOWNLOAD") + ) +) + +(define-enum WebViewTargetInfo + (in-module "Webkit") + (c-name "WebkitWebViewTargetInfo") + (gtype-id "WEBKIT_TYPE_WEB_VIEW_TARGET_INFO") + (values + '("html" "WEBKIT_WEB_VIEW_TARGET_INFO_HTML") + '("text" "WEBKIT_WEB_VIEW_TARGET_INFO_TEXT") + '("image" "WEBKIT_WEB_VIEW_TARGET_INFO_IMAGE") + '("uri-list" "WEBKIT_WEB_VIEW_TARGET_INFO_URI_LIST") + '("netscape-url" "WEBKIT_WEB_VIEW_TARGET_INFO_NETSCAPE_URL") + ) +) + +(define-enum WebViewViewMode + (in-module "Webkit") + (c-name "WebkitWebViewViewMode") + (gtype-id "WEBKIT_TYPE_WEB_VIEW_VIEW_MODE") + (values + '("windowed" "WEBKIT_WEB_VIEW_VIEW_MODE_WINDOWED") + '("floating" "WEBKIT_WEB_VIEW_VIEW_MODE_FLOATING") + '("fullscreen" "WEBKIT_WEB_VIEW_VIEW_MODE_FULLSCREEN") + '("maximized" "WEBKIT_WEB_VIEW_VIEW_MODE_MAXIMIZED") + '("minimized" "WEBKIT_WEB_VIEW_VIEW_MODE_MINIMIZED") + ) +) + +(define-enum SelectionAffinity + (in-module "Webkit") + (c-name "WebkitSelectionAffinity") + (gtype-id "WEBKIT_TYPE_SELECTION_AFFINITY") + (values + '("upstream" "WEBKIT_SELECTION_AFFINITY_UPSTREAM") + '("downstream" "WEBKIT_SELECTION_AFFINITY_DOWNSTREAM") + ) +) + +(define-enum InsertAction + (in-module "Webkit") + (c-name "WebkitInsertAction") + (gtype-id "WEBKIT_TYPE_INSERT_ACTION") + (values + '("typed" "WEBKIT_INSERT_ACTION_TYPED") + '("pasted" "WEBKIT_INSERT_ACTION_PASTED") + '("dropped" "WEBKIT_INSERT_ACTION_DROPPED") + ) +) + +;; -*- scheme -*- +; object definitions ... +(define-object WebView + (in-module "Webkit") + (parent "GtkContainer") + (c-name "WebkitWebView") + (gtype-id "WEBKIT_TYPE_WEB_VIEW") +) + diff --git a/defs/gnome/defs/webkit.defs b/defs/gnome/defs/webkit.defs new file mode 100644 index 0000000..bcc3f44 --- /dev/null +++ b/defs/gnome/defs/webkit.defs @@ -0,0 +1,630 @@ +;; -*- scheme -*- +(include "common-ignores.defs") (include "webkit-types.defs") (include overrides) + +;; From /gnu/store/c7gg2x2ib92kpzjkqz217pccw2xas84b-webkitgtk-2.4.11/include/webkitgtk-1.0/webkit/webkitwebview.h + +(define-function webkit_web_view_get_type + (c-name "webkit_web_view_get_type") + (return-type "GType") +) + +(define-function webkit_web_view_new + (c-name "webkit_web_view_new") + (is-constructor-of "WebkitWebView") + (return-type "GtkWidget*") +) + +(define-method get_title + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_title") + (return-type "const-gchar*") +) + +(define-method get_uri + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_uri") + (return-type "const-gchar*") +) + +(define-method set_maintains_back_forward_list + (of-object "WebkitWebView") + (c-name "webkit_web_view_set_maintains_back_forward_list") + (return-type "none") + (parameters + '("gboolean" "flag") + ) +) + +(define-method get_back_forward_list + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_back_forward_list") + (return-type "WebkitWebBackForwardList*") +) + +(define-method go_to_back_forward_item + (of-object "WebkitWebView") + (c-name "webkit_web_view_go_to_back_forward_item") + (return-type "gboolean") + (parameters + '("WebkitWebHistoryItem*" "item") + ) +) + +(define-method can_go_back + (of-object "WebkitWebView") + (c-name "webkit_web_view_can_go_back") + (return-type "gboolean") +) + +(define-method can_go_back_or_forward + (of-object "WebkitWebView") + (c-name "webkit_web_view_can_go_back_or_forward") + (return-type "gboolean") + (parameters + '("gint" "steps") + ) +) + +(define-method can_go_forward + (of-object "WebkitWebView") + (c-name "webkit_web_view_can_go_forward") + (return-type "gboolean") +) + +(define-method go_back + (of-object "WebkitWebView") + (c-name "webkit_web_view_go_back") + (return-type "none") +) + +(define-method go_back_or_forward + (of-object "WebkitWebView") + (c-name "webkit_web_view_go_back_or_forward") + (return-type "none") + (parameters + '("gint" "steps") + ) +) + +(define-method go_forward + (of-object "WebkitWebView") + (c-name "webkit_web_view_go_forward") + (return-type "none") +) + +(define-method stop_loading + (of-object "WebkitWebView") + (c-name "webkit_web_view_stop_loading") + (return-type "none") +) + +(define-method open + (of-object "WebkitWebView") + (c-name "webkit_web_view_open") + (return-type "none") + (parameters + '("const-gchar*" "uri") + ) +) + +(define-method reload + (of-object "WebkitWebView") + (c-name "webkit_web_view_reload") + (return-type "none") +) + +(define-method reload_bypass_cache + (of-object "WebkitWebView") + (c-name "webkit_web_view_reload_bypass_cache") + (return-type "none") +) + +(define-method load_uri + (of-object "WebkitWebView") + (c-name "webkit_web_view_load_uri") + (return-type "none") + (parameters + '("const-gchar*" "uri") + ) +) + +(define-method load_string + (of-object "WebkitWebView") + (c-name "webkit_web_view_load_string") + (return-type "none") + (parameters + '("const-gchar*" "content") + '("const-gchar*" "mime_type") + '("const-gchar*" "encoding") + '("const-gchar*" "base_uri") + ) +) + +(define-method load_html_string + (of-object "WebkitWebView") + (c-name "webkit_web_view_load_html_string") + (return-type "none") + (parameters + '("const-gchar*" "content") + '("const-gchar*" "base_uri") + ) +) + +(define-method load_request + (of-object "WebkitWebView") + (c-name "webkit_web_view_load_request") + (return-type "none") + (parameters + '("WebkitNetworkRequest*" "request") + ) +) + +(define-method search_text + (of-object "WebkitWebView") + (c-name "webkit_web_view_search_text") + (return-type "gboolean") + (parameters + '("const-gchar*" "text") + '("gboolean" "case_sensitive") + '("gboolean" "forward") + '("gboolean" "wrap") + ) +) + +(define-method mark_text_matches + (of-object "WebkitWebView") + (c-name "webkit_web_view_mark_text_matches") + (return-type "guint") + (parameters + '("const-gchar*" "string") + '("gboolean" "case_sensitive") + '("guint" "limit") + ) +) + +(define-method set_highlight_text_matches + (of-object "WebkitWebView") + (c-name "webkit_web_view_set_highlight_text_matches") + (return-type "none") + (parameters + '("gboolean" "highlight") + ) +) + +(define-method unmark_text_matches + (of-object "WebkitWebView") + (c-name "webkit_web_view_unmark_text_matches") + (return-type "none") +) + +(define-method get_main_frame + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_main_frame") + (return-type "WebkitWebFrame*") +) + +(define-method get_focused_frame + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_focused_frame") + (return-type "WebkitWebFrame*") +) + +(define-method execute_script + (of-object "WebkitWebView") + (c-name "webkit_web_view_execute_script") + (return-type "none") + (parameters + '("const-gchar*" "script") + ) +) + +(define-method can_cut_clipboard + (of-object "WebkitWebView") + (c-name "webkit_web_view_can_cut_clipboard") + (return-type "gboolean") +) + +(define-method can_copy_clipboard + (of-object "WebkitWebView") + (c-name "webkit_web_view_can_copy_clipboard") + (return-type "gboolean") +) + +(define-method can_paste_clipboard + (of-object "WebkitWebView") + (c-name "webkit_web_view_can_paste_clipboard") + (return-type "gboolean") +) + +(define-method cut_clipboard + (of-object "WebkitWebView") + (c-name "webkit_web_view_cut_clipboard") + (return-type "none") +) + +(define-method copy_clipboard + (of-object "WebkitWebView") + (c-name "webkit_web_view_copy_clipboard") + (return-type "none") +) + +(define-method paste_clipboard + (of-object "WebkitWebView") + (c-name "webkit_web_view_paste_clipboard") + (return-type "none") +) + +(define-method delete_selection + (of-object "WebkitWebView") + (c-name "webkit_web_view_delete_selection") + (return-type "none") +) + +(define-method has_selection + (of-object "WebkitWebView") + (c-name "webkit_web_view_has_selection") + (return-type "gboolean") +) + +(define-method select_all + (of-object "WebkitWebView") + (c-name "webkit_web_view_select_all") + (return-type "none") +) + +(define-method get_editable + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_editable") + (return-type "gboolean") +) + +(define-method set_editable + (of-object "WebkitWebView") + (c-name "webkit_web_view_set_editable") + (return-type "none") + (parameters + '("gboolean" "flag") + ) +) + +(define-method get_copy_target_list + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_copy_target_list") + (return-type "GtkTargetList*") +) + +(define-method get_paste_target_list + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_paste_target_list") + (return-type "GtkTargetList*") +) + +(define-method set_settings + (of-object "WebkitWebView") + (c-name "webkit_web_view_set_settings") + (return-type "none") + (parameters + '("WebkitWebSettings*" "settings") + ) +) + +(define-method get_settings + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_settings") + (return-type "WebkitWebSettings*") +) + +(define-method get_inspector + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_inspector") + (return-type "WebkitWebInspector*") +) + +(define-method get_window_features + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_window_features") + (return-type "WebkitWebWindowFeatures*") +) + +(define-method can_show_mime_type + (of-object "WebkitWebView") + (c-name "webkit_web_view_can_show_mime_type") + (return-type "gboolean") + (parameters + '("const-gchar*" "mime_type") + ) +) + +(define-method get_transparent + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_transparent") + (return-type "gboolean") +) + +(define-method set_transparent + (of-object "WebkitWebView") + (c-name "webkit_web_view_set_transparent") + (return-type "none") + (parameters + '("gboolean" "flag") + ) +) + +(define-method get_zoom_level + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_zoom_level") + (return-type "gfloat") +) + +(define-method set_zoom_level + (of-object "WebkitWebView") + (c-name "webkit_web_view_set_zoom_level") + (return-type "none") + (parameters + '("gfloat" "zoom_level") + ) +) + +(define-method zoom_in + (of-object "WebkitWebView") + (c-name "webkit_web_view_zoom_in") + (return-type "none") +) + +(define-method zoom_out + (of-object "WebkitWebView") + (c-name "webkit_web_view_zoom_out") + (return-type "none") +) + +(define-method get_full_content_zoom + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_full_content_zoom") + (return-type "gboolean") +) + +(define-method set_full_content_zoom + (of-object "WebkitWebView") + (c-name "webkit_web_view_set_full_content_zoom") + (return-type "none") + (parameters + '("gboolean" "full_content_zoom") + ) +) + +(define-method get_encoding + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_encoding") + (return-type "const-gchar*") +) + +(define-method set_custom_encoding + (of-object "WebkitWebView") + (c-name "webkit_web_view_set_custom_encoding") + (return-type "none") + (parameters + '("const-gchar*" "encoding") + ) +) + +(define-method get_custom_encoding + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_custom_encoding") + (return-type "const-char*") +) + +(define-method set_view_mode + (of-object "WebkitWebView") + (c-name "webkit_web_view_set_view_mode") + (return-type "none") + (parameters + '("WebkitWebViewViewMode" "mode") + ) +) + +(define-method get_view_mode + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_view_mode") + (return-type "WebkitWebViewViewMode") +) + +(define-method move_cursor + (of-object "WebkitWebView") + (c-name "webkit_web_view_move_cursor") + (return-type "none") + (parameters + '("GtkMovementStep" "step") + '("gint" "count") + ) +) + +(define-method get_load_status + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_load_status") + (return-type "WebkitLoadStatus") +) + +(define-method get_progress + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_progress") + (return-type "gdouble") +) + +(define-method undo + (of-object "WebkitWebView") + (c-name "webkit_web_view_undo") + (return-type "none") +) + +(define-method can_undo + (of-object "WebkitWebView") + (c-name "webkit_web_view_can_undo") + (return-type "gboolean") +) + +(define-method redo + (of-object "WebkitWebView") + (c-name "webkit_web_view_redo") + (return-type "none") +) + +(define-method can_redo + (of-object "WebkitWebView") + (c-name "webkit_web_view_can_redo") + (return-type "gboolean") +) + +(define-method set_view_source_mode + (of-object "WebkitWebView") + (c-name "webkit_web_view_set_view_source_mode") + (return-type "none") + (parameters + '("gboolean" "view_source_mode") + ) +) + +(define-method get_view_source_mode + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_view_source_mode") + (return-type "gboolean") +) + +(define-method get_hit_test_result + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_hit_test_result") + (return-type "WebkitHitTestResult*") + (parameters + '("GdkEventButton*" "event") + ) +) + +(define-method get_icon_uri + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_icon_uri") + (return-type "const-gchar*") +) + +(define-method get_icon_pixbuf + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_icon_pixbuf") + (return-type "GdkPixbuf*") +) + +(define-method try_get_favicon_pixbuf + (of-object "WebkitWebView") + (c-name "webkit_web_view_try_get_favicon_pixbuf") + (return-type "GdkPixbuf*") + (parameters + '("guint" "width") + '("guint" "height") + ) +) + +(define-method get_dom_document + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_dom_document") + (return-type "WebkitDOMDocument*") +) + +(define-method get_viewport_attributes + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_viewport_attributes") + (return-type "WebkitViewportAttributes*") +) + +(define-method get_snapshot + (of-object "WebkitWebView") + (c-name "webkit_web_view_get_snapshot") + (return-type "cairo_surface_t*") +) + + + +;; From /gnu/store/c7gg2x2ib92kpzjkqz217pccw2xas84b-webkitgtk-2.4.11/include/webkitgtk-1.0/webkit/webkitenumtypes.h + +(define-function webkit_download_status_get_type + (c-name "webkit_download_status_get_type") + (return-type "GType") +) + +(define-function webkit_download_error_get_type + (c-name "webkit_download_error_get_type") + (return-type "GType") +) + +(define-function webkit_network_error_get_type + (c-name "webkit_network_error_get_type") + (return-type "GType") +) + +(define-function webkit_policy_error_get_type + (c-name "webkit_policy_error_get_type") + (return-type "GType") +) + +(define-function webkit_plugin_error_get_type + (c-name "webkit_plugin_error_get_type") + (return-type "GType") +) + +(define-function webkit_cache_model_get_type + (c-name "webkit_cache_model_get_type") + (return-type "GType") +) + +(define-function webkit_context_menu_action_get_type + (c-name "webkit_context_menu_action_get_type") + (return-type "GType") +) + +(define-function webkit_security_policy_get_type + (c-name "webkit_security_policy_get_type") + (return-type "GType") +) + +(define-function webkit_hit_test_result_context_get_type + (c-name "webkit_hit_test_result_context_get_type") + (return-type "GType") +) + +(define-function webkit_load_status_get_type + (c-name "webkit_load_status_get_type") + (return-type "GType") +) + +(define-function webkit_web_navigation_reason_get_type + (c-name "webkit_web_navigation_reason_get_type") + (return-type "GType") +) + +(define-function webkit_editing_behavior_get_type + (c-name "webkit_editing_behavior_get_type") + (return-type "GType") +) + +(define-function webkit_navigation_response_get_type + (c-name "webkit_navigation_response_get_type") + (return-type "GType") +) + +(define-function webkit_web_view_target_info_get_type + (c-name "webkit_web_view_target_info_get_type") + (return-type "GType") +) + +(define-function webkit_web_view_view_mode_get_type + (c-name "webkit_web_view_view_mode_get_type") + (return-type "GType") +) + +(define-function webkit_selection_affinity_get_type + (c-name "webkit_selection_affinity_get_type") + (return-type "GType") +) + +(define-function webkit_insert_action_get_type + (c-name "webkit_insert_action_get_type") + (return-type "GType") +) + + diff --git a/dev-environ.in b/dev-environ.in index 7c4a888..6318e8f 100755 --- a/dev-environ.in +++ b/dev-environ.in @@ -24,14 +24,19 @@ srcdir=@abs_top_srcdir@ builddir=@abs_top_builddir@ -for pkg in atk cairo corba defs gconf glib gnome-vfs gtk libglade libgnome libgnomecanvas libgnomeui pango; do +for pkg in atk cairo corba defs gconf glib gnome-vfs gtk libglade libgnome libgnomecanvas libgnomeui pango webkit; do GUILE_LOAD_PATH=$srcdir/$pkg:$GUILE_LOAD_PATH if [ $srcdir != $builddir ]; then GUILE_LOAD_PATH=$builddir/$pkg:$GUILE_LOAD_PATH fi + GUILE_LOAD_COMPILED_PATH=$srcdir/$pkg:$GUILE_LOAD_COMPILED_PATH + if [ $srcdir != $builddir ]; then + GUILE_LOAD_COMPILED_PATH=$builddir/$pkg:$GUILE_LOAD_COMPILED_PATH + fi if [ -d $builddir/$pkg/bin ]; then PATH=$builddir/$pkg/bin:$PATH fi + LD_LIBRARY_PATH=$builddir/$pkg/gnome/gw:$LD_LIBRARY_PATH LTDL_LIBRARY_PATH=$builddir/$pkg/gnome/gw:$LTDL_LIBRARY_PATH PKG_CONFIG_PATH=$builddir/$pkg:$PKG_CONFIG_PATH done diff --git a/webkit/.gitignore b/webkit/.gitignore new file mode 100644 index 0000000..319e9e9 --- /dev/null +++ b/webkit/.gitignore @@ -0,0 +1,9 @@ +*-gw-*.[ch] +Makefile +Makefile.in +.deps +.libs +*.log +gnome/gw/webkit.scm +*.lo +*.la diff --git a/webkit/AUTHORS b/webkit/AUTHORS new file mode 100644 index 0000000..88c3ba5 --- /dev/null +++ b/webkit/AUTHORS @@ -0,0 +1,13 @@ +To find out what should go in this file, see "Information For +Maintainers of GNU Software" (maintain.texi), the section called +"Recording Changes". + +Jan Nieuwenhuizen: +In the directory gnome, wrote: + webkit.scm +In the directory gnome/gw, wrote: + webkit-spec.scm webkit-support.c webkit-support.h +In the directory gnome/overrides, wrote: + webkit.defs +In the directory examples, wrote: + webkit.scm diff --git a/webkit/Makefile.am b/webkit/Makefile.am new file mode 100644 index 0000000..a4fe790 --- /dev/null +++ b/webkit/Makefile.am @@ -0,0 +1,3 @@ +SUBDIRS = gnome examples doc tests + +EXTRA_DIST = AUTHORS README diff --git a/webkit/README b/webkit/README new file mode 100644 index 0000000..ce99191 --- /dev/null +++ b/webkit/README @@ -0,0 +1,32 @@ +guile-gnome-webkit README +Copyright (C) 2019 Free Software Foundation, Inc. +See the end for copying conditions of this file. +Last updated 16 September 2004. + + +About guile-gnome-webkit +================================ + +guile-gnome-webkit is a Guile wrapper for the WebkitGtk library. +It is a part of GNU guile-gnome. See the README file in the toplevel +source directory for more information. + + +Build dependencies +================== + +Besides the base guile-gnome requirements given in ../README, +guile-gnome-webkit requires webkit development packages. + +guile-gnome-webkit depends on the following guile-gnome modules: +glib, defs, atk, pango, gtk. + + +Copying this file +================= + +Copyright (C) 2019 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, are +permitted in any medium without royalty provided the copyright notice +and this notice are preserved. diff --git a/webkit/doc/Makefile.am b/webkit/doc/Makefile.am new file mode 100644 index 0000000..092d9da --- /dev/null +++ b/webkit/doc/Makefile.am @@ -0,0 +1,15 @@ +################################################################################ +## guile-gnome-webkit.info + +include $(top_srcdir)/generate-docs.mk + +docbook_xml_wildcard = ~/src/gnome2/webkit/docs/reference/xml/*.xml +docbook_xml_files = $(wildcard $(docbook_xml_wildcard)) + +wrapset_stem = webkit + +EXTRA_DIST = overrides.texi + +info_TEXINFOS=guile-gnome-webkit.texi +guile_gnome_webkit_TEXINFOS=overview.texi \ + $(wildcard section-*.texi) $(wildcard defuns-*.texi) undocumented.texi diff --git a/webkit/doc/guile-gnome-webkit.texi b/webkit/doc/guile-gnome-webkit.texi new file mode 100644 index 0000000..c0eab2b --- /dev/null +++ b/webkit/doc/guile-gnome-webkit.texi @@ -0,0 +1,69 @@ +\input texinfo @c -*-texinfo-*- +@c %**start of header +@setfilename guile-gnome-webkit.info +@settitle Guile-Gnome-Webkit +@c %**end of header + +@include version.texi + +@copying +This manual is for @code{(gnome webkit)} (version @value{VERSION}, updated +@value{UPDATED}) + +Copyright 2001-2007 Federico Mena Quintero, Raph Levien, and others + +@c WEBKIT is LGPL, ergo GPL distribution is possible +@quotation +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU General Public License, Version 2 or any +later version published by the Free Software Foundation. +@end quotation + +@end copying + +@dircategory The Algorithmic Language Scheme +@direntry +* Guile-Gnome-Webkit: (guile-gnome-webkit.info). Structured graphics. +@end direntry + +@titlepage +@title Guile-GNOME: Webkit +@subtitle version @value{VERSION}, updated @value{UPDATED} +@author Federico Mena Quintero +@author Raph Levien +@author and others +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage + +@ifnottex +@node Top +@top Guile-Gnome-Webkit + +@insertcopying +@menu +* Overview:: About webkit and its Guile bindings. +* Undocumented:: Undocumented functions. + +* Type Index:: +* Function Index:: +@end menu + +@end ifnottex + +@iftex +@shortcontents +@end iftex + +@include overview.texi + +@include undocumented.texi + +@node Type Index +@unnumbered Type Index +@printindex tp +@node Function Index +@unnumbered Function Index +@printindex fn +@bye diff --git a/webkit/doc/overrides.texi b/webkit/doc/overrides.texi new file mode 100644 index 0000000..e69de29 diff --git a/webkit/doc/overview.texi b/webkit/doc/overview.texi new file mode 100644 index 0000000..b6b5553 --- /dev/null +++ b/webkit/doc/overview.texi @@ -0,0 +1,16 @@ +@node Overview +@chapter Overview + +@code{(gnome canvas)} wraps the Gnome-Canvas library for Guile. It is +a part of Guile-GNOME. + +Libgnomecanvas is a retained-mode canvas: you tell it what should be +on it, and it handles redraw operations for you. It is a bit dated, in +that it is backed by a library called ``libart'' and not Cairo, but no +clear successor has emerged yet. + +The source distribution has a fairly comprehensive example; see +@code{examples/canvas.scm} for more information. + +See the documentation for @code{(gnome gobject)} for more information +on Guile-GNOME. diff --git a/webkit/doc/undocumented.texi b/webkit/doc/undocumented.texi new file mode 100644 index 0000000..56e500e --- /dev/null +++ b/webkit/doc/undocumented.texi @@ -0,0 +1,10 @@ + +@c %start of fragment + +@node Undocumented +@chapter Undocumented +The following symbols, if any, have not been properly documented. + +@section (gnome gw webkit) + +@c %end of fragment diff --git a/webkit/examples/Makefile.am b/webkit/examples/Makefile.am new file mode 100644 index 0000000..1e3188c --- /dev/null +++ b/webkit/examples/Makefile.am @@ -0,0 +1 @@ +EXTRA_DIST = $(wildcard *.scm) diff --git a/webkit/examples/browser.scm b/webkit/examples/browser.scm new file mode 100755 index 0000000..aa4e276 --- /dev/null +++ b/webkit/examples/browser.scm @@ -0,0 +1,70 @@ +#! /bin/sh +# -*- scheme -*- +exec guile --debug -s $0 "$@" +!# +;;; guile-gnome +;;; Copyright (C) 2004 Free Software Foundation, Inc. +;;; Copyright (C) 2019 Jan (janneke) Nieuwenhuizen <[email protected]> + +;;; This program is free software; you can redistribute it and/or +;;; modify it under the terms of the GNU General Public License as +;;; published by the Free Software Foundation; either version 2 of +;;; the License, or (at your option) any later version. +;;; +;;; This program is distributed in the hope that it will be useful, +;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with this program; if not, contact: +;;; +;;; Free Software Foundation Voice: +1-617-542-5942 +;;; 59 Temple Place - Suite 330 Fax: +1-617-542-2652 +;;; Boston, MA 02111-1307, USA [email protected] + +(use-modules (gnome-2) + (oop goops) + (gnome gtk) + (gnome gtk gdk-event) + (gnome webkit)) + +(define browser-width 300) +(define browser-height browser-width) + +(define (main) + + (define (key-press-event item event . data) + (let ((keyval (gdk-event-key:keyval event)) + (mods (gdk-event-key:modifiers event))) + (if (and (or (eq? keyval gdk:q) + (eq? keyval gdk:w)) + (equal? mods '(control-mask modifier-mask))) + (gtk-main-quit)) + #f)) + + (let* ((window (make <gtk-window> #:type 'toplevel)) + (button (make <gtk-button> #:label "Exit")) + (browser (make <gtk-button>)) + (browser (make <webkit-web-view>)) + (vbox (make <gtk-vbox>))) + + (add window vbox) + (add vbox browser) + + (add vbox button) + (connect button 'clicked + (lambda (b) (gtk-main-quit))) + + (connect window 'key-press-event key-press-event) + (connect window 'delete-event (lambda args (gtk-main-quit) #t)) + + (set-child-packing vbox button #f #f 0 'end) + (set-size-request browser browser-width browser-height) + + (load-uri browser "http://gnu.org") + + (show-all window) + (gtk-main))) + +(main) diff --git a/webkit/gnome/Makefile.am b/webkit/gnome/Makefile.am new file mode 100644 index 0000000..64e019f --- /dev/null +++ b/webkit/gnome/Makefile.am @@ -0,0 +1,13 @@ +include $(top_srcdir)/common.mk + +SUBDIRS = overrides + +guilemodule_DATA = + +if HAVE_WEBKIT +guilemodule_DATA += webkit.scm +SUBDIRS += gw +endif + +EXTRA_DIST = webkit.scm +DIST_SUBDIRS = gw overrides diff --git a/webkit/gnome/gw/Makefile.am b/webkit/gnome/gw/Makefile.am new file mode 100644 index 0000000..c19c6d3 --- /dev/null +++ b/webkit/gnome/gw/Makefile.am @@ -0,0 +1,31 @@ +include $(top_srcdir)/common.mk + +guilegwmodule_DATA = webkit-spec.scm webkit.scm + +EXTRA_DIST = webkit-spec.scm + +CLEANFILES = $(wildcard gnome-*.log) + +# There is one shared library for each wrapset. Each is produced by +# g-wrap, but also may contain some hand-coded routines. + +guilegnomelib_LTLIBRARIES = libgw-guile-gnome-webkit.la + +######################################################################## +## webkit +nodist_libgw_guile_gnome_webkit_la_SOURCES = guile-gnome-gw-webkit.c +libgw_guile_gnome_webkit_la_SOURCES = \ + webkit-support.c webkit-support.h + +libgw_guile_gnome_webkit_la_CFLAGS = $(GUILE_GLIB_CFLAGS) \ + $(AM_CFLAGS) $(WEBKIT_CFLAGS) $(GUILE_CFLAGS) \ + $(G_WRAP_CFLAGS) + +libgw_guile_gnome_webkit_la_LIBADD = $(WEBKIT_LIBS) $(GUILE_GLIB_LIBS) \ + $(GUILE_LIBS) $(G_WRAP_LIBS) + +libgw_guile_gnome_webkit_la_LDFLAGS = -module + +CLEANFILES += $(wildcard guile-gnome-gw-webkit.*) webkit.scm + +BUILT_SOURCES = guile-gnome-gw-webkit.c diff --git a/webkit/gnome/gw/webkit-spec.scm b/webkit/gnome/gw/webkit-spec.scm new file mode 100644 index 0000000..66e6372 --- /dev/null +++ b/webkit/gnome/gw/webkit-spec.scm @@ -0,0 +1,51 @@ +;;; guile-gnome + +;;; Copyright (C) 2004 Andy Wingo <wingo at pobox dot com> +;;; Copyright (C) 2004, 2019 Jan (janneke) Nieuwenhuizen <[email protected]> + +;;; This program is free software; you can redistribute it and/or +;;; modify it under the terms of the GNU General Public License as +;;; published by the Free Software Foundation; either version 2 of +;;; the License, or (at your option) any later version. +;;; +;;; This program is distributed in the hope that it will be useful, +;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with this program; if not, contact: +;;; +;;; Free Software Foundation Voice: +1-617-542-5942 +;;; 59 Temple Place - Suite 330 Fax: +1-617-542-2652 +;;; Boston, MA 02111-1307, USA [email protected] + +;;; Commentary: + +;;; g-wrap specification for webkitgtk. + +;;; Code: + +(define-module (gnome gw webkit-spec) + #:use-module (oop goops) + #:use-module (gnome gw support g-wrap) + #:use-module (gnome gw glib-spec) + #:use-module (gnome gw gobject-spec) + #:use-module (gnome gw gtk-spec) + #:use-module (gnome gw support gobject) + #:use-module (gnome gw support defs)) + +(define-class <webkit-wrapset> (<gobject-wrapset-base>) + #:id 'gnome-webkit + #:dependencies '(standard gnome-glib gnome-gobject gnome-gdk gnome-gtk + )) + +(define-method (global-declarations-cg (self <webkit-wrapset>)) + (list + (next-method) + "#include <webkit/webkit.h>\n" + "#include \"webkit-support.h\"\n")) + +(define-method (initialize (ws <webkit-wrapset>) initargs) + (next-method ws (cons #:module (cons '(gnome gw webkit) initargs))) + (load-defs-with-overrides ws "gnome/defs/webkit.defs")) diff --git a/webkit/gnome/gw/webkit-support.c b/webkit/gnome/gw/webkit-support.c new file mode 100644 index 0000000..f3805ef --- /dev/null +++ b/webkit/gnome/gw/webkit-support.c @@ -0,0 +1,26 @@ +/* guile-gnome + * Copyright (C) 2019 Jan (janneke) Nieuwenhuizen <[email protected]> + * + * webkit-support.c: Customizations for guile-gnome-webkit + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, contact: + * + * Free Software Foundation Voice: +1-617-542-5942 + * 59 Temple Place - Suite 330 Fax: +1-617-542-2652 + * Boston, MA 02111-1307, USA [email protected] + * + * Based on work Copyright (C) 2003 James Henstridge <[email protected]> + */ + +#include "webkit-support.h" diff --git a/webkit/gnome/gw/webkit-support.h b/webkit/gnome/gw/webkit-support.h new file mode 100644 index 0000000..0a73727 --- /dev/null +++ b/webkit/gnome/gw/webkit-support.h @@ -0,0 +1,42 @@ +/* guile-gnome + * + * Copyright (C) 2004, 2019 Jan (janneke) Nieuwenhuizen <[email protected]> + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, contact: + * + * Free Software Foundation Voice: +1-617-542-5942 + * 59 Temple Place - Suite 330 Fax: +1-617-542-2652 + * Boston, MA 02111-1307, USA [email protected] + * + * Based on work Copyright (C) 2003 James Henstridge <[email protected]> + */ + +#ifndef WEBKIT_SUPPORT_H +#define WEBKIT_SUPPORT_H + +#include <libguile.h> +#include "guile-gnome-gobject.h" +#include <gtk/gtk.h> +#include <webkit/webkit.h> + +// Repare the damage of using Webkit instead of WebKit in webkit.defs, +// webkit-types.defs +#define WebkitInsertAction WebKitInsertAction +#define WebkitNavigationResponse WebKitNavigationResponse +#define WebkitSelectionAffinity WebKitSelectionAffinity +#define WebkitWebView WebKitWebView +#define WebkitWebViewTargetInfo WebKitWebViewTargetInfo +#define WebkitWebViewViewMode WebKitWebViewViewMode + +#endif /* WEBKIT_SUPPORT_H */ diff --git a/webkit/gnome/overrides/Makefile.am b/webkit/gnome/overrides/Makefile.am new file mode 100644 index 0000000..0bc906c --- /dev/null +++ b/webkit/gnome/overrides/Makefile.am @@ -0,0 +1,8 @@ +include $(top_srcdir)/common.mk + +moduledir = $(guilemoduledir)/overrides + +module_DATA = webkit.defs + +EXTRA_DIST = $(module_DATA) + diff --git a/webkit/gnome/overrides/webkit.defs b/webkit/gnome/overrides/webkit.defs new file mode 100644 index 0000000..7b8f96e --- /dev/null +++ b/webkit/gnome/overrides/webkit.defs @@ -0,0 +1,20 @@ +;;; -*- scheme -*- +;;; guile-gnome +;;; Copyright (C) 2019 Jan (janneke) Nieuwenhuizen <[email protected]> + +;;; This program is free software; you can redistribute it and/or +;;; modify it under the terms of the GNU General Public License as +;;; published by the Free Software Foundation; either version 2 of +;;; the License, or (at your option) any later version. +;;; +;;; This program is distributed in the hope that it will be useful, +;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with this program; if not, contact: +;;; +;;; Free Software Foundation Voice: +1-617-542-5942 +;;; 59 Temple Place - Suite 330 Fax: +1-617-542-2652 +;;; Boston, MA 02111-1307, USA [email protected] diff --git a/webkit/gnome/webkit.scm b/webkit/gnome/webkit.scm new file mode 100644 index 0000000..5281e39 --- /dev/null +++ b/webkit/gnome/webkit.scm @@ -0,0 +1,36 @@ +;; guile-gnome +;; Copyright (C) 2003,2004 Andy Wingo <wingo at pobox dot com> +;; Copyright (C) 2019 Jan (janneke) Nieuwenhuizen <[email protected]> + +;; This program is free software; you can redistribute it and/or +;; modify it under the terms of the GNU General Public License as +;; published by the Free Software Foundation; either version 2 of +;; the License, or (at your option) any later version. +;; +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. +;; +;; You should have received a copy of the GNU General Public License +;; along with this program; if not, contact: +;; +;; Free Software Foundation Voice: +1-617-542-5942 +;; 59 Temple Place - Suite 330 Fax: +1-617-542-2652 +;; Boston, MA 02111-1307, USA [email protected] + +;;; Commentary: +;; +;;Guile wrappers for webkitgtk. +;; +;;; Code: + +(define-module (gnome webkit) + #:use-module (oop goops) + #:use-module (gnome gobject) + #:use-module (gnome gw webkit) + #:use-module (gnome gw generics) + #:use-module (gnome gw support modules)) + +(eval-when (expand load eval) + (re-export-modules (gnome gw webkit))) diff --git a/webkit/tests/Makefile.am b/webkit/tests/Makefile.am new file mode 100644 index 0000000..b7803ec --- /dev/null +++ b/webkit/tests/Makefile.am @@ -0,0 +1,3 @@ +include ../../tests.mk + +wrapset_stem = webkit -- 2.20.1 --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable --=20 Jan Nieuwenhuizen <[email protected]> | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com --=-=-= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ guile-gtk-general mailing list [email protected] https://lists.gnu.org/mailman/listinfo/guile-gtk-general --=-=-=--