Module: Mouse

Extended by:
FFI::Library
Defined in:
lib/mouse.rb

Defined Under Namespace

Classes: Input, InputEvent, MouseInput

Constant Summary collapse

MOUSEEVENTF_MOVE =
1
INPUT_MOUSE =
0
MOUSEEVENTF_ABSOLUTE =
0x8000

Class Method Summary collapse

Class Method Details

.jitter_forever_in_own_threadObject



33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/mouse.rb', line 33

def self.jitter_forever_in_own_thread
  
  myinput = Mouse::Input.new
  myinput[:type] = Mouse::INPUT_MOUSE

  in_evt = myinput[:evt][:mi]

  in_evt[:mouse_data] = 0
  in_evt[:flags] = Mouse::MOUSEEVENTF_MOVE # | Mouse::MOUSEEVENTF_ABSOLUTE
  in_evt[:time] = 0
  in_evt[:extra] = 0
  in_evt[:dx] = 0
  in_evt[:dy] = 8 # just enough for VLC full screen...

  Thread.new {
    loop {
      in_evt[:dy] *= -1
      Mouse.SendInput(1, myinput, Mouse::Input.size)
      in_evt[:dy] *= -1
      sleep 0.05
      Mouse.SendInput(1, myinput, Mouse::Input.size)
      sleep 0.75
    }
  }
  
end