diff --git a/resources/qml/MessageInput.qml b/resources/qml/MessageInput.qml
index d4f7ca62..415d67a7 100644
--- a/resources/qml/MessageInput.qml
+++ b/resources/qml/MessageInput.qml
@@ -331,7 +331,7 @@ Rectangle {
image: ":/icons/icons/ui/sticky-note-solid.svg"
ToolTip.visible: hovered
ToolTip.text: qsTr("Stickers")
- onClicked: stickerPopup.visible ? stickerPopup.close() : stickerPopup.show(stickerButton, TimelineManager.completerFor("stickers", room.roomId()), function(row) {
+ onClicked: stickerPopup.visible ? stickerPopup.close() : stickerPopup.show(stickerButton, room.roomId(), function(row) {
room.input.sticker(stickerPopup.model.sourceModel, row);
TimelineManager.focusMessageInput();
})
diff --git a/resources/qml/emoji/StickerPicker.qml b/resources/qml/emoji/StickerPicker.qml
index eca302eb..a3d01d7a 100644
--- a/resources/qml/emoji/StickerPicker.qml
+++ b/resources/qml/emoji/StickerPicker.qml
@@ -15,7 +15,7 @@ Menu {
property var callback
property var colors
- property alias model: gridView.model
+ property string roomid
property var textArea
property real highlightHue: Nheko.colors.highlight.hslHue
property real highlightSat: Nheko.colors.highlight.hslSaturation
@@ -24,9 +24,9 @@ Menu {
readonly property int stickerDimPad: 128 + Nheko.paddingSmall
readonly property int stickersPerRow: 3
- function show(showAt, model_, callback) {
+ function show(showAt, roomid_, callback) {
console.debug("Showing sticker picker");
- model = model_;
+ roomid = roomid_;
stickerPopup.callback = callback;
popup(showAt ? showAt : null);
}
@@ -120,6 +120,8 @@ Menu {
GridView {
id: gridView
+ model: roomid ? TimelineManager.completerFor("stickers", roomid) : null
+
Layout.preferredHeight: cellHeight * 3.5
Layout.preferredWidth: stickersPerRow * stickerDimPad + 20
Layout.leftMargin: 4
|