mirror of
https://github.com/basnijholt/adaptive-lighting.git
synced 2026-09-13 23:34:04 +02:00
Squashed commit of the following:
commit1ddae7ac48Merge:0a4c7eda888afdAuthor: Benjamin Auquite <halomastar@gmail.com> Date: Mon Apr 10 12:52:56 2023 -0500 Merge branch 'main' into compare-service-datas-with-ignore-fields commit0a4c7ed1ddAuthor: Benjamin Auquite <halomastar@gmail.com> Date: Sun Apr 9 23:26:41 2023 -0500 Revert "keep line length under 100" This reverts commit461efb5fed. commit461efb5fedAuthor: Benjamin Auquite <halomastar@gmail.com> Date: Sun Apr 9 22:38:04 2023 -0500 keep line length under 100 commitbeece5c06fAuthor: Benjamin Auquite <halomastar@gmail.com> Date: Sun Apr 9 22:33:50 2023 -0500 ignore ATTR_TRANSITION in checks # Conflicts: # README.md
This commit is contained in:
parent
f0b487320d
commit
ce4e04358e
1 changed files with 13 additions and 8 deletions
|
|
@ -1327,12 +1327,16 @@ class AdaptiveSwitch(SwitchEntity, RestoreEntity):
|
|||
elif supports_colors and adapt_color:
|
||||
_LOGGER.debug("%s: Setting rgb_color of light %s", self._name, light)
|
||||
service_data[ATTR_RGB_COLOR] = self._settings["rgb_color"]
|
||||
|
||||
context = context or self.create_context("adapt_lights")
|
||||
|
||||
# See #80. Doesn't check if transitions differ but it does the job.
|
||||
last_service_data = self.turn_on_off_listener.last_service_data
|
||||
if not force and last_service_data.get(light) == service_data:
|
||||
# Check if service data differs from the last. See #80.
|
||||
listener = self.turn_on_off_listener
|
||||
last_service_data = listener.last_service_data.get(light)
|
||||
ignore_fields = {ATTR_TRANSITION}
|
||||
if (
|
||||
not force
|
||||
and last_service_data
|
||||
and {k for k, _ in last_service_data.items() ^ service_data.items()}
|
||||
== ignore_fields
|
||||
):
|
||||
_LOGGER.debug(
|
||||
"%s: Cancelling adapt to light %s, there's no new values to set (context.id='%s')",
|
||||
self._name,
|
||||
|
|
@ -1340,8 +1344,9 @@ class AdaptiveSwitch(SwitchEntity, RestoreEntity):
|
|||
context.id,
|
||||
)
|
||||
return
|
||||
else:
|
||||
self.turn_on_off_listener.last_service_data[light] = service_data
|
||||
listener.last_service_data[light] = service_data
|
||||
|
||||
context = context or self.create_context("adapt_lights")
|
||||
|
||||
async def turn_on(service_data):
|
||||
_LOGGER.debug(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue