mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
VIM-3948 Make FilterComponent Accessible
GitOrigin-RevId: a61a5093f0d9f39efea806d087259c6718810996
This commit is contained in:
committed by
intellij-monorepo-bot
parent
6561f4fb44
commit
f1d283a84e
@@ -331,6 +331,8 @@ vcs.log.table.accessible.name={0} log
|
||||
vcs.log.changes.accessible.name=Commit changes browser
|
||||
vcs.log.text.filter.accessible.name={0} log text or hash filter
|
||||
vcs.log.filter.accessible.name={0}: {1}
|
||||
vcs.log.filter.accessible.action.show.popup=Show Popup
|
||||
vcs.log.filter.accessible.action.clear=Clear
|
||||
|
||||
# exceptions
|
||||
vcs.log.failed.loading.details=Cannot load details for commit {0} in {1}
|
||||
|
||||
@@ -16,6 +16,7 @@ import org.jetbrains.annotations.Nls;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import javax.accessibility.AccessibleAction;
|
||||
import javax.accessibility.AccessibleContext;
|
||||
import javax.accessibility.AccessibleRole;
|
||||
import javax.swing.BorderFactory;
|
||||
@@ -360,7 +361,7 @@ public abstract class FilterComponent extends JBPanel<FilterComponent> {
|
||||
return accessibleContext;
|
||||
}
|
||||
|
||||
private class AccessibleVcsLogPopupComponent extends AccessibleContextDelegate {
|
||||
private class AccessibleVcsLogPopupComponent extends AccessibleContextDelegate implements AccessibleAction {
|
||||
|
||||
AccessibleVcsLogPopupComponent(AccessibleContext context) {
|
||||
super(context);
|
||||
@@ -380,5 +381,39 @@ public abstract class FilterComponent extends JBPanel<FilterComponent> {
|
||||
public AccessibleRole getAccessibleRole() {
|
||||
return AccessibleRole.POPUP_MENU;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AccessibleAction getAccessibleAction() {
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getAccessibleActionCount() {
|
||||
return 2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAccessibleActionDescription(int i) {
|
||||
return switch (i) {
|
||||
case 0 -> VcsLogBundle.message("vcs.log.filter.accessible.action.show.popup");
|
||||
case 1 -> VcsLogBundle.message("vcs.log.filter.accessible.action.clear");
|
||||
default -> null;
|
||||
};
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean doAccessibleAction(int i) {
|
||||
return switch (i) {
|
||||
case 0 -> {
|
||||
showPopup();
|
||||
yield true;
|
||||
}
|
||||
case 1 -> {
|
||||
resetFilter();
|
||||
yield true;
|
||||
}
|
||||
default -> false;
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user