Open marcuscraske opened 5 years ago
@limpygnome, I will modify the code for DevToolsJsBridge to take debugger argument.
The DevToolsDebuggerJsBridge
is used by the by the debug code for interfacing JS script code to handler for implementation. Saving JS state, stopping event propagation and signalling page load complete is done through this interface.
println
, print
and consoleLog
is also passed through this interface.The class provides a default implementation but can be customized if needed. Some functionality, like console logs have very convoluted implementation to allow creating a stack trace which needs to be passed to Chrome Dev Tools.
I have not looked at the code for a while but do remember the brittle nature of the debug interface which has to prevent recursion into the debugger interface under some conditions, otherwise JVM crashes and exits the application.
@vsch Please update the README file according to the right way. I have been struggling to use the webview debugger but it can be much easier if the README will be up to date with a working example.
The following example needs to be updated:
To:
Using this class is not well documented, and just something I've used from the previous repo this was based upon.
When using the new class
DevToolsJsBridge
, as shown in the example, there's no way to pass aDebugger
instance. The underlying method it uses,.impl_getDebugger()
, onWebEngine
is not supported in Java 9 (and presumed above).Would it be possible to allow support to either pass in a
Debugger
, use reflection to extract thedebugger
field or check for which method is available (Java 9 seems to havegetDebugger()
?Also what is the difference between
DevToolsJsBridge
andDevToolsDebuggerServer
?