forked from Shinonome/dots-hyprland
hyprland xkb layout indicator: fix weird placement on vertical bar
This commit is contained in:
@@ -293,11 +293,17 @@ Item { // Bar content region
|
|||||||
active: HyprlandXkb.layoutCodes.length > 1
|
active: HyprlandXkb.layoutCodes.length > 1
|
||||||
visible: active
|
visible: active
|
||||||
Layout.rightMargin: indicatorsRowLayout.realSpacing
|
Layout.rightMargin: indicatorsRowLayout.realSpacing
|
||||||
sourceComponent: StyledText {
|
sourceComponent: Item {
|
||||||
text: HyprlandXkb.currentLayoutCode
|
implicitWidth: layoutCodeText.implicitWidth
|
||||||
font.pixelSize: Appearance.font.pixelSize.small
|
StyledText {
|
||||||
color: rightSidebarButton.colText
|
id: layoutCodeText
|
||||||
animateChange: true
|
anchors.centerIn: parent
|
||||||
|
horizontalAlignment: Text.AlignHCenter
|
||||||
|
text: HyprlandXkb.currentLayoutCode.split(":").join("\n")
|
||||||
|
font.pixelSize: text.includes("\n") ? Appearance.font.pixelSize.smaller : Appearance.font.pixelSize.small
|
||||||
|
color: rightSidebarButton.colText
|
||||||
|
animateChange: true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
MaterialSymbol {
|
MaterialSymbol {
|
||||||
|
|||||||
@@ -273,11 +273,18 @@ Item { // Bar content region
|
|||||||
active: HyprlandXkb.layoutCodes.length > 1
|
active: HyprlandXkb.layoutCodes.length > 1
|
||||||
visible: active
|
visible: active
|
||||||
Layout.bottomMargin: indicatorsColumnLayout.realSpacing
|
Layout.bottomMargin: indicatorsColumnLayout.realSpacing
|
||||||
sourceComponent: StyledText {
|
Layout.alignment: Qt.AlignHCenter
|
||||||
text: HyprlandXkb.currentLayoutCode
|
sourceComponent: Item {
|
||||||
font.pixelSize: Appearance.font.pixelSize.small
|
implicitHeight: layoutCodeText.implicitHeight
|
||||||
color: rightSidebarButton.colText
|
StyledText {
|
||||||
animateChange: true
|
id: layoutCodeText
|
||||||
|
anchors.centerIn: parent
|
||||||
|
horizontalAlignment: Text.AlignHCenter
|
||||||
|
text: HyprlandXkb.currentLayoutCode.split(":").join("\n")
|
||||||
|
font.pixelSize: text.includes("\n") ? Appearance.font.pixelSize.smaller : Appearance.font.pixelSize.small
|
||||||
|
color: rightSidebarButton.colText
|
||||||
|
animateChange: true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
MaterialSymbol {
|
MaterialSymbol {
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ Singleton {
|
|||||||
// Match variant: (whitespace + ) variant + whitespace + key + whitespace + description
|
// Match variant: (whitespace + ) variant + whitespace + key + whitespace + description
|
||||||
const matchVariant = line.match(/^\s*(\S+)\s+(\S+)\s+(.+)$/);
|
const matchVariant = line.match(/^\s*(\S+)\s+(\S+)\s+(.+)$/);
|
||||||
if (matchVariant && matchVariant[3] === targetDescription) {
|
if (matchVariant && matchVariant[3] === targetDescription) {
|
||||||
const complexLayout = matchVariant[2] + " " + matchVariant[1];
|
const complexLayout = matchVariant[2] + matchVariant[1];
|
||||||
root.cachedLayoutCodes[matchVariant[3]] = complexLayout;
|
root.cachedLayoutCodes[matchVariant[3]] = complexLayout;
|
||||||
root.currentLayoutCode = complexLayout;
|
root.currentLayoutCode = complexLayout;
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
Reference in New Issue
Block a user