Skip to content

ui: чертежи не уезжают под редактор объекта + честный тогл кнопки#9

Merged
AntonDot merged 1 commit into
mainfrom
fix/blueprint-panel-ux
Jul 24, 2026
Merged

ui: чертежи не уезжают под редактор объекта + честный тогл кнопки#9
AntonDot merged 1 commit into
mainfrom
fix/blueprint-panel-ux

Conversation

@AntonDot

@AntonDot AntonDot commented Jul 24, 2026

Copy link
Copy Markdown
Member

Closes #6

Что

Два UX-фикса панели чертежей (BlueprintPanel):

  1. Наложение с редактором объекта. ConfigPanel — правый drawer 320px, BlueprintPanel тоже у правого края → чертежи уезжали под редактор. Теперь при открытом редакторе панель чертежей сдвигается левее (right: 334px = 320px drawer + 14px зазор), обе видны одновременно; transition: right 0.2s синхронно со слайдом редактора.

  2. Кнопка «Чертежи» не закрывала панель. Раньше «закрытие» сворачивало панель в плашку-реоткрывашку ⬓ BLUEPRINTS ▲ в том же углу — визуально казалось, что кнопка ничего не делает, плюс дублировала себя. Убрал плашку: закрыто = панель полностью скрыта. Кнопка «Чертежи» в TopBar (и клавиша B) — честный тогл показать/скрыть, с индикацией active на кнопке.

Проверка

  • pnpm typecheck ✓, pnpm build
  • Логика движка/стора не тронута — только BlueprintPanel.tsx/.css

Замечание

У панели «Результаты» та же схема плашки-реоткрывашки (⬓ RESULTS ▲) — здесь намеренно не трогал (авто-открытие при результате ракеты — кульминация демо).

🤖 Generated with Claude Code

1. BlueprintPanel сдвигается левее (right:334px) когда открыт ConfigPanel
   (правый drawer 320px) — обе панели видны, не накладываются; transition
   синхронно со слайдом редактора (0.2s).
2. Убрана плашка-реоткрывашка «⬓ BLUEPRINTS ▲»: закрыто = панель полностью
   скрыта. Кнопка «Чертежи» в TopBar (и клавиша B) стала честным тоглом
   показать/скрыть, а не сворачивать в дубль-плашку в том же углу.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 24, 2026 11:00
@AntonDot
AntonDot merged commit 5e1ef01 into main Jul 24, 2026
1 check passed
@AntonDot
AntonDot deleted the fix/blueprint-panel-ux branch July 24, 2026 11:01

Copilot AI 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.

Pull request overview

PR делает два UX-фикса панели чертежей (BlueprintPanel) в web/: (1) сдвигает панель влево при открытом правом ConfigPanel, чтобы они не перекрывались; (2) убирает “плашку-реоткрывашку” и делает видимость панели честным show/hide по TopBar-кнопке/клавише B.

Changes:

  • Добавлено определение “ConfigPanel открыт” и CSS-смещение BlueprintPanel (анимация right синхронно 0.2s).
  • Убрана логика/стили “reopen” кнопки: при закрытии панель полностью скрыта.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
web/src/ui/BlueprintPanel.tsx Убрана “reopen” плашка, добавлена логика сдвига панели при открытом ConfigPanel, обновлена видимость панели.
web/src/ui/BlueprintPanel.css Добавлен transition по right и правило смещения панели влево при открытом ConfigPanel; удалены стили “reopen” кнопки.
Comments suppressed due to low confidence (1)

web/src/ui/BlueprintPanel.tsx:79

  • Tooltip у кнопки закрытия всё ещё говорит "Collapse dock", хотя плашка-реоткрывашка удалена и теперь панель именно скрывается. Лучше обновить title, чтобы соответствовать новому поведению (и не вводить в заблуждение), заодно можно убрать лишний пробел в className при configOpen === false.
    <div className={`blueprint-panel ${configOpen ? 'config-open' : ''}`}>
      <div className="blueprint-header">
        <h3 className="blueprint-title">Чертежи</h3>
        <button className="blueprint-icon-btn" onClick={handleClose} title="Collapse dock (B)">
          &#9662;

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +16 to +20
// Редактор объекта (ConfigPanel) — тот же правый край, что и мы. Когда он открыт
// (выбрана существующая сущность), сдвигаемся левее, чтобы не уезжать под него.
const selectedEntityId = useStore((state) => state.selectedEntityId);
const entities = useStore((state) => state.entities);
const configOpen = !!(selectedEntityId && entities[selectedEntityId]);
Comment on lines +19 to 22
чтобы не оказаться под ним. */
.blueprint-panel.config-open {
right: 334px; /* 320px ширина drawer + 14px зазор */
}
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.

Панель чертежей визуально прячется под ConfigPanel

3 participants