diff options
| author | Danielshe <shekwancheung0528@gmail.com> | 2019-08-19 22:08:27 +0800 |
|---|---|---|
| committer | Danielshe <shekwancheung0528@gmail.com> | 2019-08-19 22:08:27 +0800 |
| commit | a2ee9f7570b2b1ee7f7b51950301715a15496d00 (patch) | |
| tree | 99b2b38e7551daf1a15794f4f8ae6ee91dc59e95 /src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java | |
| parent | e7ece2b342f1ea8bf824b177d65684d13f468ece (diff) | |
| download | RoughlyEnoughItems-a2ee9f7570b2b1ee7f7b51950301715a15496d00.tar.gz RoughlyEnoughItems-a2ee9f7570b2b1ee7f7b51950301715a15496d00.tar.bz2 RoughlyEnoughItems-a2ee9f7570b2b1ee7f7b51950301715a15496d00.zip | |
Build 2: Fix bugs
- Fix freeze caused by the backspace feature
- Page buttons gone when the search box is on top
- Fixed #143
- Made text red when no entry has been found
Diffstat (limited to 'src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java index 40a54f1df..74f7a884d 100644 --- a/src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java +++ b/src/main/java/me/shedaniel/rei/gui/widget/SearchFieldWidget.java @@ -6,14 +6,19 @@ package me.shedaniel.rei.gui.widget; import com.mojang.blaze3d.platform.GlStateManager; +import me.shedaniel.rei.gui.ContainerScreenOverlay; +import net.minecraft.client.MinecraftClient; import net.minecraft.client.render.GuiLighting; import net.minecraft.client.resource.language.I18n; import net.minecraft.client.sound.PositionedSoundInstance; +import net.minecraft.client.util.InputUtil; import net.minecraft.sound.SoundEvents; public class SearchFieldWidget extends TextFieldWidget { public static boolean isSearching = false; + public long keybindFocusTime = -1; + public int keybindFocusKey = -1; protected long lastClickedTime = -1; public SearchFieldWidget(int x, int y, int width, int height) { @@ -24,7 +29,7 @@ public class SearchFieldWidget extends TextFieldWidget { public void laterRender(int int_1, int int_2, float float_1) { GuiLighting.disable(); GlStateManager.disableDepthTest(); - setEditableColor(isSearching ? -1313241 : 14737632); + setEditableColor(ContainerScreenOverlay.getEntryListWidget().children().isEmpty() && !getText().isEmpty() ? 16733525 : isSearching ? -1313241 : 14737632); setSuggestion(!isFocused() && getText().isEmpty() ? I18n.translate("text.rei.search.field.suggestion") : null); super.render(int_1, int_2, float_1); GlStateManager.enableDepthTest(); @@ -69,6 +74,16 @@ public class SearchFieldWidget extends TextFieldWidget { } @Override + public boolean charTyped(char char_1, int int_1) { + if (System.currentTimeMillis() - keybindFocusTime < 1000 && InputUtil.isKeyPressed(MinecraftClient.getInstance().window.getHandle(), keybindFocusKey)) { + keybindFocusTime = -1; + keybindFocusKey = -1; + return true; + } + return super.charTyped(char_1, int_1); + } + + @Override public void render(int int_1, int int_2, float float_1) { } |
