Fixing 71884, making native Windows Get Plugin dialog modeless, r=serge, sr=waterson

git-svn-id: svn://10.0.0.236/trunk@90919 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
av%netscape.com
2001-03-30 23:56:38 +00:00
parent c293543b6d
commit e018a51da3
6 changed files with 26 additions and 22 deletions

View File

@@ -36,13 +36,16 @@ static void onCommand(HWND hWnd, int id, HWND hWndCtl, UINT codeNotify)
switch (id)
{
case IDC_GET_PLUGIN:
EndDialog(hWnd, IDC_GET_PLUGIN);
DestroyWindow(hWnd);
if(pPlugin !=NULL)
{
pPlugin->m_hWndDialog = NULL;
pPlugin->getPlugin();
}
break;
case IDCANCEL:
case IDC_BUTTON_CANCEL:
EndDialog(hWnd, IDCANCEL);
DestroyWindow(hWnd);
if(pPlugin !=NULL)
pPlugin->m_hWndDialog = NULL;
break;
@@ -149,10 +152,7 @@ static BOOL onInitDialog(HWND hWnd, HWND hWndFocus, LPARAM lParam)
static void onClose(HWND hWnd)
{
EndDialog(hWnd, IDCANCEL);
CPlugin * pPlugin = (CPlugin *)GetWindowLong(hWnd, DWL_USER);
if(pPlugin !=NULL)
pPlugin->m_hWndDialog = NULL;
DestroyWindow(hWnd);
}
static void onDestroy(HWND hWnd)

View File

@@ -235,7 +235,7 @@ void CPlugin::shut()
if(m_hWndDialog != NULL)
{
EndDialog(m_hWndDialog, IDCANCEL);
DestroyWindow(m_hWndDialog);
m_hWndDialog = NULL;
}
@@ -428,12 +428,13 @@ void CPlugin::showGetPluginDialog()
if((m_szPageURL != NULL) || (m_szFileURL != NULL) || !m_bJavaScript)
{
int iRet = DialogBoxParam(m_hInst, MAKEINTRESOURCE(IDD_PLUGIN_DOWNLOAD), m_hWnd,
(DLGPROC)GetPluginDialogProc, (LPARAM)this);
if(iRet != IDC_GET_PLUGIN)
return;
CreateDialogParam(m_hInst, MAKEINTRESOURCE(IDD_PLUGIN_DOWNLOAD), m_hWnd,
(DLGPROC)GetPluginDialogProc, (LPARAM)this);
}
}
void CPlugin::getPlugin()
{
if(m_szCommandMessage != NULL)
{
delete [] m_szCommandMessage;

View File

@@ -74,6 +74,7 @@ public:
void shut();
HWND getWindow();
void showGetPluginDialog();
void getPlugin();
BOOL readyToRefresh();
// NP API handlers