Update version to 0.1.53, fix chat scrolling issues, and prevent scroll anchoring artifacts

This commit is contained in:
techartdev
2026-02-23 16:05:58 +02:00
parent 99aaef05c1
commit 013e4d3702
4 changed files with 15 additions and 9 deletions
+7
View File
@@ -2,6 +2,13 @@
All notable changes to the OpenClaw Home Assistant Integration will be documented in this file. All notable changes to the OpenClaw Home Assistant Integration will be documented in this file.
## [0.1.53] - 2026-02-23
### Fixed
- Fixed chat scrolling UP to an older message instead of staying at the bottom when a bot reply arrives.
- Eliminated requestAnimationFrame race condition in `_scrollToBottom()` that caused `_autoScrollPinned` to be incorrectly set to false when rapid re-renders overlapped.
- Added `overflow-anchor: none` to the messages container to prevent browser scroll anchoring artifacts after innerHTML replacement.
## [0.1.52] - 2026-02-23 ## [0.1.52] - 2026-02-23
### Added ### Added
+1 -1
View File
@@ -93,7 +93,7 @@ _CARD_PATH = Path(__file__).parent / "www" / _CARD_FILENAME
# URL at which the card JS is served (registered via register_static_path) # URL at which the card JS is served (registered via register_static_path)
_CARD_STATIC_URL = f"/openclaw/{_CARD_FILENAME}" _CARD_STATIC_URL = f"/openclaw/{_CARD_FILENAME}"
# Versioned URL used for Lovelace resource registration to avoid stale browser cache # Versioned URL used for Lovelace resource registration to avoid stale browser cache
_CARD_URL = f"{_CARD_STATIC_URL}?v=0.1.52" _CARD_URL = f"{_CARD_STATIC_URL}?v=0.1.53"
OpenClawConfigEntry = ConfigEntry OpenClawConfigEntry = ConfigEntry
+1 -1
View File
@@ -8,7 +8,7 @@
"iot_class": "local_polling", "iot_class": "local_polling",
"issue_tracker": "https://github.com/techartdev/OpenClawHomeAssistant/issues", "issue_tracker": "https://github.com/techartdev/OpenClawHomeAssistant/issues",
"requirements": [], "requirements": [],
"version": "0.1.52", "version": "0.1.53",
"dependencies": ["conversation"], "dependencies": ["conversation"],
"after_dependencies": ["hassio", "lovelace"] "after_dependencies": ["hassio", "lovelace"]
} }
@@ -13,7 +13,7 @@
* + subscribes to openclaw_message_received events. * + subscribes to openclaw_message_received events.
*/ */
const CARD_VERSION = "0.3.10"; const CARD_VERSION = "0.3.11";
// Max time (ms) to show the thinking indicator before falling back to an error // Max time (ms) to show the thinking indicator before falling back to an error
const THINKING_TIMEOUT_MS = 120_000; const THINKING_TIMEOUT_MS = 120_000;
@@ -1782,12 +1782,10 @@ class OpenClawChatCard extends HTMLElement {
} }
_scrollToBottom(force = false) { _scrollToBottom(force = false) {
requestAnimationFrame(() => {
const container = this.shadowRoot?.querySelector(".messages"); const container = this.shadowRoot?.querySelector(".messages");
if (container && (force || this._autoScrollPinned)) { if (container && (force || this._autoScrollPinned)) {
container.scrollTop = container.scrollHeight; container.scrollTop = container.scrollHeight;
} }
});
} }
_formatTime(isoString) { _formatTime(isoString) {
@@ -1909,6 +1907,7 @@ class OpenClawChatCard extends HTMLElement {
.messages { .messages {
height: ${config.height || "500px"}; height: ${config.height || "500px"};
overflow-y: auto; overflow-y: auto;
overflow-anchor: none;
padding: 12px 16px; padding: 12px 16px;
display: flex; display: flex;
flex-direction: column; flex-direction: column;