Skip to content

Commit

Permalink
Fixed loop out of control
Browse files Browse the repository at this point in the history
  • Loading branch information
kgn3400 committed Jun 3, 2024
1 parent dbb8b00 commit 6c0dd99
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 27 deletions.
38 changes: 17 additions & 21 deletions custom_components/message_log/component_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -301,7 +301,7 @@ async def async_update(self) -> None:

await self.translations.async_refresh()
await self.async_remove_outdated()
self.update_scroll_message_pos()
# self.update_scroll_message_pos()
await self.async_update_markdown()

# ------------------------------------------------------------------
Expand Down Expand Up @@ -347,11 +347,7 @@ async def async_create_markdown_latest_and_scroll(self) -> None:

# Scroll message
if len(self.message_list_sorted) > 1:
while (
self.settings.message_list[0].added_at
== self.message_list_sorted[self.scroll_message_pos].added_at
):
self.update_scroll_message_pos()
self.update_scroll_message_pos()

item: MessageItem = self.message_list_sorted[self.scroll_message_pos]
self.markdown += (
Expand All @@ -361,6 +357,21 @@ async def async_create_markdown_latest_and_scroll(self) -> None:
else:
self.markdown = f'## <font color={MessageLevel.INFO.color}> <ha-icon icon="mdi:message-outline"></ha-icon></font> {self.translations.message_str}\n'

# ------------------------------------------------------------------
def update_scroll_message_pos(self) -> None:
"""Update scroll message pos."""
if len(self.message_list_sorted) > 1:
self.scroll_message_pos += 1

if self.scroll_message_pos >= len(
self.message_list_sorted
) or self.scroll_message_pos >= self.entry.options.get(
CONF_SCROLL_THROUGH_LAST_MESSAGES_COUNT, 5
):
self.scroll_message_pos = 0
else:
self.scroll_message_pos = 0

# ------------------------------------------------------------------
async def async_create_markdown_message_list(self) -> None:
"""Markdown message list."""
Expand Down Expand Up @@ -450,21 +461,6 @@ def create_sorted_message_list(
]
)

# ------------------------------------------------------------------
def update_scroll_message_pos(self) -> None:
"""Update scroll message pos."""
if len(self.settings.message_list) > 1:
self.scroll_message_pos += 1

if self.scroll_message_pos >= len(
self.settings.message_list
) or self.scroll_message_pos >= self.entry.options.get(
CONF_SCROLL_THROUGH_LAST_MESSAGES_COUNT, 5
):
self.scroll_message_pos = 0
else:
self.scroll_message_pos = 0

# ------------------------------------------------------------------
def get_message(self, num: int = 0) -> str:
"""Get Message."""
Expand Down
2 changes: 1 addition & 1 deletion custom_components/message_log/entity.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,6 @@ def __init__(
manufacturer="KGN",
# translation_key=TRANSLATION_KEY,
suggested_area="",
sw_version="1.0.21",
sw_version="1.0.23",
name=DOMAIN_NAME,
)
14 changes: 10 additions & 4 deletions custom_components/message_log/manifest.json
Original file line number Diff line number Diff line change
@@ -1,16 +1,22 @@
{
"domain": "message_log",
"name": "Message log",
"codeowners": ["@kgn3400"],
"codeowners": [
"@kgn3400"
],
"config_flow": true,
"dependencies": [],
"documentation": "https://github.com/kgn3400/message_log",
"homekit": {},
"iot_class": "cloud_push",
"issue_tracker": "https://github.com/kgn3400/message_log/issues",
"requirements": ["aiofiles", "orjson", "jsonpickle"],
"requirements": [
"aiofiles",
"orjson",
"jsonpickle"
],
"single_config_entry": true,
"ssdp": [],
"version": "1.0.22",
"version": "1.0.23",
"zeroconf": []
}
}
2 changes: 1 addition & 1 deletion custom_components/message_log/settings_json.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ async def async_read_settings(self, settings_file: str = "") -> None:
return

self.set_settings_file_name(settings_file)
jsonpickle.set_decoder_options("json")
# jsonpickle.set_decoder_options("json")
try:
async with aiofiles.open(
self.settings_file___, encoding="UTF-8"
Expand Down

0 comments on commit 6c0dd99

Please sign in to comment.