Use new link browser in feed plugin

Use new link browser to open links from feed plugin entries.

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
This commit is contained in:
Tomas Slusny
2018-03-04 17:37:51 +01:00
parent 5bb29d32d5
commit 20f805cc1a
2 changed files with 10 additions and 22 deletions

View File

@@ -26,7 +26,6 @@ package net.runelite.client.plugins.feed;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Desktop;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.MouseAdapter;
@@ -34,8 +33,6 @@ import java.awt.event.MouseEvent;
import java.awt.font.FontRenderContext;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.time.Duration;
import java.time.Instant;
import java.util.Comparator;
@@ -52,6 +49,7 @@ import javax.swing.border.EmptyBorder;
import lombok.extern.slf4j.Slf4j;
import net.runelite.client.ui.FontManager;
import net.runelite.client.ui.PluginPanel;
import net.runelite.client.util.LinkBrowser;
import net.runelite.http.api.RuneLiteAPI;
import net.runelite.http.api.feed.FeedItem;
import net.runelite.http.api.feed.FeedItemType;
@@ -116,11 +114,13 @@ class FeedPanel extends PluginPanel
private final FeedConfig config;
private final Supplier<FeedResult> feedSupplier;
private final LinkBrowser linkBrowser;
FeedPanel(FeedConfig config, Supplier<FeedResult> feedSupplier)
FeedPanel(FeedConfig config, Supplier<FeedResult> feedSupplier, LinkBrowser linkBrowser)
{
this.config = config;
this.feedSupplier = feedSupplier;
this.linkBrowser = linkBrowser;
}
void rebuildFeed()
@@ -283,23 +283,7 @@ class FeedPanel extends PluginPanel
public void mouseReleased(MouseEvent e)
{
avatarAndRight.setBackground(hoverColor);
Desktop desktop = Desktop.getDesktop();
if (!desktop.isSupported(Desktop.Action.BROWSE))
{
log.info("Desktop browser is not supported");
return;
}
try
{
desktop.browse(new URI(item.getUrl()));
}
catch (IOException | URISyntaxException ex)
{
log.warn("Unable to open URL " + item.getUrl(), ex);
}
linkBrowser.browse(item.getUrl());
}
});

View File

@@ -42,6 +42,7 @@ import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.task.Schedule;
import net.runelite.client.ui.ClientUI;
import net.runelite.client.ui.NavigationButton;
import net.runelite.client.util.LinkBrowser;
import net.runelite.http.api.feed.FeedClient;
import net.runelite.http.api.feed.FeedResult;
@@ -61,6 +62,9 @@ public class FeedPlugin extends Plugin
@Inject
private ScheduledExecutorService executorService;
@Inject
private LinkBrowser linkBrowser;
private FeedPanel feedPanel;
private NavigationButton navButton;
@@ -81,7 +85,7 @@ public class FeedPlugin extends Plugin
@Override
protected void startUp() throws Exception
{
feedPanel = new FeedPanel(config, feedSupplier);
feedPanel = new FeedPanel(config, feedSupplier, linkBrowser);
navButton = new NavigationButton(
"News Feed",