Я столкнулся с той же проблемой, и я подумал о возможном решении (хотя не проверял его):
Используйте файл background.html для хранения содержимого всплывающего действия, и после загрузки всплывающего окна вы извлекаете содержимое с помощью сообщений по умолчанию для расширений Chrome.
При выполнении любых других действий, например, XHR или чего-то подобного, я думаю, что вы должны делать это и в background.html, чтобы запросы не прерывались, если вы закрывались, и вы могли что-то сделать с результатом. Затем, когда пользователь снова откроет всплывающее окно, он увидит результат своего предыдущего действия вместо экрана по умолчанию.
Кто-нибудь пробовал что-то подобное, уже сделал?