Implement client visibility state

This commit is contained in:
Thibault Jouan 2015-04-16 18:28:17 +00:00
parent 1a1f181313
commit 15f966654b
2 changed files with 19 additions and 2 deletions

View File

@ -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

View File

@ -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'