From ff7ebf08922293c1623b7bdb8c9923c14fc9db48 Mon Sep 17 00:00:00 2001 From: Alexander Gavriliuk Date: Fri, 14 Apr 2023 07:44:56 +0200 Subject: SL-19575 Create emoji gallery access icon --- indra/newview/llfloaterimsessiontab.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'indra/newview/llfloaterimsessiontab.h') diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h index 9f00917647..cd5065420d 100644 --- a/indra/newview/llfloaterimsessiontab.h +++ b/indra/newview/llfloaterimsessiontab.h @@ -181,6 +181,7 @@ protected: LLButton* mExpandCollapseLineBtn; LLButton* mExpandCollapseBtn; LLButton* mTearOffBtn; + LLButton* mEmojiBtn; LLButton* mCloseBtn; LLButton* mGearBtn; LLButton* mAddBtn; @@ -206,6 +207,9 @@ private: void onInputEditorClicked(); + static void onEmojiPanelBtnClicked(LLFloaterIMSessionTab* self); + void onEmojiSelected(llwchar emoji); + bool checkIfTornOff(); bool mIsHostAttached; bool mHasVisibleBeenInitialized; -- cgit v1.2.3 From 97b0ba2a6d2596da867043077e32065653d44f6e Mon Sep 17 00:00:00 2001 From: Alexander Gavriliuk Date: Wed, 19 Apr 2023 01:39:42 +0200 Subject: SL-19575 LLFloaterEmojiPicker - Add filter by category --- indra/newview/llfloaterimsessiontab.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'indra/newview/llfloaterimsessiontab.h') diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h index cd5065420d..3dcb767aa6 100644 --- a/indra/newview/llfloaterimsessiontab.h +++ b/indra/newview/llfloaterimsessiontab.h @@ -208,7 +208,8 @@ private: void onInputEditorClicked(); static void onEmojiPanelBtnClicked(LLFloaterIMSessionTab* self); - void onEmojiSelected(llwchar emoji); + void onEmojiPicked(llwchar emoji); + void onEmojiPickerClosed(); bool checkIfTornOff(); bool mIsHostAttached; -- cgit v1.2.3 From 671978e3927bc3ba9fc34008bbb7efd6f07b6c81 Mon Sep 17 00:00:00 2001 From: Alexander Gavriliuk Date: Wed, 17 May 2023 14:28:36 +0200 Subject: SL-19575 Create emoji gallery (fix bug with drawing emojis in chat history) --- indra/newview/llfloaterimsessiontab.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llfloaterimsessiontab.h') diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h index 3dcb767aa6..49be4f6bd1 100644 --- a/indra/newview/llfloaterimsessiontab.h +++ b/indra/newview/llfloaterimsessiontab.h @@ -140,7 +140,7 @@ protected: /* virtual */ void onFocusReceived(); // prepare chat's params and out one message to chatHistory - void appendMessage(const LLChat& chat, const LLSD &args = 0); + void appendMessage(const LLChat& chat, const LLSD& args = LLSD()); std::string appendTime(); void assignResizeLimits(); -- cgit v1.2.3 From f18746a1753fc8d5338fcaeb839540a071c68b13 Mon Sep 17 00:00:00 2001 From: Alexander Gavriliuk Date: Tue, 29 Aug 2023 15:31:03 +0200 Subject: SL-20209 EmojiPicker - Show 'Recent' panel instead of the floater on click the button --- indra/newview/llfloaterimsessiontab.h | 44 +++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 18 deletions(-) (limited to 'indra/newview/llfloaterimsessiontab.h') diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h index 7babc92897..5f8ba44e48 100644 --- a/indra/newview/llfloaterimsessiontab.h +++ b/indra/newview/llfloaterimsessiontab.h @@ -41,10 +41,12 @@ class LLPanelChatControlPanel; class LLChatEntry; class LLChatHistory; +class LLPanelEmojiComplete; class LLFloaterIMSessionTab : public LLTransientDockableFloater { + using super = LLTransientDockableFloater; public: LOG_CLASS(LLFloaterIMSessionTab); @@ -68,9 +70,8 @@ public: bool isHostAttached() {return mIsHostAttached;} void setHostAttached(bool is_attached) {mIsHostAttached = is_attached;} - static LLFloaterIMSessionTab* findConversation(const LLUUID& uuid); - static LLFloaterIMSessionTab* getConversation(const LLUUID& uuid); - + static LLFloaterIMSessionTab* findConversation(const LLUUID& uuid); + static LLFloaterIMSessionTab* getConversation(const LLUUID& uuid); bool isNearbyChat() {return mIsNearbyChat;} @@ -80,6 +81,7 @@ public: /*virtual*/ void draw(); /*virtual*/ void setVisible(BOOL visible); /*virtual*/ void setFocus(BOOL focus); + /*virtual*/ void closeFloater(bool app_quitting = false); // Handle the left hand participant list widgets void addConversationViewParticipant(LLConversationItem* item, bool update_view = true); @@ -136,8 +138,8 @@ protected: virtual void enableDisableCallBtn(); // process focus events to set a currently active session - /* virtual */ void onFocusLost(); /* virtual */ void onFocusReceived(); + /* virtual */ void onFocusLost(); // prepare chat's params and out one message to chatHistory void appendMessage(const LLChat& chat, const LLSD& args = LLSD()); @@ -152,8 +154,7 @@ protected: bool mMessagePaneExpanded; bool mIsParticipantListExpanded; - S32 mMinFloaterHeight; - + S32 mMinFloaterHeight; LLIMModel::LLIMSession* mSession; @@ -168,33 +169,37 @@ protected: LLLayoutPanel* mContentPanel; LLLayoutPanel* mToolbarPanel; LLLayoutPanel* mInputButtonPanel; + LLLayoutPanel* mEmojiRecentPanel; + LLView* mEmojiRecentEmptyText; + LLPanelEmojiComplete* mEmojiRecentIconsCtrl; LLParticipantList* getParticipantList(); conversations_widgets_map mConversationsWidgets; LLConversationViewModel mConversationViewModel; LLFolderView* mConversationsRoot; LLScrollContainer* mScroller; - LLChatHistory* mChatHistory; + LLChatHistory* mChatHistory; LLChatEntry* mInputEditor; - LLLayoutPanel * mChatLayoutPanel; - LLLayoutStack * mInputPanels; + LLLayoutPanel* mChatLayoutPanel; + LLLayoutStack* mInputPanels; LLButton* mExpandCollapseLineBtn; LLButton* mExpandCollapseBtn; LLButton* mTearOffBtn; - LLButton* mEmojiBtn; + LLButton* mEmojiRecentPanelToggleBtn; + LLButton* mEmojiPickerToggleBtn; LLButton* mCloseBtn; LLButton* mGearBtn; LLButton* mAddBtn; - LLButton* mVoiceButton; + LLButton* mVoiceButton; private: // Handling selection and contextual menu - void doToSelected(const LLSD& userdata); - bool enableContextMenuItem(const LLSD& userdata); - bool checkContextMenuItem(const LLSD& userdata); + void doToSelected(const LLSD& userdata); + bool enableContextMenuItem(const LLSD& userdata); + bool checkContextMenuItem(const LLSD& userdata); - void getSelectedUUIDs(uuid_vec_t& selected_uuids); + void getSelectedUUIDs(uuid_vec_t& selected_uuids); /// Refreshes the floater at a constant rate. virtual void refresh() = 0; @@ -208,13 +213,16 @@ private: void onInputEditorClicked(); - static void onEmojiPanelBtnClicked(LLFloaterIMSessionTab* self); + static void onEmojiRecentPanelToggleBtnClicked(LLFloaterIMSessionTab* self); + static void onEmojiPickerToggleBtnClicked(LLFloaterIMSessionTab* self); + void onEmojiRecentPanelOpening(); + void onRecentEmojiPicked(const LLSD& value); void onEmojiPicked(llwchar emoji); void onEmojiPickerClosed(); bool checkIfTornOff(); - bool mIsHostAttached; - bool mHasVisibleBeenInitialized; + bool mIsHostAttached; + bool mHasVisibleBeenInitialized; LLTimer* mRefreshTimer; ///< Defines the rate at which refresh() is called. -- cgit v1.2.3 From 44098db8b3fd96726fec7ec4b68b258a3408dff0 Mon Sep 17 00:00:00 2001 From: Alexander Gavriliuk Date: Wed, 30 Aug 2023 04:35:48 +0200 Subject: SL-20210 Recent Emojis - Remember emojis that were actually sent in the message --- indra/newview/llfloaterimsessiontab.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'indra/newview/llfloaterimsessiontab.h') diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h index 5f8ba44e48..d21f611172 100644 --- a/indra/newview/llfloaterimsessiontab.h +++ b/indra/newview/llfloaterimsessiontab.h @@ -147,6 +147,8 @@ protected: std::string appendTime(); void assignResizeLimits(); + void updateUsedEmojis(LLWString text); + S32 mFloaterExtraWidth; bool mIsNearbyChat; -- cgit v1.2.3 From c40f63911c1fad5ea5a18894f530892ddb87c8ea Mon Sep 17 00:00:00 2001 From: Alexander Gavriliuk Date: Fri, 22 Sep 2023 01:19:42 +0200 Subject: SL-20294 The row of recent emojis displays the recently sent emoji only after clicking the collapsing smiley button --- indra/newview/llfloaterimsessiontab.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llfloaterimsessiontab.h') diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h index d21f611172..0ff3d0b38c 100644 --- a/indra/newview/llfloaterimsessiontab.h +++ b/indra/newview/llfloaterimsessiontab.h @@ -217,7 +217,7 @@ private: static void onEmojiRecentPanelToggleBtnClicked(LLFloaterIMSessionTab* self); static void onEmojiPickerToggleBtnClicked(LLFloaterIMSessionTab* self); - void onEmojiRecentPanelOpening(); + void initEmojiRecentPanel(bool moveFocus); void onRecentEmojiPicked(const LLSD& value); void onEmojiPicked(llwchar emoji); void onEmojiPickerClosed(); -- cgit v1.2.3 From 2e0892e53041f75fc991b77870a4f2f4672fefb1 Mon Sep 17 00:00:00 2001 From: Alexander Gavriliuk Date: Tue, 7 Nov 2023 08:55:15 +0100 Subject: SL-20356 Show tooltip for the empty-recent textbox --- indra/newview/llfloaterimsessiontab.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llfloaterimsessiontab.h') diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h index 0ff3d0b38c..1b34b242c7 100644 --- a/indra/newview/llfloaterimsessiontab.h +++ b/indra/newview/llfloaterimsessiontab.h @@ -172,7 +172,7 @@ protected: LLLayoutPanel* mToolbarPanel; LLLayoutPanel* mInputButtonPanel; LLLayoutPanel* mEmojiRecentPanel; - LLView* mEmojiRecentEmptyText; + LLTextBox* mEmojiRecentEmptyText; LLPanelEmojiComplete* mEmojiRecentIconsCtrl; LLParticipantList* getParticipantList(); conversations_widgets_map mConversationsWidgets; -- cgit v1.2.3 From 1ef524986f598038c5ebdd38ea17d2f5a56c0626 Mon Sep 17 00:00:00 2001 From: Alexander Gavriliuk Date: Fri, 10 Nov 2023 02:58:01 +0100 Subject: SL-20416 Choose emoji floater puts emoji in the chat window that opened it --- indra/newview/llfloaterimsessiontab.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'indra/newview/llfloaterimsessiontab.h') diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h index 1b34b242c7..ddffed57a3 100644 --- a/indra/newview/llfloaterimsessiontab.h +++ b/indra/newview/llfloaterimsessiontab.h @@ -216,11 +216,11 @@ private: void onInputEditorClicked(); static void onEmojiRecentPanelToggleBtnClicked(LLFloaterIMSessionTab* self); - static void onEmojiPickerToggleBtnClicked(LLFloaterIMSessionTab* self); + static void onEmojiPickerToggleBtnClicked(); void initEmojiRecentPanel(bool moveFocus); void onRecentEmojiPicked(const LLSD& value); - void onEmojiPicked(llwchar emoji); - void onEmojiPickerClosed(); + static void onEmojiPicked(llwchar emoji); + static void onEmojiPickerClosed(); bool checkIfTornOff(); bool mIsHostAttached; -- cgit v1.2.3 From f6ceafee5bb26cf86d64959cabf68deefaf791a8 Mon Sep 17 00:00:00 2001 From: Alexander Gavriliuk Date: Mon, 22 Jan 2024 06:40:41 +0100 Subject: SL-20416 Avoid of taking focus by EmojiPicker --- indra/newview/llfloaterimsessiontab.h | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'indra/newview/llfloaterimsessiontab.h') diff --git a/indra/newview/llfloaterimsessiontab.h b/indra/newview/llfloaterimsessiontab.h index ddffed57a3..cc985b2753 100644 --- a/indra/newview/llfloaterimsessiontab.h +++ b/indra/newview/llfloaterimsessiontab.h @@ -189,7 +189,7 @@ protected: LLButton* mExpandCollapseBtn; LLButton* mTearOffBtn; LLButton* mEmojiRecentPanelToggleBtn; - LLButton* mEmojiPickerToggleBtn; + LLButton* mEmojiPickerShowBtn; LLButton* mCloseBtn; LLButton* mGearBtn; LLButton* mAddBtn; @@ -215,12 +215,10 @@ private: void onInputEditorClicked(); - static void onEmojiRecentPanelToggleBtnClicked(LLFloaterIMSessionTab* self); - static void onEmojiPickerToggleBtnClicked(); - void initEmojiRecentPanel(bool moveFocus); + void onEmojiRecentPanelToggleBtnClicked(); + void onEmojiPickerShowBtnClicked(); + void initEmojiRecentPanel(); void onRecentEmojiPicked(const LLSD& value); - static void onEmojiPicked(llwchar emoji); - static void onEmojiPickerClosed(); bool checkIfTornOff(); bool mIsHostAttached; -- cgit v1.2.3