class Uh::WM::Client

Attributes

geo[RW]
unmap_count[RW]
window[R]

Public Class Methods

new(window, geo = nil) click to toggle source
# File lib/uh/wm/client.rb, line 9
def initialize window, geo = nil
  @window       = window
  @geo          = geo
  @visible      = false
  @unmap_count  = 0
end

Public Instance Methods

configure() click to toggle source
# File lib/uh/wm/client.rb, line 41
def configure
  @window.configure @geo
  self
end
focus() click to toggle source
# File lib/uh/wm/client.rb, line 64
def focus
  @window.raise
  @window.focus
  self
end
hidden?() click to toggle source
# File lib/uh/wm/client.rb, line 24
def hidden?
  not visible?
end
hide() click to toggle source
# File lib/uh/wm/client.rb, line 57
def hide
  @window.unmap
  @visible = false
  @unmap_count += 1
  self
end
kill() click to toggle source
# File lib/uh/wm/client.rb, line 70
def kill
  if @window.icccm_wm_protocols.include? :WM_DELETE_WINDOW
    @window.icccm_wm_delete
  else
    @window.kill
  end
  self
end
kill!() click to toggle source
# File lib/uh/wm/client.rb, line 79
def kill!
  window.kill
  self
end
moveresize() click to toggle source
# File lib/uh/wm/client.rb, line 46
def moveresize
  @window.moveresize @geo
  self
end
name() click to toggle source
# File lib/uh/wm/client.rb, line 28
def name
  @wname ||= @window.name
end
show() click to toggle source
# File lib/uh/wm/client.rb, line 51
def show
  @window.map
  @visible = true
  self
end
to_s() click to toggle source
# File lib/uh/wm/client.rb, line 16
def to_s
  "<#{name}> (#{wclass}) #{@geo} win: #{@window}"
end
update_window_properties() click to toggle source
# File lib/uh/wm/client.rb, line 36
def update_window_properties
  @wname  = @window.name
  @wclass = @window.wclass
end
visible?() click to toggle source
# File lib/uh/wm/client.rb, line 20
def visible?
  @visible
end
wclass() click to toggle source
# File lib/uh/wm/client.rb, line 32
def wclass
  @wclass ||= @window.wclass
end