Merge pull request #706 from devLotto/widget-ishidden-fix
Fix Widget#isHidden returning incorrect state
This commit is contained in:
@@ -41,6 +41,7 @@ public class InventoryWidgetItemQuery extends WidgetItemQuery
|
||||
WidgetInfo.DEPOSIT_BOX_INVENTORY_ITEMS_CONTAINER,
|
||||
WidgetInfo.BANK_INVENTORY_ITEMS_CONTAINER,
|
||||
WidgetInfo.SHOP_INVENTORY_ITEMS_CONTAINER,
|
||||
WidgetInfo.GRAND_EXCHANGE_INVENTORY_ITEMS_CONTAINER,
|
||||
WidgetInfo.INVENTORY
|
||||
};
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@ public class WidgetID
|
||||
public static final int LOGOUT_PANEL_ID = 182;
|
||||
public static final int BANK_GROUP_ID = 12;
|
||||
public static final int BANK_INVENTORY_GROUP_ID = 15;
|
||||
public static final int GRAND_EXCHANGE_INVENTORY_GROUP_ID = 467;
|
||||
public static final int DEPOSIT_BOX_GROUP_ID = 192;
|
||||
public static final int INVENTORY_GROUP_ID = 149;
|
||||
public static final int EQUIPMENT_GROUP_ID = 387;
|
||||
@@ -127,6 +128,11 @@ public class WidgetID
|
||||
static final int INVENTORY_ITEM_CONTAINER = 3;
|
||||
}
|
||||
|
||||
static class GrandExchange
|
||||
{
|
||||
static final int INVENTORY_ITEM_CONTAINER = 0;
|
||||
}
|
||||
|
||||
static class DepositBox
|
||||
{
|
||||
static final int INVENTORY_ITEM_CONTAINER = 2;
|
||||
|
||||
@@ -86,6 +86,9 @@ public enum WidgetInfo
|
||||
|
||||
BANK_ITEM_CONTAINER(WidgetID.BANK_GROUP_ID, WidgetID.Bank.ITEM_CONTAINER),
|
||||
BANK_INVENTORY_ITEMS_CONTAINER(WidgetID.BANK_INVENTORY_GROUP_ID, WidgetID.Bank.INVENTORY_ITEM_CONTAINER),
|
||||
|
||||
GRAND_EXCHANGE_INVENTORY_ITEMS_CONTAINER(WidgetID.GRAND_EXCHANGE_INVENTORY_GROUP_ID, WidgetID.GrandExchange.INVENTORY_ITEM_CONTAINER),
|
||||
|
||||
DEPOSIT_BOX_INVENTORY_ITEMS_CONTAINER(WidgetID.DEPOSIT_BOX_GROUP_ID, WidgetID.DepositBox.INVENTORY_ITEM_CONTAINER),
|
||||
|
||||
SHOP_ITEMS_CONTAINER(WidgetID.SHOP_GROUP_ID, WidgetID.Shop.ITEMS_CONTAINER),
|
||||
|
||||
@@ -117,7 +117,23 @@ public abstract class RSWidgetMixin implements RSWidget
|
||||
public boolean isHidden()
|
||||
{
|
||||
Widget parent = getParent();
|
||||
return (parent != null && parent.isHidden()) || isRSHidden();
|
||||
|
||||
if (parent == null)
|
||||
{
|
||||
if (TO_GROUP(getId()) != client.getWidgetRoot())
|
||||
{
|
||||
// Widget has no parent and is not the root widget (which is always visible),
|
||||
// so it's not visible.
|
||||
return true;
|
||||
}
|
||||
}
|
||||
else if (parent.isHidden())
|
||||
{
|
||||
// If the parent is hidden, this widget is also hidden.
|
||||
return true;
|
||||
}
|
||||
|
||||
return isRSHidden();
|
||||
}
|
||||
|
||||
@Inject
|
||||
|
||||
Reference in New Issue
Block a user