Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
86caa11a
V
vscode
项目概览
掘金者说
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
86caa11a
编写于
8月 09, 2018
作者:
S
SteVen Batten
提交者:
Benjamin Pasero
8月 09, 2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
demote menubar from part (#56031)
上级
3186ac39
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
80 addition
and
82 deletion
+80
-82
src/vs/workbench/browser/parts/menubar/media/menubarpart.css
src/vs/workbench/browser/parts/menubar/media/menubarpart.css
+0
-50
src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css
...s/workbench/browser/parts/titlebar/media/titlebarpart.css
+48
-0
src/vs/workbench/browser/parts/titlebar/menubarControl.ts
src/vs/workbench/browser/parts/titlebar/menubarControl.ts
+27
-27
src/vs/workbench/browser/parts/titlebar/titlebar.contribution.ts
...workbench/browser/parts/titlebar/titlebar.contribution.ts
+0
-0
src/vs/workbench/browser/parts/titlebar/titlebarPart.ts
src/vs/workbench/browser/parts/titlebar/titlebarPart.ts
+5
-5
未找到文件。
src/vs/workbench/browser/parts/menubar/media/menubarpart.css
已删除
100644 → 0
浏览文件 @
3186ac39
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
.monaco-workbench
.part.menubar
{
display
:
flex
;
flex-shrink
:
1
;
box-sizing
:
border-box
;
height
:
30px
;
-webkit-app-region
:
no-drag
;
overflow
:
hidden
;
flex-wrap
:
wrap
;
}
.monaco-workbench.fullscreen
.part.menubar
{
margin
:
0px
;
padding
:
0px
5px
;
}
.monaco-workbench
.part.menubar
>
.menubar-menu-button
{
align-items
:
center
;
box-sizing
:
border-box
;
padding
:
0px
8px
;
cursor
:
default
;
-webkit-app-region
:
no-drag
;
zoom
:
1
;
white-space
:
nowrap
;
}
.monaco-workbench
.part.menubar
.menubar-menu-items-holder
{
position
:
absolute
;
left
:
0px
;
opacity
:
1
;
z-index
:
2000
;
}
.monaco-workbench
.part.menubar
.menubar-menu-items-holder.monaco-menu-container
{
font-family
:
"Segoe WPC"
,
"Segoe UI"
,
".SFNSDisplay-Light"
,
"SFUIText-Light"
,
"HelveticaNeue-Light"
,
sans-serif
,
"Droid Sans Fallback"
;
outline
:
0
;
border
:
none
;
}
.monaco-workbench
.part.menubar
.menubar-menu-items-holder.monaco-menu-container
:focus
{
outline
:
0
;
}
.hc-black
.monaco-workbench
.part.menubar
.menubar-menu-items-holder.monaco-menu-container
{
border
:
2px
solid
#6FC3DF
;
}
\ No newline at end of file
src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css
浏览文件 @
86caa11a
...
...
@@ -150,4 +150,52 @@
.monaco-workbench
>
.part.titlebar
>
.window-controls-container
.window-icon.window-close
:hover
{
background-color
:
white
;
}
/* Menubar styles */
.monaco-workbench
.menubar
{
display
:
flex
;
flex-shrink
:
1
;
box-sizing
:
border-box
;
height
:
30px
;
-webkit-app-region
:
no-drag
;
overflow
:
hidden
;
flex-wrap
:
wrap
;
}
.monaco-workbench.fullscreen
.menubar
{
margin
:
0px
;
padding
:
0px
5px
;
}
.monaco-workbench
.menubar
>
.menubar-menu-button
{
align-items
:
center
;
box-sizing
:
border-box
;
padding
:
0px
8px
;
cursor
:
default
;
-webkit-app-region
:
no-drag
;
zoom
:
1
;
white-space
:
nowrap
;
}
.monaco-workbench
.menubar
.menubar-menu-items-holder
{
position
:
absolute
;
left
:
0px
;
opacity
:
1
;
z-index
:
2000
;
}
.monaco-workbench
.menubar
.menubar-menu-items-holder.monaco-menu-container
{
font-family
:
"Segoe WPC"
,
"Segoe UI"
,
".SFNSDisplay-Light"
,
"SFUIText-Light"
,
"HelveticaNeue-Light"
,
sans-serif
,
"Droid Sans Fallback"
;
outline
:
0
;
border
:
none
;
}
.monaco-workbench
.menubar
.menubar-menu-items-holder.monaco-menu-container
:focus
{
outline
:
0
;
}
.hc-black
.monaco-workbench
.menubar
.menubar-menu-items-holder.monaco-menu-container
{
border
:
2px
solid
#6FC3DF
;
}
\ No newline at end of file
src/vs/workbench/browser/parts/
menubar/menubarPart
.ts
→
src/vs/workbench/browser/parts/
titlebar/menubarControl
.ts
浏览文件 @
86caa11a
...
...
@@ -5,11 +5,9 @@
'
use strict
'
;
import
'
vs/workbench/browser/parts/menubar/menubar.contribution
'
;
import
'
vs/css!./media/menubarpart
'
;
import
'
vs/workbench/browser/parts/titlebar/titlebar.contribution
'
;
import
*
as
nls
from
'
vs/nls
'
;
import
*
as
browser
from
'
vs/base/browser/browser
'
;
import
{
Part
}
from
'
vs/workbench/browser/part
'
;
import
{
IMenubarMenu
,
IMenubarMenuItemAction
,
IMenubarMenuItemSubmenu
,
IMenubarKeybinding
}
from
'
vs/platform/menubar/common/menubar
'
;
import
{
IMenuService
,
MenuId
,
IMenu
,
SubmenuItemAction
}
from
'
vs/platform/actions/common/actions
'
;
import
{
IThemeService
,
registerThemingParticipant
,
ITheme
,
ICssStyleCollector
}
from
'
vs/platform/theme/common/themeService
'
;
...
...
@@ -26,7 +24,7 @@ import { KeyCode } from 'vs/base/common/keyCodes';
import
{
StandardKeyboardEvent
}
from
'
vs/base/browser/keyboardEvent
'
;
import
{
IConfigurationService
,
IConfigurationChangeEvent
}
from
'
vs/platform/configuration/common/configuration
'
;
import
{
Event
,
Emitter
}
from
'
vs/base/common/event
'
;
import
{
IDisposable
,
dispose
}
from
'
vs/base/common/lifecycle
'
;
import
{
IDisposable
,
Disposable
,
dispose
}
from
'
vs/base/common/lifecycle
'
;
import
{
domEvent
}
from
'
vs/base/browser/event
'
;
import
{
IRecentlyOpened
}
from
'
vs/platform/history/common/history
'
;
import
{
IWorkspaceIdentifier
,
getWorkspaceLabel
,
ISingleFolderWorkspaceIdentifier
,
isSingleFolderWorkspaceIdentifier
,
isWorkspaceIdentifier
}
from
'
vs/platform/workspaces/common/workspaces
'
;
...
...
@@ -52,7 +50,7 @@ enum MenubarState {
OPEN
}
export
class
Menubar
Part
extends
Part
{
export
class
Menubar
Control
extends
Disposable
{
private
keys
=
[
'
files.autoSave
'
,
...
...
@@ -126,7 +124,8 @@ export class MenubarPart extends Part {
@
IUriDisplayService
private
uriDisplayService
:
IUriDisplayService
,
@
IUpdateService
private
updateService
:
IUpdateService
)
{
super
(
id
,
{
hasTitle
:
false
},
themeService
);
super
();
this
.
topLevelMenus
=
{
'
File
'
:
this
.
_register
(
this
.
menuService
.
createMenu
(
MenuId
.
MenubarFileMenu
,
this
.
contextKeyService
)),
...
...
@@ -315,7 +314,6 @@ export class MenubarPart extends Part {
private
onDidChangeFullscreen
():
void
{
this
.
setUnfocusedState
();
this
.
updateStyles
();
}
private
onDidChangeWindowFocus
(
hasFocus
:
boolean
):
void
{
...
...
@@ -525,7 +523,7 @@ export class MenubarPart extends Part {
const
result
:
IAction
[]
=
[];
if
(
workspaces
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
Menubar
Part
.
MAX_MENU_RECENT_ENTRIES
&&
i
<
workspaces
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
Menubar
Control
.
MAX_MENU_RECENT_ENTRIES
&&
i
<
workspaces
.
length
;
i
++
)
{
result
.
push
(
this
.
createOpenRecentMenuAction
(
workspaces
[
i
],
'
openRecentWorkspace
'
,
false
));
}
...
...
@@ -533,7 +531,7 @@ export class MenubarPart extends Part {
}
if
(
files
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
Menubar
Part
.
MAX_MENU_RECENT_ENTRIES
&&
i
<
files
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
Menubar
Control
.
MAX_MENU_RECENT_ENTRIES
&&
i
<
files
.
length
;
i
++
)
{
result
.
push
(
this
.
createOpenRecentMenuAction
(
files
[
i
],
'
openRecentFile
'
,
false
));
}
...
...
@@ -991,14 +989,16 @@ export class MenubarPart extends Part {
return
this
.
_onVisibilityChange
.
event
;
}
public
layout
(
dimension
:
Dimension
):
Dimension
[]
{
public
layout
(
dimension
:
Dimension
)
{
if
(
this
.
container
)
{
this
.
container
.
style
({
height
:
`
${
dimension
.
height
}
px`
});
}
if
(
!
this
.
isVisible
)
{
this
.
hideMenubar
();
}
else
{
this
.
showMenubar
();
}
return
super
.
layout
(
dimension
);
}
public
getMenubarItemsDimensions
():
Dimension
{
...
...
@@ -1011,7 +1011,7 @@ export class MenubarPart extends Part {
return
new
Dimension
(
0
,
0
);
}
public
create
ContentArea
(
parent
:
HTMLElement
):
HTMLElement
{
public
create
(
parent
:
HTMLElement
):
HTMLElement
{
this
.
container
=
$
(
parent
);
// Build the menubar
...
...
@@ -1031,7 +1031,7 @@ registerThemingParticipant((theme: ITheme, collector: ICssStyleCollector) => {
const
menubarActiveWindowFgColor
=
theme
.
getColor
(
TITLE_BAR_ACTIVE_FOREGROUND
);
if
(
menubarActiveWindowFgColor
)
{
collector
.
addRule
(
`
.monaco-workbench .
part.
menubar > .menubar-menu-button {
.monaco-workbench .menubar > .menubar-menu-button {
color:
${
menubarActiveWindowFgColor
}
;
}
`
);
...
...
@@ -1040,7 +1040,7 @@ registerThemingParticipant((theme: ITheme, collector: ICssStyleCollector) => {
const
menubarInactiveWindowFgColor
=
theme
.
getColor
(
TITLE_BAR_INACTIVE_FOREGROUND
);
if
(
menubarInactiveWindowFgColor
)
{
collector
.
addRule
(
`
.monaco-workbench .
part.
menubar.inactive > .menubar-menu-button {
.monaco-workbench .menubar.inactive > .menubar-menu-button {
color:
${
menubarInactiveWindowFgColor
}
;
}
`
);
...
...
@@ -1050,9 +1050,9 @@ registerThemingParticipant((theme: ITheme, collector: ICssStyleCollector) => {
const
menubarSelectedFgColor
=
theme
.
getColor
(
MENUBAR_SELECTION_FOREGROUND
);
if
(
menubarSelectedFgColor
)
{
collector
.
addRule
(
`
.monaco-workbench .
part.
menubar > .menubar-menu-button.open,
.monaco-workbench .
part.
menubar > .menubar-menu-button:focus,
.monaco-workbench .
part.
menubar > .menubar-menu-button:hover {
.monaco-workbench .menubar > .menubar-menu-button.open,
.monaco-workbench .menubar > .menubar-menu-button:focus,
.monaco-workbench .menubar > .menubar-menu-button:hover {
color:
${
menubarSelectedFgColor
}
;
}
`
);
...
...
@@ -1061,9 +1061,9 @@ registerThemingParticipant((theme: ITheme, collector: ICssStyleCollector) => {
const
menubarSelectedBgColor
=
theme
.
getColor
(
MENUBAR_SELECTION_BACKGROUND
);
if
(
menubarSelectedBgColor
)
{
collector
.
addRule
(
`
.monaco-workbench .
part.
menubar > .menubar-menu-button.open,
.monaco-workbench .
part.
menubar > .menubar-menu-button:focus,
.monaco-workbench .
part.
menubar > .menubar-menu-button:hover {
.monaco-workbench .menubar > .menubar-menu-button.open,
.monaco-workbench .menubar > .menubar-menu-button:focus,
.monaco-workbench .menubar > .menubar-menu-button:hover {
background-color:
${
menubarSelectedBgColor
}
;
}
`
);
...
...
@@ -1072,18 +1072,18 @@ registerThemingParticipant((theme: ITheme, collector: ICssStyleCollector) => {
const
menubarSelectedBorderColor
=
theme
.
getColor
(
MENUBAR_SELECTION_BORDER
);
if
(
menubarSelectedBorderColor
)
{
collector
.
addRule
(
`
.monaco-workbench .
part.
menubar > .menubar-menu-button:hover {
.monaco-workbench .menubar > .menubar-menu-button:hover {
outline: dashed 1px;
}
.monaco-workbench .
part.
menubar > .menubar-menu-button.open,
.monaco-workbench .
part.
menubar > .menubar-menu-button:focus {
.monaco-workbench .menubar > .menubar-menu-button.open,
.monaco-workbench .menubar > .menubar-menu-button:focus {
outline: solid 1px;
}
.monaco-workbench .
part.
menubar > .menubar-menu-button.open,
.monaco-workbench .
part.
menubar > .menubar-menu-button:focus,
.monaco-workbench .
part.
menubar > .menubar-menu-button:hover {
.monaco-workbench .menubar > .menubar-menu-button.open,
.monaco-workbench .menubar > .menubar-menu-button:focus,
.monaco-workbench .menubar > .menubar-menu-button:hover {
outline-offset: -1px;
outline-color:
${
menubarSelectedBorderColor
}
;
}
...
...
src/vs/workbench/browser/parts/
menubar/menu
bar.contribution.ts
→
src/vs/workbench/browser/parts/
titlebar/title
bar.contribution.ts
浏览文件 @
86caa11a
文件已移动
src/vs/workbench/browser/parts/titlebar/titlebarPart.ts
浏览文件 @
86caa11a
...
...
@@ -31,7 +31,7 @@ import URI from 'vs/base/common/uri';
import
{
Color
}
from
'
vs/base/common/color
'
;
import
{
trim
}
from
'
vs/base/common/strings
'
;
import
{
addDisposableListener
,
EventType
,
EventHelper
,
Dimension
}
from
'
vs/base/browser/dom
'
;
import
{
Menubar
Part
}
from
'
vs/workbench/browser/parts/menubar/menubarPart
'
;
import
{
Menubar
Control
}
from
'
vs/workbench/browser/parts/titlebar/menubarControl
'
;
import
{
IInstantiationService
}
from
'
vs/platform/instantiation/common/instantiation
'
;
import
{
template
,
getBaseLabel
}
from
'
vs/base/common/labels
'
;
import
{
IUriDisplayService
}
from
'
vs/platform/uriDisplay/common/uriDisplay
'
;
...
...
@@ -52,7 +52,7 @@ export class TitlebarPart extends Part implements ITitleService {
private
windowControls
:
Builder
;
private
maxRestoreControl
:
Builder
;
private
appIcon
:
Builder
;
private
menubarPart
:
Menubar
Part
;
private
menubarPart
:
Menubar
Control
;
private
menubar
:
Builder
;
private
resizer
:
Builder
;
...
...
@@ -273,10 +273,10 @@ export class TitlebarPart extends Part implements ITitleService {
}
// Menubar: the menubar part which is responsible for populating both the custom and native menubars
this
.
menubarPart
=
this
.
instantiationService
.
createInstance
(
Menubar
Part
,
'
workbench.parts
.menubar
'
);
this
.
menubarPart
=
this
.
instantiationService
.
createInstance
(
Menubar
Control
,
'
workbench.parts.titlebar
.menubar
'
);
this
.
menubar
=
$
(
this
.
titleContainer
).
div
({
'
class
'
:
[
'
part
'
,
'
menubar
'
],
id
:
'
workbench.parts.menubar
'
,
'
class
'
:
[
'
menubar
'
],
id
:
'
workbench.parts.
titlebar.
menubar
'
,
role
:
'
menubar
'
});
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录