multi window implementation.