From 2a647ee1ad134a24500cb16ae4c95841c9ec122d Mon Sep 17 00:00:00 2001 From: yuetsh <517252939@qq.com> Date: Mon, 22 Jun 2026 18:57:23 -0600 Subject: [PATCH] feat: merge generate buttons into a single dropdown in WorkspaceToolbar - Wire GenerateMenuButton component into WorkspaceToolbar.vue - Update WorkspaceToolbar.test.ts to open dropdown before clicking menu items - Update WorkspaceView.test.ts to open dropdown before clicking generate buttons Co-Authored-By: Claude Sonnet 4.6 --- .../2026-06-22-merge-generate-buttons.md | 436 ++++++++++++++++++ src/components/WorkspaceToolbar.test.ts | 16 +- src/components/WorkspaceToolbar.vue | 4 +- src/components/WorkspaceView.test.ts | 2 + 4 files changed, 453 insertions(+), 5 deletions(-) create mode 100644 docs/superpowers/plans/2026-06-22-merge-generate-buttons.md diff --git a/docs/superpowers/plans/2026-06-22-merge-generate-buttons.md b/docs/superpowers/plans/2026-06-22-merge-generate-buttons.md new file mode 100644 index 0000000..81ae999 --- /dev/null +++ b/docs/superpowers/plans/2026-06-22-merge-generate-buttons.md @@ -0,0 +1,436 @@ +# Merge Generate Buttons Into Dropdown Implementation Plan + +> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. + +**Goal:** Replace the two separate "批量生成" / "生成一篇" toolbar buttons with a single "生成教案 ▾" button that opens a dropdown menu offering both actions. + +**Architecture:** Extract a new self-contained Vue component `GenerateMenuButton.vue` that owns the open/closed state and outside-click/Escape dismissal, and emits the same `generate` / `batchGenerate` events the toolbar already emits today. `WorkspaceToolbar.vue` swaps its two `