Update active tag tab containing edited tag
Closes #6061 Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
This commit is contained in:
@@ -32,6 +32,7 @@ import com.google.common.eventbus.Subscribe;
|
|||||||
import com.google.inject.Provides;
|
import com.google.inject.Provides;
|
||||||
import java.awt.event.MouseWheelEvent;
|
import java.awt.event.MouseWheelEvent;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
@@ -256,6 +257,13 @@ public class BankTagsPlugin extends Plugin implements MouseWheelListener
|
|||||||
}
|
}
|
||||||
|
|
||||||
tagManager.setTagString(itemId, newTags);
|
tagManager.setTagString(itemId, newTags);
|
||||||
|
|
||||||
|
// Check both previous and current tags in case the tag got removed in new tags or in case
|
||||||
|
// the tag got added in new tags
|
||||||
|
final List<String> initialTags = SPLITTER.splitToList(initialValue.toLowerCase());
|
||||||
|
final List<String> tags = SPLITTER.splitToList(newTags.toLowerCase());
|
||||||
|
tabInterface.updateTabIfActive(initialTags);
|
||||||
|
tabInterface.updateTabIfActive(tags);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ import java.time.Instant;
|
|||||||
import java.time.temporal.ChronoUnit;
|
import java.time.temporal.ChronoUnit;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.Collection;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.NoSuchElementException;
|
import java.util.NoSuchElementException;
|
||||||
@@ -438,14 +439,17 @@ public class TabInterface
|
|||||||
.map(Item::getId)
|
.map(Item::getId)
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
|
|
||||||
if (activeTab != null && event.getMenuTarget() != null && Text.removeTags(event.getMenuTarget()).equals(activeTab.getTag()))
|
if (!Strings.isNullOrEmpty(event.getMenuTarget()))
|
||||||
{
|
{
|
||||||
for (Integer item : items)
|
if (activeTab != null && Text.removeTags(event.getMenuTarget()).equals(activeTab.getTag()))
|
||||||
{
|
{
|
||||||
tagManager.addTag(item, activeTab.getTag());
|
for (Integer item : items)
|
||||||
}
|
{
|
||||||
|
tagManager.addTag(item, activeTab.getTag());
|
||||||
|
}
|
||||||
|
|
||||||
openTag(TAG_SEARCH + activeTab.getTag());
|
openTag(TAG_SEARCH + activeTab.getTag());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -456,12 +460,14 @@ public class TabInterface
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
final List<String> tags = SPLITTER.splitToList(newTags);
|
final List<String> tags = SPLITTER.splitToList(newTags.toLowerCase());
|
||||||
|
|
||||||
for (Integer item : items)
|
for (Integer item : items)
|
||||||
{
|
{
|
||||||
tagManager.addTags(item, tags);
|
tagManager.addTags(item, tags);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
updateTabIfActive(tags);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -598,6 +604,14 @@ public class TabInterface
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void updateTabIfActive(final Collection<String> tags)
|
||||||
|
{
|
||||||
|
if (activeTab != null && tags.contains(activeTab.getTag()))
|
||||||
|
{
|
||||||
|
openTag(TAG_SEARCH + activeTab.getTag());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void handleDrag(boolean isDragging)
|
public void handleDrag(boolean isDragging)
|
||||||
{
|
{
|
||||||
if (isHidden())
|
if (isHidden())
|
||||||
|
|||||||
Reference in New Issue
Block a user