diff --git a/desktop/src/cef/internal/browser_process_app.rs b/desktop/src/cef/internal/browser_process_app.rs index ef5ba2ce34..de75b5bb8e 100644 --- a/desktop/src/cef/internal/browser_process_app.rs +++ b/desktop/src/cef/internal/browser_process_app.rs @@ -33,6 +33,16 @@ impl ImplApp for BrowserProcessAppImpl { fn on_before_command_line_processing(&self, _process_type: Option<&cef::CefString>, command_line: Option<&mut cef::CommandLine>) { if let Some(cmd) = command_line { + cmd.append_switch_with_value(Some(&CefString::from("renderer-process-limit")), Some(&CefString::from("1"))); + cmd.append_switch_with_value(Some(&CefString::from("disk-cache-size")), Some(&CefString::from("0"))); + cmd.append_switch(Some(&CefString::from("incognito"))); + cmd.append_switch(Some(&CefString::from("no-first-run"))); + cmd.append_switch(Some(&CefString::from("disable-file-system"))); + cmd.append_switch(Some(&CefString::from("disable-local-storage"))); + cmd.append_switch(Some(&CefString::from("disable-background-networking"))); + cmd.append_switch(Some(&CefString::from("disable-audio-input"))); + cmd.append_switch(Some(&CefString::from("disable-audio-output"))); + #[cfg(not(feature = "accelerated_paint"))] { // Disable GPU acceleration when accelerated_paint feature is not enabled diff --git a/desktop/src/window/win.rs b/desktop/src/window/win.rs index 1dfe50aea3..afd53db18f 100644 --- a/desktop/src/window/win.rs +++ b/desktop/src/window/win.rs @@ -1,6 +1,7 @@ +use winit::dpi::PhysicalSize; use winit::event_loop::ActiveEventLoop; use winit::icon::Icon; -use winit::platform::windows::WinIcon; +use winit::platform::windows::{WinIcon, WindowAttributesWindows}; use winit::window::{Window, WindowAttributes}; use crate::event::AppEventScheduler; @@ -11,12 +12,10 @@ pub(super) struct NativeWindowImpl { impl super::NativeWindow for NativeWindowImpl { fn configure(attributes: WindowAttributes, _event_loop: &dyn ActiveEventLoop) -> WindowAttributes { - if let Ok(win_icon) = WinIcon::from_resource(1, None) { - let icon = Icon(std::sync::Arc::new(win_icon)); - attributes.with_window_icon(Some(icon)) - } else { - attributes - } + let icon = WinIcon::from_resource(1, Some(PhysicalSize::new(256, 256))).ok().map(|icon| Icon(std::sync::Arc::new(icon))); + let win_window = WindowAttributesWindows::default().with_taskbar_icon(icon); + let icon = WinIcon::from_resource(1, None).ok().map(|icon| Icon(std::sync::Arc::new(icon))); + attributes.with_window_icon(icon).with_platform_attributes(Box::new(win_window)) } fn new(window: &dyn Window, _app_event_scheduler: AppEventScheduler) -> Self {