diff options
| author | shedaniel <daniel@shedaniel.me> | 2022-01-12 14:17:43 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2022-01-12 20:55:39 +0800 |
| commit | 73cd013c601c90106016f81112535541f1ccef47 (patch) | |
| tree | 9914c5f01bb6e430d1b3d53572b067f878ad47f6 /api/src/main/java | |
| parent | 1032a97d1ff9622f157ec22c2e70a5cf720447c4 (diff) | |
| download | RoughlyEnoughItems-73cd013c601c90106016f81112535541f1ccef47.tar.gz RoughlyEnoughItems-73cd013c601c90106016f81112535541f1ccef47.tar.bz2 RoughlyEnoughItems-73cd013c601c90106016f81112535541f1ccef47.zip | |
Prevent against arbitrary modifications against DisplayRegistry with getAll or get, Close #700, Fix JEITweaker
Diffstat (limited to 'api/src/main/java')
| -rw-r--r-- | api/src/main/java/me/shedaniel/rei/api/client/registry/screen/DisplayBoundsProvider.java | 2 | ||||
| -rw-r--r-- | api/src/main/java/me/shedaniel/rei/api/client/registry/screen/OverlayDecider.java | 7 |
2 files changed, 9 insertions, 0 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/DisplayBoundsProvider.java b/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/DisplayBoundsProvider.java index 4e32def9e..fcda7a01d 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/DisplayBoundsProvider.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/DisplayBoundsProvider.java @@ -26,6 +26,7 @@ package me.shedaniel.rei.api.client.registry.screen; import me.shedaniel.math.Rectangle; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; +import org.jetbrains.annotations.Nullable; @Environment(EnvType.CLIENT) public interface DisplayBoundsProvider<T> extends OverlayDecider { @@ -33,5 +34,6 @@ public interface DisplayBoundsProvider<T> extends OverlayDecider { * @param screen the screen * @return the boundary of the base container panel. */ + @Nullable Rectangle getScreenBounds(T screen); }
\ No newline at end of file diff --git a/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/OverlayDecider.java b/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/OverlayDecider.java index d8f31b627..8fcb2c456 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/OverlayDecider.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/OverlayDecider.java @@ -29,6 +29,7 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.gui.screens.Screen; import net.minecraft.world.InteractionResult; +import org.jetbrains.annotations.ApiStatus; import static net.minecraft.world.InteractionResult.PASS; @@ -39,10 +40,16 @@ import static net.minecraft.world.InteractionResult.PASS; public interface OverlayDecider extends Comparable<OverlayDecider> { <R extends Screen> boolean isHandingScreen(Class<R> screen); + @ApiStatus.ScheduledForRemoval + @Deprecated default InteractionResult shouldScreenBeOverlaid(Class<?> screen) { return InteractionResult.PASS; } + default <R extends Screen> InteractionResult shouldScreenBeOverlaid(R screen) { + return shouldScreenBeOverlaid(screen.getClass()); + } + /** * Gets the priority of the handler, the higher it is, the earlier it is called. * |
