Skip to content

Fix empty graph account menu and Journal native UI presentation - #57

Merged
RCmerci merged 3 commits into
mainfrom
codex/journal-ios-ui-menus-sheets
Oct 9, 2026
Merged

RCmerci merged 3 commits into
mainfrom
codex/journal-ios-ui-menus-sheets

Conversation

@RCmerci

@RCmerci RCmerci commented Oct 9, 2026 •

Copy link
Copy Markdown
Contributor

On Choose a graph with an empty authenticated catalog, the system overflow trigger could appear without opening Diagnostics, and there was no Sign out entry. Journal made the secondary toolbar button icon-only; on iOS 26.1, the system overflow menu could not extract an item title from that label. An explicit native menu retains textual Diagnostics and Sign out entries and invokes the existing owners.

Native sheets now host their navigation controls. Journal-owned sheet dismissal uses a leading native xmark with the original accessible Close/Cancel/Done name and at least a 44pt touch target; Add/Send stay trailing. This covers Diagnostics, Error info, Status, Append, macOS Capture, the sign-in wrapper, attachment settings and Journal's image/document preview close controls. System-owned Photos, Files, Cognito and Quick Look internal controls keep their system appearance. Diagnostics uses vertical labels/values at accessibility text sizes. Attachment settings has a stable presentation anchor. PDF/TXT Quick Look titles are independent of immutable cache URLs. Favorites uses a native safeAreaBar with the explicit soft top edge and no extra bar-material background, so scrolled rows show through as a gentle blur beneath its readable title and account controls. The previous plain safe-area inset and material produced a covering band despite the soft setting. Detail applies the existing separator policy to the outer DisclosureGroup.

Validation: repository-wide dune build @all app/native_embed.exe.o and dune runtest --force; OCaml formatting and diff checks; all production Swift sources, including the real App.swift, compiled for iOS Simulator; existing headless original-photo-save checks. Public renderer regressions cover Close/Cancel glyph, sizing and event ownership, interactive labeled values, document titles and immutable file leases. The preceding implementation passed independent read-only review. The previously accepted six isolated UI tests cover empty graph menu/Diagnostics/Sign out, AXXXL Diagnostics, settings, image/PDF/TXT close controls, Detail, Append cancellation/draft retention/Add, Status cancellation and Favorites actual scrolling. Measured dismissal frames are 44×44pt, or approximately 46×46pt on the native settings card. Earlier actual checks also cover immediate Status apply and iOS inline Capture draft retention/Send. The latest Favorites change passes four actual Simulator UI methods: real swipes and short drags compare softened changing content with Timeline; normal scrolling retains a readable fixed title and usable Account menu; populated and empty Favorites remain usable at AXXXL; Account/settings/Detail/Append and native Back return to Timeline also pass. The regression rejects both the covering background and sharp-text overlay candidates. Its final native-bar captures were individually inspected. Seventeen related public Application cases and the full public renderer semantics executable pass; all real production Swift compiles. No user account, graph, or phone was operated.

The existing unlock branch and macOS UI are outside this acceptance scope; iOS inline Capture layout is preserved. VoiceOver activation was not separately exercised.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-09T10:17:26.775597Z aeebea5 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@RCmerci
RCmerci merged commit 8fb76b5 into main Oct 9, 2026
2 checks passed
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.

1 participant