Skip to content

Add configurable idle frontlight dimming and settings scrollbar to Kobo app#9

Merged
Ashex merged 8 commits intomainfrom
copilot/address-power-management-issue
Mar 13, 2026
Merged

Add configurable idle frontlight dimming and settings scrollbar to Kobo app#9
Ashex merged 8 commits intomainfrom
copilot/address-power-management-issue

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 13, 2026

sKeets had no display-side idle power behavior while running interactively, and the new timeout control also needed to remain reachable in the Kobo Settings UI. This change adds a configurable inactivity timeout that turns off the Kobo frontlight after a period of inactivity, while keeping the implementation scoped to the existing settings/config/event-loop paths and extending Settings with a reusable right-side scrollbar.

  • Idle dimming

    • Tracks user activity in the main input loop.
    • Turns off the frontlight after the configured idle interval.
    • Avoids any framebuffer clear or e-ink refresh when the timeout fires.
  • Wake behavior

    • Restores the previous frontlight brightness on touch or key input.
    • Wake taps still avoid activating the underlying control on the same gesture.
    • Restores the saved frontlight brightness on app exit as well.
  • Settings + persistence

    • Adds a new Settings row for Screen Dim Timeout.
    • Cycles through preset values: Off, 30 sec, 1 min, 5 min, 10 min, 30 min.
    • Persists the timeout in config.ini as screen_dim_timeout_seconds.
  • Settings navigation

    • Adds a right-side scrollbar to the Settings screen so lower rows remain reachable.
    • Reuses the existing paginated scrollbar behavior already used elsewhere in the Kobo UI.
    • Keeps the Sign Out action fixed at the bottom while paging the settings rows above it.
  • UI updates

    • Adds a compact value-row control in Settings for the timeout.
    • Updates the setting text to explain that the timeout turns off the frontlight until the next input.
    • Updates the Settings hint text to direct users to the right scrollbar for additional rows.
  • Docs

    • Updates the feature list and config example to include the new timeout setting and frontlight-off behavior.
  • Scope

    • Covers the inactivity-timeout detection, frontlight off/on behavior, and Settings accessibility needed for this control.
    • Does not implement suspend/resume, Wi-Fi teardown/restore, /sys/power/state-extended handling, unexpected wake guards, or sleep-cover handling.

Example persisted config:

screen_dim_timeout_seconds=300
Original prompt

Address the power management GitHub issue, screen should go dim after a configurable time in addition to the improvements.


📍 Connect Copilot coding agent with Jira, Azure Boards or Linear to delegate work to Copilot in one click without leaving your project management tool.

Copilot AI changed the title [WIP] Fix screen dimming after configurable time for power management Add configurable idle screen dimming to Kobo app Mar 13, 2026
Copilot AI requested a review from Ashex March 13, 2026 08:00
Copilot AI changed the title Add configurable idle screen dimming to Kobo app Add configurable idle frontlight dimming to Kobo app Mar 13, 2026
Copilot AI requested a review from Ashex March 13, 2026 08:22
@Ashex Ashex marked this pull request as ready for review March 13, 2026 08:29
@Ashex
Copy link
Copy Markdown
Owner

Ashex commented Mar 13, 2026

@copilot update #4 to mark what is covered here

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 13, 2026

@copilot update #4 to mark what is covered here

Updated the PR tracking to call out that cb6b4a0 covers the inactivity-timeout detection and the frontlight off/on pieces of #4 only; suspend/resume, Wi-Fi handling, state-extended writes, unexpected wake guards, and sleep-cover support are still out of scope here. Screenshot: https://github.com/user-attachments/assets/0a5218af-5c6c-49bd-a537-b154dc358c52

@Ashex
Copy link
Copy Markdown
Owner

Ashex commented Mar 13, 2026

@copilot is the settings screen scrollable to access the setting

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 13, 2026

@copilot is the settings screen scrollable to access the setting

No—the Settings screen is not scrollable right now. It uses a fixed layout, and the new Screen Dim Timeout row is placed directly above the note/sign-out area in that visible layout rather than behind a scroll region. Screenshot: https://github.com/user-attachments/assets/0a5218af-5c6c-49bd-a537-b154dc358c52

@Ashex
Copy link
Copy Markdown
Owner

Ashex commented Mar 13, 2026

@copilot add a scroll bar, reuse the existing one for feed pagination.

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 13, 2026

@copilot add a scroll bar, reuse the existing one for feed pagination.

Done in fbc3c0d. Settings now use a right-side scrollbar with paginated rows above the fixed Sign Out footer, and Screen Dim Timeout is reachable via that scrollbar. Screenshot: https://github.com/user-attachments/assets/0a5218af-5c6c-49bd-a537-b154dc358c52

Copilot AI changed the title Add configurable idle frontlight dimming to Kobo app Add configurable idle frontlight dimming and settings scrollbar to Kobo app Mar 13, 2026
Copilot AI and others added 5 commits March 13, 2026 12:09
Co-authored-by: Ashex <4143436+Ashex@users.noreply.github.com>
Co-authored-by: Ashex <4143436+Ashex@users.noreply.github.com>
Co-authored-by: Ashex <4143436+Ashex@users.noreply.github.com>
Co-authored-by: Ashex <4143436+Ashex@users.noreply.github.com>
Co-authored-by: Ashex <4143436+Ashex@users.noreply.github.com>
@Ashex Ashex force-pushed the copilot/address-power-management-issue branch from fbc3c0d to 2d7e094 Compare March 13, 2026 11:09
Ashex added 2 commits March 13, 2026 13:30
@Ashex Ashex merged commit f76611b into main Mar 13, 2026
1 check passed
@Ashex Ashex deleted the copilot/address-power-management-issue branch March 13, 2026 12:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants