xdrp 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (6) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/lib/xdrp.rb +36 -10
  4. data.tar.gz.sig +0 -0
  5. metadata +1 -1
  6. metadata.gz.sig +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 877d673daa2960b793ced8a05fe174b7c5b314bcf87731b4a117f4e2440daf27
4
- data.tar.gz: '09449b766c010a1dc6fd3412101cd4fee9fa4b935d680ec7c0d1c3ea8a3040b2'
3
+ metadata.gz: 737ab10b27c806f92b76fd5c622e913df7ae8b97d3027a30c2d37cf27714ca33
4
+ data.tar.gz: 1145d42168fddfb29b70c8339d4a80717873160d261a93cfced4ea17186bf2c4
5
5
  SHA512:
6
- metadata.gz: f6c4fb1c63da4598afaf563f7493830fae943c38e0cd885e3460ec6e4dc8ccc2f75b36e5e6d291840d191ff6bc9ce24cfb8148c795b5e4cdc565392bc4ebd4f0
7
- data.tar.gz: ea8cafca863a30340179a4f8666d1d3684f64ee89a89716c1ef551cd95961060c9735b3ebe44b30ddcd919fca85a7395e8f8def615440d45cac335ac3e1e7a56
6
+ metadata.gz: 7de5de83cfae5ff60214a93ec8ffab23f5d0429656c8c86273dcb54c330fa99059ac4a9d1d5fbf5787d9fde50d065c63c18c7d2ea4e26241c0ead56b1ca603f3
7
+ data.tar.gz: 6fc90d8cb24aafde37c44895563b17b585bf50eb9d3794f387c6cd62d32a4dc386cfd3ab3e0104b308965085915f667da604fe4f32f9b74ad5d8a95a47df04d8
checksums.yaml.gz.sig CHANGED
Binary file
data/lib/xdrp.rb CHANGED
@@ -33,8 +33,6 @@ module Xdrp
33
33
 
34
34
  def initialize(levelx=KEYBOARD_MOUSE, level: levelx, debug: false)
35
35
 
36
- @xiw = XInputWrapper.new(verbose: true, debug: debug, callback: self)
37
-
38
36
  @mouse, @keyboard = false, false
39
37
 
40
38
  case level
@@ -45,6 +43,13 @@ module Xdrp
45
43
  when 3
46
44
  @mouse, @keyboard = true, true
47
45
  end
46
+
47
+
48
+ @xiw = XInputWrapper.new(verbose: true, debug: debug, callback: self)
49
+
50
+ @wm = WMCtrl.display
51
+ @win_title = ''
52
+
48
53
  end
49
54
 
50
55
  def on_keypress(key, keycode, modifier=nil)
@@ -80,12 +85,12 @@ module Xdrp
80
85
  %w[) ! " £ $ % ^ & * ( ][key.to_s.to_i]
81
86
  else
82
87
 
83
- lsym = %w(` - = [ ] ; ' # \ , . /)
88
+ lsym = %i(` - = [ ] ; ' # \ , . /)
84
89
 
85
- if lsym.include? key.to_s then
90
+ if lsym.include? key then
86
91
 
87
92
  usym = %w(¬ _ + { } : @ ~ | < > ?)
88
- lsym.zip(usym).to_h[key.to_s]
93
+ lsym.zip(usym).to_h[key]
89
94
 
90
95
  end
91
96
 
@@ -118,7 +123,8 @@ module Xdrp
118
123
 
119
124
  def on_mousedown(button, x, y)
120
125
 
121
- return unless @mouse
126
+ return unless @mouse
127
+ monitor_app()
122
128
 
123
129
  puts "mouse %s button down at %s, %s" % [button, x, y] if @debug
124
130
  add_sleep() if Time.now > (@t1 + 2)
@@ -129,7 +135,6 @@ module Xdrp
129
135
  def on_mouseup(button, x, y)
130
136
 
131
137
  return unless @mouse
132
-
133
138
  puts "mouse %s button up at %s, %s" % [button, x, y] if @debug
134
139
  end
135
140
 
@@ -194,6 +199,17 @@ module Xdrp
194
199
  @a << [:sleep, {duration: (Time.now - @t1).round}]
195
200
  @t1 = Time.now
196
201
  end
202
+
203
+ def monitor_app()
204
+
205
+ win = @wm.windows.find {|x| x.active}
206
+
207
+ if win.title != @win_title then
208
+ @win_title = win.title
209
+ @a << [:window, {activate: win.title}]
210
+ end
211
+
212
+ end
197
213
 
198
214
  end
199
215
 
@@ -202,7 +218,8 @@ module Xdrp
202
218
  def initialize(src, debug: false)
203
219
 
204
220
  @debug = debug
205
- @doc = Rexle.new(RXFHelper.read(src).first)
221
+ @doc = Keystroker.new(src, debug: debug).to_doc
222
+ puts '@doc.xml: ' + @doc.xml if @debug
206
223
 
207
224
  end
208
225
 
@@ -238,13 +255,22 @@ module Xdrp
238
255
  sleep duration.to_f
239
256
  end
240
257
 
241
- def xdo_tab(h={})
242
- XDo::Keyboard.tab
258
+ def xdo_tab(times: 1)
259
+ times.to_i.times.each { XDo::Keyboard.tab }
243
260
  end
244
261
 
245
262
  def xdo_type(s)
246
263
  XDo::Keyboard.simulate(s.gsub('{enter}', "\n"))
247
264
  end
265
+
266
+ def xdo_window(activate: '')
267
+
268
+ wm = WMCtrl.display
269
+ window = wm.windows.find {|x| x.title == activate}
270
+ window.activate
271
+
272
+ end
273
+
248
274
 
249
275
  end
250
276
 
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xdrp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
metadata.gz.sig CHANGED
Binary file