>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >Открытие XUL-окна из XPCOM компонента на C++ http://forum.mozilla-russia.org/viewtopic.php?id=46656 |
ber5erk > 26-10-2010 20:37:40 |
Здравствуйте. Столкнулся с такой проблемой - пишу XPCOM-компонент на С++, так вот из под него nsresult rv; nsCOMPtr<nsIWindowWatcher> myDialog( do_GetService( "@mozilla.org/embedcomp/window-watcher;1", &rv ) ); nsCOMPtr<nsIDOMWindow> win; myDialog->SetActiveWindow( win ); Но, к сожалению, никакого окна не отображается (MessageBox-ы с ошибками не выводятся). Заранее спасибо. |
ber5erk > 28-10-2010 20:35:37 |
Сделал тестовый JavaScript XPCOM компонент - результат тот же. const MYCOMPONENT_CONTRACTID = '@mozilla.org/MyComponent;1'; function nsMyComponent() { } nsMyComponent.prototype = { var promptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"] var ww = Components.classes["@mozilla.org/embedcomp/window-watcher;1"] promptService.alert( null, "Title", win ); return a.join(""); var nsMyComponentFactory = { var nsMyComponentModule = { function NSGetModule(comMgr, fileSpec) { Что интересно - при запуске метода компонента фокус с основного окна Firefox |