Add Property Button to Inspect Sources - #528
Conversation
|
For Linux, guarding this behind a more recent version of CEF is required. Only Wayland testing since CEF is already good with X11. With the PR as isNon-flatpak (bugged, crash at some point): CEF 127 is still too dependent on X11 and it really goes wrong. With CEF 148 and also #523 #517CEF 148 (with the chrome runtime) seems to be fine |
|
Huh, that's weird. I'll version gate it. |
ab6f504 to
1b2ae11
Compare
PatTheMav
left a comment
There was a problem hiding this comment.
During my testing it seems like the inspect window is another avenue for OBS to potentially crash on shutdown due to race conditions between CEF and OBS itself (crash originates in BrowserShutdown()).
It's probably not an issue with this PR per-se, but it means we're adding another avenue for people to potentially end up with unclean shutdowns.
| windowInfo.bounds.width = 900; | ||
| windowInfo.bounds.height = 700; |
There was a problem hiding this comment.
Is there any logic behind those values or were those just randomly chosen?




Description
Add an "Inspect" button to the Browser Source's Properties window to open Chrome Dev Tools.
This ensures feature parity between Browser Sources and Browser Docks (they have the same accessible via the context menu).
Motivation and Context
Extensive research, testing, and rebuilding for #523 by pkv, Lina and myself has determined that Chromium have deprecated the old list page accessible from the Remote Debugging address, and restoring the functionality in any way will be a major maintenance burden going forward. This is due to the HTML file they ship containing a favicon that spans the entire link, assuming the file is shipped at all - CEF purposefully doesn't as part of Chrome Runtime.
Additionally, testing by myself and Warchamp confirms unreliable loading of
chrome://inspect- on my machines it can take as long as 3 minutes to be able to even list pages, which is unacceptable.Therefore, after thinking about how best to serve overlay developers in a meaningful way, rather than some kind of janky workaround using the Remote Debugging
/json/listendpoint, ultimately I decided the best solution is the simplest one.This also means users no longer have to launch OBS with
--remote-debugging-port=1234 --remote-allow-origins=http://localhost:1234to be able to access Dev Tools, improving both security and usability.How Has This Been Tested?
On Windows 10, open the Properties window for a Browser Source, scroll down, and click Inspect.
Types of changes
Checklist: