home-assistant / home-assistant/iOS

Custom Widget tap behavior regression after 2026.9 update: Default stops working and Toggle does not correctly toggle cover entities

Open
#5,825 0 comments 0 reactions 0 assignees View on GitHub
bug ios
Dominant language
Swift
Stars
2.4k
Forks
520
Avg merge
7h 27m
Merged PRs (30d)
264

Description

iOS device model, version and app version

Model Name: iPhone 13 Pro Max
Software Version: iOS 27.0
Home Assistant Companion App: latest App Store version / 2026.9.x

Home Assistant Core Version

Home Assistant Core: 2026.5.4
Home Assistant OS installation

Describe the bug

After the recent Home Assistant Companion App update, existing Custom Widget buttons no longer behave as they did before.

Before the update, my widget buttons used the Default tap behavior and worked correctly without any custom action configuration.

For cover entities, repeatedly tapping the same widget button produced the expected native cover toggle behavior:

1. Open
2. Stop while opening
3. Close
4. Stop while closing
5. Open again

After the recent app update, buttons configured with Default stopped responding.

Changing the tap behavior from Default to Toggle makes the widget respond again, but cover entities no longer behave correctly.

With Toggle, my cover button now only closes the cover when it is open. While the cover is closing, tapping again does not stop it. After it reaches the closed position, further taps do not open it again.

The Home Assistant entity itself and its available actions are working correctly.

If I manually configure the widget as:

* Tap behavior: Execute Action
* Action: cover.toggle
* Action data:

{"entity_id":"cover.cortina_1"}

the expected open → stop → close → stop → open behavior works again.

Therefore the problem appears to be specifically with the new Custom Widget Default / Toggle tap behavior, not with the cover entity or cover.toggle action itself.

This is particularly problematic because I have many existing widget buttons. They previously worked using Default behavior, and manually converting every button to Execute Action and entering its entity ID as JSON is not a practical migration path.

To Reproduce

1. Create or use an existing Custom Widget containing a cover entity.
2. Set the tap behavior / icon tap behavior to Default.
3. Tap the widget after updating to the current 2026.9.x Companion App.
4. The widget may no longer execute the action.
5. Change the behavior to Toggle.
6. Open the cover and tap the widget.
7. The cover closes.
8. Tap again while the cover is moving.
9. The cover does not stop.
10. Once closed, tap again.
11. The cover does not reopen.
12. Configure the same widget manually with Execute Action → cover.toggle and pass the entity ID in Action Data.
13. The expected toggle/stop behavior works correctly.

Expected behavior

Existing widgets using Default should continue to work after an app update without requiring every widget item to be manually reconfigured.

For a cover entity, Toggle should perform the equivalent of cover.toggle, including stopping the cover when it is currently opening or closing.

Existing widget configurations should remain backward compatible.

Actual behavior

* Default behavior stopped working after the update.
* Changing to Toggle makes the button respond but does not reproduce cover.toggle behavior.
* Explicitly configuring Execute Action → cover.toggle works correctly.
* Fixing this manually would require editing every existing widget button individually.

Additional context

The issue appeared immediately after the recent Companion App update.

The 2026.9.1 release notes mention a change to widgets where entity icon colors, tap behaviors and tile icon actions were changed to match the frontend. The regression may be related to that change.

I can provide screenshots of the Custom Widget configuration showing:

* Default / Toggle / Execute Action options
* cover.toggle available in the action selector
* Action Data JSON configuration

**iOS device model, version and app version**

Model Name:
Software Version:
App version:

**Home Assistant Core Version**

**Describe the bug**

**To Reproduce**

**Expected behavior**

**Screenshots**

**Additional context**

Contributor guide

Open the contributing guide

Research direction

Reproduce the regression in a Custom Widget containing a cover entity, comparing Default and Toggle tap behavior with an explicit cover.toggle action using the reported entity data. Done means existing Default widgets respond again and Toggle matches cover.toggle, including open, stop, close, stop, and reopen behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.