mirror of
https://github.com/sparrowwallet/sparrow.git
synced 2025-11-05 11:56:37 +00:00
Move tabs by keyboard
Adds the ability to move the active wallet tab using the keyboard shortcut CTRL+Shift+LEFT / CTRL+Shift+RIGHT
This commit is contained in:
parent
2e1bf9a497
commit
5af83adb55
1 changed files with 1 additions and 14 deletions
|
|
@ -446,39 +446,26 @@ public class AppController implements Initializable {
|
||||||
} else if(event.getCode() == KeyCode.RIGHT && currentIndex < tabs.getTabs().size() - 1) {
|
} else if(event.getCode() == KeyCode.RIGHT && currentIndex < tabs.getTabs().size() - 1) {
|
||||||
tabs.getSelectionModel().select(currentIndex + 1);
|
tabs.getSelectionModel().select(currentIndex + 1);
|
||||||
}
|
}
|
||||||
}
|
} else if (event.isControlDown() && event.isShiftDown() && (event.getCode() == KeyCode.LEFT || event.getCode() == KeyCode.RIGHT)){
|
||||||
});
|
|
||||||
|
|
||||||
// MSC: move tabs by keyboard
|
|
||||||
tabs.getScene().addEventFilter(KeyEvent.KEY_PRESSED, event -> {
|
|
||||||
if (event.isControlDown() && event.isShiftDown() && (event.getCode() == KeyCode.LEFT || event.getCode() == KeyCode.RIGHT)){
|
|
||||||
boolean moveLeft = event.getCode() == KeyCode.LEFT;
|
boolean moveLeft = event.getCode() == KeyCode.LEFT;
|
||||||
int currentIndex = tabs.getSelectionModel().getSelectedIndex();
|
int currentIndex = tabs.getSelectionModel().getSelectedIndex();
|
||||||
|
|
||||||
if (moveLeft && currentIndex == 0)
|
if (moveLeft && currentIndex == 0)
|
||||||
return;
|
return;
|
||||||
if (!moveLeft && currentIndex + 1 >= tabs.getTabs().size())
|
if (!moveLeft && currentIndex + 1 >= tabs.getTabs().size())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
Tab selectedTab = tabs.getSelectionModel().getSelectedItem();
|
Tab selectedTab = tabs.getSelectionModel().getSelectedItem();
|
||||||
tabs.getTabs().removeListener(tabsChangeListener);
|
tabs.getTabs().removeListener(tabsChangeListener);
|
||||||
tabs.getTabs().remove(selectedTab);
|
tabs.getTabs().remove(selectedTab);
|
||||||
|
|
||||||
if (moveLeft)
|
if (moveLeft)
|
||||||
tabs.getTabs().add(currentIndex - 1, selectedTab);
|
tabs.getTabs().add(currentIndex - 1, selectedTab);
|
||||||
else
|
else
|
||||||
tabs.getTabs().add(currentIndex + 1, selectedTab);
|
tabs.getTabs().add(currentIndex + 1, selectedTab);
|
||||||
|
|
||||||
tabs.getTabs().addListener(tabsChangeListener);
|
tabs.getTabs().addListener(tabsChangeListener);
|
||||||
tabs.getSelectionModel().select(selectedTab);
|
tabs.getSelectionModel().select(selectedTab);
|
||||||
EventManager.get().post(new RequestOpenWalletsEvent()); //Rearrange recent files list
|
EventManager.get().post(new RequestOpenWalletsEvent()); //Rearrange recent files list
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setPlatformApplicationMenu() {
|
private void setPlatformApplicationMenu() {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue