Closed xiayesuifeng closed 3 years ago
我這邊只有暫時的解決方法,但也不是所有 Qt 程序都會套用,所以還是要等官方解決這個 BUG,不過看來是遙遙無期了
qt5-styleplugins-git
,但記得每次 Qt5 有更新時要重新 build,要不然會出錯,如果是用 antergos 這個發行版記得不要用他提供的 qt5-styleplugins
,因為都沒在更新的,桌面會掛掉。/etc/environment
,在最後一行加入 QT_STYLE_OVERRIDE=gtk2
之後只要調整完字體大小後重新登入應該就會有效果了,目前知道使用 qt5-styleplugin-git
也沒效果的地方有以下幾個:
dock 上面 app 的右鍵選單(譬如在 deepin-file-manager 圖示上按右鍵)
提示視窗,例如:
和 Firefox 和 pamac 比較可發現字體大小的差距
目前能够保证的是Gtk程序实时生效,Qt程序重启后生效;
@hualet
如果沒安裝 qt5-styleplugins-git 並設定 /etc/environment 的話是不會生效的,而且用了也不是所有地方都會套用,這是重新登入好幾次的結果(反覆測試了幾個月都一樣): 不曉得是哪個環節有問題,所以我把我有安裝的套件的版本貼上來
名稱 : deepin-qt5integration
版本 : 0.2.2-1
描述 : Deepin Qt5 platform plugin
硬體架構 : x86_64
URL : http://github.com/linuxdeepin/qt5integration
軟體授權 : GPL3
群組 : deepin
它提供 : 無
它依賴 : deepin-tool-kit libqtxdg gtk2
可選依賴 : 無
需要它 : deepin-control-center deepin-dock
為這些軟體包的可選依賴 : 無
與它衝突 : qt5dxcb-plugin
它會取代 : qt5dxcb-plugin
安裝後大小 : 1151.00 KiB
打包者 : Felix Yan <felixonmars@archlinux.org>
建置日期 : 西元2017年07月28日 (週五) 22時33分41秒
安裝日期 : 西元2017年07月29日 (週六) 00時15分27秒
安裝原因 : 單獨指定安裝
安裝指令稿 : 否
驗證者 : SHA-256 總和碼
名稱 : deepin-gtk-theme
版本 : 17.10.3-1
描述 : Deepin GTK Theme
硬體架構 : any
URL : https://github.com/linuxdeepin/deepin-gtk-theme
軟體授權 : LGPL3
群組 : deepin
它提供 : 無
它依賴 : 無
可選依賴 : gtk-engine-murrine: for gtk2 themes
需要它 : deepin-desktop-schemas
為這些軟體包的可選依賴 : 無
與它衝突 : 無
它會取代 : 無
安裝後大小 : 3.40 MiB
打包者 : Felix Yan <felixonmars@archlinux.org>
建置日期 : 西元2017年06月27日 (週二) 12時58分05秒
安裝日期 : 西元2017年06月27日 (週二) 21時31分15秒
安裝原因 : 單獨指定安裝
安裝指令稿 : 否
驗證者 : SHA-256 總和碼
@hualet 这个问题存在很久了,而且昨天撸了个环境变量管理器,然后我发现了个变量 这个变量的值是空的,是不是跟这个有关
@1377195627 QT_QPA_PLATFORM 这个环境变量不用设置,deepin的应用程序一般默认为 dxcb
@zccrs 我没设置这货,这货在启动qt程序的时候自己冒出来的,终端env压根就没这变量
使用 FastHub 从我的 Nubia NX563J 发送
@zccrs 我理解这个问题是因为
如果 2 能解决,我可以试试去开倒车把 qt5-styleplugins 打回来……
@felixonmars 给qt设置gtk2主题?这貌似需要装一个啥gtk引擎才行,包名忘了,以前折腾qt5ct的时候给qt设置gtk主题就是要装一个包才行,不然qt没法直接用
使用 FastHub 从我的 Nubia NX563J 发送
@1377195627 请看我刚才说的第一点……
@felixonmars 额,,,,不是说能解决第2点就行了吗,
使用 FastHub 从我的 Nubia NX563J 发送
请稍微看仔细一点认真一点…
@felixonmars 设置环境变量 QT_QPA_PLATFORMTHEME 为 gtk2 呢?
@zccrs 可以的,设置 QT_STYLE_OVERRIDE 也可以。
@zccrs @felixonmars 但我 QT_QPA_PLATFORMTHEME 和 QT_STYLE_OVERRIDE 都設置後某些程序還是不會套用耶,就如同上面我貼的
@JulianLai QT_QPA....设置成dxcb试试
使用 FastHub 从我的 Nubia NX563J 发送
@JulianLai 比如哪些程序?
@zccrs
dock 上面 app 的右鍵選單(譬如在 deepin-file-manager 圖示上按右鍵)
提示視窗,例如: 字體還是一樣小
上面这些跟程序不响应控制中心字体大小设置不是一回事,这些是因为字体大小写死了; 在DDE里,QT程序的platformtheme应该会自动切到deepin提供的platformtheme(进而设置了gtk2为默认的style)才对;感觉跟上面哪个QT_QPAT_PLATFORMTHEME环境变量被清空有关?
设置 QT_QPA_PLATFORMTHEME=deepin 也不能正确显示主题,只能设置成 QT_QPA_PLATFORMTHEME=gtk2。看来问题出在 deepin 提供的 platformtheme 没有设置 style 为 gtk2?
顺着这个思路找到问题了,qt5integration 代码中用的是 Qt 5.6 及以前版本的老 style 名 "GTK+",新的 qt5-styleplugins 中的 gtk2 主题名叫 "gtk2",所以设置失败了。
补丁已提交:https://cr.deepin.io/25147
Arch 包已经在 deepin-qt5integration 0.2.2-2 中临时 workaround。
@felixonmars 請問 qt5-styleplugins 變成必要的包了嗎?我發現嘗試移除他會把控制中心也刪掉
@JulianLai 对,加到 qt5integration 的直接依赖了,因为代码里直接用到了……
@felixonmars is it fixed?
已经把几个字体大小写死的地方改了,应该大部分地方都没有问题了(除了launcher)
@hualet 還有這邊 和這邊
@JulianLai 是这俩对话框把字号写死了
又發生類似狀況了
Sorry, this issue will be closed soon. If it is necessary to discuss it again, please create a new issue.
arch下qt程序的字体大小死活改不了,只能改gtk程序的