Commit Graph

478 Commits

Author SHA1 Message Date
Zai-Chun Chen
e292e344b4
Feature hyprland (#216)
* init support for hyprland with hyprland-rs

* enable ci for feature* branches

* cargo fmt the code
2022-12-22 09:15:38 -08:00
Takashi Kokubun
d5fec95843 Version 0.7.12 2022-12-20 21:27:30 -08:00
Kai Xia(夏恺)
9f5002ee1b
Ensure the launched commands are not terminated by the stop of xremap. (#214)
* Ensure the launched commands are not terminated by the stop of xremap.

Fix #213.

Signed-off-by: Kai Xia <kaix+github@fastmail.com>

* also stop child processes on unhappy path.

Signed-off-by: Kai Xia <kaix+github@fastmail.com>

* fix fmt

Signed-off-by: Kai Xia <kaix+github@fastmail.com>

Signed-off-by: Kai Xia <kaix+github@fastmail.com>
2022-12-20 21:26:05 -08:00
Takashi Kokubun
cbf5cd027c Version 0.7.11 2022-12-17 13:01:24 -08:00
Lae Chen
a759d5b516
Reconnect to X11 when existing connection stops working. (#212) 2022-12-17 13:00:17 -08:00
Takashi Kokubun
2c9c628516 Version 0.7.10 2022-12-05 20:46:20 -08:00
Lae Chen
14ca00cae3
Introduce keymap level exact_match option (#209)
* Introduce keymap level `exact_match` option.

Example:

  keymap:
    - exact_match: true
      remap:
        M-f: C-right

Given the above, and M-Shift-f is pressed:

- If `exact_match` is false or unset, the existing behaviour will be used,
  which will translate M-Shift-f to C-Shift-right.

- If `exact_match` is true, M-Shift-f will be sent as is, i.e. not matched.

* Perform exact match first.
2022-12-05 20:45:29 -08:00
dependabot[bot]
1082271759
Bump anyhow from 1.0.65 to 1.0.66 (#206)
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.65 to 1.0.66.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.65...1.0.66)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-03 13:48:01 -08:00
Takashi Kokubun
97a538f67f Version 0.7.9 2022-12-03 13:47:35 -08:00
Lae Chen
8d3d62559e
Interleave pressing/releasing of modifier keys. (#208)
* Interleave pressing/releasing of modifier keys.

Pressing new modifier keys before releasing the old ones to avoid
triggering actions in applications that recognize the old keys.

For example, if we bind alt+f to ctrl+right, before this change, the
following key sequence is generated with alt+f:

(user)       send Alt_L      PRESS
(xremap)     send Alt_L      RELEASE
(xremap)     send Control_L  PRESS
(xremap)     send Right      PRESS
(xremap)     send Right      RELEASE
(xremap)     send Control_L  RELEASE
(xremap)     send Alt_L      PRESS
(user)       send Alt_L      RELEASE

The press + release of the alt key (both at the start and end of the
sequence) is causing apps like Firefox to show/focus the menu bar.

After this change, the following key sequence is generated with alt+f:

(user)       send Alt_L      PRESS
(xremap)     send Control_L  PRESS
(xremap)     send Alt_L      RELEASE
(xremap)     send Right      PRESS
(xremap)     send Right      RELEASE
(xremap)     send Alt_L      PRESS
(xremap)     send Control_L  RELEASE
(user)       send Alt_L      RELEASE

So the difference here is that we press the ctrl key before releasing
alt, so will not trigger apps like Firefox to show hide the menu when
alt+f is used, and a single press and release of the alt key will
still show the menu as their normal behavior.

As far as I can observe, this is also the behavior of AutoHotKey on Windows.

* Add test.
2022-12-03 13:40:28 -08:00
dependabot[bot]
5f97804180
Bump x11rb from 0.10.1 to 0.11.0 (#207)
Bumps [x11rb](https://github.com/psychon/x11rb) from 0.10.1 to 0.11.0.
- [Release notes](https://github.com/psychon/x11rb/releases)
- [Changelog](https://github.com/psychon/x11rb/blob/master/doc/changelog.md)
- [Commits](https://github.com/psychon/x11rb/compare/v0.10.1...v0.11.0)

---
updated-dependencies:
- dependency-name: x11rb
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-01 11:08:13 -08:00
dependabot[bot]
30b75c1086
Bump serde_yaml from 0.9.13 to 0.9.14 (#205)
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.9.13 to 0.9.14.
- [Release notes](https://github.com/dtolnay/serde-yaml/releases)
- [Commits](https://github.com/dtolnay/serde-yaml/compare/0.9.13...0.9.14)

---
updated-dependencies:
- dependency-name: serde_yaml
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-01 11:07:55 -08:00
dependabot[bot]
5013dcc58d
Bump clap from 3.2.22 to 3.2.23 (#203)
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.22 to 3.2.23.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v3.2.23/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.22...v3.2.23)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-01 11:07:45 -08:00
Takashi Kokubun
13e6b552d0
Test what actually happens 2022-11-01 23:06:35 -07:00
Takashi Kokubun
04df386833
Test something more meaningful 2022-11-01 23:00:36 -07:00
Takashi Kokubun
d02446a040
Split ActionDispatcher from EventHandler (#200)
* Introduce Event enum

* Rename KeyAction/Action to ModmapAction/KeymapAction

* Introduce Action enum and ActionDispatcher

* Convert OverrideTimeout to an event

* thread::sleep should also be an Action

* Command should also be an Action

* Make InputEvent an Action

* Start writing tests for EventHandler

* cargo fmt
2022-11-01 22:52:56 -07:00
Berwyn Hoyt
763b1b8746
Document feature that allows app-specific key overrides of a generic key map (#198)
* Document the feature that allows keys from a generic key map to be overridden for specific applications

* Remove mistaken extra lines in README

* Reduce duplication in example/config.yml by using the default/override key feature. It might be possible to further reduce the duplication in the IDEA config, but I cannot do so without knowing the author's intention
2022-10-23 21:34:23 -07:00
Takashi Kokubun
af7688520f
Version 0.7.8 2022-10-22 13:21:17 -07:00
Roland Fredenhagen
c2f8d5d468
fix: libinput dwt support (#196) 2022-10-22 13:17:27 -07:00
Takashi Kokubun
ae1b425141
Version 0.7.7 2022-10-19 22:10:24 -07:00
Takashi Kokubun
f3f9e53f5a
Flush pending keys with an override remap correctly
Close #154
2022-10-19 22:09:36 -07:00
Takashi Kokubun
bfb8604add
Version 0.7.6 2022-10-10 21:38:07 -07:00
Kazuyoshi Kato
dfe27fe71d
Add keypress_delay_ms to workaround #179 (#191)
Close #179
2022-10-10 21:36:29 -07:00
Takashi Kokubun
32011d6a5f
Merge pull request #186 from k0kubun/dependabot/cargo/clap-3.2.22
Bump clap from 3.2.21 to 3.2.22
2022-10-01 20:48:01 -07:00
Takashi Kokubun
4755135c1f
Merge pull request #184 from k0kubun/dependabot/cargo/env_logger-0.9.1
Bump env_logger from 0.9.0 to 0.9.1
2022-10-01 20:47:50 -07:00
Takashi Kokubun
06a06c3007
Merge pull request #182 from k0kubun/dependabot/cargo/serde-1.0.145
Bump serde from 1.0.144 to 1.0.145
2022-10-01 20:47:41 -07:00
dependabot[bot]
82e184b72d
Bump clap from 3.2.21 to 3.2.22
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.21 to 3.2.22.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v3.2.22/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.21...v3.2.22)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-01 17:05:42 +00:00
dependabot[bot]
ac0a39d3dd
Bump env_logger from 0.9.0 to 0.9.1
Bumps [env_logger](https://github.com/env-logger-rs/env_logger) from 0.9.0 to 0.9.1.
- [Release notes](https://github.com/env-logger-rs/env_logger/releases)
- [Changelog](https://github.com/env-logger-rs/env_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/env-logger-rs/env_logger/compare/v0.9.0...v0.9.1)

---
updated-dependencies:
- dependency-name: env_logger
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-01 17:05:35 +00:00
dependabot[bot]
0c41f930bb
Bump serde from 1.0.144 to 1.0.145
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.144 to 1.0.145.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.144...v1.0.145)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-01 17:05:27 +00:00
Takashi Kokubun
d58aa94616
Merge pull request #174 from k0kubun/dependabot/cargo/serde_yaml-0.9.13
Bump serde_yaml from 0.9.4 to 0.9.13
2022-09-24 21:53:19 +09:00
Takashi Kokubun
a78ac3e296
Merge pull request #177 from dottorblaster/update-readme-uinput-uaccess
Add TAG+="uaccess" in the udev's rule
2022-09-20 22:59:38 +09:00
Alessio Biancalana
127bcee08d Add TAG+="uaccess" in the udev's rule 2022-09-20 15:35:44 +02:00
dependabot[bot]
51000e3807
Bump serde_yaml from 0.9.4 to 0.9.13
Bumps [serde_yaml](https://github.com/dtolnay/serde-yaml) from 0.9.4 to 0.9.13.
- [Release notes](https://github.com/dtolnay/serde-yaml/releases)
- [Commits](https://github.com/dtolnay/serde-yaml/compare/0.9.4...0.9.13)

---
updated-dependencies:
- dependency-name: serde_yaml
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-15 12:34:38 +00:00
Takashi Kokubun
26f62a7c2b
Merge pull request #173 from k0kubun/dependabot/cargo/anyhow-1.0.65
Bump anyhow from 1.0.63 to 1.0.65
2022-09-15 21:33:52 +09:00
dependabot[bot]
3115686bdc
Bump anyhow from 1.0.63 to 1.0.65
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.63 to 1.0.65.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.63...1.0.65)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-15 12:33:42 +00:00
Takashi Kokubun
2d0d35a884
Merge pull request #175 from k0kubun/dependabot/cargo/serde_with-2.0.1
Bump serde_with from 2.0.0 to 2.0.1
2022-09-15 21:33:30 +09:00
Takashi Kokubun
e48b5411de
Merge pull request #176 from k0kubun/dependabot/cargo/clap_complete-3.2.5
Bump clap_complete from 3.2.3 to 3.2.5
2022-09-15 21:33:20 +09:00
dependabot[bot]
18f5772530
Bump serde_with from 2.0.0 to 2.0.1
Bumps [serde_with](https://github.com/jonasbb/serde_with) from 2.0.0 to 2.0.1.
- [Release notes](https://github.com/jonasbb/serde_with/releases)
- [Commits](https://github.com/jonasbb/serde_with/compare/v2.0.0...v2.0.1)

---
updated-dependencies:
- dependency-name: serde_with
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-15 12:33:18 +00:00
dependabot[bot]
dfa7b89921
Bump clap_complete from 3.2.3 to 3.2.5
Bumps [clap_complete](https://github.com/clap-rs/clap) from 3.2.3 to 3.2.5.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v3.2.3...clap_complete-v3.2.5)

---
updated-dependencies:
- dependency-name: clap_complete
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-15 12:33:14 +00:00
Takashi Kokubun
46e8f3945b
Merge pull request #172 from k0kubun/dependabot/cargo/serde_json-1.0.85
Bump serde_json from 1.0.82 to 1.0.85
2022-09-15 21:32:22 +09:00
dependabot[bot]
5796280207
Bump serde_json from 1.0.82 to 1.0.85
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.82 to 1.0.85.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.82...v1.0.85)

---
updated-dependencies:
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-15 12:31:56 +00:00
Takashi Kokubun
3604e24e13
Merge pull request #167 from k0kubun/dependabot/cargo/serde-1.0.144
Bump serde from 1.0.141 to 1.0.144
2022-09-15 21:31:50 +09:00
Takashi Kokubun
35d8832d77
Merge pull request #169 from k0kubun/dependabot/cargo/nix-0.25.0
Bump nix from 0.24.2 to 0.25.0
2022-09-15 21:31:42 +09:00
Takashi Kokubun
f02bc89c55
Merge pull request #171 from k0kubun/dependabot/cargo/clap-3.2.21
Bump clap from 3.2.16 to 3.2.21
2022-09-15 21:31:23 +09:00
dependabot[bot]
9dfe2cad10
Bump clap from 3.2.16 to 3.2.21
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.16 to 3.2.21.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v3.2.21/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.16...v3.2.21)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-13 12:25:50 +00:00
dependabot[bot]
8329d54881
Bump nix from 0.24.2 to 0.25.0
Bumps [nix](https://github.com/nix-rust/nix) from 0.24.2 to 0.25.0.
- [Release notes](https://github.com/nix-rust/nix/releases)
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/compare/v0.24.2...v0.25.0)

---
updated-dependencies:
- dependency-name: nix
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-13 12:25:25 +00:00
dependabot[bot]
f70f98ba52
Bump serde from 1.0.141 to 1.0.144
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.141 to 1.0.144.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.141...v1.0.144)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-13 12:25:19 +00:00
Takashi Kokubun
752e92b676
Merge pull request #161 from k0kubun/dependabot/cargo/anyhow-1.0.63
Bump anyhow from 1.0.59 to 1.0.63
2022-09-13 21:25:02 +09:00
Takashi Kokubun
c01e511d7c
Merge pull request #160 from k0kubun/dependabot/cargo/evdev-0.12.0
Bump evdev from 0.11.4 to 0.12.0
2022-09-13 21:24:51 +09:00
Takashi Kokubun
36ad4db086
Merge pull request #159 from k0kubun/dependabot/cargo/swayipc-3.0.1
Bump swayipc from 3.0.0 to 3.0.1
2022-09-13 21:24:38 +09:00