desktop_drop 0.2.0
desktop_drop: ^0.2.0 copied to clipboard

A plugin which allows user dragging files to your flutter desktop applications.

desktop_drop #

Pub

A plugin which allows user dragging files to your flutter desktop applications.

Windows
Linux
macOS
Android✅(preview)
Web

Getting Started #

  1. Add desktop_drop to your pubspec.yaml.
  desktop_drop: $latest_version
  1. Then you can use DropTarget to receive file drop events.
class ExmapleDragTarget extends StatefulWidget {
  const ExmapleDragTarget({Key? key}) : super(key: key);

  @override
  _ExmapleDragTargetState createState() => _ExmapleDragTargetState();
}

class _ExmapleDragTargetState extends State<ExmapleDragTarget> {
  final List<Uri> _list = [];

  bool _dragging = false;

  @override
  Widget build(BuildContext context) {
    return DropTarget(
      onDragDone: (detail) {
        setState(() {
          _list.addAll(detail.urls);
        });
      },
      onDragEntered: (detail) {
        setState(() {
          _dragging = true;
        });
      },
      onDragExited: (detail) {
        setState(() {
          _dragging = false;
        });
      },
      child: Container(
        height: 200,
        width: 200,
        color: _dragging ? Colors.blue.withOpacity(0.4) : Colors.black26,
        child: _list.isEmpty
            ? const Center(child: Text("Drop here"))
            : Text(_list.join("\n")),
      ),
    );
  }
}

LICENSE #

see LICENSE file

76
likes
110
pub points
87%
popularity

Publisher

mixin.dev

A plugin which allows user dragging files to your flutter desktop applications.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

Apache-2.0 (LICENSE)

Dependencies

flutter, flutter_web_plugins

More

Packages that depend on desktop_drop