DirectStickerTabFragment:direct_sticker_tab_tray_fragment, the composer's
sticker tray: the sticker, emoji and GIF tabs under the conversation.
Opening it sends the two IGStickerConsolidatedQuery batches together — the
recent, cutout, favourite and third-party stickers, and the first-party packs
at the grid's icon and full sizes — after the tray comes in front; the tray's
own entry is in the chain of each request it sends. The first-party batch is
decoded into the grid's rows (DirectStickerPickerGridScreen); the
tray's other sections are drawn, not modelled.
Actions: openGifTab() shows the GIF tab (DirectGifTrayScreen);
openStickerTab() the sticker grid (DirectStickerPickerGridScreen,
the sheet the tray opens under the conversation), handing it the rows the
tray's answer named.
How it is reached: DirectThreadScreen.openStickerTray() (the composer's
"+": the conversation's own entry, the ordinal it hands to a screen no
request names, and the "+" menu itself).
DirectStickerTabFragment:direct_sticker_tab_tray_fragment, the composer's sticker tray: the sticker, emoji and GIF tabs under the conversation.Opening it sends the two
IGStickerConsolidatedQuerybatches together — the recent, cutout, favourite and third-party stickers, and the first-party packs at the grid's icon and full sizes — after the tray comes in front; the tray's own entry is in the chain of each request it sends. The first-party batch is decoded into the grid's rows (DirectStickerPickerGridScreen); the tray's other sections are drawn, not modelled.Actions:
openGifTab()shows the GIF tab (DirectGifTrayScreen);openStickerTab()the sticker grid (DirectStickerPickerGridScreen, the sheet the tray opens under the conversation), handing it the rows the tray's answer named.How it is reached:
DirectThreadScreen.openStickerTray()(the composer's "+": the conversation's own entry, the ordinal it hands to a screen no request names, and the "+" menu itself).Guide: The sticker tray