implementing windowManager