xinput_wrapperplus 0.4.3 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 17f7c9962bda5c450ccf2255914fcc3d578f4bfd1881c4297b728764afcaeb0d
4
- data.tar.gz: f9e67bdc4325d252e5dacb74b75c2c0ebae60252d52c2900e577c2d0cadc0e23
3
+ metadata.gz: e7895cc28fe6d61322a6ec002f8dcded48d448c5dea63b4264181d9cd4a06a6f
4
+ data.tar.gz: 6368b33575a4e730fc58e42cdd4b4f50ed9ce728061bbb073f9ad30a28c65822
5
5
  SHA512:
6
- metadata.gz: 5352fc684255d867db2432619244b302e6a34a98acc536402a4da073b3ee660667caf33c307fdfffc860dd886f2cca6f6168c4d78978d541c5689e427f4b37e4
7
- data.tar.gz: 170ed7c1a421a4f0a0c1ac1b86d7b2cec01ff72169d48725eb8e2051e3dbb5aa80e353e33ec6965e82b81a203dce4f6b83f80b56627b2c8c0780dbbdd77e8d19
6
+ metadata.gz: 85d621312320338465c881475f038054a758f43666469295bf4f572dadb23a299d64a673ce66ce8aab1777d85aefe896711c9df8f2f9a242d40d2e6f2912e6cd
7
+ data.tar.gz: 5932216f417c697613ede7355ed9b30e42e50479e21f5e679f6913a52aa4137b522ace656aedb8e3935509408d3abd1fe842d7c57896f8dec910967d890dca3c
checksums.yaml.gz.sig CHANGED
Binary file
@@ -3,6 +3,7 @@
3
3
  # file: xinput_wrapperplus.rb
4
4
 
5
5
 
6
+ require 'wmctrl'
6
7
  require 'sps-pub'
7
8
  require 'secret_knock'
8
9
  require 'xinput_wrapper'
@@ -12,7 +13,8 @@ class XInputWrapperPlus < XInputWrapper
12
13
  def initialize(host: 'sps', port: '59000',
13
14
  topic: 'input', verbose: true, lookup: {},
14
15
  debug: false, capture_all: false, keys: [],
15
- keypress_detection: true, motion_detection: true)
16
+ keypress_detection: true, motion_detection: true,
17
+ window_context: false)
16
18
 
17
19
  puts 'before super'
