Pakete, Repositories und App-Kategorien suchen

Paketdetailsv0.3.0

hotkey_manager

Dieses Plugin ermöglicht Flutter-Desktop-Apps, System-/In-App-Global-Tastenkombinationen (also Kurzbefehle) zu definieren.

macOSWindowsLinux
30-Tage-Downloads
68.200
Likes
147
Pub-Punkte
140

Paket installieren

flutter pub add hotkey_manager

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Das hotkey_manager-Paket ermöglicht Flutter-Desktop-Anwendungen, auf macOS, Windows und Linux systemweite oder innerhalb der App befindliche Tastenkombinationen zu registrieren und darauf zu reagieren. Es erlaubt Entwicklern, benutzerdefinierte Hotkeys zu definieren, die bestimmte Aktionen auslösen, unabhängig davon, welches Anwendungsfenster aktiv ist, wodurch Benutzerproduktivität und Zugänglichkeit verbessert werden. Der Plugin integriert sich nahtlos in Flutter's Ereignisbehandlung und bietet eine einfache API zum Verwalten von Tastenkombinationen wie Strg+Umschalt+S oder Cmd+T. Ideal für Apps, die schnellen Zugriff auf Funktionen ohne Navigation durch Menüs benötigen.

Anwendungsfälle

  • Erstellen von globalen Kurzbefehlen für App-Aktionen
  • Schnellen Zugriff auf häufig verwendete Funktionen ermöglichen
  • Verbesserung der Barrierefreiheit durch Tastaturnavigation
  • Produktivitäts-Tools mit Kurzbefehlssupport erstellen
  • Integration in bestehende Desktop-Arbeitsabläufe

Hauptmerkmale

  • Unterstützt plattformübergreifende Systemhotkeys
  • Einfaches API zum Definieren von Tastenkombinationen
  • Plattformübergreifende Kompatibilität (macOS, Windows, Linux)
  • Nicht-intrusive Integration mit Flutter-Anwendungen
  • Behandelt Konflikte und doppelte Registrierungen

Geeignet für

  • Desktop-App-Entwickler, die mehrere Betriebssysteme ansprechen
  • Produktivitäts- und Nutzungssoftware
  • Apps, die erweiterte Tastaturinteraktion erfordern
  • Entwickler, die zugängliche Desktop-Erlebnisse erstellen

Hinweise

  • Erfordert plattformspezifische Berechtigungen auf einigen Systemen
  • Kann mit bestehenden Systemkurzbefehlen kollidieren
  • Nur für Desktop-Plattformen verfügbar
  • Erforderliche Bereinigung, um Speicherleck zu vermeiden
  • Nicht geeignet für mobile oder Web-Anwendungen

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

🚀 Ship Your App Faster: Try Fastforge - The simplest way to build, package and distribute your Flutter apps.

hotkey_manager

pub version

This plugin allows Flutter desktop apps to defines system/inapp wide hotkey (i.e. shortcut).


English | 简体中文


Platform Support

Linux macOS Windows
✔️ ✔️ ✔️

Quick Start

Installation

Add this to your package's pubspec.yaml file:

dependencies:
  hotkey_manager: ^0.2.3

Or

dependencies:
  hotkey_manager:
    git:
      path: packages/hotkey_manager
      url: https://github.com/leanflutter/hotkey_manager.git
      ref: main
Linux requirements

Run the following command

sudo apt-get install keybinder-3.0
Usage
import 'package:hotkey_manager/hotkey_manager.dart';

void main() async {
  // Must add this line.
  WidgetsFlutterBinding.ensureInitialized();
  // For hot reload, `unregisterAll()` needs to be called.
  await hotKeyManager.unregisterAll();

  runApp(MyApp());
}

Register/Unregsiter a system/inapp wide hotkey.

// ⌥ + Q
HotKey _hotKey = HotKey(
  key: PhysicalKeyboardKey.keyQ,
  modifiers: [HotKeyModifier.alt],
  // Set hotkey scope (default is HotKeyScope.system)
  scope: HotKeyScope.inapp, // Set as inapp-wide hotkey.
);
await hotKeyManager.register(
  _hotKey,
  keyDownHandler: (hotKey) {
    print('onKeyDown+${hotKey.toJson()}');
  },
  // Only works on macOS.
  keyUpHandler: (hotKey){
    print('onKeyUp+${hotKey.toJson()}');
  } ,
);

await hotKeyManager.unregister(_hotKey);

await hotKeyManager.unregisterAll();

Use HotKeyRecorder widget to help you record a hotkey.

HotKeyRecorder(
  onHotKeyRecorded: (hotKey) {
    _hotKey = hotKey;
    setState(() {});
  },
),

Please see the example app of this plugin for a full example.

Who's using it?

  • Airclap - Send any file to any device. cross platform, ultra fast and easy to use.
  • AuthPass - Password Manager based on Flutter for all platforms. Keepass 2.x (kdbx 3.x) compatible.
  • Biyi (比译) - A convenient translation and dictionary app.

API

HotKeyManager
Method Description Linux macOS Windows
register register an system/inapp wide hotkey. ✔️ ✔️ ✔️
unregister unregister an system/inapp wide hotkey. ✔️ ✔️ ✔️
unregisterAll unregister all system/inapp wide hotkeys. ✔️ ✔️ ✔️

Related Links

  • https://github.com/soffes/HotKey
  • https://github.com/kupferlauncher/keybinder

License

MIT

Kategorien

Abhängigkeiten

Abhängigkeiten 4 Einträge

  • hotkey_manager_platform_interface^0.2.0
  • nativeapi^0.5.6
  • uni_platform^0.1.3
  • uuid>=3.0.7 <5.0.0

Quell-Repository

Projekte, die dieses Paket verwenden