提交 d413a30a 编写于 作者: P Pine Wu

Polish

上级 a1bd86cc
...@@ -3,7 +3,19 @@ ...@@ -3,7 +3,19 @@
* Licensed under the MIT License. See License.txt in the project root for license information. * Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/ *--------------------------------------------------------------------------------------------*/
/* Suggest widget*/
.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar { .monaco-editor .suggest-widget.with-status-bar .suggest-status-bar {
visibility: visible; visibility: visible;
} }
.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar span {
min-height: 18px;
}
.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row > .contents > .main > .right > .readMore,
.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused > .contents > .main > .right:not(.always-show-details) > .readMore {
display: none;
}
.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover > .contents > .main > .right.can-expand-details > .details-label {
width: 100%;
}
...@@ -45,6 +45,10 @@ import { IKeyboardEvent } from 'vs/base/browser/keyboardEvent'; ...@@ -45,6 +45,10 @@ import { IKeyboardEvent } from 'vs/base/browser/keyboardEvent';
const expandSuggestionDocsByDefault = false; const expandSuggestionDocsByDefault = false;
const READ_MORE_TEXT = nls.localize('suggestWidget.readMore', 'Read more... (⌃Space)');
const READ_LESS_TEXT = nls.localize('suggestWidget.readLess', 'Read less... (⌃Space)');
const INSERT_REPLACE_TEXT = nls.localize('suggestWidget.insertOrReplace', 'Enter to insert, Tab to replace');
interface ISuggestionTemplateData { interface ISuggestionTemplateData {
root: HTMLElement; root: HTMLElement;
...@@ -554,8 +558,8 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<Compl ...@@ -554,8 +558,8 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<Compl
this.statusBarLeftSpan = append(this.statusBarElement, $('span')); this.statusBarLeftSpan = append(this.statusBarElement, $('span'));
this.statusBarRightSpan = append(this.statusBarElement, $('span')); this.statusBarRightSpan = append(this.statusBarElement, $('span'));
this.statusBarLeftSpan.innerText = 'Enter to insert, Tab to replace'; this.setStatusBarLeftText(INSERT_REPLACE_TEXT);
this.statusBarRightSpan.innerText = 'Read more... (⌃Space)'; this.setStatusBarRightText('');
this.details = instantiationService.createInstance(SuggestionDetails, this.element, this, this.editor, markdownRenderer, triggerKeybindingLabel); this.details = instantiationService.createInstance(SuggestionDetails, this.element, this, this.editor, markdownRenderer, triggerKeybindingLabel);
...@@ -761,6 +765,16 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<Compl ...@@ -761,6 +765,16 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<Compl
removeClass(this.element, 'docs-side'); removeClass(this.element, 'docs-side');
} }
if (canExpandCompletionItem(this.focusedItem)) {
if (this.expandDocsSettingFromStorage()) {
this.setStatusBarRightText(READ_LESS_TEXT);
} else {
this.setStatusBarRightText(READ_MORE_TEXT);
}
} else {
this.statusBarRightSpan.innerText = '';
}
this.editor.setAriaOptions({ activeDescendant: getAriaId(index) }); this.editor.setAriaOptions({ activeDescendant: getAriaId(index) });
}).catch(onUnexpectedError); }).catch(onUnexpectedError);
} }
...@@ -1030,6 +1044,7 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<Compl ...@@ -1030,6 +1044,7 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<Compl
removeClass(this.element, 'docs-side'); removeClass(this.element, 'docs-side');
removeClass(this.element, 'docs-below'); removeClass(this.element, 'docs-below');
this.editor.layoutContentWidget(this); this.editor.layoutContentWidget(this);
this.setStatusBarRightText(READ_MORE_TEXT);
this.telemetryService.publicLog2('suggestWidget:collapseDetails'); this.telemetryService.publicLog2('suggestWidget:collapseDetails');
} else { } else {
if (this.state !== State.Open && this.state !== State.Details && this.state !== State.Frozen) { if (this.state !== State.Open && this.state !== State.Details && this.state !== State.Frozen) {
...@@ -1038,6 +1053,7 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<Compl ...@@ -1038,6 +1053,7 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<Compl
this.updateExpandDocsSetting(true); this.updateExpandDocsSetting(true);
this.showDetails(false); this.showDetails(false);
this.setStatusBarRightText(READ_LESS_TEXT);
this.telemetryService.publicLog2('suggestWidget:expandDetails'); this.telemetryService.publicLog2('suggestWidget:expandDetails');
} }
} }
...@@ -1243,6 +1259,14 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<Compl ...@@ -1243,6 +1259,14 @@ export class SuggestWidget implements IContentWidget, IListVirtualDelegate<Compl
this.storageService.store('expandSuggestionDocs', value, StorageScope.GLOBAL); this.storageService.store('expandSuggestionDocs', value, StorageScope.GLOBAL);
} }
private setStatusBarLeftText(s: string) {
this.statusBarLeftSpan.innerText = s;
}
private setStatusBarRightText(s: string) {
this.statusBarRightSpan.innerText = s;
}
dispose(): void { dispose(): void {
this.details.dispose(); this.details.dispose();
this.list.dispose(); this.list.dispose();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册