Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

2 Commits

Repository files navigation

SimpleIDE.WebKitGtk

The WebKitGTK-backed IEmbeddedBrowserView provider (CustomDrawWebView) for SimpleIDE - full JS-capable HTML rendering via the system's libwebkit2gtk-4.1, using hand-rolled P/Invoke (Interop/WebKitNative.vb) rather than the abandoned WebkitGtkSharp NuGet package, which targets a removed SONAME and has no working JS-value marshaling.

Linux-only in practice - WebKitGTK has no Windows build - but nothing here needs a platform guard: SimpleIDE's EmbeddedBrowserFactory checks CustomDrawWebView.IsAvailable (a runtime NativeLibrary.TryLoad probe, since this is a system package never bundled by this repo) before ever constructing this widget, and falls back to the always-available litehtml-backed CustomDrawHtmlView (SimpleIDE.Widgets) if it's missing.

This is the exact seam a fork adds its own backend behind: implement IEmbeddedBrowserView against WebView2/CEF in a new SimpleIDE.<Backend>.vbproj, add one line to EmbeddedBrowserFactory's preference order - nothing else in the app needs to change.

Building

Requires .NET 8 SDK, GTK# 3, and libwebkit2gtk-4.1-0/-dev on the target system (not bundled - a runtime dependency, probed for at startup).

dotnet build SimpleIDE.WebKitGtk.vbproj

References SimpleIDE.Widgets via a sibling-directory ProjectReference - clone both repos as siblings under the same parent directory.

Used by

SimpleIDE consumes this via a sibling-directory ProjectReference (..\SimpleIDE.WebKitGtk\SimpleIDE.WebKitGtk.vbproj).

About

WebKitGTK embedded-browser backend for SimpleIDE

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages