feat: add About dialog with version, copyright, and links#256
feat: add About dialog with version, copyright, and links#256rtibblesbot wants to merge 5 commits into
Conversation
rtibbles
left a comment
There was a problem hiding this comment.
Tests aren't helpful. Let's do a slight deviation from the spec and remove the license link - I don't think it's helpful. We should either say the license inline and have it translated, or not include it at all.
Adds AboutDialog (wx.Dialog) showing app version, Kolibri version, copyright, and links to Documentation and Community Forums. Wires an "About Kolibri…" menu item: in the macOS application menu via wx.ID_ABOUT, and at the bottom of the Help menu on Windows/Linux. Moves DOCS_URL and FORUMS_URL into constants.py so both view.py and about_dialog.py reference a single source of truth.
Per reviewer feedback: DOCS_URL and FORUMS_URL don't belong in the shared constants module. Move them into about_dialog.py where they're used for HyperlinkCtrl, and inline them directly in view.py's on_documentation/on_forums handlers. Also split the combined if MAC: block so the About menu item and the menu_bar.Append are separate guards. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
69d1503 to
0e858dd
Compare
|
Hi @rtibbles
Windows.11.-.About.mp4On Mac, clicking the 'About Kolibri...' menu item results in opening a Kolibri Error modal
Logs: Mac logs.zip |
rtibbles
left a comment
There was a problem hiding this comment.
Please address the manual QA feedback.
- Fix crash on macOS where a failed icon decode raised wx.wxAssertionError, which wasn't caught (only FileNotFoundError/ OSError were), so the dialog never opened - Add horizontal padding so the dialog isn't trimmed at the edges - Move copyright line below the links and include the current year - Use singular "Community Forum" for the link label - Right-align the Close button per platform convention
|
Thanks for the thorough QA pass @pcenov — addressed all four points in 7327bc2:
The macOS crash: a failed icon decode raised |
The uv-lock pre-commit hook was failing because main switched exclude-newer to a relative "7 days" span while this branch's lockfile still recorded the old fixed-date value. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
I was unable to complete this task after multiple attempts. Manual review and intervention may be needed. |
|

Summary
Adds a custom About dialog (
AboutDialog(wx.Dialog)) showing app version, Kolibri version, copyright, and hyperlinks to Documentation and Community Forums.Before this: macOS showed a minimal system-generated panel from Info.plist; Windows and Linux had no About entry at all. This gives all platforms a consistent dialog that also exposes the upstream Kolibri version, which Info.plist alone cannot show.
On macOS the menu item uses
wx.ID_ABOUT, which wx automatically hoists to the top of the Application menu (before Services / Hide / Quit) regardless of which menu the item is added to. On Windows and Linux it appears as the last entry in the Help menu. The rebase onto main required adapting to thefile_menu→primary_menurename introduced by #248.References
Closes #239
Reviewer guidance
make run-devon each platform:macOS
Windows / Linux
Screenshots require a running wxPython display; not capturable in this headless CI environment. Manual verification on each platform is needed.
AI usage
Implemented with Claude Code following a pre-approved plan. The plan was reviewed and approved before implementation. The conflict resolution during rebase (adapting
file_menu→primary_menuafter #248 merged) was handled by Claude Code with reasoning about the wx.ID_ABOUT placement semantics.@rtibblesbot's comments are generated by an LLM, and should be evaluated accordingly
How was this generated?
🟡 Waiting for feedback
Last updated: 2026-07-04 02:18 UTC