Skip to content

fix(kimi-web): fix input caret and todo strikethrough - #1423

Merged
liruifengv merged 7 commits into
mainfrom
fix/kimi-web-ui-polish
Jul 6, 2026
Merged

fix(kimi-web): fix input caret and todo strikethrough#1423
liruifengv merged 7 commits into
mainfrom
fix/kimi-web-ui-polish

Conversation

@liruifengv

@liruifengv liruifengv commented Jul 6, 2026

Copy link
Copy Markdown
Collaborator

Related Issue

No related issue — see Problem below.

Problem

Two visual glitches in the web UI (@moonshot-ai/kimi-web, bundled into the CLI):

  • The composer input caret was almost invisible when the field was empty — the empty state used a faint text colour and the caret inherited it.
  • The strikethrough on completed todos looked washed out — it was pinned to a strong border colour that is lighter than the text in light theme and darker in dark theme.

What changed

  • Composer: pin the input caret to the normal text colour so it stays readable in the empty state.
  • Todo list: drop the strikethrough colour override so the line follows the text colour, matching the other task lists and the design system.
  • Added a patch changeset with the web: prefix.

Note: an earlier iteration of this PR also stopped sidebar workspace names from truncating early, but that change was reverted — hiding the row action buttons removed them from the keyboard tab order, and the "create in workspace" action has no keyboard-accessible alternative. So it is not part of this PR.

Verified with pnpm --filter @moonshot-ai/kimi-web check:style and typecheck; visual result checked manually in the browser.

Checklist

  • I have read the CONTRIBUTING document.
  • I have linked a related issue, or explained the problem above.
  • I have added tests that prove my feature works. (N/A — visual-only CSS changes; kimi-web has no component/jsdom tests. Verified with check:style, typecheck and a manual browser check.)
  • Ran gen-changesets skill, or this PR needs no changeset.
  • Ran gen-docs skill, or this PR needs no doc update. (No doc update — visual bug fixes only.)

The composer textarea coloured its empty state with `--faint`, and with no caret-color set the caret inherited that faint colour and nearly vanished until the first character was typed. Pin the caret to --color-text so it stays readable regardless of the placeholder state.
TodoCard pinned the done-state strikethrough to --color-line-strong, which is lighter than the faint text in light theme and darker in dark theme, so the line looked washed-out and broken against the text. Drop the override so the line inherits the text colour, matching TasksPane and the design-system examples.
The workspace header's more/add buttons were hidden with opacity: 0, which kept them in the flex layout and permanently reserved ~60px on the right, so the workspace name (flex:1) truncated long before the row was full. Hide them with display: none and restore display: inline-flex on hover/focus/open, so the name fills the row and only truncates once the buttons actually appear.

The same actions remain reachable via the right-click menu and the section kebab, so removing them from the tab order when hidden is acceptable.
Lock .gh-top to the sm IconButton height (26px) so revealing the hover actions no longer grows the row and nudges the path line and the groups below it. Follow-up to the display: none change: that freed the horizontal space but let the row height collapse when the buttons were hidden.
@changeset-bot

changeset-bot Bot commented Jul 6, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 76434e7

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@moonshot-ai/kimi-code Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

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

Copy link
Copy Markdown

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: 0f9a7e0e01

ℹ️ About Codex in GitHub

Codex has been enabled to automatically 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 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment thread apps/kimi-web/src/components/WorkspaceGroup.vue
@pkg-pr-new

pkg-pr-new Bot commented Jul 6, 2026

Copy link
Copy Markdown
pnpm dlx https://pkg.pr.new/@moonshot-ai/kimi-code@76434e7
npx https://pkg.pr.new/@moonshot-ai/kimi-code@76434e7

commit: 76434e7

Revert the display: none change (and the min-height that accompanied it) for the workspace row's hover actions, going back to opacity-hidden buttons.

The display: none approach removed the buttons from the tab order, and the 'create in workspace' add button has no keyboard-accessible alternative in the right-click or section menus, so keyboard users lost that action. Restoring opacity keeps the buttons focusable again, at the cost of the workspace name truncating a little earlier to reserve their space.

Addresses the P2 review on PR #1423.
@liruifengv liruifengv changed the title fix(kimi-web): fix input caret, todo strikethrough and sidebar truncation fix(kimi-web): fix input caret and todo strikethrough Jul 6, 2026
@liruifengv
liruifengv merged commit fa6d198 into main Jul 6, 2026
10 checks passed
@liruifengv
liruifengv deleted the fix/kimi-web-ui-polish branch July 6, 2026 10:34
This was referenced Jul 6, 2026
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