diff --git a/indra/newview/llpanelgrouproles.cpp b/indra/newview/llpanelgrouproles.cpp index 7dec2251e84de8a0b7c3506698a5d1ae52b8713c..b4a18d83896a9f845529df00e8bf8e01722a24eb 100644 --- a/indra/newview/llpanelgrouproles.cpp +++ b/indra/newview/llpanelgrouproles.cpp @@ -1749,8 +1749,7 @@ BOOL LLPanelGroupRolesSubTab::postBuildSubTab(LLView* root) mRoleTitle->setKeystrokeCallback(onPropertiesKey, this); mRoleDescription->setCommitOnFocusLost(TRUE); - mRoleDescription->setCommitCallback(onDescriptionCommit, this); - mRoleDescription->setFocusReceivedCallback(boost::bind(onDescriptionFocus, _1, this)); + mRoleDescription->setKeystrokeCallback(boost::bind(&LLPanelGroupRolesSubTab::onDescriptionKeyStroke, this, _1)); setFooterEnabled(FALSE); @@ -2216,6 +2215,12 @@ void LLPanelGroupRolesSubTab::onDescriptionFocus(LLFocusableElement* ctrl, void* self->notifyObservers(); } +void LLPanelGroupRolesSubTab::onDescriptionKeyStroke(LLTextEditor* caller) +{ + mHasRoleChange = TRUE; + notifyObservers(); +} + // static void LLPanelGroupRolesSubTab::onDescriptionCommit(LLUICtrl* ctrl, void* user_data) { diff --git a/indra/newview/llpanelgrouproles.h b/indra/newview/llpanelgrouproles.h index 44aa7cea381fbd8418da56f42ebba9ab96fb9455..cb7941ad9e47204888985003909c6c8d9ff5292d 100644 --- a/indra/newview/llpanelgrouproles.h +++ b/indra/newview/llpanelgrouproles.h @@ -244,8 +244,9 @@ class LLPanelGroupRolesSubTab : public LLPanelGroupSubTab static void onPropertiesKey(LLLineEditor*, void*); + void onDescriptionKeyStroke(LLTextEditor* caller); + static void onDescriptionCommit(LLUICtrl*, void*); - static void onDescriptionFocus(LLFocusableElement*, void*); static void onMemberVisibilityChange(LLUICtrl*, void*); void handleMemberVisibilityChange(bool value);