diff --git a/forge-gui-mobile/src/forge/itemmanager/views/ItemListView.java b/forge-gui-mobile/src/forge/itemmanager/views/ItemListView.java index 026400c9942..f8488bd1c3e 100644 --- a/forge-gui-mobile/src/forge/itemmanager/views/ItemListView.java +++ b/forge-gui-mobile/src/forge/itemmanager/views/ItemListView.java @@ -68,6 +68,7 @@ public final class ItemListView extends ItemView { @Override public void setup(ItemManagerConfig config, Map colOverrides) { + list.compactModeHandler.setCompactMode(config.getCompactListView()); refresh(null, 0, 0); } @@ -284,6 +285,9 @@ public final class ItemListView extends ItemView { if (compactModeHandler.update(amount)) { revalidate(); //update scroll bounds scrollSelectionIntoView(); //ensure selection remains in view + + //update compact mode configuration + itemManager.getConfig().setCompactListView(compactModeHandler.isCompactMode()); } return true; } diff --git a/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java b/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java index c82ef8dcb61..eb1c39f25a1 100644 --- a/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java +++ b/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java @@ -139,7 +139,7 @@ public class SettingsPage extends TabPage { 4); lstSettings.addItem(new BooleanSetting(FPref.UI_COMPACT_LIST_ITEMS, "Compact List Items", - "Show only a single line of text for cards and decks on list views by default."), + "Show only a single line of text for cards and decks on all list views by default."), 4); lstSettings.addItem(new BooleanSetting(FPref.UI_HIDE_REMINDER_TEXT, "Hide Reminder Text", diff --git a/forge-gui-mobile/src/forge/toolbox/FList.java b/forge-gui-mobile/src/forge/toolbox/FList.java index fbb8f559371..c9705afd089 100644 --- a/forge-gui-mobile/src/forge/toolbox/FList.java +++ b/forge-gui-mobile/src/forge/toolbox/FList.java @@ -267,6 +267,9 @@ public class FList extends FScrollPane implements Iterable { public boolean isCompactMode() { return compactMode; } + public void setCompactMode(boolean compactMode0) { + compactMode = compactMode0; + } public boolean update(float amount) { totalZoomAmount += amount; diff --git a/forge-gui/src/main/java/forge/itemmanager/ItemManagerConfig.java b/forge-gui/src/main/java/forge/itemmanager/ItemManagerConfig.java index bcd64f65121..631c93ddf63 100644 --- a/forge-gui/src/main/java/forge/itemmanager/ItemManagerConfig.java +++ b/forge-gui/src/main/java/forge/itemmanager/ItemManagerConfig.java @@ -1,7 +1,9 @@ package forge.itemmanager; import forge.itemmanager.ItemColumnConfig.SortState; +import forge.model.FModel; import forge.properties.ForgeConstants; +import forge.properties.ForgePreferences.FPref; import forge.util.XmlUtil; import java.io.FileNotFoundException; @@ -88,6 +90,7 @@ public enum ItemManagerConfig { private Prop uniqueCardsOnly; private Prop hideFilters; + private Prop compactListView; private Prop groupBy; private Prop pileBy; private Prop imageColumnCount; @@ -102,6 +105,7 @@ public enum ItemManagerConfig { uniqueCardsOnly = new Prop(uniqueCardsOnly0); hideFilters = new Prop(hideFilters0); + compactListView = new Prop(FModel.getPreferences().getPrefBoolean(FPref.UI_COMPACT_LIST_ITEMS)); //use main setting to determine default groupBy = new Prop(groupBy0); pileBy = new Prop(pileBy0); imageColumnCount = new Prop(imageColumnCount0); @@ -167,6 +171,13 @@ public enum ItemManagerConfig { hideFilters.setValue(value0); } + public boolean getCompactListView() { + return compactListView.getValue(); + } + public void setCompactListView(boolean value0) { + compactListView.setValue(value0); + } + public GroupDef getGroupBy() { return groupBy.getValue(); } @@ -210,6 +221,9 @@ public enum ItemManagerConfig { if (el.hasAttribute("hideFilters")) { config.hideFilters.value = Boolean.parseBoolean(el.getAttribute("hideFilters")); } + if (el.hasAttribute("compactListView")) { + config.compactListView.value = Boolean.parseBoolean(el.getAttribute("compactListView")); + } if (el.hasAttribute("groupBy")) { String value = el.getAttribute("groupBy"); if (value.isEmpty()) { @@ -289,6 +303,7 @@ public enum ItemManagerConfig { el.setAttribute("name", config.name()); config.uniqueCardsOnly.writeValue(el, "uniqueCardsOnly"); config.hideFilters.writeValue(el, "hideFilters"); + config.compactListView.writeValue(el, "compactListView"); config.groupBy.writeValue(el, "groupBy"); config.pileBy.writeValue(el, "pileBy"); config.imageColumnCount.writeValue(el, "imageColumnCount");