Refactor Manager#handle
This commit is contained in:
parent
d46a332218
commit
0a8a6bc5fb
@ -42,16 +42,8 @@ module Uh
|
||||
end
|
||||
|
||||
def handle event
|
||||
case event.type
|
||||
when :key_press
|
||||
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
|
||||
return unless respond_to? handler = "handle_#{event.type}".to_sym, true
|
||||
send handler, event
|
||||
end
|
||||
|
||||
|
||||
@ -61,6 +53,18 @@ module Uh
|
||||
@dispatcher.emit :error, args: args
|
||||
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!
|
||||
Display.on_error { fail OtherWMRunningError }
|
||||
@display.listen_events INPUT_MASK
|
||||
|
Loading…
x
Reference in New Issue
Block a user