summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/SingleImagePackModel.cpp17
-rw-r--r--src/SingleImagePackModel.h1
2 files changed, 18 insertions, 0 deletions
diff --git a/src/SingleImagePackModel.cpp b/src/SingleImagePackModel.cpp

index 4eb120d9..6d0f0ad9 100644 --- a/src/SingleImagePackModel.cpp +++ b/src/SingleImagePackModel.cpp
@@ -310,11 +310,15 @@ SingleImagePackModel::addStickers(QList<QUrl> files) auto sz = img.size() / 2; if (sz.width() > 512 || sz.height() > 512) { sz.scale(512, 512, Qt::AspectRatioMode::KeepAspectRatio); + } else if (img.height() < 128 && img.width() < 128) { + sz = img.size(); } info.h = sz.height(); info.w = sz.width(); info.size = bytes.size(); + info.mimetype = + QMimeDatabase().mimeTypeForFile(f.toLocalFile()).name().toStdString(); auto filename = f.fileName().toStdString(); http::client()->upload( @@ -334,6 +338,19 @@ SingleImagePackModel::addStickers(QList<QUrl> files) }); } } + +void +SingleImagePackModel::remove(int idx) +{ + if (idx < (int)shortcodes.size() && idx >= 0) { + beginRemoveRows(QModelIndex(), idx, idx); + auto s = shortcodes.at(idx); + shortcodes.erase(shortcodes.begin() + idx); + pack.images.erase(s); + endRemoveRows(); + } +} + void SingleImagePackModel::addImageCb(std::string uri, std::string filename, mtx::common::ImageInfo info) { diff --git a/src/SingleImagePackModel.h b/src/SingleImagePackModel.h
index cd38b3b6..60138d36 100644 --- a/src/SingleImagePackModel.h +++ b/src/SingleImagePackModel.h
@@ -69,6 +69,7 @@ public: Q_INVOKABLE void save(); Q_INVOKABLE void addStickers(QList<QUrl> files); + Q_INVOKABLE void remove(int index); signals: void globallyEnabledChanged();