未验证 提交 dc73fc92 编写于 作者: S Skylot

fix(gui): don't use hardcoded color for link component (#1398)

上级 592215db
package jadx.gui.utils;
import java.awt.Color;
import java.awt.Cursor;
import java.awt.Desktop;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.Map;
import javax.swing.JLabel;
......@@ -16,7 +15,7 @@ import org.slf4j.LoggerFactory;
import static java.awt.Desktop.Action;
public class Link extends JLabel implements MouseListener {
public class Link extends JLabel {
private static final long serialVersionUID = 3655322136444908178L;
private static final Logger LOG = LoggerFactory.getLogger(Link.class);
......@@ -26,34 +25,15 @@ public class Link extends JLabel implements MouseListener {
public Link(String text, String url) {
super(text);
this.url = url;
this.setToolTipText("Open " + url + " in your browser");
this.addMouseListener(this);
this.setForeground(Color.BLUE);
}
@Override
public void mouseClicked(MouseEvent arg0) {
browse();
}
@Override
public void mouseEntered(MouseEvent arg0) {
setCursor(new Cursor(Cursor.HAND_CURSOR));
}
@Override
public void mouseExited(MouseEvent arg0) {
setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
}
@Override
public void mousePressed(MouseEvent arg0) {
// ignore
}
@Override
public void mouseReleased(MouseEvent arg0) {
// ignore
setText(text);
setToolTipText("Open " + url + " in your browser");
setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
this.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
browse();
}
});
}
private void browse() {
......@@ -69,14 +49,13 @@ public class Link extends JLabel implements MouseListener {
}
}
try {
String os = System.getProperty("os.name").toLowerCase();
if (os.contains("win")) {
if (SystemInfo.IS_WINDOWS) {
new ProcessBuilder()
.command(new String[] { "rundll32", "url.dll,FileProtocolHandler", url })
.start();
return;
}
if (os.contains("mac")) {
if (SystemInfo.IS_MAC) {
new ProcessBuilder()
.command(new String[] { "open", url })
.start();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册