Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
0ae60c45
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,发现更多精彩内容 >>
提交
0ae60c45
编写于
6月 11, 2020
作者:
R
Rob Lourens
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Make markdown cell height computation simpler and fix bottom cell toolbar height discrepancy
上级
d7417482
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
13 addition
and
26 deletion
+13
-26
src/vs/workbench/contrib/notebook/browser/constants.ts
src/vs/workbench/contrib/notebook/browser/constants.ts
+1
-1
src/vs/workbench/contrib/notebook/browser/media/notebook.css
src/vs/workbench/contrib/notebook/browser/media/notebook.css
+0
-1
src/vs/workbench/contrib/notebook/browser/notebookBrowser.ts
src/vs/workbench/contrib/notebook/browser/notebookBrowser.ts
+0
-1
src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.ts
...orkbench/contrib/notebook/browser/notebookEditorWidget.ts
+2
-2
src/vs/workbench/contrib/notebook/browser/view/renderers/markdownCell.ts
...h/contrib/notebook/browser/view/renderers/markdownCell.ts
+7
-19
src/vs/workbench/contrib/notebook/browser/viewModel/markdownCellViewModel.ts
...ntrib/notebook/browser/viewModel/markdownCellViewModel.ts
+3
-2
未找到文件。
src/vs/workbench/contrib/notebook/browser/constants.ts
浏览文件 @
0ae60c45
...
...
@@ -12,7 +12,7 @@ export const CELL_MARGIN = 20;
export
const
CELL_RUN_GUTTER
=
32
;
export
const
EDITOR_TOOLBAR_HEIGHT
=
0
;
export
const
BOTTOM_CELL_TOOLBAR_HEIGHT
=
3
6
;
export
const
BOTTOM_CELL_TOOLBAR_HEIGHT
=
3
2
;
export
const
CELL_STATUSBAR_HEIGHT
=
22
;
// Top margin of editor
...
...
src/vs/workbench/contrib/notebook/browser/media/notebook.css
浏览文件 @
0ae60c45
...
...
@@ -368,7 +368,6 @@
border-left-width
:
2px
;
border-left-style
:
solid
;
top
:
22px
;
bottom
:
36px
;
visibility
:
hidden
;
opacity
:
0.6
;
}
...
...
src/vs/workbench/contrib/notebook/browser/notebookBrowser.ts
浏览文件 @
0ae60c45
...
...
@@ -94,7 +94,6 @@ export interface MarkdownCellLayoutChangeEvent {
font
?:
BareFontInfo
;
outerWidth
?:
number
;
totalHeight
?:
number
;
editorHeight
?:
boolean
;
}
export
interface
ICellViewModel
{
...
...
src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.ts
浏览文件 @
0ae60c45
...
...
@@ -27,7 +27,7 @@ import { contrastBorder, editorBackground, focusBorder, foreground, registerColo
import
{
registerThemingParticipant
}
from
'
vs/platform/theme/common/themeService
'
;
import
{
EditorMemento
}
from
'
vs/workbench/browser/parts/editor/baseEditor
'
;
import
{
EditorOptions
,
IEditorMemento
}
from
'
vs/workbench/common/editor
'
;
import
{
CELL_MARGIN
,
CELL_RUN_GUTTER
,
EDITOR_BOTTOM_PADDING
,
EDITOR_TOP_MARGIN
,
EDITOR_TOP_PADDING
,
SCROLLABLE_ELEMENT_PADDING_TOP
}
from
'
vs/workbench/contrib/notebook/browser/constants
'
;
import
{
CELL_MARGIN
,
CELL_RUN_GUTTER
,
EDITOR_BOTTOM_PADDING
,
EDITOR_TOP_MARGIN
,
EDITOR_TOP_PADDING
,
SCROLLABLE_ELEMENT_PADDING_TOP
,
BOTTOM_CELL_TOOLBAR_HEIGHT
}
from
'
vs/workbench/contrib/notebook/browser/constants
'
;
import
{
CellEditState
,
CellFocusMode
,
ICellRange
,
ICellViewModel
,
INotebookCellList
,
INotebookEditor
,
INotebookEditorContribution
,
INotebookEditorMouseEvent
,
NotebookLayoutInfo
,
NOTEBOOK_EDITOR_EDITABLE
,
NOTEBOOK_EDITOR_EXECUTING_NOTEBOOK
,
NOTEBOOK_EDITOR_FOCUSED
,
NOTEBOOK_EDITOR_RUNNABLE
,
NOTEBOOK_HAS_MULTIPLE_KERNELS
}
from
'
vs/workbench/contrib/notebook/browser/notebookBrowser
'
;
import
{
NotebookEditorExtensionsRegistry
}
from
'
vs/workbench/contrib/notebook/browser/notebookEditorExtensions
'
;
import
{
NotebookCellList
}
from
'
vs/workbench/contrib/notebook/browser/view/notebookCellList
'
;
...
...
@@ -1405,5 +1405,5 @@ registerThemingParticipant((theme, collector) => {
collector
.
addRule
(
`.notebookOverlay .cell .run-button-container { width:
${
CELL_RUN_GUTTER
}
px; }`
);
collector
.
addRule
(
`.notebookOverlay > .cell-list-container > .cell-list-insertion-indicator { left:
${
CELL_MARGIN
+
CELL_RUN_GUTTER
}
px; right:
${
CELL_MARGIN
}
px; }`
);
collector
.
addRule
(
`.notebookOverlay .cell-drag-image .cell-editor-container > div { padding:
${
EDITOR_TOP_PADDING
}
px 16px
${
EDITOR_BOTTOM_PADDING
}
px 16px; }`
);
collector
.
addRule
(
`.notebookOverlay .monaco-list .monaco-list-row .notebook-cell-focus-indicator { left:
${
CELL_MARGIN
}
px; }`
);
collector
.
addRule
(
`.notebookOverlay .monaco-list .monaco-list-row .notebook-cell-focus-indicator { left:
${
CELL_MARGIN
}
px;
bottom:
${
BOTTOM_CELL_TOOLBAR_HEIGHT
}
px;
}`
);
});
src/vs/workbench/contrib/notebook/browser/view/renderers/markdownCell.ts
浏览文件 @
0ae60c45
...
...
@@ -10,9 +10,8 @@ import { renderCodicons } from 'vs/base/common/codicons';
import
{
Disposable
,
DisposableStore
,
toDisposable
}
from
'
vs/base/common/lifecycle
'
;
import
{
CodeEditorWidget
}
from
'
vs/editor/browser/widget/codeEditorWidget
'
;
import
{
IEditorOptions
}
from
'
vs/editor/common/config/editorOptions
'
;
import
{
ITextModel
}
from
'
vs/editor/common/model
'
;
import
{
IInstantiationService
}
from
'
vs/platform/instantiation/common/instantiation
'
;
import
{
EDITOR_BOTTOM_PADDING
,
EDITOR_TOP_PADDING
,
CELL_STATUSBAR_HEIGHT
}
from
'
vs/workbench/contrib/notebook/browser/constants
'
;
import
{
EDITOR_BOTTOM_PADDING
,
EDITOR_TOP_PADDING
}
from
'
vs/workbench/contrib/notebook/browser/constants
'
;
import
{
CellEditState
,
CellFocusMode
,
INotebookEditor
,
MarkdownCellRenderTemplate
,
ICellViewModel
}
from
'
vs/workbench/contrib/notebook/browser/notebookBrowser
'
;
import
{
CellFoldingState
}
from
'
vs/workbench/contrib/notebook/browser/contrib/fold/foldingModel
'
;
import
{
MarkdownCellViewModel
}
from
'
vs/workbench/contrib/notebook/browser/viewModel/markdownCellViewModel
'
;
...
...
@@ -125,7 +124,7 @@ export class StatefullMarkdownCell extends Disposable {
this
.
viewCell
.
attachTextEditor
(
this
.
editor
);
this
.
focusEditorIfNeeded
();
this
.
bindEditorListeners
(
this
.
editor
.
getModel
()
!
);
this
.
bindEditorListeners
();
}
else
{
const
width
=
this
.
viewCell
.
layoutInfo
.
editorWidth
;
const
lineNum
=
this
.
viewCell
.
lineCount
;
...
...
@@ -175,22 +174,13 @@ export class StatefullMarkdownCell extends Disposable {
this
.
focusEditorIfNeeded
();
}
this
.
bindEditorListeners
(
model
,
{
width
:
width
,
height
:
editorHeight
});
this
.
bindEditorListeners
();
const
clientHeight
=
this
.
markdownContainer
.
clientHeight
;
const
totalHeight
=
editorHeight
+
32
+
clientHeight
+
CELL_STATUSBAR_HEIGHT
;
this
.
viewCell
.
totalHeight
=
totalHeight
;
this
.
notebookEditor
.
layoutNotebookCell
(
this
.
viewCell
,
totalHeight
);
this
.
viewCell
.
editorHeight
=
editorHeight
;
});
}
const
clientHeight
=
this
.
markdownContainer
.
clientHeight
;
const
totalHeight
=
editorHeight
+
32
+
clientHeight
+
CELL_STATUSBAR_HEIGHT
;
this
.
viewCell
.
totalHeight
=
totalHeight
;
this
.
notebookEditor
.
layoutNotebookCell
(
this
.
viewCell
,
totalHeight
);
this
.
viewCell
.
editorHeight
=
editorHeight
;
this
.
focusEditorIfNeeded
();
this
.
renderedEditors
.
set
(
this
.
viewCell
,
this
.
editor
!
);
}
...
...
@@ -288,7 +278,7 @@ export class StatefullMarkdownCell extends Disposable {
}
}
private
bindEditorListeners
(
model
:
ITextModel
,
dimension
?:
IDimension
)
{
private
bindEditorListeners
()
{
this
.
localDisposables
.
add
(
this
.
editor
!
.
onDidContentSizeChange
(
e
=>
{
let
viewLayout
=
this
.
editor
!
.
getLayoutInfo
();
...
...
@@ -299,9 +289,7 @@ export class StatefullMarkdownCell extends Disposable {
height
:
e
.
contentHeight
}
);
const
clientHeight
=
this
.
markdownContainer
.
clientHeight
;
this
.
viewCell
.
totalHeight
=
e
.
contentHeight
+
32
+
clientHeight
+
CELL_STATUSBAR_HEIGHT
;
this
.
notebookEditor
.
layoutNotebookCell
(
this
.
viewCell
,
this
.
viewCell
.
layoutInfo
.
totalHeight
);
this
.
viewCell
.
editorHeight
=
e
.
contentHeight
;
}
}));
...
...
src/vs/workbench/contrib/notebook/browser/viewModel/markdownCellViewModel.ts
浏览文件 @
0ae60c45
...
...
@@ -8,7 +8,7 @@ import * as UUID from 'vs/base/common/uuid';
import
*
as
editorCommon
from
'
vs/editor/common/editorCommon
'
;
import
*
as
model
from
'
vs/editor/common/model
'
;
import
{
ITextModelService
}
from
'
vs/editor/common/services/resolverService
'
;
import
{
BOTTOM_CELL_TOOLBAR_HEIGHT
,
CELL_MARGIN
,
CELL_RUN_GUTTER
}
from
'
vs/workbench/contrib/notebook/browser/constants
'
;
import
{
BOTTOM_CELL_TOOLBAR_HEIGHT
,
CELL_MARGIN
,
CELL_RUN_GUTTER
,
CELL_STATUSBAR_HEIGHT
}
from
'
vs/workbench/contrib/notebook/browser/constants
'
;
import
{
CellFindMatch
,
ICellViewModel
,
MarkdownCellLayoutChangeEvent
,
MarkdownCellLayoutInfo
,
NotebookLayoutInfo
}
from
'
vs/workbench/contrib/notebook/browser/notebookBrowser
'
;
import
{
MarkdownRenderer
}
from
'
vs/workbench/contrib/notebook/browser/view/renderers/mdRenderer
'
;
import
{
BaseCellViewModel
}
from
'
vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel
'
;
...
...
@@ -39,7 +39,8 @@ export class MarkdownCellViewModel extends BaseCellViewModel implements ICellVie
private
_editorHeight
=
0
;
set
editorHeight
(
newHeight
:
number
)
{
this
.
_editorHeight
=
newHeight
;
this
.
layoutChange
({
editorHeight
:
true
});
this
.
totalHeight
=
this
.
_editorHeight
+
BOTTOM_CELL_TOOLBAR_HEIGHT
+
CELL_STATUSBAR_HEIGHT
;
}
get
editorHeight
()
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录