288 Commits

Author SHA1 Message Date
Thibault Jouan
7896af9485 Merge branch 'events-key_press-quit'
Implement a few basic classes to handle different concerns (Runner,
Manager, Dispatcher) and integrate them together with a hard coded hook
for `mod1+q' key binding, which will initiate program termination.
2015-04-09 00:30:17 +00:00
Thibault Jouan
ceac19b346 Quit on `mod1+q' key binding
* Loop our runner until it is "stopped";
* Use the event dispatcher to stop the runner on `mod1+q' key press;
* Tell the manager to grab the `q' key.
2015-04-09 00:30:13 +00:00
Thibault Jouan
224ae6be5f Implement Runner#run_until 2015-04-09 00:30:13 +00:00
Thibault Jouan
c8f12af987 Implement Manager#handle 2015-04-09 00:30:13 +00:00
Thibault Jouan
498feb809e Instanciate Manager with a mandatory Dispatcher 2015-04-09 00:30:13 +00:00
Thibault Jouan
7becda9f31 Implement Dispatcher#emit 2015-04-09 00:30:13 +00:00
Thibault Jouan
ca8f60365f Ignore /tmp/ from version control 2015-04-09 00:30:13 +00:00
Thibault Jouan
6b0676e547 Accept constructor options in Runner.run factory 2015-04-09 00:30:13 +00:00
Thibault Jouan
7c8b312084 Accept stopped status param in Runner constructor 2015-04-09 00:30:13 +00:00
Thibault Jouan
fd13accaf6 Assign a Dispatcher in new Runner instances 2015-04-09 00:30:13 +00:00
Thibault Jouan
585903240b Implement Manager#handle_pending_events 2015-04-09 00:30:13 +00:00
Thibault Jouan
d3007201cc Accept Display instance in Manager constructor 2015-04-09 00:30:13 +00:00
Thibault Jouan
b354ffcd62 Add stopped status notion in Runner 2015-04-09 00:30:12 +00:00
Thibault Jouan
44a69b75c6 Accept a Manager instance in Runner constructor 2015-04-09 00:30:12 +00:00
Thibault Jouan
b4b4f086d4 Implement Manager#grab_key 2015-04-09 00:30:12 +00:00
Thibault Jouan
84ad217d5b Implement a basic event dispatcher 2015-04-09 00:30:12 +00:00
Thibault Jouan
49fe77ddb1 Integrate our new Runner into CLI 2015-04-09 00:30:12 +00:00
Thibault Jouan
ea0034fd7e Implement basic Runner 2015-04-09 00:30:12 +00:00
Thibault Jouan
cd76c4e270 Implement basic Manager 2015-04-09 00:30:12 +00:00
Thibault Jouan
bc2ab4b9fa Fix coding standards (extra lines in specs) 2015-04-09 00:30:00 +00:00
Thibault Jouan
1b6a6f9cea Refactor CLI specs 2015-04-09 00:30:00 +00:00
Thibault Jouan
01d7805760 Add uhwm_wait_output cucumber helper 2015-04-08 16:46:58 +00:00
Thibault Jouan
f4b372ddcd Refactor Env with ruby Forwardable 2015-04-07 23:16:00 +00:00
Thibault Jouan
304db803f3 Introduce Env to manage CLI env and config 2015-04-07 23:13:28 +00:00
Thibault Jouan
12075323c5 Add rspec rake task 2015-04-07 21:56:55 +00:00
Thibault Jouan
422a940eae Implement basic CLI usage help 2015-04-07 21:56:49 +00:00
Thibault Jouan
f38a5761be Add rspec exit helpers 2015-04-07 17:33:35 +00:00
Thibault Jouan
1658a616a8 Configure guard for cucumber and rspec 2015-04-07 17:33:16 +00:00
Thibault Jouan
4051a10612 Declare Uh::WM own error classes 2015-04-07 17:32:47 +00:00
Thibault Jouan
9ecdeedc3d Configure cucumber to require support and steps 2015-04-07 17:31:57 +00:00
Thibault Jouan
7701b1d66d Setup rspec tests 2015-04-07 16:54:12 +00:00
Thibault Jouan
8f9b767ce1 Connect to X server 2015-04-07 10:35:52 +00:00
Thibault Jouan
75cf74c217 Setup headless gem (Xvfb testing) for tests 2015-04-06 20:21:59 +00:00
Thibault Jouan
f2bb9b7f50 Setup cucumber test env with aruba 2015-04-06 19:02:17 +00:00
Thibault Jouan
8f9deb654d Declare uh ~> 2.0 dependency 2015-04-06 16:36:48 +00:00
Thibault Jouan
33bf50d3ae Setup bundler to manage gem dependencies 2015-04-06 16:36:20 +00:00
Thibault Jouan
46056482a7 Setup uh-wm gem 2015-04-06 16:23:21 +00:00
Thibault Jouan
511ff3e059 Initial commit 2015-04-06 16:15:49 +00:00