Skip to content

Nearby - QuickShare support#198

Merged
sameerasw merged 20 commits intodevelopfrom
nearby
Mar 12, 2026
Merged

Nearby - QuickShare support#198
sameerasw merged 20 commits intodevelopfrom
nearby

Conversation

@sameerasw
Copy link
Owner

This pull request introduces several significant improvements to the AirSync macOS project, focusing on enhancing Quick Share functionality, improving the drag-and-drop user experience, and adding new dependencies to support cryptographic and protocol features. The most notable changes include a major refactor of the drop target logic for file and text sharing, the addition of a new animated radar view for device selection, and the integration of multiple Swift packages for cryptography and protobuf support.

Quick Share and Drag-and-Drop Improvements:

  • Refactored the DropTargetModifier and related logic to use a custom DropDelegate (QuickShareDropDelegate). This enables more robust handling of drag-and-drop events, supports both file and text drops, provides dynamic overlay labeling based on modifier keys and device state, and improves user feedback during the drag operation. [1] [2]
  • Updated the overlay UI to show a dynamic label and improved visuals, enhancing the clarity of the drop target for users.

Quick Share Workflow Integration:

  • Changed the app's file and text sharing workflow so that dropped files and files opened via app delegate methods now trigger the Quick Share device discovery and transfer UI, instead of sending files directly via WebSocket. This centralizes and streamlines the sharing process. [1] [2]

UI Enhancements:

  • Added a new RadarView SwiftUI component that displays discovered devices as animated nodes around a central "self" node, providing an engaging and intuitive interface for selecting target devices during Quick Share.

Dependency Management:

  • Integrated new Swift packages: BigInt, ASN1, SwiftECC, and swift-protobuf, updating both the Xcode project and Package.resolved to support cryptographic operations and protobuf serialization. [1] [2] [3] [4] [5] [6] [7] [8] [9]

General Codebase Maintenance:

  • Added a bridging header for Objective-C/Swift interoperability and fixed a minor import issue in AppState.swift. [1] [2]

Most important changes:

Quick Share and Drag-and-Drop Improvements

  • Refactored DropTargetModifier to use a custom DropDelegate, enabling improved drag-and-drop handling for both files and text, dynamic overlay labels, and better user feedback. [1] [2]
  • Updated drop overlays to include dynamic labeling and enhanced visuals for a clearer user experience.

Quick Share Workflow Integration

  • Modified file and text sharing workflows to route all transfers through the Quick Share discovery and transfer UI, providing a unified and streamlined sharing experience. [1] [2]

UI Enhancements

  • Added a new animated RadarView component for device selection during Quick Share, improving the device discovery and selection interface.

Dependency Management

  • Integrated new Swift packages (BigInt, ASN1, SwiftECC, swift-protobuf) for cryptographic and protobuf support, updating both the Xcode project and SwiftPM configuration files. [1] [2] [3] [4] [5] [6] [7] [8] [9]

General Codebase Maintenance

  • Added a bridging header for Objective-C/Swift interoperability and fixed an import issue in AppState.swift. [1] [2]

@sameerasw sameerasw self-assigned this Mar 12, 2026
@sameerasw sameerasw added the enhancement New feature or request label Mar 12, 2026
@sameerasw sameerasw merged commit 86d2ac3 into develop Mar 12, 2026
1 check passed
@github-project-automation github-project-automation bot moved this from Backlog to Done in AirSync Features and Bugs Mar 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant