mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
0e0931b400
--HG-- rename : dom/ipc/TabThread.cpp => dom/ipc/ContentProcessThread.cpp rename : dom/ipc/TabThread.h => dom/ipc/ContentProcessThread.h
55 lines
1.1 KiB
C++
55 lines
1.1 KiB
C++
#include "ContentProcessParent.h"
|
|
#include "TabParent.h"
|
|
|
|
#include "mozilla/ipc/GeckoThread.h"
|
|
|
|
using mozilla::ipc::BrowserProcessSubThread;
|
|
using mozilla::dom::TabParent;
|
|
|
|
namespace mozilla {
|
|
namespace dom {
|
|
|
|
ContentProcessParent* ContentProcessParent::gSingleton;
|
|
|
|
ContentProcessParent*
|
|
ContentProcessParent::GetSingleton()
|
|
{
|
|
if (!gSingleton)
|
|
gSingleton = new ContentProcessParent();
|
|
|
|
return gSingleton;
|
|
}
|
|
|
|
TabParent*
|
|
ContentProcessParent::CreateTab(const MagicWindowHandle& hwnd)
|
|
{
|
|
return static_cast<TabParent*>(SendIFrameEmbeddingConstructor(hwnd));
|
|
}
|
|
|
|
ContentProcessParent::ContentProcessParent()
|
|
: mSubprocess(GeckoChildProcess_Tab)
|
|
{
|
|
// TODO: async launching!
|
|
mSubprocess.SyncLaunch();
|
|
Open(mSubprocess.GetChannel());
|
|
}
|
|
|
|
ContentProcessParent::~ContentProcessParent()
|
|
{
|
|
}
|
|
|
|
IFrameEmbeddingProtocolParent*
|
|
ContentProcessParent::IFrameEmbeddingConstructor(const MagicWindowHandle& parentWidget)
|
|
{
|
|
return new TabParent();
|
|
}
|
|
|
|
nsresult
|
|
ContentProcessParent::IFrameEmbeddingDestructor(IFrameEmbeddingProtocolParent* frame)
|
|
{
|
|
delete frame;
|
|
}
|
|
|
|
} // namespace dom
|
|
} // namespace mozilla
|