Compare commits

..

2 commits

3 changed files with 13 additions and 1 deletions

View file

@ -1,6 +1,7 @@
{
lib,
craneLib,
mold,
pkg-config,
qt6,
writeShellScript,
@ -67,6 +68,7 @@ let
nativeBuildInputs = [
pkg-config
mold
qt6.qtbase
qt6.qtdeclarative
];
@ -79,8 +81,12 @@ let
# qt6.qtbase's setup hook overrides QMAKE after derivation attrs are set,
# so re-assert it in preBuild which runs after all setup hooks.
# Force mold as the linker (cxx-qt book deprecates ld.gold). Setting via
# CARGO_TARGET_*_LINKER + RUSTFLAGS is the only path that survives nixpkgs'
# cc-wrapper - `-fuse-ld=` from build.rs gets eaten by the wrapper.
preBuild = ''
export QMAKE=${qmakeWrapper}
export RUSTFLAGS="-C link-arg=-fuse-ld=mold ''${RUSTFLAGS:-}"
'';
};

View file

@ -11,8 +11,13 @@ PanelWindow {
visible: _winVisible
color: "transparent"
// Mirror of `screen` captured at construction. Reading `root.screen`
// directly in `_shown` couples it to visibility transitions (PanelWindow
// re-evaluates `screen` when mapped/unmapped), which feeds back into
// `_shown` via `_winVisible` and trips a binding loop.
property var assignedScreen: null
property bool _winVisible: false
property bool _shown: M.TooltipState.visible && M.TooltipState.screen === root.screen
property bool _shown: M.TooltipState.visible && M.TooltipState.screen === assignedScreen
on_ShownChanged: {
if (_shown) {

View file

@ -33,6 +33,7 @@ ShellRoot {
Tooltip {
screen: scope.modelData
assignedScreen: scope.modelData
}
LazyLoader {