Open Bug 187139 Opened 22 years ago Updated 2 years ago

Need to support -iconic command line option

Categories

(Toolkit :: Startup and Profile System, defect)

x86
Linux
defect

Tracking

()

People

(Reporter: jim_nance, Unassigned)

References

(Blocks 1 open bug)

Details

I would like to add support for the -iconic command line option to mozilla as requested in bugs 20573 and 33378. Those two bugs deal with more than -iconic support, so I am opening this bug to track JUST the -iconic issues. The first problem I found is that the gtk implementation of nsWindow::SetSizeMode() does not do anything (it falls back to a base class method). This method looks like the place that windows would get marked as iconified, so I am going to copy the gtk2 nsWindow::SetSizeMode() code into the gtk class. Ill attach a patch when I have that done.
OK, now I know why. gtk1.2 does not contain the functions that gtk2 is calling to iconify windows. Right now I am just going to try and get this working with the gtk2 front end. After that I will see if I can figure out how to make gtk1.2 work.
I have verified that if I use the debugger to force the code to jump to line 565 in the following method then the window is opened iconified. Now I need to trace back and see how to get aMode set to nsSizeMode_Minimized. 545 nsWindow::SetSizeMode(PRInt32 aMode) 546 { 547 nsresult rv; 548 549 LOG(("nsWindow::SetSizeMode [%p] %d\n", (void *)this, aMode)); 550 551 // Save the requested state. 552 rv = nsBaseWidget::SetSizeMode(aMode); 553 554 // return if there's no shell or our current state is the same as 555 // the mode we were just set to. 556 if (!mShell || mSizeState == mSizeMode) { 557 return rv; 558 } 559 560 switch (aMode) { 561 case nsSizeMode_Maximized: 562 gtk_window_maximize(GTK_WINDOW(mShell)); 563 break; 564 case nsSizeMode_Minimized: 565 gtk_window_iconify(GTK_WINDOW(mShell)); 566 break; 567 default: 568 // nsSizeMode_Normal, really. 569 if (mSizeState == nsSizeMode_Minimized) 570 gtk_window_deiconify(GTK_WINDOW(mShell)); 571 else if (mSizeState == nsSizeMode_Maximized) 572 gtk_window_unmaximize(GTK_WINDOW(mShell)); 573 break; 574 }

The bug assignee didn't login in Bugzilla in the last 7 months.
:enndeakin, could you have a look please?
For more information, please visit auto_nag documentation.

Assignee: jim_nance → nobody
Flags: needinfo?(enndeakin)
Component: XUL → Startup and Profile System
Flags: needinfo?(enndeakin)
Product: Core → Toolkit
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.