cef icon indicating copy to clipboard operation
cef copied to clipboard

osr: Linux : DevTools features Override and Workspace are disabled

Open Hethsron opened this issue 1 year ago • 3 comments

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 Devtools 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. Linux with Chrome

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

Hethsron avatar May 27 '24 13:05 Hethsron

Thanks for the report. Does it work if you use windowed rendering (remove --off-screen-rendering-enabled) with Chrome runtime on Linux?

magreenblatt avatar May 27 '24 13:05 magreenblatt

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.

Hethsron avatar May 27 '24 14:05 Hethsron

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,

Hethsron avatar Nov 25 '24 16:11 Hethsron