diff --git a/game/client/src/main/java/net/minecraft/client/gui/TextFieldElement.java b/game/client/src/main/java/net/minecraft/client/gui/TextFieldElement.java index f30db0ad2..770d8bc57 100644 --- a/game/client/src/main/java/net/minecraft/client/gui/TextFieldElement.java +++ b/game/client/src/main/java/net/minecraft/client/gui/TextFieldElement.java @@ -1,6 +1,7 @@ package net.minecraft.client.gui; import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.guidebook.ScreenGuidebook; import net.minecraft.client.gui.keyboard.ScreenKeyboard; import net.minecraft.client.gui.text.TextFieldEditor; import net.minecraft.client.input.InputType; @@ -95,7 +96,12 @@ public class TextFieldElement extends Gui implements ITextField { boolean hovered = isHovered(x, y); if (this.parent != null && ((Minecraft.getMinecraft().inputType == InputType.CONTROLLER || GameSettings.FORCE_ONSCREEN_KEYBOARD.value) && hovered && mouseButton == 0)) { - this.parent.mc.displayScreen(new ScreenKeyboard(this.parent, this.editor, s -> {}, (c, k, workingString) -> {}, s -> {})); + if (this.parent instanceof ScreenGuidebook) { + this.parent.mc.displayScreen(new ScreenKeyboard(this.parent, null, s -> {}, (c, k, workingString) -> ScreenGuidebook.getPageManager().getLeftPage().keyTyped(c, k, 0, 0, 0, 0), s -> {})); + setFocused(true); + } else { + this.parent.mc.displayScreen(new ScreenKeyboard(this.parent, this.editor, s -> {}, (c, k, workingString) -> {}, s -> {})); + } } else { setFocused(hovered); if(hovered && mouseButton == 1) { diff --git a/game/client/src/main/java/net/minecraft/client/gui/guidebook/search/GuidebookPageSearch.java b/game/client/src/main/java/net/minecraft/client/gui/guidebook/search/GuidebookPageSearch.java index 815af1884..671b3e9e1 100644 --- a/game/client/src/main/java/net/minecraft/client/gui/guidebook/search/GuidebookPageSearch.java +++ b/game/client/src/main/java/net/minecraft/client/gui/guidebook/search/GuidebookPageSearch.java @@ -28,6 +28,7 @@ public class GuidebookPageSearch extends GuidebookPage { searchField.drawTextBox(); searchField.updateCursor(mc, mouseX, mouseY); searchClearButton.drawButton(mc,mouseX,mouseY); + searchField.parent = this.mc.currentScreen; int results = 0; for (GuidebookPage page : ScreenGuidebook.getPageManager().getPages()) { diff --git a/game/core/src/main/java/net/minecraft/core/block/BlockLogicWireRedstone.java b/game/core/src/main/java/net/minecraft/core/block/BlockLogicWireRedstone.java index ecc469711..ba5f48c33 100644 --- a/game/core/src/main/java/net/minecraft/core/block/BlockLogicWireRedstone.java +++ b/game/core/src/main/java/net/minecraft/core/block/BlockLogicWireRedstone.java @@ -24,7 +24,6 @@ import java.util.HashSet; import java.util.Random; import java.util.Set; import java.util.function.Predicate; -import java.util.logging.Logger; public class BlockLogicWireRedstone extends BlockLogic implements ISupportable { public static final int SIGNAL_MIN = 0; diff --git a/game/core/src/main/java/net/minecraft/core/data/tag/Tag.java b/game/core/src/main/java/net/minecraft/core/data/tag/Tag.java index e165d01a3..b81573188 100644 --- a/game/core/src/main/java/net/minecraft/core/data/tag/Tag.java +++ b/game/core/src/main/java/net/minecraft/core/data/tag/Tag.java @@ -86,6 +86,15 @@ public class Tag> elements.addAll(allElements); } + /** + * Removes the tag from all elements in the collection. + * @param allElements The elements to remove the tag from. + */ + public void removeAll(Collection allElements) + { + elements.removeAll(allElements); + } + /** * Determines if the tag applies to the given element, i.e. {@code element} is in {@link Tag#elements}. */