diff options
author | Joyce Er <joyce.er@microsoft.com> | 2022-08-18 21:37:27 +0300 |
---|---|---|
committer | Joyce Er <joyce.er@microsoft.com> | 2022-08-18 21:37:27 +0300 |
commit | b9ab02b0adc75594d3e6ed72afcde41a66c91640 (patch) | |
tree | f0dc51458ee8efd630565b1f81767f83b177a814 | |
parent | cd79406d35bdd907efc00361f3dff7c65066898d (diff) | |
parent | 65abd2b037a05b0514fb613d88a076929ebd9964 (diff) |
Merge branch 'main' of https://github.com/microsoft/vscode into dev/joyceerhl/beautiful-crayfishdev/joyceerhl/beautiful-crayfish
-rw-r--r-- | extensions/github/package.json | 3 | ||||
-rw-r--r-- | package.json | 2 | ||||
-rw-r--r-- | src/vs/base/browser/ui/codicons/codicon/codicon.ttf | bin | 72488 -> 72676 bytes | |||
-rw-r--r-- | src/vs/base/common/codicons.ts | 1 | ||||
-rw-r--r-- | src/vs/workbench/browser/codeeditor.ts | 1 | ||||
-rw-r--r-- | src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.ts | 45 |
6 files changed, 31 insertions, 21 deletions
diff --git a/extensions/github/package.json b/extensions/github/package.json index 218e8f949ed..3ddff7fb774 100644 --- a/extensions/github/package.json +++ b/extensions/github/package.json @@ -45,7 +45,8 @@ }, { "command": "github.openOnVscodeDev", - "title": "Open on vscode.dev" + "title": "Open on vscode.dev", + "icon": "$(globe)" } ], "continueEditSession": [ diff --git a/package.json b/package.json index 0a9fcf9696b..ad5d37dec8a 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "code-oss-dev", "version": "1.71.0", - "distro": "eb600fe9774457c01f723d5fb526d6e9bd1d3647", + "distro": "9bf07d89c0958f1739e9fec6eff52d91c15a6ecf", "author": { "name": "Microsoft Corporation" }, diff --git a/src/vs/base/browser/ui/codicons/codicon/codicon.ttf b/src/vs/base/browser/ui/codicons/codicon/codicon.ttf Binary files differindex e4a30a34bc3..d8ac87cba86 100644 --- a/src/vs/base/browser/ui/codicons/codicon/codicon.ttf +++ b/src/vs/base/browser/ui/codicons/codicon/codicon.ttf diff --git a/src/vs/base/common/codicons.ts b/src/vs/base/common/codicons.ts index fc803a10ef6..17119e4b867 100644 --- a/src/vs/base/common/codicons.ts +++ b/src/vs/base/common/codicons.ts @@ -568,6 +568,7 @@ export class Codicon implements CSSIcon { public static readonly commentUnresolved = new Codicon('comment-unresolved', { fontCharacter: '\\ec0a' }); public static readonly gitPullRequestGoToChanges = new Codicon('git-pull-request-go-to-changes', { fontCharacter: '\\ec0b' }); public static readonly gitPullRequestNewChanges = new Codicon('git-pull-request-new-changes', { fontCharacter: '\\ec0c' }); + public static readonly searchFuzzy = new Codicon('search-fuzzy', { fontCharacter: '\\ec0d' }); // derived icons, that could become separate icons diff --git a/src/vs/workbench/browser/codeeditor.ts b/src/vs/workbench/browser/codeeditor.ts index 0acd7e04b7b..6be99930f65 100644 --- a/src/vs/workbench/browser/codeeditor.ts +++ b/src/vs/workbench/browser/codeeditor.ts @@ -153,6 +153,7 @@ export class FloatingClickWidget extends Widget implements IOverlayWidget { this._domNode = $('.floating-click-widget'); this._domNode.style.padding = '6px 11px'; + this._domNode.style.borderRadius = '2px'; this._domNode.style.cursor = 'pointer'; if (keyBindingAction) { diff --git a/src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.ts b/src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.ts index 37643b3fb6b..b76e96844f6 100644 --- a/src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.ts +++ b/src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.ts @@ -14,20 +14,22 @@ import { InputCodeEditorView } from 'vs/workbench/contrib/mergeEditor/browser/vi import { ResultCodeEditorView } from 'vs/workbench/contrib/mergeEditor/browser/view/editors/resultCodeEditorView'; export class MergeEditorViewModel { + private counter = 0; private readonly lastFocusedEditor = derivedObservableWithWritableCache< - CodeEditorView | undefined + { view: CodeEditorView | undefined; counter: number } >('lastFocusedEditor', (reader, lastValue) => { const editors = [ this.inputCodeEditorView1, this.inputCodeEditorView2, this.resultCodeEditorView, ]; - return editors.find((e) => e.isFocused.read(reader)) || lastValue; + const view = editors.find((e) => e.isFocused.read(reader)); + return view ? { view, counter: this.counter++ } : lastValue || { view: undefined, counter: this.counter++ }; }); private readonly manuallySetActiveModifiedBaseRange = observableValue< - ModifiedBaseRange | undefined - >('manuallySetActiveModifiedBaseRange', undefined); + { range: ModifiedBaseRange | undefined; counter: number } + >('manuallySetActiveModifiedBaseRange', { range: undefined, counter: 0 }); private getRange(editor: CodeEditorView, modifiedBaseRange: ModifiedBaseRange, reader: IReader | undefined): LineRange { if (editor === this.resultCodeEditorView) { @@ -42,17 +44,22 @@ export class MergeEditorViewModel { 'activeModifiedBaseRange', (reader) => { const focusedEditor = this.lastFocusedEditor.read(reader); - if (!focusedEditor) { - return this.manuallySetActiveModifiedBaseRange.read(reader); + const manualRange = this.manuallySetActiveModifiedBaseRange.read(reader); + if (manualRange.counter > focusedEditor.counter) { + return manualRange.range; } - const cursorLineNumber = focusedEditor.cursorLineNumber.read(reader); + + if (!focusedEditor.view) { + return; + } + const cursorLineNumber = focusedEditor.view.cursorLineNumber.read(reader); if (!cursorLineNumber) { return undefined; } const modifiedBaseRanges = this.model.modifiedBaseRanges.read(reader); return modifiedBaseRanges.find((r) => { - const range = this.getRange(focusedEditor, r, reader); + const range = this.getRange(focusedEditor.view!, r, reader); return range.isEmpty ? range.startLineNumber === cursorLineNumber : range.contains(cursorLineNumber); @@ -72,28 +79,28 @@ export class MergeEditorViewModel { state: ModifiedBaseRangeState, tx: ITransaction ): void { - this.manuallySetActiveModifiedBaseRange.set(baseRange, tx); - this.lastFocusedEditor.clearCache(tx); + this.manuallySetActiveModifiedBaseRange.set({ range: baseRange, counter: this.counter++ }, tx); this.model.setState(baseRange, state, true, tx); } private goToConflict(getModifiedBaseRange: (editor: CodeEditorView, curLineNumber: number) => ModifiedBaseRange | undefined): void { - const lastFocusedEditor = this.lastFocusedEditor.get(); - if (!lastFocusedEditor) { - return; + let editor = this.lastFocusedEditor.get().view; + if (!editor) { + editor = this.resultCodeEditorView; } - const curLineNumber = lastFocusedEditor.editor.getPosition()?.lineNumber; + const curLineNumber = editor.editor.getPosition()?.lineNumber; if (curLineNumber === undefined) { return; } - const modifiedBaseRange = getModifiedBaseRange(lastFocusedEditor, curLineNumber); + const modifiedBaseRange = getModifiedBaseRange(editor, curLineNumber); if (modifiedBaseRange) { - const range = this.getRange(lastFocusedEditor, modifiedBaseRange, undefined); - lastFocusedEditor.editor.setPosition({ + const range = this.getRange(editor, modifiedBaseRange, undefined); + editor.editor.focus(); + editor.editor.setPosition({ lineNumber: range.startLineNumber, - column: lastFocusedEditor.editor.getModel()!.getLineFirstNonWhitespaceColumn(range.startLineNumber), + column: editor.editor.getModel()!.getLineFirstNonWhitespaceColumn(range.startLineNumber), }); - lastFocusedEditor.editor.revealLinesNearTop(range.startLineNumber, range.endLineNumberExclusive, ScrollType.Smooth); + editor.editor.revealLinesNearTop(range.startLineNumber, range.endLineNumberExclusive, ScrollType.Smooth); } } |