Refactor Manager#handle
This commit is contained in:
parent
d46a332218
commit
0a8a6bc5fb
@ -42,16 +42,8 @@ module Uh
|
|||||||
end
|
end
|
||||||
|
|
||||||
def handle event
|
def handle event
|
||||||
case event.type
|
return unless respond_to? handler = "handle_#{event.type}".to_sym, true
|
||||||
when :key_press
|
send handler, event
|
||||||
key_selector = event.modifier_mask & KEY_MODIFIERS[:shift] == 1 ?
|
|
||||||
[event.key.to_sym, :shift] :
|
|
||||||
event.key.to_sym
|
|
||||||
@events.emit :key, *key_selector
|
|
||||||
when :map_request
|
|
||||||
@clients << client = Client.new(event.window)
|
|
||||||
@events.emit :manage, args: client
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
@ -61,6 +53,18 @@ module Uh
|
|||||||
@dispatcher.emit :error, args: args
|
@dispatcher.emit :error, args: args
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def handle_key_press event
|
||||||
|
key_selector = event.modifier_mask & KEY_MODIFIERS[:shift] == 1 ?
|
||||||
|
[event.key.to_sym, :shift] :
|
||||||
|
event.key.to_sym
|
||||||
|
@events.emit :key, *key_selector
|
||||||
|
end
|
||||||
|
|
||||||
|
def handle_map_request event
|
||||||
|
@clients << client = Client.new(event.window)
|
||||||
|
@events.emit :manage, args: client
|
||||||
|
end
|
||||||
|
|
||||||
def check_other_wm!
|
def check_other_wm!
|
||||||
Display.on_error { fail OtherWMRunningError }
|
Display.on_error { fail OtherWMRunningError }
|
||||||
@display.listen_events INPUT_MASK
|
@display.listen_events INPUT_MASK
|
||||||
|
Loading…
x
Reference in New Issue
Block a user