summary refs log tree commit diff
path: root/src/timeline/TimelineItem.cc
diff options
context:
space:
mode:
authorKonstantinos Sideris <sideris.konstantin@gmail.com>2018-03-14 21:31:09 +0200
committerKonstantinos Sideris <sideris.konstantin@gmail.com>2018-03-14 21:31:09 +0200
commit511c58d608eeec4899cff4d016d4d5d99fbff36f (patch)
tree69ca9bfee8df013ff31a63a7daaf49e1b51e5000 /src/timeline/TimelineItem.cc
parentFix CI builds (diff)
downloadnheko-511c58d608eeec4899cff4d016d4d5d99fbff36f.tar.xz
Add context menu option to save images
fixes #265
Diffstat (limited to 'src/timeline/TimelineItem.cc')
-rw-r--r--src/timeline/TimelineItem.cc15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/timeline/TimelineItem.cc b/src/timeline/TimelineItem.cc

index 1707dd19..2f04a1bd 100644 --- a/src/timeline/TimelineItem.cc +++ b/src/timeline/TimelineItem.cc
@@ -137,6 +137,8 @@ TimelineItem::TimelineItem(ImageItem *image, init(); setupLocalWidgetLayout<ImageItem>(image, userid, "sent an image", withSender); + + addSaveImageAction(image); } TimelineItem::TimelineItem(FileItem *file, const QString &userid, bool withSender, QWidget *parent) @@ -177,6 +179,8 @@ TimelineItem::TimelineItem(ImageItem *image, { setupWidgetLayout<mtx::events::RoomEvent<mtx::events::msg::Image>, ImageItem>( image, event, " sent an image", with_sender); + + addSaveImageAction(image); } TimelineItem::TimelineItem(FileItem *file, @@ -518,3 +522,14 @@ TimelineItem::paintEvent(QPaintEvent *) QPainter p(this); style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); } + +void +TimelineItem::addSaveImageAction(ImageItem *image) +{ + if (contextMenu_) { + auto saveImage = new QAction("Save image", this); + contextMenu_->addAction(saveImage); + + connect(saveImage, &QAction::triggered, image, &ImageItem::saveAs); + } +}