diff --git a/lib/uh/wm/client.rb b/lib/uh/wm/client.rb index afb1802..ec08d3e 100644 --- a/lib/uh/wm/client.rb +++ b/lib/uh/wm/client.rb @@ -5,14 +5,23 @@ module Uh attr_accessor :geo def initialize window, geo = nil - @window = window - @geo = geo + @window = window + @geo = geo + @visible = false end def to_s "<#{name}> (#{wclass}) #{@geo} win: #{@window}" end + def visible? + @visible + end + + def hidden? + not visible? + end + def name @wname ||= @window.name end diff --git a/spec/uh/wm/client_spec.rb b/spec/uh/wm/client_spec.rb index f8b8d60..06a81bb 100644 --- a/spec/uh/wm/client_spec.rb +++ b/spec/uh/wm/client_spec.rb @@ -8,6 +8,14 @@ module Uh end subject(:client) { described_class.new window, geo } + it 'is not visible' do + expect(client).not_to be_visible + end + + it 'is hidden' do + expect(client).to be_hidden + end + describe '#to_s' do it 'includes window name' do expect(client.to_s).to include 'wname'