Compare commits

..

1 Commits

Author SHA1 Message Date
Johannes
aadebf801a added default card after screensaver exit 2022-04-03 11:28:11 +02:00
4 changed files with 41 additions and 32 deletions

View File

@@ -132,83 +132,83 @@ The following message can be used to update the content on the cardEntities Page
## Messages from Nextion Display
`event~buttonPress2~pageName~bNext`
`event,buttonPress2,pageName,bNext`
`event~buttonPress2~pageName~bPrev`
`event,buttonPress2,pageName,bPrev`
`event~buttonPress2~pageName~bExit~number_of_taps`
`event,buttonPress2,pageName,bExit,number_of_taps`
`event~buttonPress2~pageName~sleepReached`
`event,buttonPress2,pageName,sleepReached`
### startup page
`event~startup~version~model`
`event,startup,version,model`
### screensaver page
`event~buttonPress2~screensaver~exit` - Touch Event on Screensaver
`event,buttonPress2,screensaver,exit` - Touch Event on Screensaver
`event~screensaverOpen` - Screensaver has opened
`event,screensaverOpen` - Screensaver has opened
### cardEntities Page
`event~*eventName*~*entityName*~*actionName*~*optionalValue*`
`event,*eventName*,*entityName*,*actionName*,*optionalValue*`
`event~buttonPress2~internalNameEntity~up`
`event,buttonPress2,internalNameEntity,up`
`event~buttonPress2~internalNameEntity~down`
`event,buttonPress2,internalNameEntity,down`
`event~buttonPress2~internalNameEntity~stop`
`event,buttonPress2,internalNameEntity,stop`
`event~buttonPress2~internalNameEntity~OnOff~1`
`event,buttonPress2,internalNameEntity,OnOff,1`
`event~buttonPress2~internalNameEntity~button`
`event,buttonPress2,internalNameEntity,button`
### popupLight Page
`event~pageOpenDetail~popupLight~internalNameEntity`
`event,pageOpenDetail,popupLight,internalNameEntity`
`event~buttonPress2~internalNameEntity~OnOff~1`
`event,buttonPress2,internalNameEntity,OnOff,1`
`event~buttonPress2~internalNameEntity~brightnessSlider~50`
`event,buttonPress2,internalNameEntity,brightnessSlider,50`
`event~buttonPress2~internalNameEntity~colorTempSlider~50`
`event,buttonPress2,internalNameEntity,colorTempSlider,50`
`event~buttonPress2~internalNameEntity~colorWheel~x|y`
`event,buttonPress2,internalNameEntity,colorWheel,x|y`
### popupShutter Page
`event~pageOpenDetail~popupShutter~internalNameEntity`
`event,pageOpenDetail,popupShutter,internalNameEntity`
`event~buttonPress2~internalNameEntity~positionSlider~50`
`event,buttonPress2,internalNameEntity,positionSlider,50`
### popupNotify Page
`event~buttonPress2~*internalName*~notifyAction~yes`
`event,buttonPress2,*internalName*,notifyAction,yes`
`event~buttonPress2~*internalName*~notifyAction~no`
`event,buttonPress2,*internalName*,notifyAction,no`
### cardThermo Page
`event~buttonPress2~*entityName*~tempUpd~*temperature*`
`event,buttonPress2,*entityName*,tempUpd,*temperature*`
`event~buttonPress2~*entityName*~hvac_action~*hvac_action*`
`event,buttonPress2,*entityName*,hvac_action,*hvac_action*`
### cardMedia Page
`event~buttonPress2~internalNameEntity~media-back`
`event,buttonPress2,internalNameEntity,media-back`
`event~buttonPress2~internalNameEntity~media-pause`
`event,buttonPress2,internalNameEntity,media-pause`
`event~buttonPress2~internalNameEntity~media-next`
`event,buttonPress2,internalNameEntity,media-next`
`event~buttonPress2~internalNameEntity~volumeSlider~75`
`event,buttonPress2,internalNameEntity,volumeSlider,75`
### cardAlarm Page
`event~buttonPress2~internalNameEntity~actionName~code`
`event,buttonPress2,internalNameEntity,actionName,code`
# Icons IDs
@@ -218,7 +218,7 @@ Please see Icon's int the [icons.md file](icons.md)
# Design Guidelines for Nextion HMI Project
Background Color is
- RGB565: 6371 [18e3] (HEX: #1C1C1C~ RGB: 28~28~28)
- RGB565: 6371 [18e3] (HEX: #1C1C1C, RGB: 28,28,28)
Source for Icons is the Material Design Font~ used by HASPone
Source for Icons is the Material Design Font, used by HASPone
https://github.com/HASwitchPlate/HASPone

View File

@@ -371,6 +371,7 @@ key | optional | type | default | description
`weatherOverrideForecast4` | True | complex | `None` | sensor entity from home assistant here to override the forth weather forecast item on the screensaver
`doubleTapToUnlock` | True | boolean | `False` | requires to tap screensaver two times
`alternativeLayout` | True | boolean | `False` | alternative layout with humidity
`defaultCard` | True | string | `None` | default page after exiting screensaver; only works with top level cards defined in cards
`key` | True | string | `None` | Used by navigate items
Example for the weatherOverride config options:

View File

@@ -84,7 +84,8 @@ class LuiBackendConfig(object):
'weatherOverrideForecast3': None,
'weatherOverrideForecast4': None,
'doubleTapToUnlock': False,
'alternativeLayout': False
'alternativeLayout': False,
'defaultCard': None
},
'hiddenCards': []
}

View File

@@ -133,6 +133,13 @@ class LuiController(object):
LOGGER.info(f"Button Press Event; entity_id: {entity_id}; button_type: {button_type}; value: {value} ")
# internal buttons
if entity_id == "screensaver" and button_type == "bExit":
# get default card if there is one
if self._config.get("screensaver.defaultCard") is not None:
dstCard = self._config.searchCard(self._config.get("screensaver.defaultCard"))
if dstCard is not None:
self._previous_cards = []
self._current_card = dstCard
# check for duouble tap if configured and render current page
if self._config.get("doubleTapToUnlock") and int(value) >= 2:
self._pages_gen.render_card(self._current_card)
elif not self._config.get("doubleTapToUnlock"):