keypress_listener 1.0.0

  • Installing
  • Versions
  • 53


Helper to catch key combinations


import 'package:key_listener/key_listener.dart';

class SomeElement extends HtmlElement {

  StreamSubscription<KeyboardEvent> _duplicateKeySub;


  void attached() {
    _duplicateKeySub = KeyListener.listenKeyPressed(keys: 'ctrl+d cmd+d')
  void detached() {
    _duplicateKeySub = null;
  void keyListener_onDuplicateKey(KeyboardEvent e) {
    //skip events from text field (if you need)
    if (document.activeElement == document.body) {
      // TODO something

1. Depend on it

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

  keypress_listener: "^1.0.0"

2. Install it

You can install packages from the command line:

with pub:

$ pub get

Alternatively, your editor might support pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:keypress_listener/key_listener.dart';
Version Uploaded Documentation Archive
1.0.0 Oct 3, 2017 Go to the documentation of keypress_listener 1.0.0 Download keypress_listener 1.0.0 archive


This feature is new.
We welcome feedback.
More details: scoring.

We analyzed this package, and provided a score, details, and suggestions below.

  • tool failures on Feb 3, 2018
  • Dart: 2.0.0-dev.20.0
  • pana: 0.10.1


Describes how popular the package is relative to other packages. [more]
28 / 100
Code health derived from static analysis. [more]
78 / 100
Reflects how tidy and up-to-date the package is. [more]
76 / 100
Overall score:
Weighted score of the above. [more]


Detected platforms: web

Platform components identified in package: html.


  • Fix lib/src/KeyListener.dart.

    Strong-mode analysis of lib/src/KeyListener.dart failed with the following error:

    line: 106 col: 3
    Invalid override. The type of '_KeyCombo.==' ('(_KeyCombo) → bool') isn't a subtype of 'Object.==' ('(dynamic) → bool').

  • Maintain

    Changelog entries help clients to follow the progress in your code.

  • Fix issues reported by dartanalyzer.

    dartanalyzer reported 1 error(s) and 0 warning(s).

  • The description is too short.

    Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

  • Maintain an example.

    Create a short demo in the example/ directory to show how to use this package. Common file name patterns include: main.dart, example.dart or you could also use keypress_listener.dart.