fix(editor): mid button drag in presentation mode (#12309)

Fixes https://linear.app/affine-design/issue/BS-3448

Before this PR, presentation mode would force quit if user either:

1. Press space
2. Drag with mouse middle button

Unfixed behavior:

https://github.com/user-attachments/assets/8ff4e13a-69a8-4de6-8994-bf36e6e3eb49

<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit

- **Bug Fixes**
	- Improved presentation mode to preserve your current panned view when exiting pan mode or toggling fullscreen, preventing unwanted viewport resets.
	- Spacebar actions are now correctly disabled when using the frame navigator tool, avoiding accidental tool switches.
- **New Features**
	- Enhanced presentation controls for smoother transitions and better handling of user navigation states.
	- Added a one-time toast notification for presentations without frames, shown only once per session for better user guidance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
doodlewind
2025-05-15 11:12:40 +00:00
parent 147fa9a6b1
commit b6e9c41ee3
5 changed files with 134 additions and 34 deletions
@@ -4,6 +4,7 @@ import type { NavigatorMode } from './frame-manager';
export type PresentToolOption = {
mode?: NavigatorMode;
restoredAfterPan?: boolean;
};
export class PresentTool extends BaseTool<PresentToolOption> {