Handling taps on entity name and state for glance card
This commit is contained in:
parent
d9ca55c3b7
commit
438449cad8
@ -24,10 +24,48 @@ class EntityName extends StatelessWidget {
|
|||||||
textAlign: textAlign,
|
textAlign: textAlign,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
onTap: () =>
|
onLongPress: () {
|
||||||
entityModel.handleTap
|
if (entityModel.handleTap) {
|
||||||
? eventBus.fire(new ShowEntityPageEvent(entityModel.entityWrapper.entity))
|
switch (entityModel.entityWrapper.holdAction) {
|
||||||
: null,
|
case EntityTapAction.toggle: {
|
||||||
|
eventBus.fire(
|
||||||
|
ServiceCallEvent("homeassistant", "toggle", entityModel.entityWrapper.entity.entityId, null));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
default: {
|
||||||
|
eventBus.fire(
|
||||||
|
new ShowEntityPageEvent(entityModel.entityWrapper.entity));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onTap: () {
|
||||||
|
if (entityModel.handleTap) {
|
||||||
|
switch (entityModel.entityWrapper.tapAction) {
|
||||||
|
case EntityTapAction.toggle: {
|
||||||
|
eventBus.fire(
|
||||||
|
ServiceCallEvent("homeassistant", "toggle", entityModel.entityWrapper.entity.entityId, null));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case EntityTapAction.callService: {
|
||||||
|
eventBus.fire(
|
||||||
|
ServiceCallEvent(entityModel.entityWrapper.actionService.split(".")[0], entityModel.entityWrapper.actionService.split(".")[1], null, entityModel.entityWrapper.actionServiceData));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
default: {
|
||||||
|
eventBus.fire(
|
||||||
|
new ShowEntityPageEvent(entityModel.entityWrapper.entity));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -23,9 +23,48 @@ class SimpleEntityState extends StatelessWidget {
|
|||||||
style: new TextStyle(
|
style: new TextStyle(
|
||||||
fontSize: Sizes.stateFontSize,
|
fontSize: Sizes.stateFontSize,
|
||||||
)),
|
)),
|
||||||
onTap: () => entityModel.handleTap
|
onLongPress: () {
|
||||||
? eventBus.fire(new ShowEntityPageEvent(entityModel.entityWrapper.entity))
|
if (entityModel.handleTap) {
|
||||||
: null,
|
switch (entityModel.entityWrapper.holdAction) {
|
||||||
|
case EntityTapAction.toggle: {
|
||||||
|
eventBus.fire(
|
||||||
|
ServiceCallEvent("homeassistant", "toggle", entityModel.entityWrapper.entity.entityId, null));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
default: {
|
||||||
|
eventBus.fire(
|
||||||
|
new ShowEntityPageEvent(entityModel.entityWrapper.entity));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onTap: () {
|
||||||
|
if (entityModel.handleTap) {
|
||||||
|
switch (entityModel.entityWrapper.tapAction) {
|
||||||
|
case EntityTapAction.toggle: {
|
||||||
|
eventBus.fire(
|
||||||
|
ServiceCallEvent("homeassistant", "toggle", entityModel.entityWrapper.entity.entityId, null));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case EntityTapAction.callService: {
|
||||||
|
eventBus.fire(
|
||||||
|
ServiceCallEvent(entityModel.entityWrapper.actionService.split(".")[0], entityModel.entityWrapper.actionService.split(".")[1], null, entityModel.entityWrapper.actionServiceData));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
default: {
|
||||||
|
eventBus.fire(
|
||||||
|
new ShowEntityPageEvent(entityModel.entityWrapper.entity));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
if (expanded) {
|
if (expanded) {
|
||||||
|
Reference in New Issue
Block a user