Chrome Packaged App и Dual Monitors

Я работаю над упакованным приложением, которое будет использовать несколько дисплеев. Мне нужно иметь возможность открывать окна на определенных дисплеях. Я также попытался открыть окна, а затем, используя javascript, переместив их на монитор. Но приложение не будет двигаться дальше границ активного отображения.

Любые идеи о том, как заставить это работать?

Ответ 1

Это не было решением, на которое я надеялся, но как один из упомянутых комментариев, есть ошибка с Chrome и несколькими мониторами. В моем случае это внутреннее приложение, поэтому я могу установить все, что мне нужно для выполнения этой работы.

Моим решением было создать консольное приложение, которое запускает приложение chrome, а затем перемещает окна с помощью API Windows32. Очевидно, что он не идеален, но он работает, и пользователю все еще нужен один щелчок, чтобы запустить приложение.

Ответ 2

Используйте chrome.system.display.getInfo с этим вы можете получить информацию о дисплее для каждого активного дисплея.

С displayInfo.workArea вы можете получить рабочую область каждого дисплея, вам просто нужно подумать об одном большом дисплее, и каждый дисплей будет рабочая зона. С помощью этой информации вы можете перемещать свое окно с помощью

AppWindow#setBounds на правильный монитор. Будьте осторожны, AppWindow#moveTo не работает.

Ответ 3

Используйте AppWindow#setBounds

например.

chrome.app.window.get('mainWindow').setBounds({"height": 200, "left": 2000})

Протестировано на v34

Boom. Измените это, чтобы исправить ответ.