chromiumembedded / cef

Chromium Embedded Framework (CEF). A simple framework for embedding Chromium-based browsers in other applications.
https://bitbucket.org/chromiumembedded/cef/
Other
3.09k stars 450 forks source link

chrome: Support configuration as default system browser #3613

Open magreenblatt opened 7 months ago

magreenblatt commented 7 months ago

Is your feature request related to a problem? Please describe. Chrome/Chromium has an option here to configure itself as the default system browser.

Describe the solution you'd like This functionality should be disabled by default for CEF-based applications, with an option to enable via CefSettings or similar.

Additional context We will disable this functionality in M120.

magreenblatt commented 7 months ago

Comment on shell_integration::SetAsDefaultBrowser:

// Sets Chrome as the default browser (only for the current user).
//
// Don't use this, because:
//   - This does not work on Windows version 8 or higher.
//   - This cannot provide feedback as to success because setting a default
//     browser is asynchronous.
//
// Use `DefaultBrowserWorker` instead.
// TODO(https://crbug.com/1393452): Extend `DefaultBrowserWorker` to work better
// on the Mac and remove this function.

Code using DefaultBrowserWorker in BrowserProcessImpl::ApplyDefaultBrowserPolicy. This should not be triggering currently because prefs::kDefaultBrowserSettingEnabled is false by default.