18
20
  super(verbose: verbose, lookup: lookup,
@@ -22,15 +24,17 @@ class XInputWrapperPlus < XInputWrapper
22
24
  @topic, @capture_all = topic, capture_all
23
25
  @keypress_detection = keypress_detection
24
26
  @motion_detection = motion_detection
27
+ @window_context = window_context
25
28
 
26
29
  @sps = SPSPub.new host: host, port: port
27
30
 
28
31
  @sk = SecretKnock.new short_delay: 0.25, long_delay: 0.5,
29
32
  external: self, verbose: verbose, debug: debug
30
33
  @sk.detect timeout: 0.7
34
+ @interval = 120
31
35
 
32
36
  @a = [] # Used to store mouse gestures
33
- @timer, @t2 = nil , Time.now - 30
37
+ @timer, @t2 = nil , Time.now - @interval
34
38
 
35
39
  end
36
40
 
@@ -46,7 +50,18 @@ class XInputWrapperPlus < XInputWrapper
46
50
 
47
51
  topic = [@topic, subtopic].compact.join('/')
48
52
 
49
- @sps.notice "%s: %s" % [topic, msg]
53
+ if @window_context then
54
+
55
+ wm = WMCtrl.display
56
+ win = wm.windows.find {|x| x.active}
57
+
58
+ @sps.notice "%s: %s in %s" % [topic, msg, win.title]
59
+
60
+ else
61
+
62
+ @sps.notice "%s: %s" % [topic, msg]
63
+
64
+ end
50
65
 
51
66
  end
52
67
 
@@ -54,7 +69,7 @@ class XInputWrapperPlus < XInputWrapper
54
69
 
55
70
  def anykey_press()
56
71
 
57
- if @keypress_detection and (Time.now > @t2 + 30) then
72
+ if @keypress_detection and (Time.now > @t2 + @interval) then
58
73
  message 'keypress detected', nil
59
74
  @t2 = Time.now
60
75
  end
@@ -90,7 +105,7 @@ class XInputWrapperPlus < XInputWrapper
90
105
  puts "on_mousemove() x: %s y: %s" % [x, y]
91
106
  end
92
107
 
93
- if @motion_detection and (Time.now > @t2 + 30) then
108
+ if @motion_detection and (Time.now > @t2 + @interval) then
94
109
  message 'motion detected', nil
95
110
  @t2 = Time.now
96
111
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xinput_wrapperplus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -11,32 +11,52 @@ cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
13
  MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
14
- YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMjAwODI1MTI0NjA1WhcN
15
- MjEwODI1MTI0NjA1WjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
- cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQDUcQ9Q
17
- hWoREpFe1iiNNIh72yJEQOy7wlCjQN7hf57/0yqU1Lb37mfRdSQXEhAWJakWxPn/
18
- VhTr9lhh7XgIIrDDMIIM0+qe0Ean+ctTQSl0kVTD0gz2yJ1Gn4S96vf69YeoLOr/
19
- rnidQqQgMJ2yh6fmwbsXNLpBMhd2ZU0ly1ly6b6jkH4gkJLSSPakZ4cc2tbTcqsu
20
- goh5h16uc/Mwmk/f/UCsSfuvyRM5gFTthfkXloGTBsvznN8xtnZlwmU+8Jwjp4HQ
21
- HUfYvDtIwyCW44osWP+Av9IVNCv2OjJJgTc8EG58HW/rTLc+Nk7i7BqHAbRV9SJs
22
- eVBLz/CUmi1yYy93vQtCwjwhOYpx+b12k2bISlNcHETzkHMdue0w1qXqdgD3kxkF
23
- k/aLXRYaHAGK73hiJMtYjOQ6+WmzApeE+PfoZpL7HjAb0Emh+OdyjNMtPjl3sZbI
24
- s/C5Cm+p7kDw8J3BmPFsboc4nQ51qni1z4G0xP0s3Ka4HvUrRvXsMYc08CMCAwEA
25
- AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUi8p2+J9R
26
- y5R2KBWLSfNYrFOHyfQwJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
14
+ YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMjExMDIwMjE0NTAxWhcN
15
+ MjIxMDIwMjE0NTAxWjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
+ cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQDToY1O
17
+ pXBMvrOeQQ+WsEh1bdzbNsZ6H00RGjnrRd5sH4w7B6NtrtWL5lqvVh82H54kUrLC
18
+ THtj0dKXeMeau/0SrWnAkmCoYvo9fkhU/HolRuQj3y4IlTQt7yVMV3Gs2T9PZBd1
19
+ 4qkjk6AMxpl32J2feUTHxEULQYbpUU+4uxzVfvc5LUmGuCuirqFSTxp/tHgLBAtJ
20
+ SH56z9Lb8pUO+YDFTocPuhAtlHVs+RkgRhcu2xubwveuJkBFPwSu40LqWOdm0Wrr
21
+ QC2RlVPTgQbi/8VLjDmtPn+Xxd/fY/yWbBvLdZ1Es2ube0SHBUKlL4zFkrZgXF7F
22
+ qHhCBavPfKRTr7FQtaYebYNe9qDI/TTGJTRMBSAGFNcJe5gCCppvz5WZdnwAtSPl
23
+ ywfKrNQP2mkgfRKj2Potx64HzwrAPPCXjhx8OPP39C8uYf3Dm8tUQhQVBGH/lS/s
24
+ nSVQEx9AIdFuyi8c7gvA9gfKcAj6LwIp3fwfze7B6fBgDWG6Ht3iW5G2KBUCAwEA
25
+ AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUo1hUdvyD
26
+ BLC0iRk0YjLl7MQBhTkwJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
27
27
  c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
28
- BgkqhkiG9w0BAQsFAAOCAYEAJpNOwQqItRT8dE38iQ9/J7x8fsSb9mBqKMwrqc9/
29
- 5H8bKu49A+UDOlaS1ESvRAVKLL3mSlhxE56OUdfZsFHaoRyZkKp285l4HVgcmxJD
30
- CrTqNIFDAMEnaG4FFwE3xcTHSCnSdxpVfgztz/KjLkwlWTumi7U3AQhlx3Yy8u4F
31
- 5GnJ8Xnx94luWBMUlLPvIZo0gCHqomPAtd0OgGqmjsoAiZ90eYBieClDXUkHcQ9U
32
- OZnar7W/SgfG8LGk+QYsffaVIZqzXT4vGyNBv3Yzt2Wrt7u/ZLNXgpaGS44kOBOU
33
- C8PaoyXBQBUZNZQEYY0rKHqH/8yjKHHgueW1J2tULyk8FQEY2HVWXK/mSwE31S8n
34
- 8rGJOGPSxtF8oNfS74KVO99PqLk4bp3vHjZp/jt07cQr2QiHyHq3hRBrA/U8WU6j
35
- MAr0EaAbP4GPbdRnYZObrq03xJQOARWVRbH726l6usXEpiepoBKFXfqGNXX6DDt/
36
- 2f3lRa47HGk7I26OxNboAPZQ
28
+ BgkqhkiG9w0BAQsFAAOCAYEArMhKCPkUIxpPt+qIys3kaK6KwThCvLvOE6I8ZRNR
29
+ OOsmvfVxGueXwsy1v8m5IAO9RD7M+n0ZnbL3prELC61WUGAfcg+uq1QeyNubFGp1
30
+ tNAq4aYRNFISXbbls8ltN4Rc02FiD+qQWKusnJZNV9KKPPTUK80z7krnJ92IG/1X
31
+ 7dD8X2mTlYn/GaEcUdErzFdfUY6W1NhJtpduExV/zQn1cVLyawnqtYXZVNNHs0yn
32
+ fF4zMYg8zwyC3NoiBsw4ttOafbSKBIsPxdQlte4dGy6dr8PeFEj17BoezHtA4Wy4
33
+ TyZy0Mz4faHE1ZX8pePjcEfytF8tA4mY5ZSzA9at4AdItmqsXMEs+2Vq1ldHbe4i
34
+ BSsNM6FTzF8Cs7g66gOjumXRnWXhpndrJ0xgg9eDd+GT4VZd9hrp8c8XhV/G79MQ
35
+ u085o8gsCVOJC4P40gYteNm1nfOXtueJsOiLWvvwVUPNWEclrXGotC6M9oQ05tIw
36
+ WRJtwtBTRvaGT4z1I+tAttJt
37
37
  -----END CERTIFICATE-----
38
- date: 2020-08-28 00:00:00.000000000 Z
38
+ date: 2021-10-20 00:00:00.000000000 Z
39
39
  dependencies:
40
+ - !ruby/object:Gem::Dependency
41
+ name: ruby-wmctrl
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '0.0'
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: 0.0.8
50
+ type: :runtime
51
+ prerelease: false
52
+ version_requirements: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - "~>"
55
+ - !ruby/object:Gem::Version
56
+ version: '0.0'
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: 0.0.8
40
60
  - !ruby/object:Gem::Dependency
41
61
  name: sps-pub
42
62
  requirement: !ruby/object:Gem::Requirement
@@ -98,7 +118,7 @@ dependencies:
98
118
  - !ruby/object:Gem::Version
99
119
  version: 0.8.1
100
120
  description:
101
- email: james@jamesrobertson.eu
121
+ email: digital.robertson@gmail.com
102
122
  executables: []
103
123
  extensions: []
104
124
  extra_rdoc_files: []
@@ -123,7 +143,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
123
143
  - !ruby/object:Gem::Version
124
144
  version: '0'
125
145
  requirements: []
126
- rubygems_version: 3.0.3
146
+ rubyforge_project:
147
+ rubygems_version: 2.7.10
127
148
  signing_key:
128
149
  specification_version: 4
129
150
  summary: A wrapper for the Linux utility xinput. Publishes an SPS message whenever
metadata.gz.sig CHANGED
Binary file