提交 0a20ce4d 编写于 作者: S Sandeep Somavarapu

#17292

- Do not bail out if settings has errors (Ignore invalid settings)
- Fix mouse over on edit icon
上级 36b52715
......@@ -62,7 +62,8 @@ export class RangeHighlightDecorations implements IDisposable {
this.editor = editor;
this.editorDisposables.push(this.editor.onDidChangeCursorPosition((e: editorCommon.ICursorPositionChangedEvent) => {
if (
e.reason === editorCommon.CursorChangeReason.Explicit
e.reason === editorCommon.CursorChangeReason.NotSet
|| e.reason === editorCommon.CursorChangeReason.Explicit
|| e.reason === editorCommon.CursorChangeReason.Undo
|| e.reason === editorCommon.CursorChangeReason.Redo
) {
......
......@@ -828,16 +828,25 @@ class EditSettingRenderer extends Disposable {
}
private onMouseMoved(mouseMoveEvent: IEditorMouseEvent): void {
if (mouseMoveEvent.event.target === this.editPreferenceWidgetForMouseMove.getDomNode() ||
mouseMoveEvent.event.target === this.editPreferenceWidgetForCusorPosition.getDomNode()
) {
this.onMouseOver(this.editPreferenceWidgetForMouseMove);
const editPreferenceWidget = this.getEditPreferenceWidgetUnderMouse(mouseMoveEvent);
if (editPreferenceWidget) {
this.onMouseOver(editPreferenceWidget);
return;
}
this.settingHighlighter.clear();
this.toggleEditPreferencesForMouseMoveDelayer.trigger(() => this.toggleEidtPreferenceWidgetForMouseMove(mouseMoveEvent));
}
private getEditPreferenceWidgetUnderMouse(mouseMoveEvent: IEditorMouseEvent): EditPreferenceWidget<ISetting> {
if (mouseMoveEvent.event.target === this.editPreferenceWidgetForMouseMove.getDomNode()) {
return this.editPreferenceWidgetForMouseMove;
}
if (mouseMoveEvent.event.target === this.editPreferenceWidgetForCusorPosition.getDomNode()) {
return this.editPreferenceWidgetForCusorPosition;
}
return null;
}
private toggleEidtPreferenceWidgetForMouseMove(mouseMoveEvent: IEditorMouseEvent): void {
const settings = mouseMoveEvent.target.position ? this.getSettings(mouseMoveEvent.target.position.lineNumber) : null;
if (settings && settings.length) {
......
......@@ -261,6 +261,10 @@ export class SettingsEditorModel extends AbstractSettingsModel implements ISetti
},
onLiteralValue: onValue,
onError: (error) => {
const setting = settings[settings.length - 1];
if (!setting.range || !setting.keyRange || !setting.valueRange) {
settings.pop();
}
}
};
visit(model.getValue(), visitor);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册