Force native window
- Force native frame and suppress the Chromium default blue frame. This resolves issues with Windows systems that are running in VM's and cannot enable Aero Glass. Atom-Shell was adding the default Chromium blue frame even when frame was set to false in the BrowserWindow options.
This commit is contained in:
parent
aba3b721c5
commit
c9371bceec
1 changed files with 5 additions and 2 deletions
|
@ -227,6 +227,11 @@ NativeWindowViews::NativeWindowViews(content::WebContents* web_contents,
|
||||||
use_content_size_)
|
use_content_size_)
|
||||||
bounds = ContentBoundsToWindowBounds(bounds);
|
bounds = ContentBoundsToWindowBounds(bounds);
|
||||||
|
|
||||||
|
if(has_frame_) {
|
||||||
|
window_->set_frame_type(views::Widget::FrameType::FRAME_TYPE_FORCE_NATIVE);
|
||||||
|
window_->FrameTypeChanged();
|
||||||
|
}
|
||||||
|
|
||||||
window_->UpdateWindowIcon();
|
window_->UpdateWindowIcon();
|
||||||
window_->CenterWindow(bounds.size());
|
window_->CenterWindow(bounds.size());
|
||||||
Layout();
|
Layout();
|
||||||
|
@ -660,11 +665,9 @@ views::ClientView* NativeWindowViews::CreateClientView(views::Widget* widget) {
|
||||||
views::NonClientFrameView* NativeWindowViews::CreateNonClientFrameView(
|
views::NonClientFrameView* NativeWindowViews::CreateNonClientFrameView(
|
||||||
views::Widget* widget) {
|
views::Widget* widget) {
|
||||||
#if defined(OS_WIN)
|
#if defined(OS_WIN)
|
||||||
if (ui::win::IsAeroGlassEnabled()) {
|
|
||||||
WinFrameView* frame_view = new WinFrameView;
|
WinFrameView* frame_view = new WinFrameView;
|
||||||
frame_view->Init(this, widget);
|
frame_view->Init(this, widget);
|
||||||
return frame_view;
|
return frame_view;
|
||||||
}
|
|
||||||
#elif defined(OS_LINUX)
|
#elif defined(OS_LINUX)
|
||||||
if (has_frame_) {
|
if (has_frame_) {
|
||||||
return new views::NativeFrameView(widget);
|
return new views::NativeFrameView(widget);
|
||||||
|
|
Loading…
Reference in a new issue