-
Notifications
You must be signed in to change notification settings - Fork 725
Closed
Milestone
Description
Right now, dragging is handled w/in TopLevel. This needs to change to be handled within Border (or in Application, but via an interface with Border).
- Define
ViewArrangement.Movable- if set and view has a top Border, it can be dragged with mouse. Always with keyboard (although no visual indicator if no border). - Define
ViewArrangement.Sizable- if set and a view has left/right/bottom Border it can be resized with mouse. Always with keyboard (although no visual indicator if no border). - Determine keyboard drag/size UI
- Remove temporary hack in
Application.cs:
Related:
My proposal:
Tiled Mode:
Mouse:
- Dragging
Bordertop or bottom resizes the view vertically - Dragging
Borderleft or right resizes the view horizontally
Keyboard:
- Hit
Ctrl+F5to enable Arrange Mode 1 - A line will get a
◊indicating it's active for resizing. Left/Right/Up/Down will size. - Tab to move to next line
- Shift-Tab to move back
Ctrl+F5orEscto exit Arrange Mode
Overlapped mode:
Mouse:
- Dragging
Bordertop moves the view - Dragging
Borderbottom resizes the view vertically - Dragging
Borderleft or right resizes the view horizontally
Keyboard:
- Hit
Ctrl+F5to enable Arrange Mode 1 - A
◊appears in top left corner of Border indicating Arrange Mode - If
ViewArrangement.Movableis setLeft/Right/Up/Downwill move the view TabandShift+Tabwill cycle through any sides that can be sized and "Move"- UNLESS:
ViewArrangement.Resizable(all side-flags) is set. Then◊appears in bottom right corner of Border.
- UNLESS:
- A side selected for sizing will get
◊centered indicating it's active for resizing. Left/Right/Up/Downwill size as appropriateCtrl+F5to exit Arrange Mode
Footnotes
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
✅ Done