Не удается переключиться между всплывающим окном и Excel для Mac

Я сделал надстройку Excel, которая открывает всплывающее окно с помощью window.open или Диалоговый API.

Я только что проверил это в Excel для Mac: когда окно открывается, кажется, что мы НЕ можем вернуть фокус в Excel или панель задач надстройки; мы должны закрыть окно, прежде чем выбрать Excel или панель задач надстройки.

Кто-нибудь знает, есть ли способ включить переключение фокуса между всплывающим окном и Excel?


person SoftTimur    schedule 24.06.2017    source источник


Ответы (2)


Диалоговое окно является модальным по своей природе, что заставляет пользователя взаимодействовать с ним, прежде чем он сможет вернуться к использованию родительской надстройки/узла Office. Для взаимодействия, требующего обмена данными с Excel, панель задач является подходящим местом для пользовательского интерфейса.

person Sudhi Ramamurthy    schedule 24.06.2017
comment
Итак, вы подтверждаете, что в Excel для Mac мы не можем перемещать всплывающее окно вперед и назад (с помощью window.open или диалогового окна) с Excel? Все еще странно, что всплывающее окно не имеет такого же поведения в Excel для Mac, для Windows и в Интернете... - person SoftTimur; 25.06.2017
comment
Не могли бы вы уточнить, что вы подразумеваете под разницей в Mac/Win/Online? - person Sudhi Ramamurthy; 27.06.2017
comment
В Win/Online мы можем переключаться между всплывающим окном и Excel, тогда как в Mac мы не можем. - person SoftTimur; 27.06.2017

Диалоговый API предназначен для того, чтобы всегда отображать диалоговое окно поверх других элементов. Что касается модальности, вы правы в том, что в Windows диалоговое окно позволяет вам по-прежнему взаимодействовать с электронной таблицей, в то время как на других платформах, таких как Mac или Online, оно полностью модальное (не может вернуться к электронной таблице). Я рекомендую спроектировать надстройку с учетом многоплатформенности, поэтому предположим, что диалоговое окно является модальным на всех платформах. Как рекомендует Судхи в своем ответе, если ваше взаимодействие требует, чтобы пользователь использовал надстройку и электронную таблицу туда и обратно, использование панели является лучшей моделью.

person Humberto Lezama    schedule 27.06.2017
comment
Правильно, забыл упомянуть, что это зависит от флага displayAsIframe, тогда он также модален в онлайне. - person Humberto Lezama; 18.07.2017
comment
Итак, вы подтверждаете, что в Excel для Mac нет способа сделать электронную таблицу туда и обратно независимо от конфигурации (например, флаг displayInIframe)? Для меня это очень важно... - person SoftTimur; 24.07.2017