Bug 241424 proxy panel not shown second time if it's not needed first time

patch by ajschult@mindspring.com r=dveditz sr=bryner
This commit is contained in:
timeless%mozdev.org 2004-04-30 04:19:57 +00:00
Родитель 40d304abdb
Коммит bf6068e940
1 изменённых файлов: 39 добавлений и 33 удалений

Просмотреть файл

@ -112,6 +112,9 @@ nsInstallDlg::Back(GtkWidget *aWidget, gpointer aData)
gtk_signal_disconnect(GTK_OBJECT(gCtx->back), gCtx->backID); gtk_signal_disconnect(GTK_OBJECT(gCtx->back), gCtx->backID);
gtk_signal_disconnect(GTK_OBJECT(gCtx->next), gCtx->nextID); gtk_signal_disconnect(GTK_OBJECT(gCtx->next), gCtx->nextID);
if (bDownload && sDLTable)
gtk_widget_hide(sDLTable);
// show the last dlg // show the last dlg
if (gCtx->opt->mSetupType == (gCtx->sdlg->GetNumSetupTypes() - 1)) if (gCtx->opt->mSetupType == (gCtx->sdlg->GetNumSetupTypes() - 1))
gCtx->cdlg->Show(nsXInstallerDlg::BACKWARD_MOVE); gCtx->cdlg->Show(nsXInstallerDlg::BACKWARD_MOVE);
@ -393,11 +396,6 @@ nsInstallDlg::Show(int aDirection)
if (mWidgetsInit == FALSE) if (mWidgetsInit == FALSE)
{ {
int bCus =
(gCtx->opt->mSetupType == (gCtx->sdlg->GetNumSetupTypes() - 1));
nsComponentList *comps =
gCtx->sdlg->GetSelectedSetupType()->GetComponents();
// create a new table and add it as a page of the notebook // create a new table and add it as a page of the notebook
mTable = gtk_table_new(4, 1, FALSE); mTable = gtk_table_new(4, 1, FALSE);
gtk_notebook_append_page(GTK_NOTEBOOK(gCtx->notebook), mTable, NULL); gtk_notebook_append_page(GTK_NOTEBOOK(gCtx->notebook), mTable, NULL);
@ -414,11 +412,9 @@ nsInstallDlg::Show(int aDirection)
GTK_FILL, 20, 20); GTK_FILL, 20, 20);
gtk_widget_show(sMsg0Label); gtk_widget_show(sMsg0Label);
if (!nsXIEngine::ExistAllXPIs(bCus, comps, &totalComps)) // Proxy Settings
{
// insert a [ x ] heterogenous table // insert a [ x ] heterogenous table
sDLTable = gtk_table_new(2, 2, FALSE); sDLTable = gtk_table_new(2, 2, FALSE);
gtk_widget_show(sDLTable);
gtk_table_attach(GTK_TABLE(mTable), sDLTable, 0, 1, 1, 4, gtk_table_attach(GTK_TABLE(mTable), sDLTable, 0, 1, 1, 4,
static_cast<GtkAttachOptions>(GTK_FILL | GTK_EXPAND), static_cast<GtkAttachOptions>(GTK_FILL | GTK_EXPAND),
@ -445,7 +441,6 @@ nsInstallDlg::Show(int aDirection)
GTK_FILL, GTK_FILL, 10, 10); GTK_FILL, GTK_FILL, 10, 10);
gtk_signal_connect(GTK_OBJECT(dlProxyBtn), "clicked", gtk_signal_connect(GTK_OBJECT(dlProxyBtn), "clicked",
GTK_SIGNAL_FUNC(ShowProxySettings), NULL); GTK_SIGNAL_FUNC(ShowProxySettings), NULL);
}
// vbox with two widgets packed in: label0 / progmeter0 (major) // vbox with two widgets packed in: label0 / progmeter0 (major)
vbox = gtk_vbox_new(FALSE, 0); vbox = gtk_vbox_new(FALSE, 0);
@ -494,6 +489,17 @@ nsInstallDlg::Show(int aDirection)
gtk_widget_show(mTable); gtk_widget_show(mTable);
} }
int bCus =
(gCtx->opt->mSetupType == (gCtx->sdlg->GetNumSetupTypes() - 1));
nsComponentList *comps =
gCtx->sdlg->GetSelectedSetupType()->GetComponents();
if (!nsXIEngine::ExistAllXPIs(bCus, comps, &totalComps))
{
bDownload = TRUE;
gtk_widget_show(sDLTable);
}
// signal connect the buttons // signal connect the buttons
gCtx->backID = gtk_signal_connect(GTK_OBJECT(gCtx->back), "clicked", gCtx->backID = gtk_signal_connect(GTK_OBJECT(gCtx->back), "clicked",
GTK_SIGNAL_FUNC(nsInstallDlg::Back), gCtx->idlg); GTK_SIGNAL_FUNC(nsInstallDlg::Back), gCtx->idlg);