0.7.6: via il banner del remorse dai tasti rapidi

Alla pressione Silica ri-parenta il RemorseItem dentro la fila dei tre tasti e
ci disegna sopra il banner (messaggio + conto alla rovescia) a margini fissi:
il suo riquadro non ha la larghezza del tasto, quindi copre i tasti vicini.
Il messaggio lo mostra gia' la NoticeBar, che ora ha altezza fissa a una riga e
una banda riservata sotto il contenuto in tutte e cinque le pagine.
This commit is contained in:
Carlo
2026-10-11 17:26:13 +02:00
parent 35297a0fa0
commit f4bee218bb
10 changed files with 198 additions and 168 deletions
+13 -13
View File
@@ -92,12 +92,17 @@ Page {
misura.start()
}
// Fuori dal pulsante: dentro il pulsante i figli finiscono nel contentItem.
RemorseItem { id: remorse }
// Niente RemorseItem sui tasti rapidi: Silica se lo ri-parenta dentro la
// fila dei tre tasti e ci disegna sopra il suo banner (il riquadro del
// remorse non ha la larghezza del tasto), coprendo i tasti vicini. Il
// messaggio lo dice la NoticeBar in fondo: la stessa cosa, senza rompere
// la fila. Segnalato da Carlo: "il problema c'e' quando premo un pulsante".
SilicaFlickable {
id: flick
anchors.fill: parent
// Banda riservata al messaggio in fondo: cosi' non copre il contenuto.
anchors.bottomMargin: notice.banda
contentHeight: col.height + Theme.paddingLarge
// I menu pulley stanno DENTRO la vista: come figli diretti della Page
@@ -291,14 +296,10 @@ Page {
: "../icons/quick-boost.png"
icon.width: Theme.iconSizeExtraSmall
icon.height: Theme.iconSizeExtraSmall
onClicked: remorse.execute(
boostBtn,
api.boostActive ? qsTr("Stopping DHW boost")
: qsTr("Starting DHW boost"),
function() {
api.sendCommand(api.boostActive ? "hot_water_boost_off"
: "hot_water_boost_on")
})
// Comando diretto: il messaggio lo mostra la NoticeBar in
// fondo, senza il banner del remorse sulla fila dei tasti.
onClicked: api.sendCommand(api.boostActive ? "hot_water_boost_off"
: "hot_water_boost_on")
}
Button {
@@ -314,8 +315,7 @@ Page {
icon.height: Theme.iconSizeExtraSmall
onClicked: {
if (page.raw("away_mode")) {
remorse.execute(assenzaBtn, qsTr("Away mode off"),
function() { api.sendCommand("away_mode_off") })
api.sendCommand("away_mode_off")
} else {
// L'assenza si imposta da un popup con le date
// (richiesta dell'utente): si apre qui e il comando
@@ -373,7 +373,7 @@ Page {
}
}
NoticeBar { }
NoticeBar { id: notice }
// La disposizione non e' definitiva subito: si misura un secondo dopo.
// Questa e' la riga da leggere alla prima build sul telefono: la Home deve