Ich möchte gerne den Monaco-Editor im WebGadget laufen lassen (simpler Beispielcode s.u.). Unter Windows mit dem Sorgenkind IE gibt es witzigerweise überhaupt keine Probleme damit.
Naiv, wie ich bin, dachte ich, dass es dann unter Linux (mit WebKit) erst recht funktionieren würde. Aber Pustekuchen! Da funktioniert so gut wie gar nichts. Und im PB-Log-Fenster knattern nur so die Warnungen und Fehlermeldungen durch. Wenn man Glück hat, gibt es noch einen Invalid Memory Access obendrauf.
Wer wissen möchte, wie Monaco korrekt funktioniert, ruft einfach https://microsoft.github.io/monaco-edit ... round.html mit einem vernünftigen Browser auf und tippt beispielsweise console. in eines der Textboxen ein. Da erscheint dann ein schickes Intellisense-Menü.
Code: Alles auswählen
CompilerIf #PB_Compiler_OS = #PB_OS_Linux
ImportC "-lwebkitgtk-3.0"
webkit_web_settings_new()
webkit_web_view_set_settings(*WebkitWebView, *WebkitSettings)
EndImport
Procedure EnableJSforWebGadget(WebgadgetID.i)
Protected WebkitSettings.i
WebkitSettings = webkit_web_settings_new()
webkit_web_view_set_settings(GadgetID(WebgadgetID.i), WebkitSettings)
EndProcedure
CompilerEndIf
If OpenWindow(0, 0, 0, 1000, 800, "WebGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
WebGadget(0, 0, 0, 1000, 800, "")
CompilerIf #PB_Compiler_OS = #PB_OS_Linux
EnableJSforWebGadget(0)
CompilerEndIf
SetGadgetText(0, "https://microsoft.github.io/monaco-editor/playground.html")
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Danke im Voraus & Grüße ... Peter (Linux Mint 18.3 Cinnamon 64-bit)