fix: 修复在 wayland 下 dock 无法使用的问题;

This commit is contained in:
寂静的羽夏 2025-05-18 23:58:59 +08:00
parent f299b75198
commit 2c039597f0
4 changed files with 41 additions and 29 deletions

View File

@ -410,72 +410,72 @@
<context>
<name>EditorView</name>
<message>
<location filename="../../src/control/editorview.cpp" line="82"/>
<location filename="../../src/control/editorview.cpp" line="83"/>
<source>Cut</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="84"/>
<location filename="../../src/control/editorview.cpp" line="85"/>
<source>CutHex</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="86"/>
<location filename="../../src/control/editorview.cpp" line="87"/>
<source>Copy</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="88"/>
<location filename="../../src/control/editorview.cpp" line="89"/>
<source>CopyHex</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="90"/>
<location filename="../../src/control/editorview.cpp" line="91"/>
<source>Paste</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="92"/>
<location filename="../../src/control/editorview.cpp" line="93"/>
<source>PasteHex</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="94"/>
<location filename="../../src/control/editorview.cpp" line="95"/>
<source>Delete</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="97"/>
<location filename="../../src/control/editorview.cpp" line="98"/>
<source>Find</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="99"/>
<location filename="../../src/control/editorview.cpp" line="100"/>
<source>Goto</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="101"/>
<location filename="../../src/control/editorview.cpp" line="102"/>
<source>Fill</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="103"/>
<location filename="../../src/control/editorview.cpp" line="104"/>
<source>MetaData</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="105"/>
<location filename="../../src/control/editorview.cpp" line="106"/>
<source>BookMark</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="294"/>
<location filename="../../src/control/editorview.cpp" line="295"/>
<source>Untitled</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="878"/>
<location filename="../../src/control/editorview.cpp" line="879"/>
<source>Not allowed operation in non-UI thread</source>
<translation> UI 线</translation>
</message>

View File

@ -410,72 +410,72 @@
<context>
<name>EditorView</name>
<message>
<location filename="../../src/control/editorview.cpp" line="82"/>
<location filename="../../src/control/editorview.cpp" line="83"/>
<source>Cut</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="84"/>
<location filename="../../src/control/editorview.cpp" line="85"/>
<source>CutHex</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="86"/>
<location filename="../../src/control/editorview.cpp" line="87"/>
<source>Copy</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="88"/>
<location filename="../../src/control/editorview.cpp" line="89"/>
<source>CopyHex</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="90"/>
<location filename="../../src/control/editorview.cpp" line="91"/>
<source>Paste</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="92"/>
<location filename="../../src/control/editorview.cpp" line="93"/>
<source>PasteHex</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="94"/>
<location filename="../../src/control/editorview.cpp" line="95"/>
<source>Delete</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="97"/>
<location filename="../../src/control/editorview.cpp" line="98"/>
<source>Find</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="99"/>
<location filename="../../src/control/editorview.cpp" line="100"/>
<source>Goto</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="101"/>
<location filename="../../src/control/editorview.cpp" line="102"/>
<source>Fill</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="103"/>
<location filename="../../src/control/editorview.cpp" line="104"/>
<source>MetaData</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="105"/>
<location filename="../../src/control/editorview.cpp" line="106"/>
<source>BookMark</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="294"/>
<location filename="../../src/control/editorview.cpp" line="295"/>
<source>Untitled</source>
<translation></translation>
</message>
<message>
<location filename="../../src/control/editorview.cpp" line="878"/>
<location filename="../../src/control/editorview.cpp" line="879"/>
<source>Not allowed operation in non-UI thread</source>
<translation> UI </translation>
</message>

View File

@ -20,6 +20,17 @@ int main(int argc, char *argv[]) {
QApplication::setAttribute(Qt::AA_DontCreateNativeWidgetSiblings);
#ifdef Q_OS_LINUX
// fix wayland issue (a workaround): floating dock not work
// reference:
// https://github.com/githubuser0xFFFF/Qt-Advanced-Docking-System/
// issues/714#issuecomment-2802752677
if (qgetenv("XDG_SESSION_TYPE")
.compare(QByteArrayLiteral("wayland"), Qt::CaseInsensitive) == 0) {
qputenv("QT_QPA_PLATFORM", "xcb");
}
#endif
QApplication::setApplicationName(APP_NAME);
QApplication::setOrganizationName(APP_ORG);
QApplication::setApplicationVersion(WINGHEX_VERSION);

View File

@ -63,7 +63,8 @@ EditorView::EditorView(QWidget *parent)
auto hexLayout = new QVBoxLayout(m_hexContainer);
hexLayout->setSpacing(0);
hexLayout->setContentsMargins(0, 0, 0, 0);
m_hex = new QHexView;
m_hex = new QHexView(this);
m_hex->setScaleRate(1);
hexLayout->addWidget(m_hex, 1);
m_goto = new GotoWidget(this);
connect(m_goto, &GotoWidget::jumpToLine, this,