Не кажется слишком тривиальным ожидать полного решения здесь, но ... кто знает:)
Некоторые мысли: начните с включения перетаскивания вкладок. Когда пользователь перетаскивает вкладку «достаточно» из исходного положения, вы удаляете вкладку из ее источника и создаете новое окно (или другой пользовательский интерфейс, чтобы показать, что она перетаскивается), содержащее содержимое вкладки.
Когда вкладка опущена - создайте новое окно (или используйте «перетаскивающее») и настройте его так, как этого ожидает пользователь.