diff --git a/frontend/src/features/authoring/images.tsx b/frontend/src/features/authoring/images.tsx index bbd759c4..22872807 100644 --- a/frontend/src/features/authoring/images.tsx +++ b/frontend/src/features/authoring/images.tsx @@ -164,7 +164,7 @@ function ImageCreateMenu() { return ( <>
-
  • +
  • diff --git a/frontend/src/features/authoring/topbar/ShapeCreateMenu.tsx b/frontend/src/features/authoring/topbar/ShapeCreateMenu.tsx index 3c170b8f..38f9097c 100644 --- a/frontend/src/features/authoring/topbar/ShapeCreateMenu.tsx +++ b/frontend/src/features/authoring/topbar/ShapeCreateMenu.tsx @@ -19,7 +19,7 @@ function ShapeCreateMenu() { return ( <>
    -
  • +
  • @@ -28,22 +28,22 @@ function ShapeCreateMenu() { tabIndex={0} className="dropdown-content menu menu-horizontal bg-base-300 rounded-box z-1 p-2 shadow-sm top-[38px] w-max" > -
  • +
  • switchCreate("box")}>
  • -
  • +
  • switchCreate("ellipse")}>
  • -
  • +
  • switchCreate("line")}>
  • -
  • +
  • switchCreate("speech")}> diff --git a/frontend/src/features/authoring/topbar/ShapeSection.tsx b/frontend/src/features/authoring/topbar/ShapeSection.tsx index 31752f24..2b1b5d99 100644 --- a/frontend/src/features/authoring/topbar/ShapeSection.tsx +++ b/frontend/src/features/authoring/topbar/ShapeSection.tsx @@ -39,12 +39,14 @@ function ShapeSection() { modifyProps("fill", value)} + tooltip="Fill color" > modifyProps("stroke", value)} + tooltip="Stroke color" > @@ -52,6 +54,7 @@ function ShapeSection() { value={props.strokeWidth} values={widths} onChange={(v) => modifyProps("strokeWidth", v)} + tooltip="Stroke width" > diff --git a/frontend/src/features/authoring/topbar/TextSection.tsx b/frontend/src/features/authoring/topbar/TextSection.tsx index e9fc81d7..6a17cb23 100644 --- a/frontend/src/features/authoring/topbar/TextSection.tsx +++ b/frontend/src/features/authoring/topbar/TextSection.tsx @@ -58,12 +58,12 @@ function TextSection() { />
    - - modifyStyle("fontSize", value)} - /> - +
    + modifyStyle("fontSize", value)} + /> +
    modifyStyle("fontWeight", value)} enabled="bold" disabled="normal" + tooltip="Bold" > @@ -79,6 +80,7 @@ function TextSection() { onToggle={(value) => modifyStyle("fontStyle", value)} enabled="italic" disabled="normal" + tooltip="Italic" > @@ -87,18 +89,21 @@ function TextSection() { onToggle={(value) => modifyStyle("textDecoration", value)} enabled="underline" disabled="none" + tooltip="Underline" > modifyStyle("textColor", value)} + tooltip="Text color" > A modifyStyle("highlightColor", value)} + tooltip="Highlight color" > @@ -114,6 +119,7 @@ function TextSection() { , ]} onChange={(value) => modifyStyle("alignment", value)} + tooltip="Alignment" > @@ -122,6 +128,7 @@ function TextSection() { value={style.lineHeight} values={[1, 1.1, 1.25, 1.5, 1.75, 2]} onChange={(value) => modifyStyle("lineHeight", value)} + tooltip="Line height" > diff --git a/frontend/src/features/authoring/topbar/Topbar.tsx b/frontend/src/features/authoring/topbar/Topbar.tsx index 30dfc69a..4dc3af14 100644 --- a/frontend/src/features/authoring/topbar/Topbar.tsx +++ b/frontend/src/features/authoring/topbar/Topbar.tsx @@ -44,12 +44,12 @@ function Topbar({ saving, save }: { saving: boolean; save: () => void }) {
    -
  • +
  • -
  • +
  • @@ -59,7 +59,7 @@ function Topbar({ saving, save }: { saving: boolean; save: () => void }) { {/* element creation */} -
  • +
  • switchCreate("textbox")}> @@ -72,12 +72,12 @@ function Topbar({ saving, save }: { saving: boolean; save: () => void }) {
    {/* reorder */} -
  • +
  • bringToFront(selected)}>
  • -
  • +
  • sendToBack(selected)}> diff --git a/frontend/src/features/authoring/wrapper/ChromePicker.tsx b/frontend/src/features/authoring/wrapper/ChromePicker.tsx index a71d6f1d..e8b904ee 100644 --- a/frontend/src/features/authoring/wrapper/ChromePicker.tsx +++ b/frontend/src/features/authoring/wrapper/ChromePicker.tsx @@ -5,9 +5,11 @@ function ChromePicker({ children, value, onChange, + tooltip, }: React.PropsWithChildren<{ value: string; onChange: (value: string) => void; + tooltip?: string; }>) { const [open, setOpen] = useState(false); const ref = useRef(null); @@ -25,7 +27,10 @@ function ChromePicker({ return (
    -
  • +
  • setOpen(!open)} diff --git a/frontend/src/features/authoring/wrapper/MultiInput.tsx b/frontend/src/features/authoring/wrapper/MultiInput.tsx index d7b1f3b7..05330a0c 100644 --- a/frontend/src/features/authoring/wrapper/MultiInput.tsx +++ b/frontend/src/features/authoring/wrapper/MultiInput.tsx @@ -5,6 +5,7 @@ type MultiInputProps = React.PropsWithChildren<{ values: MultiInputProps["value"][]; items?: ReactElement[]; onChange: (value: MultiInputProps["value"]) => void; + tooltip?: string; }>; function MultiInput({ @@ -13,10 +14,14 @@ function MultiInput({ items, onChange, children, + tooltip, }: MultiInputProps) { return (
    -
  • +
  • {children}