Skip to content

Add iOS gesture shortcuts for quick actions #3

@BillSteinUNB

Description

@BillSteinUNB

Summary

Implement iOS gesture shortcuts to allow users to quickly perform common actions without navigating through menus.

Context

Mobile users benefit from gesture-based interactions that are faster than menu navigation. Adding swipe gestures or other iOS gestures could improve the user experience for frequently-used actions.

Proposed Gesture Actions

Based on user feedback, consider implementing gestures for:

1. Switch Projects (Swipe between projects)

  • Swipe left/right to quickly switch between open projects
  • Could use edge swipes or a two-finger swipe
  • This would be particularly useful for users working on multiple projects

2. Quick Model Switching

  • Long-press or swipe to cycle through favorite/recent models
  • Access the model selector more quickly without going through menus
  • Could allow setting a "favorite" model for instant access

3. Other Gesture Ideas

  • Swipe to dismiss notifications/panels
  • Pinch to zoom on code/files
  • Swipe gestures in chat to copy/delete messages
  • Edge swipe for sidebar navigation

Current Architecture

The app already has:

  • local.model.current() - gets current model
  • local.model.set() - sets the active model
  • Multiple project support via sync.data.project
  • Sidebar navigation for project switching

Technical Considerations

  • Use native iOS gesture recognizers
  • Consider gesture conflicts with existing interactions
  • Add settings to customize or disable gestures
  • Provide visual feedback when gestures are triggered
  • Ensure gestures work alongside keyboard/voice input

Scope

  • Research best gesture patterns for this type of app
  • Design gesture set that doesn't conflict with existing interactions
  • Implement gesture handling in the iOS layer
  • Add optional settings for gesture customization

Labels

  • enhancement
  • ux-improvement

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions