mirror of
https://github.com/home-assistant/frontend.git
synced 2025-07-25 02:06:42 +00:00
Covers - Removed disable buttons (#356)
* Removed disable buttons Allow commands being send even if cover is open or closed. Important for cover template when using multiple covers or in end positions when cover registered as open/closed but isn't due to tolerance. * Option to always enable buttons with assume_state * Option to always enable buttons with assume_state * Fix errors * Update ha-cover-controls.html * Update ha-cover-tilt-controls.html * Added Functions I couldn't test the ones for the tilt covers, but they should be fine. * Update cover-model.html * Compute button disable in component * Minor fixes
This commit is contained in:
parent
1aa387a72f
commit
8787304ed4
@ -17,12 +17,12 @@
|
|||||||
<div class='state'>
|
<div class='state'>
|
||||||
<paper-icon-button icon="mdi:arrow-up" on-tap='onOpenTap'
|
<paper-icon-button icon="mdi:arrow-up" on-tap='onOpenTap'
|
||||||
invisible$='[[!entityObj.supportsOpen]]'
|
invisible$='[[!entityObj.supportsOpen]]'
|
||||||
disabled='[[entityObj.isFullyOpen]]'></paper-icon-button>
|
disabled='[[computeOpenDisabled(stateObj, entityObj)]]'></paper-icon-button>
|
||||||
<paper-icon-button icon="mdi:stop" on-tap='onStopTap'
|
<paper-icon-button icon="mdi:stop" on-tap='onStopTap'
|
||||||
invisible$='[[!entityObj.supportsStop]]'></paper-icon-button>
|
invisible$='[[!entityObj.supportsStop]]'></paper-icon-button>
|
||||||
<paper-icon-button icon="mdi:arrow-down" on-tap='onCloseTap'
|
<paper-icon-button icon="mdi:arrow-down" on-tap='onCloseTap'
|
||||||
invisible$='[[!entityObj.supportsClose]]'
|
invisible$='[[!entityObj.supportsClose]]'
|
||||||
disabled='[[entityObj.isFullyClosed]]'></paper-icon-button>
|
disabled='[[computeClosedDisabled(stateObj, entityObj)]]'></paper-icon-button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</dom-module>
|
</dom-module>
|
||||||
@ -45,6 +45,14 @@ Polymer({
|
|||||||
computeEntityObj: function (hass, stateObj) {
|
computeEntityObj: function (hass, stateObj) {
|
||||||
return new window.CoverEntity(hass, stateObj);
|
return new window.CoverEntity(hass, stateObj);
|
||||||
},
|
},
|
||||||
|
computeOpenDisabled: function (stateObj, entityObj) {
|
||||||
|
var assumedState = stateObj.attributes.assumed_state === true;
|
||||||
|
return entityObj.isFullyOpen && !assumedState;
|
||||||
|
},
|
||||||
|
computeClosedDisabled: function (stateObj, entityObj) {
|
||||||
|
var assumedState = (stateObj.attributes.assumed_state === true);
|
||||||
|
return entityObj.isFullyClosed && !assumedState;
|
||||||
|
},
|
||||||
onOpenTap: function (ev) {
|
onOpenTap: function (ev) {
|
||||||
ev.stopPropagation();
|
ev.stopPropagation();
|
||||||
this.entityObj.openCover();
|
this.entityObj.openCover();
|
||||||
|
@ -13,7 +13,6 @@
|
|||||||
:host {
|
:host {
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
[invisible] {
|
[invisible] {
|
||||||
visibility: hidden !important;
|
visibility: hidden !important;
|
||||||
}
|
}
|
||||||
@ -21,51 +20,51 @@
|
|||||||
<paper-icon-button icon="mdi:arrow-top-right"
|
<paper-icon-button icon="mdi:arrow-top-right"
|
||||||
on-tap='onOpenTiltTap' title='Open tilt'
|
on-tap='onOpenTiltTap' title='Open tilt'
|
||||||
invisible$='[[!entityObj.supportsOpenTilt]]'
|
invisible$='[[!entityObj.supportsOpenTilt]]'
|
||||||
disabled='[[entityObj.isFullyOpenTilt]]'></paper-icon-button>
|
disabled='[[computeOpenDisabled(stateObj, entityObj)]]'></paper-icon-button>
|
||||||
<paper-icon-button icon="mdi:stop" on-tap='onStopTiltTap'
|
<paper-icon-button icon="mdi:stop" on-tap='onStopTiltTap'
|
||||||
invisible$='[[!entityObj.supportsStopTilt]]'
|
invisible$='[[!entityObj.supportsStopTilt]]'
|
||||||
title='Stop tilt'></paper-icon-button>
|
title='Stop tilt'></paper-icon-button>
|
||||||
<paper-icon-button icon="mdi:arrow-bottom-left"
|
<paper-icon-button icon="mdi:arrow-bottom-left"
|
||||||
on-tap='onCloseTiltTap' title='Close tilt'
|
on-tap='onCloseTiltTap' title='Close tilt'
|
||||||
invisible$='[[!entityObj.supportsCloseTilt]]'
|
invisible$='[[!entityObj.supportsCloseTilt]]'
|
||||||
disabled='[[entityObj.isFullyClosedTilt]]'></paper-icon-button>
|
disabled='[[computeClosedDisabled(stateObj, entityObj)]]'></paper-icon-button>
|
||||||
</template>
|
</template>
|
||||||
</dom-module>
|
</dom-module>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
Polymer({
|
Polymer({
|
||||||
is: 'ha-cover-tilt-controls',
|
is: 'ha-cover-tilt-controls',
|
||||||
|
|
||||||
properties: {
|
properties: {
|
||||||
hass: {
|
hass: {
|
||||||
type: Object,
|
type: Object,
|
||||||
},
|
},
|
||||||
|
|
||||||
stateObj: {
|
stateObj: {
|
||||||
type: Object,
|
type: Object,
|
||||||
},
|
},
|
||||||
|
|
||||||
entityObj: {
|
entityObj: {
|
||||||
type: Object,
|
type: Object,
|
||||||
computed: 'computeEntityObj(hass, stateObj)',
|
computed: 'computeEntityObj(hass, stateObj)',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
computeEntityObj: function (hass, stateObj) {
|
computeEntityObj: function (hass, stateObj) {
|
||||||
var entity = new window.CoverEntity(hass, stateObj);
|
return new window.CoverEntity(hass, stateObj);
|
||||||
return entity;
|
},
|
||||||
|
computeOpenDisabled: function (stateObj, entityObj) {
|
||||||
|
var assumedState = stateObj.attributes.assumed_state === true;
|
||||||
|
return entityObj.isFullyOpenTilt && !assumedState;
|
||||||
|
},
|
||||||
|
computeClosedDisabled: function (stateObj, entityObj) {
|
||||||
|
var assumedState = (stateObj.attributes.assumed_state === true);
|
||||||
|
return entityObj.isFullyClosedTilt && !assumedState;
|
||||||
},
|
},
|
||||||
|
|
||||||
onOpenTiltTap: function (ev) {
|
onOpenTiltTap: function (ev) {
|
||||||
ev.stopPropagation();
|
ev.stopPropagation();
|
||||||
this.entityObj.openCoverTilt();
|
this.entityObj.openCoverTilt();
|
||||||
},
|
},
|
||||||
|
|
||||||
onCloseTiltTap: function (ev) {
|
onCloseTiltTap: function (ev) {
|
||||||
ev.stopPropagation();
|
ev.stopPropagation();
|
||||||
this.entityObj.closeCoverTilt();
|
this.entityObj.closeCoverTilt();
|
||||||
},
|
},
|
||||||
|
|
||||||
onStopTiltTap: function (ev) {
|
onStopTiltTap: function (ev) {
|
||||||
ev.stopPropagation();
|
ev.stopPropagation();
|
||||||
this.entityObj.stopCoverTilt();
|
this.entityObj.stopCoverTilt();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user