osr: Linux : DevTools features Override and Workspace are disabled
Hello,
Above all, thanks for both fixes : #3658 and #3531.
Bug description To prepare for the migration to the Chrome Runtime to replace the Alloy Runtime (cf. #3685) for windowless mode, we're testing version 125 of CEF ahead of schedule.
To this end, we have detected that, unlike Windows, the Override and Workspace functionalities are not present in the DevTools on Linux.
To Reproduce Start cefclient with Chrome Runtime mode with the following command :
cefclient.exe --use-alloy-style --enable-chrome-runtime --off-screen-rendering-enabled --enable-logging=stderr --v=1 --url=https://google.fr
Actions
Right-click on a page Select
Show DevTools
Results
| OS | Status |
|---|---|
| windows | OK |
| Linux | KO |
Expected behavior I've tested with a similar version of Chrome and I don't have this problem. So this is a limitation specific to CEF on Linux,or more generally on Unix systems.
Screenshots
The command in red does not work (
Add folder does not work too). So it's impossible to see features such as Override and Workspace. For the record, we have the same problem with Alloy runtime.
However, with Chrome, it works well.
Versions (please complete the following information):
- OS: [Windows 10, Ubuntu 22.10]
- CEF Version: 125.0.18+ge997249+chromium-125.0.6422.41 from spotify
Thanks for the report. Does it work if you use windowed rendering (remove --off-screen-rendering-enabled) with Chrome runtime on Linux?
Thanks for the report. Does it work if you use windowed rendering (remove
--off-screen-rendering-enabled) with Chrome runtime on Linux?
If we use windowed rendering, it works fine. However, for technical reasons we use the off-screen rendering mode.
Hello @magreenblatt
I've found a workaround to this issue, using CEF version 129 in which Select folder for overrides and Add Workspace didn't react . This workaround is suitable when the following error is displayed
The first step is to define a DevToolsHandler as follows :
class DevToolsHandler : public CefDialogHandler
{
public:
bool OnFileDialog(...) override;
}
By overloading the OnFileDialog method, we manage the Override and Workspace features from Panel/Sources.
However, it works if you display the DevTools as follows:
browser->GetHost()->ShowDevTools(info, new DevToolsHandler(), settings, CefPoint());
On a more global level, we certainly need to find a solution. What do you think?
Regards,