Support GLib version older than 2.64
The g_clear_list() convenience macro was introduced in GLib 2.64, and is
the only feature used from such a recent version. Changing the code to
use g_list_free_full() allows building with older GLib releases.
Allow customizing the WebExtension installation path
Allow extras installation: shells, WebExtension
Add a new "install_extras" Meson build option which will enable
installing extras chosen to be built. This covers the JSC shell,
the GTK shell, and the WebExtension.
Support installation target for the core library
Add Meson rules to install libkiln, its header, and a pkg-config module
file. The API level of the library contains both the name of the port
the library links against and the API version level. The latter is set
to the first component of the version string, currently zero (unstable,
may change any time).
Explain dummy fetch of JSCContext in WebExtension
This also silences a compiler warning.
Fix GI annotation for kiln_loader_prepend_path
loader: Allow bootstrapping the loader into a JSCContext
Support making a loader itself available as a module in the JS context.
loader: Support manually adding modules
Allow adding a KilnModule to a KilnLoader given the name of the module
and the callback function which implements opening the module. This
allows programs using the library to add their own modules which bypass
the file system lookup. In this case internally the GModule associated
with the module will be NULL.
gtkshell: Enable PSON on WebKitGTK 2.28.0+
Enable PSON (process swap on cross-site navigation), which replaces the
WebKitWebProcess more often, which in turns is good for stress-testing
the web extension.
gtkshell: Set a more comfortable default window size
Set the default window size to 800x600, instead of letting GTK choose
its fallback tiny size.
gtkshell: Disable NPAPI browser plug-ins
Disable support for NPAPI browser plug-ins, as they should not be
needed for test driving Kiln. Mainstream browsers are axing them
anyway.
gtkshell: Allow configuring module path and preloads
Add command line options to the GTK shell to allow setting module
paths and a list of preloaded modules (using -M/--module-path and
-m/--module as for the JSC shell, for consistency).
gtkshell: Add simple GTK browser for testing purposes
Add the gtkshell/ subdirectory, which will be built if WebKitGTK is in
use and the "gtk_shell" feature is enabled, which will compile "kn-gtk",
a simple browser that can be used to test the Kiln WebKit extension.
Add logging domains for the different components
Set the G_LOG_DOMAIN macro at build time for each component. This allows
more easily filtering logged messages using e.g. the G_MESSAGES_DEBUG
environment variable.
doc: Add some structure, pending to fill
meson: Add minimal setup for running HotDoc
shell: Improve printout of exceptions