From 5e2eccadbd91171c01cdb209d1338bcfb7786b1c Mon Sep 17 00:00:00 2001 From: shedaniel Date: Thu, 2 Jan 2020 14:31:16 +0800 Subject: 3.3 Fix #58 Close #134 Close #158 Fix #227 --- .../me/shedaniel/rei/impl/DisplayHelperImpl.java | 32 +++++++++++----------- 1 file changed, 16 insertions(+), 16 deletions(-) (limited to 'src/main/java/me/shedaniel/rei/impl/DisplayHelperImpl.java') diff --git a/src/main/java/me/shedaniel/rei/impl/DisplayHelperImpl.java b/src/main/java/me/shedaniel/rei/impl/DisplayHelperImpl.java index 42715c42b..6cd123b60 100644 --- a/src/main/java/me/shedaniel/rei/impl/DisplayHelperImpl.java +++ b/src/main/java/me/shedaniel/rei/impl/DisplayHelperImpl.java @@ -20,41 +20,41 @@ import java.util.stream.Collectors; @Deprecated @Internal public class DisplayHelperImpl implements DisplayHelper { - + private static final Comparator> BOUNDS_HANDLER_COMPARATOR; private static final DisplayBoundsHandler EMPTY = new DisplayBoundsHandler() { @Override public Class getBaseSupportedClass() { return null; } - + @Override public Rectangle getLeftBounds(Object screen) { return new Rectangle(); } - + @Override public Rectangle getRightBounds(Object screen) { return new Rectangle(); } - + @Override public float getPriority() { return -10f; } }; - + static { Comparator> comparator = Comparator.comparingDouble(DisplayBoundsHandler::getPriority); BOUNDS_HANDLER_COMPARATOR = comparator.reversed(); } - + private List> screenDisplayBoundsHandlers = Lists.newArrayList(); private Map, DisplayBoundsHandler> handlerCache = Maps.newHashMap(); private Map>> handlerSortedCache = Maps.newHashMap(); private BaseBoundsHandler baseBoundsHandler; private Class tempScreen; - + @Override public List> getSortedBoundsHandlers(Class screenClass) { List> possibleCached = handlerSortedCache.get(screenClass); @@ -64,12 +64,12 @@ public class DisplayHelperImpl implements DisplayHelper { handlerSortedCache.put(screenClass, screenDisplayBoundsHandlers.stream().filter(this::filterResponsible).sorted(BOUNDS_HANDLER_COMPARATOR).collect(Collectors.toList())); return handlerSortedCache.get(screenClass); } - + @Override public List> getAllBoundsHandlers() { return screenDisplayBoundsHandlers; } - + @Override public DisplayBoundsHandler getResponsibleBoundsHandler(Class screenClass) { DisplayBoundsHandler possibleCached = handlerCache.get(screenClass); @@ -79,36 +79,36 @@ public class DisplayHelperImpl implements DisplayHelper { handlerCache.put(screenClass, handlers.isEmpty() ? EMPTY : handlers.get(0)); return handlerCache.get(screenClass); } - + @Deprecated public boolean filterResponsible(DisplayBoundsHandler handler) { return handler.getBaseSupportedClass().isAssignableFrom(tempScreen); } - + @Override public void registerBoundsHandler(DisplayBoundsHandler handler) { screenDisplayBoundsHandlers.add(handler); } - + @Override public BaseBoundsHandler getBaseBoundsHandler() { return baseBoundsHandler; } - + @Deprecated public void setBaseBoundsHandler(BaseBoundsHandler baseBoundsHandler) { this.baseBoundsHandler = baseBoundsHandler; } - + @Deprecated public void resetData() { screenDisplayBoundsHandlers.clear(); } - + @Deprecated public void resetCache() { handlerCache.clear(); handlerSortedCache.clear(); } - + } -- cgit