Fix right-click context menu in main chat bar.

meow-7.2.2
ziree 2012-02-14 16:06:46 +01:00
parent 31b8e0e4a8
commit 0a4cf0627a
3 changed files with 21 additions and 5 deletions

View File

@ -868,8 +868,11 @@ bool idle_startup()
// this startup phase more than once.
if (gLoginMenuBarView == NULL)
{
display_startup();
initialize_edit_menu();
// <FS:Zi> Moved this to initBase() in llviewerwindow.cpp to get the edit menu set up
// before any text widget uses it
// display_startup();
// initialize_edit_menu();
// </FS:Zi>
display_startup();
init_menus();
display_startup();

View File

@ -9079,6 +9079,8 @@ void show_topinfobar_context_menu(LLView* ctrl, S32 x, S32 y)
LLMenuGL::showPopup(ctrl, show_topbarinfo_context_menu, x, y);
}
// <FS:Zi> Make sure to call this before any of the UI is set up, so all text editors can
// pick up the menu properly.
void initialize_edit_menu()
{
// [SL:KB] - Patch: Misc-Spellcheck | Checked: 2010-12-19 (Catznip-2.5.0a) | Added: Catznip-2.5.0a

View File

@ -1803,6 +1803,15 @@ void LLViewerWindow::initBase()
main_view->setShape(full_window);
getRootView()->addChild(main_view);
// <FS:Zi> Moved this from the end of this function up here, so all context menus
// created right after this get the correct parent assigned.
gMenuHolder = getRootView()->getChild<LLViewerMenuHolderGL>("Menu Holder");
LLMenuGL::sMenuContainer = gMenuHolder;
// Set up edit menu here to get the spellcheck callbacks assigned before anyone uses them -Zi
initialize_edit_menu();
// <FS:Zi>
// placeholder widget that controls where "world" is rendered
mWorldViewPlaceholder = main_view->getChildView("world_view_rect")->getHandle();
mPopupView = main_view->getChild<LLPopupView>("popup_holder");
@ -1853,10 +1862,12 @@ void LLViewerWindow::initBase()
if(mProgressViewMini)
mProgressViewMini->setVisible(FALSE);
gMenuHolder = getRootView()->getChild<LLViewerMenuHolderGL>("Menu Holder");
LLMenuGL::sMenuContainer = gMenuHolder;
// <FS:Zi> Moved this to the top right after creation of main_view.xml, so all context menus
// created right after that get the correct parent assigned.
// gMenuHolder = getRootView()->getChild<LLViewerMenuHolderGL>("Menu Holder");
// LLMenuGL::sMenuContainer = gMenuHolder;
// </FS:Zi>
}
void LLViewerWindow::initWorldUI()