module WM
Public Class Methods
current_desktop()
click to toggle source
# File lib/epitools/wm.rb, line 11 def self.current_desktop; @current ||= desktops.find { |d| d.current? }; end
desktops()
click to toggle source
# File lib/epitools/wm.rb, line 9 def self.desktops; @desktops ||= Desktop.all; end
processes()
click to toggle source
# File lib/epitools/wm.rb, line 10 def self.processes; @processes ||= Hash[ Sys.ps.map { |pr| [pr.pid, pr] } ] ; end
sticky()
click to toggle source
# File lib/epitools/wm.rb, line 12 def self.sticky; @sticky ||= windows.select { |w| w.sticky? }; end
window(pid)
click to toggle source
# File lib/epitools/wm.rb, line 14 def self.window(pid) results = windows.select { |w| w.pid } if results.empty? # check the children results = windows.select { |w| w.process.children.any? {|pr| pr.pid == pid } } end results end
windows()
click to toggle source
# File lib/epitools/wm.rb, line 8 def self.windows; @windows ||= Window.all; end