summaryrefslogtreecommitdiff
path: root/indra/newview/llfloateremojipicker.h
diff options
context:
space:
mode:
authorAlexander Gavriliuk <alexandrgproductengine@lindenlab.com>2023-11-07 23:13:00 +0100
committerGuru <alexandrgproductengine@lindenlab.com>2023-11-08 11:15:35 +0100
commit716b9af35d0dbc3ba8048a1bcca2c8c8f703bed0 (patch)
tree3cc496a6dd1e810b8ad5fafbb2a3797b2ce20258 /indra/newview/llfloateremojipicker.h
parent2e0892e53041f75fc991b77870a4f2f4672fefb1 (diff)
SL-20356 EmojiPicker - Implement arrow keys navigation
Diffstat (limited to 'indra/newview/llfloateremojipicker.h')
-rw-r--r--indra/newview/llfloateremojipicker.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/indra/newview/llfloateremojipicker.h b/indra/newview/llfloateremojipicker.h
index b8e3190bf3..48f66d7950 100644
--- a/indra/newview/llfloateremojipicker.h
+++ b/indra/newview/llfloateremojipicker.h
@@ -63,6 +63,7 @@ public:
private:
void fillGroups();
void moveGroups();
+ void showPreview(bool show);
void fillEmojis(bool fromResize = false);
void onGroupButtonClick(LLUICtrl* ctrl);
@@ -76,9 +77,18 @@ private:
void onEmojiMouseDown(LLUICtrl* ctrl);
void onEmojiMouseUp(LLUICtrl* ctrl);
+ bool enterArrowMode();
+ void exitArrowMode();
+ void selectFocusedIcon();
+ bool moveFocusedIconUp();
+ bool moveFocusedIconDown();
+ bool moveFocusedIconLeft();
+ bool moveFocusedIconRight();
+
void selectGridIcon(LLUICtrl* ctrl);
void unselectGridIcon(LLUICtrl* ctrl);
+ virtual BOOL handleKey(KEY key, MASK mask, BOOL called_from_parent) override;
virtual BOOL handleKeyHere(KEY key, MASK mask) override;
class LLPanel* mGroups { nullptr };
@@ -97,6 +107,9 @@ private:
S32 mRecentBadgeWidth { 0 };
S32 mRecentGridWidth { 0 };
S32 mRecentMaxIcons { 0 };
+ S32 mFocusedIconRow { 0 };
+ S32 mFocusedIconCol { 0 };
+ LLUICtrl* mFocusedIcon { nullptr };
LLUICtrl* mHoveredIcon { nullptr };
};