From 74c21155be0df34cc395267425e78f545580a915 Mon Sep 17 00:00:00 2001 From: SteVen Batten <6561887+sbatten@users.noreply.github.com> Date: Wed, 16 May 2018 10:55:18 -0700 Subject: [PATCH] make menubarpart independent of titlebarpart --- .../browser/parts/menubar/media/menubarpart.css | 16 ++++++++-------- .../parts/titlebar/media/titlebarpart.css | 9 +++++---- .../browser/parts/titlebar/titlebarPart.ts | 9 --------- src/vs/workbench/electron-browser/workbench.ts | 6 +++++- 4 files changed, 18 insertions(+), 22 deletions(-) diff --git a/src/vs/workbench/browser/parts/menubar/media/menubarpart.css b/src/vs/workbench/browser/parts/menubar/media/menubarpart.css index c521daea817..d3462a36fe9 100644 --- a/src/vs/workbench/browser/parts/menubar/media/menubarpart.css +++ b/src/vs/workbench/browser/parts/menubar/media/menubarpart.css @@ -3,17 +3,16 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -.monaco-workbench > .part.titlebar > .menubar-container { +.monaco-workbench > .part.menubar { display: flex; - position: relative; - z-index: 100; + position: absolute; height: 29px; - -webkit-app-region: no-drag; order: 3; box-sizing: border-box; + margin-left: 35px; } -.monaco-workbench > .part.titlebar > .menubar-container > .menubar-menu-button { +.monaco-workbench > .part.menubar > .menubar-menu-button { display: flex; align-items: center; line-height: 25px; @@ -21,15 +20,16 @@ box-sizing: border-box; padding: 0px 5px; position: relative; - z-index: 900; + z-index: 10; cursor: pointer; + -webkit-app-region: no-drag; } -.monaco-workbench > .part.titlebar > .menubar-container > .menubar-menu-button:hover { +.monaco-workbench > .part.menubar > .menubar-menu-button:hover { background-color: rgba(255, 255, 255, 0.1); } -.monaco-workbench > .part.titlebar.light > .menubar-container > .menubar-menu-button:hover { +.monaco-workbench > .part.menubar > .menubar-menu-button:hover { background-color: rgba(0, 0, 0, 0.1); } diff --git a/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css b/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css index 21dc49a555b..667f7865d14 100644 --- a/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css +++ b/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css @@ -56,7 +56,7 @@ -webkit-app-region: no-drag; margin: 0 10px; position: relative; - z-index: 100; + z-index: 99; order: 2; } @@ -81,15 +81,16 @@ margin-left: auto; text-align: center; position: relative; - z-index: 100; - bottom: calc(1.5em / 12); + z-index: 99; + /* bottom: calc(1.5em / 12); */ order: 4; -webkit-app-region: no-drag; + height: 100%; } .monaco-workbench > .part.titlebar > .window-controls-container > .window-icon svg { width: calc(10em / 12); - height: calc(10em / 12); + height: 100%; shape-rendering: crispEdges; text-align: center; } diff --git a/src/vs/workbench/browser/parts/titlebar/titlebarPart.ts b/src/vs/workbench/browser/parts/titlebar/titlebarPart.ts index ee7e04b3b43..5da574b35f2 100644 --- a/src/vs/workbench/browser/parts/titlebar/titlebarPart.ts +++ b/src/vs/workbench/browser/parts/titlebar/titlebarPart.ts @@ -48,7 +48,6 @@ export class TitlebarPart extends Part implements ITitleService { private static readonly TITLE_SEPARATOR = isMacintosh ? ' — ' : ' - '; // macOS uses special - separator private titleContainer: Builder; - private menubarContainer: Builder; private title: Builder; private pendingTitle: string; private initialTitleFontSize: number; @@ -242,10 +241,6 @@ export class TitlebarPart extends Part implements ITitleService { }); } - if (isWindows) { - this.menubarContainer = $(this.titleContainer).div({ class: 'menubar-container' }); - } - // Title this.title = $(this.titleContainer).div({ class: 'window-title' }); if (this.pendingTitle) { @@ -445,10 +440,6 @@ export class TitlebarPart extends Part implements ITitleService { return super.layout(dimension); } - - public getMenubarContainer(): Builder { - return this.menubarContainer; - } } class ShowItemInFolderAction extends Action { diff --git a/src/vs/workbench/electron-browser/workbench.ts b/src/vs/workbench/electron-browser/workbench.ts index 546f6184754..a844a19e4d7 100644 --- a/src/vs/workbench/electron-browser/workbench.ts +++ b/src/vs/workbench/electron-browser/workbench.ts @@ -1257,7 +1257,11 @@ export class Workbench implements IPartService { } private createMenubarPart(): void { - const menubarContainer = this.titlebarPart.getMenubarContainer(); + const menubarContainer = $(this.workbench).div({ + 'class': ['part', 'menubar'], + id: Identifiers.MENUBAR_PART, + role: 'menubar' + }); this.menubarPart.create(menubarContainer.getHTMLElement()); } -- GitLab