feat: add undo/redo buttons to TopBar with tooltips

This commit is contained in:
Your Name
2026-02-15 20:31:35 +02:00
parent 2f62dbba7c
commit 43858357fe

View File

@@ -1,5 +1,5 @@
import { useState, useRef, useEffect, useCallback } from "react";
import { ArrowLeft, Settings, Search } from "lucide-react";
import { ArrowLeft, Settings, Search, Undo2, Redo2 } from "lucide-react";
import { Button } from "@/components/ui/button";
import {
Tooltip,
@@ -124,6 +124,40 @@ export function TopBar() {
{/* Right section */}
<div className="flex items-center gap-1">
{isBoardView && (
<>
<Tooltip>
<TooltipTrigger asChild>
<Button
variant="ghost"
size="icon-sm"
className="text-pylon-text-secondary hover:text-pylon-text"
onClick={() => useBoardStore.temporal.getState().undo()}
>
<Undo2 className="size-4" />
</Button>
</TooltipTrigger>
<TooltipContent>
Undo <kbd className="ml-1 font-mono text-[10px] opacity-60">Ctrl+Z</kbd>
</TooltipContent>
</Tooltip>
<Tooltip>
<TooltipTrigger asChild>
<Button
variant="ghost"
size="icon-sm"
className="text-pylon-text-secondary hover:text-pylon-text"
onClick={() => useBoardStore.temporal.getState().redo()}
>
<Redo2 className="size-4" />
</Button>
</TooltipTrigger>
<TooltipContent>
Redo <kbd className="ml-1 font-mono text-[10px] opacity-60">Ctrl+Shift+Z</kbd>
</TooltipContent>
</Tooltip>
</>
)}
{savingStatus && (
<span className="mr-2 font-mono text-xs text-pylon-text-secondary">
{savingStatus}