Skip to content

✨ feat: polish MoriRemote iPad and terminal UX#60

Merged
vaayne merged 17 commits intomainfrom
moriremote-polish
Apr 13, 2026
Merged

✨ feat: polish MoriRemote iPad and terminal UX#60
vaayne merged 17 commits intomainfrom
moriremote-polish

Conversation

@vaayne
Copy link
Copy Markdown
Owner

@vaayne vaayne commented Apr 13, 2026

Summary

  • add an adaptive MoriRemote iPad layout with split-view browsing while disconnected and a persistent two-pane workspace while connected
  • polish MoriRemote visual design to align with the new Mac-first DESIGN.md, including denser server rows, flatter sidebars, and cleaner terminal chrome
  • harden terminal/accessory-bar lifecycle behavior across disconnects, host switches, tmux actions, and reconnect races
  • update localized strings, docs, and the Ghostty submodule pointer

Details

  • introduce RegularWidthServerBrowserView and TerminalSessionHost to separate layout from shell/session ownership
  • refactor TerminalScreen, ServerListView, TmuxSidebarView, and accessory bar views for compact-vs-regular presentation
  • replace the unstable iPad keyboard accessory tmux menu with a safer confirmation dialog and restore collapsible regular-width sidebar behavior
  • surface explicit SSH timeout / missing-password failures instead of leaving MoriRemote stuck in a connecting state
  • add DESIGN.md and note MoriRemote’s iPhone/iPad support in README.md / README.zh-Hans.md
  • update vendor/ghostty to the latest upstream main

Testing

  • Not run locally in this session

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e94b0c9404

ℹ️ 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".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

guard coordinator.state == .disconnected,
let server = coordinator.activeServer,
let error = coordinator.lastError,
selection.selectedServerID == server.id else {
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Surface connect errors regardless of current sidebar selection

The failure panel is gated on selection.selectedServerID == server.id, so if a user starts connecting to server A, then clicks server B in the sidebar while A is still connecting, any error from A is silently dropped in regular-width mode. Because this view has no fallback error banner, the failed attempt leaves no visible feedback, which makes retries/debugging difficult. Consider showing lastError independently of the current selection (or adding a persistent banner).

Useful? React with 👍 / 👎.

vaayne added 2 commits April 13, 2026 16:11
Delete DESIGN.md which contained outdated UI/UX design system guidance.

Remove references to DESIGN.md from AGENTS.md and remove the design system

link from the documentation index.

The design guidance in this file has been superseded by the actual

implementation patterns in MoriUI and MoriTokens. Keeping it risks

confusion with the actual source of truth in the codebase.
@vaayne vaayne merged commit 69360ba into main Apr 13, 2026
4 checks passed
@vaayne vaayne deleted the moriremote-polish branch April 13, 2026 08:36
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