aboutsummaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2021-06-27 16:47:45 +0800
committershedaniel <daniel@shedaniel.me>2021-06-27 16:47:45 +0800
commit4cbdc5d77a1406ef6d8b350ddedce987cbed3647 (patch)
treeb5f4b70c351423dbbae3b6f9f161094ab4f1bbf0 /runtime
parentc0c2bd8d259b9ccc55d2111d806220753b9d89bd (diff)
downloadRoughlyEnoughItems-4cbdc5d77a1406ef6d8b350ddedce987cbed3647.tar.gz
RoughlyEnoughItems-4cbdc5d77a1406ef6d8b350ddedce987cbed3647.tar.bz2
RoughlyEnoughItems-4cbdc5d77a1406ef6d8b350ddedce987cbed3647.zip
Close #561
Diffstat (limited to 'runtime')
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/config/ConfigObjectImpl.java14
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/CompositeDisplayViewingScreen.java9
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/DefaultDisplayViewingScreen.java9
-rwxr-xr-xruntime/src/main/resources/assets/roughlyenoughitems/lang/en_us.json1
4 files changed, 27 insertions, 6 deletions
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/ConfigObjectImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/ConfigObjectImpl.java
index cd99039c4..089819553 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/ConfigObjectImpl.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/ConfigObjectImpl.java
@@ -267,6 +267,11 @@ public class ConfigObjectImpl implements ConfigObject, ConfigData {
}
@Override
+ public ModifierKeyCode getPreviousScreenKeybind() {
+ return basics.keyBindings.previousScreenKeybind == null ? ModifierKeyCode.unknown() : basics.keyBindings.previousScreenKeybind;
+ }
+
+ @Override
public double getEntrySize() {
return advanced.accessibility.entrySize;
}
@@ -419,15 +424,16 @@ public class ConfigObjectImpl implements ConfigObject, ConfigData {
}
public static class KeyBindings {
- private ModifierKeyCode recipeKeybind = ModifierKeyCode.of(InputConstants.Type.KEYSYM.getOrCreate(82), Modifier.none());
- private ModifierKeyCode usageKeybind = ModifierKeyCode.of(InputConstants.Type.KEYSYM.getOrCreate(85), Modifier.none());
- private ModifierKeyCode hideKeybind = ModifierKeyCode.of(InputConstants.Type.KEYSYM.getOrCreate(79), Modifier.of(false, true, false));
+ private ModifierKeyCode recipeKeybind = ModifierKeyCode.of(InputConstants.Type.KEYSYM.getOrCreate(InputConstants.KEY_R), Modifier.none());
+ private ModifierKeyCode usageKeybind = ModifierKeyCode.of(InputConstants.Type.KEYSYM.getOrCreate(InputConstants.KEY_U), Modifier.none());
+ private ModifierKeyCode hideKeybind = ModifierKeyCode.of(InputConstants.Type.KEYSYM.getOrCreate(InputConstants.KEY_O), Modifier.of(false, true, false));
private ModifierKeyCode previousPageKeybind = ModifierKeyCode.unknown();
private ModifierKeyCode nextPageKeybind = ModifierKeyCode.unknown();
private ModifierKeyCode focusSearchFieldKeybind = ModifierKeyCode.unknown();
private ModifierKeyCode copyRecipeIdentifierKeybind = ModifierKeyCode.unknown();
- private ModifierKeyCode favoriteKeybind = ModifierKeyCode.of(InputConstants.Type.KEYSYM.getOrCreate(65), Modifier.none());
+ private ModifierKeyCode favoriteKeybind = ModifierKeyCode.of(InputConstants.Type.KEYSYM.getOrCreate(InputConstants.KEY_A), Modifier.none());
private ModifierKeyCode exportImageKeybind = ModifierKeyCode.unknown();
+ private ModifierKeyCode previousScreenKeybind = ModifierKeyCode.of(InputConstants.Type.KEYSYM.getOrCreate(InputConstants.KEY_BACKSPACE), Modifier.none());
}
public static class Appearance {
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/CompositeDisplayViewingScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/CompositeDisplayViewingScreen.java
index 42d451a9e..b2b86fb47 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/CompositeDisplayViewingScreen.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/CompositeDisplayViewingScreen.java
@@ -236,6 +236,13 @@ public class CompositeDisplayViewingScreen extends AbstractDisplayViewingScreen
selectedRecipeIndex = categoryMap.get(categories.get(selectedCategoryIndex)).size() - 1;
init();
return true;
+ } else if (ConfigObject.getInstance().getPreviousScreenKeybind().matchesMouse(button)) {
+ if (REIRuntimeImpl.getInstance().hasLastDisplayScreen()) {
+ minecraft.setScreen(REIRuntimeImpl.getInstance().getLastDisplayScreen());
+ } else {
+ minecraft.setScreen(REIRuntime.getInstance().getPreviousScreen());
+ }
+ return true;
}
for (GuiEventListener entry : children())
if (entry.mouseClicked(mouseX, mouseY, button)) {
@@ -408,7 +415,7 @@ public class CompositeDisplayViewingScreen extends AbstractDisplayViewingScreen
Minecraft.getInstance().setScreen(REIRuntime.getInstance().getPreviousScreen());
return true;
}
- if (keyCode == 259) {
+ if (ConfigObject.getInstance().getPreviousScreenKeybind().matchesKey(keyCode, scanCode)) {
if (REIRuntimeImpl.getInstance().hasLastDisplayScreen()) {
minecraft.setScreen(REIRuntimeImpl.getInstance().getLastDisplayScreen());
} else {
diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/DefaultDisplayViewingScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/DefaultDisplayViewingScreen.java
index 7239762ec..08fa19f81 100644
--- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/DefaultDisplayViewingScreen.java
+++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/DefaultDisplayViewingScreen.java
@@ -138,7 +138,7 @@ public class DefaultDisplayViewingScreen extends AbstractDisplayViewingScreen {
Minecraft.getInstance().setScreen(REIRuntime.getInstance().getPreviousScreen());
return true;
}
- if (keyCode == 259) {
+ if (ConfigObject.getInstance().getPreviousScreenKeybind().matchesKey(keyCode, scanCode)) {
if (REIRuntimeImpl.getInstance().hasLastDisplayScreen()) {
minecraft.setScreen(REIRuntimeImpl.getInstance().getLastDisplayScreen());
} else {
@@ -487,6 +487,13 @@ public class DefaultDisplayViewingScreen extends AbstractDisplayViewingScreen {
if (recipeBack.isEnabled())
recipeBack.onClick();
return recipeBack.isEnabled();
+ } else if (ConfigObject.getInstance().getPreviousScreenKeybind().matchesMouse(button)) {
+ if (REIRuntimeImpl.getInstance().hasLastDisplayScreen()) {
+ minecraft.setScreen(REIRuntimeImpl.getInstance().getLastDisplayScreen());
+ } else {
+ minecraft.setScreen(REIRuntime.getInstance().getPreviousScreen());
+ }
+ return true;
}
return super.mouseClicked(mouseX, mouseY, button);
}
diff --git a/runtime/src/main/resources/assets/roughlyenoughitems/lang/en_us.json b/runtime/src/main/resources/assets/roughlyenoughitems/lang/en_us.json
index f0d07f807..b59607783 100755
--- a/runtime/src/main/resources/assets/roughlyenoughitems/lang/en_us.json
+++ b/runtime/src/main/resources/assets/roughlyenoughitems/lang/en_us.json
@@ -134,6 +134,7 @@
"config.roughlyenoughitems.keyBindings.copyRecipeIdentifierKeybind": "Copy Recipe Identifier:",
"config.roughlyenoughitems.keyBindings.exportImageKeybind": "Export Recipe:",
"config.roughlyenoughitems.keyBindings.favoriteKeybind": "Favorite Entry:",
+ "config.roughlyenoughitems.keyBindings.previousScreenKeybind": "Previous Screen:",
"config.roughlyenoughitems.cheatingStyle": "Cheating Style:",
"config.roughlyenoughitems.cheatingStyle.grab": "Grab",
"config.roughlyenoughitems.cheatingStyle.give": "Give",