aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--linden/indra/newview/llstartup.cpp4
-rw-r--r--linden/indra/newview/llviewerwindow.cpp55
-rw-r--r--linden/indra/newview/llviewerwindow.h2
3 files changed, 28 insertions, 33 deletions
diff --git a/linden/indra/newview/llstartup.cpp b/linden/indra/newview/llstartup.cpp
index fad3df2..4683df1 100644
--- a/linden/indra/newview/llstartup.cpp
+++ b/linden/indra/newview/llstartup.cpp
@@ -839,7 +839,7 @@ bool idle_startup()
839 LLToolMgr::getInstance()->initTools(); 839 LLToolMgr::getInstance()->initTools();
840 840
841 // Quickly get something onscreen to look at. 841 // Quickly get something onscreen to look at.
842 gViewerWindow->pre_initWorldUI(); 842 gViewerWindow->initWorldUI();
843 } 843 }
844 844
845 gViewerWindow->setNormalControlsVisible( FALSE ); 845 gViewerWindow->setNormalControlsVisible( FALSE );
@@ -1825,7 +1825,7 @@ bool idle_startup()
1825 set_startup_status(0.40f, LLTrans::getString("LoginInitializingWorld"), gAgent.mMOTD); 1825 set_startup_status(0.40f, LLTrans::getString("LoginInitializingWorld"), gAgent.mMOTD);
1826 1826
1827 // Initialize the rest of the world. 1827 // Initialize the rest of the world.
1828 gViewerWindow->initWorldUI(); 1828 gViewerWindow->initWorldUI_postLogin();
1829 1829
1830 gDisconnected=FALSE; 1830 gDisconnected=FALSE;
1831 display_startup(); 1831 display_startup();
diff --git a/linden/indra/newview/llviewerwindow.cpp b/linden/indra/newview/llviewerwindow.cpp
index 07fef53..2af6fe3 100644
--- a/linden/indra/newview/llviewerwindow.cpp
+++ b/linden/indra/newview/llviewerwindow.cpp
@@ -1652,7 +1652,7 @@ void LLViewerWindow::adjustControlRectanglesForFirstUse(const LLRect& window)
1652 adjust_rect_top_center("FloaterCameraRect3", window); 1652 adjust_rect_top_center("FloaterCameraRect3", window);
1653} 1653}
1654 1654
1655void LLViewerWindow::pre_initWorldUI() 1655void LLViewerWindow::initWorldUI()
1656{ 1656{
1657 pre_init_menus(); 1657 pre_init_menus();
1658 1658
@@ -1681,16 +1681,13 @@ void LLViewerWindow::pre_initWorldUI()
1681 init_menus(); 1681 init_menus();
1682 } 1682 }
1683 1683
1684 // Toolbox floater
1684 if (!gFloaterTools) 1685 if (!gFloaterTools)
1685 { 1686 {
1686 gFloaterTools = new LLFloaterTools(); 1687 gFloaterTools = new LLFloaterTools();
1687 gFloaterTools->setVisible(FALSE); 1688 gFloaterTools->setVisible(FALSE);
1688 } 1689 }
1689 1690
1690 // menu holder appears on top to get first pass at all mouse events
1691
1692 mRootView->sendChildToFront(gMenuHolder);
1693
1694 if ( gHUDView == NULL ) 1691 if ( gHUDView == NULL )
1695 { 1692 {
1696 LLRect hud_rect = full_window; 1693 LLRect hud_rect = full_window;
@@ -1705,12 +1702,34 @@ void LLViewerWindow::pre_initWorldUI()
1705 } 1702 }
1706} 1703}
1707 1704
1708void LLViewerWindow::initWorldUI() 1705// initWorldUI that wasn't before logging in. Some of this may require the access the 'LindenUserDir'.
1706void LLViewerWindow::initWorldUI_postLogin()
1709{ 1707{
1710 S32 height = mRootView->getRect().getHeight(); 1708 S32 height = mRootView->getRect().getHeight();
1711 S32 width = mRootView->getRect().getWidth(); 1709 S32 width = mRootView->getRect().getWidth();
1712 LLRect full_window(0, height, width, 0); 1710 LLRect full_window(0, height, width, 0);
1713 1711
1712 // The status base must be created before calling sendChildToFront below,
1713 // or the text of the menu (after logging in) won't be visible.
1714 if (!gStatusBar)
1715 {
1716 // Status bar
1717 S32 menu_bar_height = gMenuBarView->getRect().getHeight();
1718 LLRect root_rect = mRootView->getRect();
1719 LLRect status_rect(0, root_rect.getHeight(), root_rect.getWidth(), root_rect.getHeight() - menu_bar_height);
1720 gStatusBar = new LLStatusBar(std::string("status"), status_rect);
1721 gStatusBar->setFollows(FOLLOWS_LEFT | FOLLOWS_RIGHT | FOLLOWS_TOP);
1722
1723 gStatusBar->reshape(root_rect.getWidth(), gStatusBar->getRect().getHeight(), TRUE);
1724 gStatusBar->translate(0, root_rect.getHeight() - gStatusBar->getRect().getHeight());
1725 // sync bg color with menu bar
1726 gStatusBar->setBackgroundColor( gMenuBarView->getBackgroundColor() );
1727 mRootView->addChild(gStatusBar);
1728 }
1729
1730 // Menu holder appears on top to get first pass at all mouse events
1731 mRootView->sendChildToFront(gMenuHolder);
1732
1714 if ( gSavedPerAccountSettings.getBOOL("LogShowHistory") ) 1733 if ( gSavedPerAccountSettings.getBOOL("LogShowHistory") )
1715 { 1734 {
1716 LLFloaterChat::getInstance(LLSD())->loadHistory(); 1735 LLFloaterChat::getInstance(LLSD())->loadHistory();
@@ -1726,8 +1745,6 @@ void LLViewerWindow::initWorldUI()
1726 mRootView->addChild(gMorphView); 1745 mRootView->addChild(gMorphView);
1727 gMorphView->setVisible(FALSE); 1746 gMorphView->setVisible(FALSE);
1728 1747
1729 // *Note: this is where gFloaterMute used to be initialized.
1730
1731 LLWorldMapView::initClass(); 1748 LLWorldMapView::initClass();
1732 1749
1733 adjust_rect_centered_partial_zoom("FloaterWorldMapRect2", full_window); 1750 adjust_rect_centered_partial_zoom("FloaterWorldMapRect2", full_window);
@@ -1745,28 +1762,6 @@ void LLViewerWindow::initWorldUI()
1745 gFloaterTeleportHistory->setVisible(FALSE); 1762 gFloaterTeleportHistory->setVisible(FALSE);
1746 } 1763 }
1747 1764
1748 //
1749 // Tools for building
1750 //
1751
1752 // Toolbox floater
1753
1754 if (!gStatusBar)
1755 {
1756 // Status bar
1757 S32 menu_bar_height = gMenuBarView->getRect().getHeight();
1758 LLRect root_rect = mRootView->getRect();
1759 LLRect status_rect(0, root_rect.getHeight(), root_rect.getWidth(), root_rect.getHeight() - menu_bar_height);
1760 gStatusBar = new LLStatusBar(std::string("status"), status_rect);
1761 gStatusBar->setFollows(FOLLOWS_LEFT | FOLLOWS_RIGHT | FOLLOWS_TOP);
1762
1763 gStatusBar->reshape(root_rect.getWidth(), gStatusBar->getRect().getHeight(), TRUE);
1764 gStatusBar->translate(0, root_rect.getHeight() - gStatusBar->getRect().getHeight());
1765 // sync bg color with menu bar
1766 gStatusBar->setBackgroundColor( gMenuBarView->getBackgroundColor() );
1767 mRootView->addChild(gStatusBar);
1768 }
1769
1770 LLFloaterChatterBox::createInstance(LLSD()); 1765 LLFloaterChatterBox::createInstance(LLSD());
1771} 1766}
1772 1767
diff --git a/linden/indra/newview/llviewerwindow.h b/linden/indra/newview/llviewerwindow.h
index ee8f3fe..d26d820 100644
--- a/linden/indra/newview/llviewerwindow.h
+++ b/linden/indra/newview/llviewerwindow.h
@@ -143,8 +143,8 @@ public:
143 void initBase(); 143 void initBase();
144 void adjustRectanglesForFirstUse(const LLRect& window); 144 void adjustRectanglesForFirstUse(const LLRect& window);
145 void adjustControlRectanglesForFirstUse(const LLRect& window); 145 void adjustControlRectanglesForFirstUse(const LLRect& window);
146 void pre_initWorldUI();
147 void initWorldUI(); 146 void initWorldUI();
147 void initWorldUI_postLogin();
148 148
149 // 149 //
150 // LLWindowCallback interface implementation 150 // LLWindowCallback interface implementation