Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
colcode
jadx
提交
6844a46c
J
jadx
项目概览
colcode
/
jadx
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jadx
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
6844a46c
编写于
10月 20, 2022
作者:
S
Skylot
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix: disable HTML rendering in labels if not needed
上级
e9e45707
变更
13
隐藏空白更改
内联
并排
Showing
13 changed file
with
88 addition
and
14 deletion
+88
-14
jadx-gui/src/main/java/jadx/gui/plugins/quark/QuarkDialog.java
...gui/src/main/java/jadx/gui/plugins/quark/QuarkDialog.java
+2
-1
jadx-gui/src/main/java/jadx/gui/plugins/quark/QuarkReportPanel.java
...rc/main/java/jadx/gui/plugins/quark/QuarkReportPanel.java
+3
-2
jadx-gui/src/main/java/jadx/gui/treemodel/CodeNode.java
jadx-gui/src/main/java/jadx/gui/treemodel/CodeNode.java
+5
-0
jadx-gui/src/main/java/jadx/gui/treemodel/JField.java
jadx-gui/src/main/java/jadx/gui/treemodel/JField.java
+5
-0
jadx-gui/src/main/java/jadx/gui/treemodel/JMethod.java
jadx-gui/src/main/java/jadx/gui/treemodel/JMethod.java
+5
-0
jadx-gui/src/main/java/jadx/gui/treemodel/JNode.java
jadx-gui/src/main/java/jadx/gui/treemodel/JNode.java
+4
-0
jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java
jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java
+2
-0
jadx-gui/src/main/java/jadx/gui/ui/TabComponent.java
jadx-gui/src/main/java/jadx/gui/ui/TabComponent.java
+2
-1
jadx-gui/src/main/java/jadx/gui/ui/dialog/CommonSearchDialog.java
.../src/main/java/jadx/gui/ui/dialog/CommonSearchDialog.java
+7
-5
jadx-gui/src/main/java/jadx/gui/ui/dialog/RenameDialog.java
jadx-gui/src/main/java/jadx/gui/ui/dialog/RenameDialog.java
+2
-2
jadx-gui/src/main/java/jadx/gui/ui/dialog/UsageDialog.java
jadx-gui/src/main/java/jadx/gui/ui/dialog/UsageDialog.java
+2
-2
jadx-gui/src/main/java/jadx/gui/ui/panel/LogcatPanel.java
jadx-gui/src/main/java/jadx/gui/ui/panel/LogcatPanel.java
+2
-1
jadx-gui/src/main/java/jadx/gui/utils/ui/NodeLabel.java
jadx-gui/src/main/java/jadx/gui/utils/ui/NodeLabel.java
+47
-0
未找到文件。
jadx-gui/src/main/java/jadx/gui/plugins/quark/QuarkDialog.java
浏览文件 @
6844a46c
...
...
@@ -21,6 +21,7 @@ import org.slf4j.LoggerFactory;
import
jadx.gui.settings.JadxSettings
;
import
jadx.gui.ui.MainWindow
;
import
jadx.gui.utils.UiUtils
;
import
jadx.gui.utils.ui.NodeLabel
;
public
class
QuarkDialog
extends
JDialog
{
private
static
final
long
serialVersionUID
=
4855753773520368215L
;
...
...
@@ -59,7 +60,7 @@ public class QuarkDialog extends JDialog {
description
.
setAlignmentX
(
0.5f
);
fileSelectCombo
=
new
JComboBox
<>(
files
.
toArray
(
new
Path
[
0
]));
fileSelectCombo
.
setRenderer
((
list
,
value
,
index
,
isSelected
,
cellHasFocus
)
->
new
J
Label
(
value
.
getFileName
().
toString
()));
fileSelectCombo
.
setRenderer
((
list
,
value
,
index
,
isSelected
,
cellHasFocus
)
->
new
Node
Label
(
value
.
getFileName
().
toString
()));
JPanel
textPane
=
new
JPanel
();
textPane
.
add
(
description
);
...
...
jadx-gui/src/main/java/jadx/gui/plugins/quark/QuarkReportPanel.java
浏览文件 @
6844a46c
...
...
@@ -44,6 +44,7 @@ import jadx.gui.ui.MainWindow;
import
jadx.gui.ui.TabbedPane
;
import
jadx.gui.ui.panel.ContentPanel
;
import
jadx.gui.utils.JNodeCache
;
import
jadx.gui.utils.ui.NodeLabel
;
public
class
QuarkReportPanel
extends
ContentPanel
{
private
static
final
long
serialVersionUID
=
-
242266836695889206L
;
...
...
@@ -211,7 +212,7 @@ public class QuarkReportPanel extends ContentPanel {
@Override
public
Component
render
()
{
JLabel
label
=
new
J
Label
(((
String
)
getUserObject
()));
JLabel
label
=
new
Node
Label
(((
String
)
getUserObject
()));
label
.
setFont
(
bold
?
boldFont
:
font
);
label
.
setIcon
(
null
);
label
.
setBorder
(
BorderFactory
.
createEmptyBorder
(
5
,
5
,
5
,
5
));
...
...
@@ -320,7 +321,7 @@ public class QuarkReportPanel extends ContentPanel {
@Override
public
Component
render
()
{
JLabel
label
=
new
J
Label
(
mth
.
toString
());
JLabel
label
=
new
Node
Label
(
mth
.
toString
());
label
.
setFont
(
font
);
label
.
setIcon
(
jnode
.
getIcon
());
label
.
setBorder
(
BorderFactory
.
createEmptyBorder
(
5
,
5
,
5
,
5
));
...
...
jadx-gui/src/main/java/jadx/gui/treemodel/CodeNode.java
浏览文件 @
6844a46c
...
...
@@ -71,6 +71,11 @@ public class CodeNode extends JNode {
return
jNode
.
makeLongStringHtml
();
}
@Override
public
boolean
disableHtml
()
{
return
jNode
.
disableHtml
();
}
@Override
public
String
getSyntaxName
()
{
return
jNode
.
getSyntaxName
();
...
...
jadx-gui/src/main/java/jadx/gui/treemodel/JField.java
浏览文件 @
6844a46c
...
...
@@ -97,6 +97,11 @@ public class JField extends JNode {
return
UiUtils
.
typeStr
(
field
.
getType
())
+
" "
+
field
.
getName
();
}
@Override
public
boolean
disableHtml
()
{
return
false
;
}
@Override
public
boolean
hasDescString
()
{
return
false
;
...
...
jadx-gui/src/main/java/jadx/gui/treemodel/JMethod.java
浏览文件 @
6844a46c
...
...
@@ -155,6 +155,11 @@ public class JMethod extends JNode {
return
UiUtils
.
typeFormatHtml
(
name
,
getReturnType
());
}
@Override
public
boolean
disableHtml
()
{
return
false
;
}
@Override
public
String
makeDescString
()
{
return
UiUtils
.
typeStr
(
getReturnType
())
+
" "
+
makeBaseString
();
...
...
jadx-gui/src/main/java/jadx/gui/treemodel/JNode.java
浏览文件 @
6844a46c
...
...
@@ -81,6 +81,10 @@ public abstract class JNode extends DefaultMutableTreeNode implements Comparable
return
makeLongString
();
}
public
boolean
disableHtml
()
{
return
true
;
}
public
int
getPos
()
{
JavaNode
javaNode
=
getJavaNode
();
if
(
javaNode
==
null
)
{
...
...
jadx-gui/src/main/java/jadx/gui/ui/MainWindow.java
浏览文件 @
6844a46c
...
...
@@ -142,6 +142,7 @@ import jadx.gui.utils.UiUtils;
import
jadx.gui.utils.fileswatcher.LiveReloadWorker
;
import
jadx.gui.utils.logs.LogCollector
;
import
jadx.gui.utils.ui.ActionHandler
;
import
jadx.gui.utils.ui.NodeLabel
;
import
static
io
.
reactivex
.
internal
.
functions
.
Functions
.
EMPTY_RUNNABLE
;
import
static
javax
.
swing
.
KeyStroke
.
getKeyStroke
;
...
...
@@ -1281,6 +1282,7 @@ public class MainWindow extends JFrame {
Component
c
=
super
.
getTreeCellRendererComponent
(
tree
,
value
,
selected
,
expanded
,
isLeaf
,
row
,
focused
);
if
(
value
instanceof
JNode
)
{
JNode
jNode
=
(
JNode
)
value
;
NodeLabel
.
disableHtml
(
this
,
jNode
.
disableHtml
());
setText
(
jNode
.
makeStringHtml
());
setIcon
(
jNode
.
getIcon
());
setToolTipText
(
jNode
.
getTooltip
());
...
...
jadx-gui/src/main/java/jadx/gui/ui/TabComponent.java
浏览文件 @
6844a46c
...
...
@@ -23,6 +23,7 @@ import jadx.gui.ui.panel.ContentPanel;
import
jadx.gui.utils.Icons
;
import
jadx.gui.utils.NLS
;
import
jadx.gui.utils.UiUtils
;
import
jadx.gui.utils.ui.NodeLabel
;
public
class
TabComponent
extends
JPanel
{
private
static
final
long
serialVersionUID
=
-
8147035487543610321L
;
...
...
@@ -58,7 +59,7 @@ public class TabComponent extends JPanel {
}
else
{
tabTitle
=
node
.
makeLongStringHtml
();
}
label
=
new
JLabel
(
tabTitle
);
label
=
new
NodeLabel
(
tabTitle
,
node
.
disableHtml
()
);
label
.
setFont
(
getLabelFont
());
String
toolTip
=
contentPanel
.
getTabTooltip
();
if
(
toolTip
!=
null
)
{
...
...
jadx-gui/src/main/java/jadx/gui/ui/dialog/CommonSearchDialog.java
浏览文件 @
6844a46c
...
...
@@ -55,6 +55,7 @@ import jadx.gui.utils.JNodeCache;
import
jadx.gui.utils.JumpPosition
;
import
jadx.gui.utils.NLS
;
import
jadx.gui.utils.UiUtils
;
import
jadx.gui.utils.ui.NodeLabel
;
import
static
javax
.
swing
.
ScrollPaneConstants
.
HORIZONTAL_SCROLLBAR_AS_NEEDED
;
import
static
javax
.
swing
.
ScrollPaneConstants
.
VERTICAL_SCROLLBAR_AS_NEEDED
;
...
...
@@ -402,9 +403,9 @@ public abstract class CommonSearchDialog extends JFrame {
}
protected
final
class
ResultsTableCellRenderer
implements
TableCellRenderer
{
private
final
J
Label
label
;
private
final
Node
Label
label
;
private
final
RSyntaxTextArea
codeArea
;
private
final
J
Label
emptyLabel
;
private
final
Node
Label
emptyLabel
;
private
final
Color
codeSelectedColor
;
private
final
Color
codeBackground
;
...
...
@@ -414,11 +415,11 @@ public abstract class CommonSearchDialog extends JFrame {
codeArea
.
setRows
(
1
);
codeBackground
=
codeArea
.
getBackground
();
codeSelectedColor
=
codeArea
.
getSelectionColor
();
label
=
new
J
Label
();
label
=
new
Node
Label
();
label
.
setOpaque
(
true
);
label
.
setFont
(
codeArea
.
getFont
());
label
.
setHorizontalAlignment
(
SwingConstants
.
LEFT
);
emptyLabel
=
new
J
Label
();
emptyLabel
=
new
Node
Label
();
emptyLabel
.
setOpaque
(
true
);
}
...
...
@@ -454,8 +455,9 @@ public abstract class CommonSearchDialog extends JFrame {
private
Component
makeCell
(
JNode
node
,
int
column
)
{
if
(
column
==
0
)
{
label
.
setText
(
node
.
makeLongStringHtml
());
label
.
setToolTipText
(
label
.
getText
());
label
.
setToolTipText
(
node
.
getTooltip
());
label
.
setIcon
(
node
.
getIcon
());
label
.
disableHtml
(
node
.
disableHtml
());
return
label
;
}
if
(!
node
.
hasDescString
())
{
...
...
jadx-gui/src/main/java/jadx/gui/ui/dialog/RenameDialog.java
浏览文件 @
6844a46c
...
...
@@ -22,7 +22,6 @@ import javax.swing.JDialog;
import
javax.swing.JLabel
;
import
javax.swing.JPanel
;
import
javax.swing.JTextField
;
import
javax.swing.SwingConstants
;
import
javax.swing.WindowConstants
;
import
org.jetbrains.annotations.NotNull
;
...
...
@@ -60,6 +59,7 @@ import jadx.gui.utils.NLS;
import
jadx.gui.utils.TextStandardActions
;
import
jadx.gui.utils.UiUtils
;
import
jadx.gui.utils.ui.DocumentUpdateListener
;
import
jadx.gui.utils.ui.NodeLabel
;
public
class
RenameDialog
extends
JDialog
{
private
static
final
long
serialVersionUID
=
-
3269715644416902410L
;
...
...
@@ -313,7 +313,7 @@ public class RenameDialog extends JDialog {
private
void
initUI
()
{
JLabel
lbl
=
new
JLabel
(
NLS
.
str
(
"popup.rename"
));
JLabel
nodeLabel
=
new
JLabel
(
this
.
node
.
makeLongStringHtml
(),
this
.
node
.
getIcon
(),
SwingConstants
.
LEFT
);
JLabel
nodeLabel
=
NodeLabel
.
longName
(
node
);
lbl
.
setLabelFor
(
nodeLabel
);
renameField
=
new
JTextField
(
40
);
...
...
jadx-gui/src/main/java/jadx/gui/ui/dialog/UsageDialog.java
浏览文件 @
6844a46c
...
...
@@ -12,7 +12,6 @@ import java.util.Map;
import
javax.swing.BorderFactory
;
import
javax.swing.JLabel
;
import
javax.swing.JPanel
;
import
javax.swing.SwingConstants
;
import
javax.swing.WindowConstants
;
import
jadx.api.ICodeInfo
;
...
...
@@ -31,6 +30,7 @@ import jadx.gui.ui.MainWindow;
import
jadx.gui.utils.JNodeCache
;
import
jadx.gui.utils.NLS
;
import
jadx.gui.utils.UiUtils
;
import
jadx.gui.utils.ui.NodeLabel
;
public
class
UsageDialog
extends
CommonSearchDialog
{
private
static
final
long
serialVersionUID
=
-
5105405789969134105L
;
...
...
@@ -147,7 +147,7 @@ public class UsageDialog extends CommonSearchDialog {
Font
codeFont
=
settings
.
getFont
();
JLabel
lbl
=
new
JLabel
(
NLS
.
str
(
"usage_dialog.label"
));
lbl
.
setFont
(
codeFont
);
JLabel
nodeLabel
=
new
JLabel
(
this
.
node
.
makeLongStringHtml
(),
this
.
node
.
getIcon
(),
SwingConstants
.
LEFT
);
JLabel
nodeLabel
=
NodeLabel
.
longName
(
node
);
nodeLabel
.
setFont
(
codeFont
);
lbl
.
setLabelFor
(
nodeLabel
);
...
...
jadx-gui/src/main/java/jadx/gui/ui/panel/LogcatPanel.java
浏览文件 @
6844a46c
...
...
@@ -46,6 +46,7 @@ import jadx.gui.device.protocol.ADB;
import
jadx.gui.device.protocol.ADBDevice
;
import
jadx.gui.utils.NLS
;
import
jadx.gui.utils.UiUtils
;
import
jadx.gui.utils.ui.NodeLabel
;
public
class
LogcatPanel
extends
JPanel
{
private
static
final
Logger
LOG
=
LoggerFactory
.
getLogger
(
LogcatPanel
.
class
);
...
...
@@ -301,7 +302,7 @@ public class LogcatPanel extends JPanel {
}
public
JPanel
getContent
()
{
JLabel
label
=
new
JLabe
l
(
this
.
label
+
": "
);
JLabel
label
=
NodeLabel
.
noHtm
l
(
this
.
label
+
": "
);
CheckComboStore
[]
stores
=
new
CheckComboStore
[
ids
.
length
];
for
(
int
j
=
0
;
j
<
ids
.
length
;
j
++)
{
stores
[
j
]
=
new
CheckComboStore
(
index
[
j
],
ids
[
j
],
Boolean
.
TRUE
);
...
...
jadx-gui/src/main/java/jadx/gui/utils/ui/NodeLabel.java
0 → 100644
浏览文件 @
6844a46c
package
jadx.gui.utils.ui
;
import
javax.swing.JLabel
;
import
javax.swing.SwingConstants
;
import
jadx.gui.treemodel.JNode
;
public
class
NodeLabel
extends
JLabel
{
public
static
NodeLabel
longName
(
JNode
node
)
{
NodeLabel
label
=
new
NodeLabel
(
node
.
makeLongStringHtml
(),
node
.
disableHtml
());
label
.
setIcon
(
node
.
getIcon
());
label
.
setHorizontalAlignment
(
SwingConstants
.
LEFT
);
return
label
;
}
public
static
NodeLabel
noHtml
(
String
label
)
{
return
new
NodeLabel
(
label
,
true
);
}
public
static
void
disableHtml
(
JLabel
label
,
boolean
disable
)
{
label
.
putClientProperty
(
"html.disable"
,
disable
);
}
private
boolean
htmlDisabled
=
false
;
public
NodeLabel
()
{
disableHtml
(
true
);
}
public
NodeLabel
(
String
label
)
{
disableHtml
(
true
);
setText
(
label
);
}
public
NodeLabel
(
String
label
,
boolean
disableHtml
)
{
disableHtml
(
disableHtml
);
setText
(
label
);
}
public
void
disableHtml
(
boolean
disable
)
{
if
(
htmlDisabled
!=
disable
)
{
htmlDisabled
=
disable
;
disableHtml
(
this
,
disable
);
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录