提交 b8540ded 编写于 作者: B Benjamin Pasero

properly focus dropdowns in toolbars

上级 569865d4
......@@ -137,13 +137,12 @@ export class BaseActionItem extends EventEmitter implements IActionItem {
public focus(): void {
if (this.builder) {
this.builder.domFocus();
this.builder.addClass('focused');
}
}
public blur(): void {
if (this.builder) {
this.builder.removeClass('focused');
this.builder.domBlur();
}
}
......@@ -475,7 +474,7 @@ export class ActionBar extends EventEmitter implements IActionRunner {
}
// Recompute focused item
else if (event.equals(CommonKeybindings.TAB)) {
else if (event.equals(CommonKeybindings.TAB) || event.equals(CommonKeybindings.SHIFT_TAB)) {
this.updateFocusedItem();
}
});
......@@ -743,6 +742,18 @@ export class SelectActionItem extends BaseActionItem {
}));
}
public focus(): void {
if (this.select) {
this.select.focus();
}
}
public blur(): void {
if (this.select) {
this.select.blur();
}
}
public render(container: HTMLElement): void {
DOM.addClass(container, 'select-container');
container.appendChild(this.select);
......
......@@ -49,6 +49,18 @@ export class SelectConfigActionItem extends BaseActionItem {
this.setOptions().done(null, errors.onUnexpectedError);
}
public focus(): void {
if (this.select) {
this.select.focus();
}
}
public blur(): void {
if (this.select) {
this.select.blur();
}
}
private setOptions(): Promise {
let previousSelectedIndex = this.select.selectedIndex;
this.select.options.length = 0;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册