This PR implements click-to-change-mode functionality for the `ApprovalModeIndicator` component, as requested in issue #27035.
Added JSDoc and inline comments with links to https://github.com/google-gemini/gemini-cli/issues/27035 in `ApprovalModeIndicator.tsx` and `useApprovalModeIndicator.ts` to address maintainer feedback.
Changes:
- Refactored `useApprovalModeIndicator` hook to return an object with `cycleApprovalMode` and `toggleYolo` functions.
- Added `cycleApprovalMode` to `UIActions` context to allow components to trigger mode changes.
- Updated `AppContainer.tsx` to expose `cycleApprovalMode` via `uiActions`.
- Updated `ApprovalModeIndicator.tsx` to use `useMouseClick` and call `cycleApprovalMode` on click.
- Added a "click or " hint to the indicator text when mouse mode is enabled.
- Updated unit tests for `useApprovalModeIndicator` and `ApprovalModeIndicator`.
CC: @NTaylorMullen @gundermanc
Closes: #27035
This PR implements click-to-change-mode functionality for the `ApprovalModeIndicator` component, as requested in issue #27035.
Changes:
- Refactored `useApprovalModeIndicator` hook to return an object with `cycleApprovalMode` and `toggleYolo` functions.
- Added `cycleApprovalMode` to `UIActions` context to allow components to trigger mode changes.
- Updated `AppContainer.tsx` to expose `cycleApprovalMode` via `uiActions`.
- Updated `ApprovalModeIndicator.tsx` to use `useMouseClick` and call `cycleApprovalMode` on click.
- Added a "click or " hint to the indicator text when mouse mode is enabled.
- Updated unit tests for `useApprovalModeIndicator` and `ApprovalModeIndicator`.
CC: @google-gemini-maintainers