Reworked the initialization of the PLEvent queue to use the new EventQueueService instead of calling PL_InitializeEventsLib(...)

git-svn-id: svn://10.0.0.236/trunk@17450 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
rpotts%netscape.com 1999-01-09 07:18:22 +00:00
parent cb748a31e9
commit f1bf3a2dfd
2 changed files with 22 additions and 3 deletions

View File

@ -32,6 +32,9 @@ static const std::string c_szPrefsHomePage = "browser.startup.homepage";
static const std::string c_szDefaultPage = "resource://res/MozillaControl.html";
static NS_DEFINE_IID(kIEventQueueServiceIID, NS_IEVENTQUEUESERVICE_IID);
static NS_DEFINE_IID(kEventQueueServiceCID, NS_EVENTQUEUESERVICE_CID);
/////////////////////////////////////////////////////////////////////////////
// CMozillaBrowser
@ -55,16 +58,29 @@ CMozillaBrowser::CMozillaBrowser()
// Controls starts off unbusy
m_bBusy = FALSE;
// Initialise the events library if it hasn't been already
PL_InitializeEventsLib("");
// Register components
NS_SetupRegistry();
// Create the Event Queue for the UI thread...
//
// If an event queue already exists for the thread, then
// CreateThreadEventQueue(...) will fail...
nsresult rv;
nsIEventQueueService* eventQService = NULL;
rv = nsServiceManager::GetService(kEventQueueServiceCID,
kIEventQueueServiceIID,
(nsISupports **)&eventQService);
if (NS_SUCCEEDED(rv)) {
rv = eventQService->CreateThreadEventQueue();
nsServiceManager::ReleaseService(kEventQueueServiceCID, eventQService);
}
}
CMozillaBrowser::~CMozillaBrowser()
{
// XXX: Do not call DestroyThreadEventQueue(...) for now...
NG_TRACE(_T("CMozillaBrowser::~CMozillaBrowser\n"));
}

View File

@ -67,6 +67,9 @@ typedef long int32;
#include "prprf.h"
#include "plevent.h"
#include "nsRepository.h"
#include "nsIServiceManager.h"
#include "nsIEventQueueService.h"
#include "nsXPComCIID.h"
#include "nsWidgetsCID.h"
#include "nsGfxCIID.h"
#include "nsViewsCID.h"