[Pkg-owncloud-commits] [owncloud-client] 326/484: ActivityWidget: open local file in file manager if exists.
Sandro Knauß
hefee-guest at moszumanska.debian.org
Wed Dec 16 00:37:59 UTC 2015
This is an automated email from the git hooks/post-receive script.
hefee-guest pushed a commit to branch master
in repository owncloud-client.
commit a56926b8d94ebd6add7a2ce69e9f4b7ef3424b12
Author: Klaas Freitag <freitag at owncloud.com>
Date: Mon Nov 16 15:31:24 2015 +0100
ActivityWidget: open local file in file manager if exists.
---
src/gui/activityitemdelegate.cpp | 1 +
src/gui/activitywidget.cpp | 24 +++++++++---------------
src/gui/activitywidget.h | 2 +-
3 files changed, 11 insertions(+), 16 deletions(-)
diff --git a/src/gui/activityitemdelegate.cpp b/src/gui/activityitemdelegate.cpp
index 868f74e..2c50da3 100644
--- a/src/gui/activityitemdelegate.cpp
+++ b/src/gui/activityitemdelegate.cpp
@@ -81,6 +81,7 @@ void ActivityItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &
QIcon userIcon = qvariant_cast<QIcon>(index.data(UserIconRole));
QString actionText = qvariant_cast<QString>(index.data(ActionTextRole));
QString pathText = qvariant_cast<QString>(index.data(PathRole));
+
QString remoteLink = qvariant_cast<QString>(index.data(LinkRole));
QString timeText = qvariant_cast<QString>(index.data(PointInTimeRole));
QString accountRole = qvariant_cast<QString>(index.data(AccountRole));
diff --git a/src/gui/activitywidget.cpp b/src/gui/activitywidget.cpp
index b404c6d..930fd87 100644
--- a/src/gui/activitywidget.cpp
+++ b/src/gui/activitywidget.cpp
@@ -72,6 +72,7 @@ QVariant ActivityListModel::data(const QModelIndex &index, int role) const
return QVariant();
switch (role) {
+ case ActivityItemDelegate::PathRole:
case Qt::ToolTipRole:
list = FolderMan::instance()->findFileInLocalFolders(a._file);
if( list.count() > 0 ) {
@@ -89,9 +90,6 @@ QVariant ActivityListModel::data(const QModelIndex &index, int role) const
case ActivityItemDelegate::ActionTextRole:
return a._subject;
break;
- case ActivityItemDelegate::PathRole:
- return a._file;
- break;
case ActivityItemDelegate::LinkRole:
return a._link;
break;
@@ -308,6 +306,9 @@ ActivityWidget::ActivityWidget(QWidget *parent) :
connect(_copyBtn, SIGNAL(clicked()), SIGNAL(copyToClipboard()));
connect(_model, SIGNAL(rowsInserted(QModelIndex,int,int)), SIGNAL(rowsInserted()));
+
+ connect( _ui->_activityList, SIGNAL(activated(QModelIndex)), this,
+ SLOT(slotOpenFile(QModelIndex)));
}
ActivityWidget::~ActivityWidget()
@@ -362,22 +363,15 @@ void ActivityWidget::storeActivityList( QTextStream& ts )
}
}
-void ActivityWidget::slotOpenFile( )
+void ActivityWidget::slotOpenFile(QModelIndex indx)
{
- // FIXME make work at all.
-#if 0
- QString folderName = item->data(2, Qt::UserRole).toString();
- QString fileName = item->text(1);
-
- Folder *folder = FolderMan::instance()->folder(folderName);
- if (folder) {
- // folder->path() always comes back with trailing path
- QString fullPath = folder->path() + fileName;
- if (QFile(fullPath).exists()) {
+ if( indx.isValid() ) {
+ QString fullPath = indx.data(ActivityItemDelegate::PathRole).toString();
+
+ if (QFile::exists(fullPath)) {
showInFileManager(fullPath);
}
}
-#endif
}
diff --git a/src/gui/activitywidget.h b/src/gui/activitywidget.h
index e360188..90aebd0 100644
--- a/src/gui/activitywidget.h
+++ b/src/gui/activitywidget.h
@@ -125,7 +125,7 @@ public:
void storeActivityList(QTextStream &ts);
public slots:
- void slotOpenFile();
+ void slotOpenFile(QModelIndex indx);
void slotRefresh(AccountState* ptr);
void slotRemoveAccount( AccountState *ptr );
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/owncloud-client.git
More information about the Pkg-owncloud-commits
mailing list