[Pkg-owncloud-commits] [owncloud-client] 97/484: Dolphin shell extention: Remove the KDE4 based plugin

Sandro Knauß hefee-guest at moszumanska.debian.org
Wed Dec 16 00:37:20 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 5408ec79f755825302d95a3a9cdc46e08f30fdd2
Author: Olivier Goffart <ogoffart at woboq.com>
Date:   Mon Oct 19 15:42:41 2015 +0200

    Dolphin shell extention: Remove the KDE4 based plugin
---
 .../dolphin/0001-KOverlayIconPlugin.patch          | 256 ---------------------
 shell_integration/dolphin/CMakeLists.txt           |  17 --
 shell_integration/dolphin/README                   |  18 --
 .../dolphin/ownclouddolphinplugin.cpp              | 131 -----------
 .../dolphin/ownclouddolphinplugin.desktop          |   6 -
 5 files changed, 428 deletions(-)

diff --git a/shell_integration/dolphin/0001-KOverlayIconPlugin.patch b/shell_integration/dolphin/0001-KOverlayIconPlugin.patch
deleted file mode 100644
index 25f9cee..0000000
--- a/shell_integration/dolphin/0001-KOverlayIconPlugin.patch
+++ /dev/null
@@ -1,256 +0,0 @@
-From 3a26dc77f8e988ea99b23c4d5a2c831ecc31c920 Mon Sep 17 00:00:00 2001
-From: Olivier Goffart <ogoffart at woboq.com>
-Date: Thu, 17 Jul 2014 13:26:56 +0200
-Subject: [PATCH] WIP: add KOverlayIconPlugin
-
----
- .../src/kitemviews/kfileitemmodelrolesupdater.cpp  | 35 ++++++++++++-
- .../src/kitemviews/kfileitemmodelrolesupdater.h    |  9 ++++
- lib/konq/CMakeLists.txt                            |  4 +-
- lib/konq/koverlayiconplugin.cpp                    | 30 ++++++++++++
- lib/konq/koverlayiconplugin.desktop                |  4 ++
- lib/konq/koverlayiconplugin.h                      | 57 ++++++++++++++++++++++
- 6 files changed, 137 insertions(+), 2 deletions(-)
- create mode 100644 lib/konq/koverlayiconplugin.cpp
- create mode 100644 lib/konq/koverlayiconplugin.desktop
- create mode 100644 lib/konq/koverlayiconplugin.h
-
-diff --git a/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp b/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp
-index 0865d40..840a65d 100644
---- a/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp
-+++ b/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp
-@@ -28,9 +28,11 @@
- #include <KGlobal>
- #include <KIO/JobUiDelegate>
- #include <KIO/PreviewJob>
-+#include <KServiceTypeTrader>
- 
- #include "private/kpixmapmodifier.h"
- #include "private/kdirectorycontentscounter.h"
-+#include <koverlayiconplugin.h>
- 
- #include <QApplication>
- #include <QPainter>
-@@ -129,6 +131,17 @@ KFileItemModelRolesUpdater::KFileItemModelRolesUpdater(KFileItemModel* model, QO
-     m_directoryContentsCounter = new KDirectoryContentsCounter(m_model, this);
-     connect(m_directoryContentsCounter, SIGNAL(result(QString,int)),
-             this,                       SLOT(slotDirectoryContentsCountReceived(QString,int)));
-+
-+
-+    const KService::List pluginServices = KServiceTypeTrader::self()->query("KOverlayIconPlugin");
-+
-+    for (KService::List::ConstIterator it = pluginServices.constBegin(); it != pluginServices.constEnd(); ++it) {
-+        KOverlayIconPlugin* plugin = (*it)->createInstance<KOverlayIconPlugin>(this);
-+        if (plugin) {
-+            m_overlayIconsPlugin.append(plugin);
-+            connect(plugin, SIGNAL(overlaysChanged(KUrl,QStringList)), this, SLOT(slotOverlaysChanged(KUrl,QStringList)));
-+        }
-+    }
- }
- 
- KFileItemModelRolesUpdater::~KFileItemModelRolesUpdater()
-@@ -1075,7 +1088,11 @@ QHash<QByteArray, QVariant> KFileItemModelRolesUpdater::rolesData(const KFileIte
-         data.insert("type", item.mimeComment());
-     }
- 
--    data.insert("iconOverlays", item.overlays());
-+    QStringList overlays = item.overlays();
-+    foreach(KOverlayIconPlugin *it, m_overlayIconsPlugin) {
-+        overlays.append(it->getOverlays(item));
-+    }
-+    data.insert("iconOverlays", overlays);
- 
- #ifdef HAVE_BALOO
-     if (m_balooFileMonitor) {
-@@ -1086,6 +1103,22 @@ QHash<QByteArray, QVariant> KFileItemModelRolesUpdater::rolesData(const KFileIte
-     return data;
- }
- 
-+void KFileItemModelRolesUpdater::slotOverlaysChanged(const KUrl& url, const QStringList &)
-+{
-+    KFileItem item = m_model->fileItem(url);
-+    if (item.isNull())
-+        return;
-+    int index = m_model->index(item);
-+    QHash <QByteArray, QVariant> data =  m_model->data(index);
-+    QStringList overlays = item.overlays();
-+    foreach(KOverlayIconPlugin *it, m_overlayIconsPlugin) {
-+        overlays.append(it->getOverlays(item));
-+    }
-+    data.insert("iconOverlays", overlays);
-+    m_model->setData(index, data);
-+}
-+
-+
- void KFileItemModelRolesUpdater::updateAllPreviews()
- {
-     if (m_state == Paused) {
-diff --git a/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h b/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h
-index a9e979a..6d3add0 100644
---- a/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h
-+++ b/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h
-@@ -32,6 +32,7 @@
- #include <QSize>
- #include <QStringList>
- 
-+class KOverlayIconPlugin;
- class KDirectoryContentsCounter;
- class KFileItemModel;
- class KJob;
-@@ -180,6 +181,12 @@ private slots:
-     void slotPreviewJobFinished();
- 
-     /**
-+     * Is invoked when one of the KOverlayIconPlugin emit the signal that an overlay has changed
-+     */
-+    void slotOverlaysChanged(const KUrl&, const QStringList&);
-+
-+
-+    /**
-      * Resolves the sort role of the next item in m_pendingSortRole, applies it
-      * to the model, and invokes itself if there are any pending items left. If
-      * that is not the case, \a startUpdating() is called.
-@@ -331,6 +338,8 @@ private:
- 
-     KDirectoryContentsCounter* m_directoryContentsCounter;
- 
-+    QList<KOverlayIconPlugin*> m_overlayIconsPlugin;
-+
- #ifdef HAVE_BALOO
-     Baloo::FileMonitor* m_balooFileMonitor;
- #endif
-diff --git a/lib/konq/CMakeLists.txt b/lib/konq/CMakeLists.txt
-index 8ecbfa9..7381caf 100644
---- a/lib/konq/CMakeLists.txt
-+++ b/lib/konq/CMakeLists.txt
-@@ -22,6 +22,7 @@ set(konq_LIB_SRCS
-    konq_historyprovider.cpp
-    kversioncontrolplugin.cpp  # used by dolphin and its version control plugins (deprecated)
-    kversioncontrolplugin2.cpp # used by dolphin and its version control plugins
-+   koverlayiconplugin.cpp
- 
-    konq_nameandurlinputdialog.cpp # deprecated (functionality has moved to kdelibs)
-    knewmenu.cpp # deprecated (functionality has moved to kdelibs)
-@@ -67,8 +68,9 @@ install( FILES
-  konq_fileitemcapabilities.h
-  kversioncontrolplugin.h
-  kversioncontrolplugin2.h
-+ koverlayiconplugin.h
-  konq_historyprovider.h
-  konq_historyentry.h
- DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Devel
- )
--install( FILES konqpopupmenuplugin.desktop konqdndpopupmenuplugin.desktop  DESTINATION  ${SERVICETYPES_INSTALL_DIR} )
-+install( FILES konqpopupmenuplugin.desktop konqdndpopupmenuplugin.desktop koverlayiconplugin.desktop  DESTINATION  ${SERVICETYPES_INSTALL_DIR} )
-diff --git a/lib/konq/koverlayiconplugin.cpp b/lib/konq/koverlayiconplugin.cpp
-new file mode 100644
-index 0000000..6125040
---- /dev/null
-+++ b/lib/konq/koverlayiconplugin.cpp
-@@ -0,0 +1,30 @@
-+/*****************************************************************************
-+ * Copyright (C) 2014 by Olivier Goffart <ogoffart at woboq.com>                *
-+ *                                                                           *
-+ * This library is free software; you can redistribute it and/or             *
-+ * modify it under the terms of the GNU Library General Public               *
-+ * License version 2 as published by the Free Software Foundation.           *
-+ *                                                                           *
-+ * This library is distributed in the hope that it will be useful,           *
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of            *
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU         *
-+ * Library General Public License for more details.                          *
-+ *                                                                           *
-+ * You should have received a copy of the GNU Library General Public License *
-+ * along with this library; see the file COPYING.LIB.  If not, write to      *
-+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,      *
-+ * Boston, MA 02110-1301, USA.                                               *
-+ *****************************************************************************/
-+
-+#include "koverlayiconplugin.h"
-+#include <KFileItem>
-+
-+KOverlayIconPlugin::KOverlayIconPlugin(QObject* parent) : QObject(parent)
-+{
-+}
-+
-+KOverlayIconPlugin::~KOverlayIconPlugin()
-+{
-+}
-+
-+#include "koverlayiconplugin.moc"
-diff --git a/lib/konq/koverlayiconplugin.desktop b/lib/konq/koverlayiconplugin.desktop
-new file mode 100644
-index 0000000..65a1170
---- /dev/null
-+++ b/lib/konq/koverlayiconplugin.desktop
-@@ -0,0 +1,4 @@
-+[Desktop Entry]
-+Type=ServiceType
-+X-KDE-ServiceType=KOverlayIconPlugin
-+Comment=Plugin to add overlay icons in Dolphin
-diff --git a/lib/konq/koverlayiconplugin.h b/lib/konq/koverlayiconplugin.h
-new file mode 100644
-index 0000000..bcdf31b
---- /dev/null
-+++ b/lib/konq/koverlayiconplugin.h
-@@ -0,0 +1,57 @@
-+/*****************************************************************************
-+ * Copyright (C) 2014 by Olivier Goffart <ogoffart at woboq.com>                *
-+ *                                                                           *
-+ * This library is free software; you can redistribute it and/or             *
-+ * modify it under the terms of the GNU Library General Public               *
-+ * License version 2 as published by the Free Software Foundation.           *
-+ *                                                                           *
-+ * This library is distributed in the hope that it will be useful,           *
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of            *
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU         *
-+ * Library General Public License for more details.                          *
-+ *                                                                           *
-+ * You should have received a copy of the GNU Library General Public License *
-+ * along with this library; see the file COPYING.LIB.  If not, write to      *
-+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,      *
-+ * Boston, MA 02110-1301, USA.                                               *
-+ *****************************************************************************/
-+
-+
-+#ifndef OverlayIconPlugin_H
-+#define OverlayIconPlugin_H
-+
-+#include <QtCore/QObject>
-+#include <libkonq_export.h>
-+
-+class KUrl;
-+class KFileItem;
-+
-+/**
-+ * @brief Base class for overlay icon plugins.
-+ *
-+ * Enables the file manager to show custom overlay icons on files.
-+ *
-+ * To write a custom plugin you need to create a .desktop file for your plugin with
-+ * KDE-ServiceTypes=KOverlayIconPlugin
-+ */
-+class LIBKONQ_EXPORT KOverlayIconPlugin : public QObject {
-+    Q_OBJECT
-+    void *d;
-+public:
-+    explicit KOverlayIconPlugin(QObject *parent = 0);
-+    ~KOverlayIconPlugin();
-+
-+    /**
-+     * Returns a list of overlay pixmap to add to a file
-+     * This can be a path to an icon, or the icon name
-+     */
-+    virtual QStringList getOverlays(const KFileItem &item) = 0;
-+signals:
-+
-+    /**
-+     * Emit this signal when the list of overlay icon changed for a given URL
-+     */
-+    void overlaysChanged(const KUrl &url, const QStringList &overlays);
-+};
-+
-+#endif
--- 
-2.1.3
-
diff --git a/shell_integration/dolphin/CMakeLists.txt b/shell_integration/dolphin/CMakeLists.txt
deleted file mode 100644
index 0d70854..0000000
--- a/shell_integration/dolphin/CMakeLists.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-cmake_minimum_required(VERSION 2.6)
-project(dolphin-owncloud)
-find_package(KDE4 REQUIRED)
-include(KDE4Defaults)
-include(MacroLibrary)
-find_package(LibKonq REQUIRED)
-
-add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS})
-add_definitions(-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS)
-include_directories (${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES} )
-include_directories( ${KDE4_INCLUDE_DIR} ${QT_INCLUDES} ${LIBKONQ_INCLUDE_DIR} )
-
-kde4_add_plugin(ownclouddolphinplugin ownclouddolphinplugin.cpp)
-
-target_link_libraries(ownclouddolphinplugin ${KDE4_KIO_LIBS} ${LIBKONQ_LIBRARY})
-install(FILES ownclouddolphinplugin.desktop DESTINATION ${SERVICES_INSTALL_DIR})
-install(TARGETS ownclouddolphinplugin DESTINATION ${PLUGIN_INSTALL_DIR})
diff --git a/shell_integration/dolphin/README b/shell_integration/dolphin/README
deleted file mode 100644
index 7cd06d8..0000000
--- a/shell_integration/dolphin/README
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-- The patch 0001-KOverlayIconPlugin.patch should be applied to kde-baseapps git repository
-(It should apply to both KDE/4.14 or Applications/14.12 branches)
-
-- Recompile and install dolphin
-
-- Build and install the plugin
-
-- After installing, run
-    kdeinit4 --noincremental
-
-- To test that the plugin is well installed
-    ktraderclient --servicetype KOverlayIconPlugin
-  It should show the Owncloud plugin
-
-- restart dolphin (make sure to kill all instances)
-
diff --git a/shell_integration/dolphin/ownclouddolphinplugin.cpp b/shell_integration/dolphin/ownclouddolphinplugin.cpp
deleted file mode 100644
index def6657..0000000
--- a/shell_integration/dolphin/ownclouddolphinplugin.cpp
+++ /dev/null
@@ -1,131 +0,0 @@
-/******************************************************************************
- *   Copyright (C) 2014 by Olivier Goffart <ogoffart at woboq.com                *
- *                                                                            *
- *   This program is free software; you can redistribute it and/or modify     *
- *   it under the terms of the GNU General Public License as published by     *
- *   the Free Software Foundation; either version 2 of the License, or        *
- *   (at your option) any later version.                                      *
- *                                                                            *
- *   This program is distributed in the hope that it will be useful,          *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of           *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            *
- *   GNU General Public License for more details.                             *
- *                                                                            *
- *   You should have received a copy of the GNU General Public License        *
- *   along with this program; if not, write to the                            *
- *   Free Software Foundation, Inc.,                                          *
- *   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA               *
- ******************************************************************************/
-
-#include <koverlayiconplugin.h>
-#include <KPluginFactory>
-#include <KPluginLoader>
-#include <kdebug.h>
-#include <kfileitem.h>
-#include <QtNetwork/QLocalSocket>
-
-
-class OwncloudDolphinPlugin : public KOverlayIconPlugin
-{
-    Q_OBJECT
-    QLocalSocket m_socket;
-    typedef QHash<QByteArray, QByteArray> StatusMap;
-    StatusMap m_status;
-    QByteArray m_line;
-
-public:
-    explicit OwncloudDolphinPlugin(QObject* parent, const QList<QVariant>&) : KOverlayIconPlugin(parent) {
-        connect(&m_socket, SIGNAL(readyRead()), this, SLOT(readyRead()));
-        tryConnect();
-    }
-
-    virtual QStringList getOverlays(const KFileItem& item) {
-        KUrl url = item.url();
-        if (!url.isLocalFile())
-            return QStringList();
-        const QByteArray localFile = url.toLocalFile().toUtf8();
-        kDebug() << localFile;
-
-        tryConnect();
-        if (m_socket.state() == QLocalSocket::ConnectingState) {
-            if (!m_socket.waitForConnected(100)) {
-                kWarning() << "not connected" << m_socket.errorString();
-            }
-        }
-        if (m_socket.state() == QLocalSocket::ConnectedState) {
-            m_socket.write("RETRIEVE_FILE_STATUS:");
-            m_socket.write(localFile);
-            m_socket.write("\n");
-        }
-
-        StatusMap::iterator it = m_status.find(localFile);
-        if (it != m_status.constEnd()) {
-            return  overlaysForString(*it);
-        }
-        return QStringList();
-    }
-
-
-
-private:
-    void tryConnect() {
-        if (m_socket.state() != QLocalSocket::UnconnectedState)
-            return;
-        QString runtimeDir = QFile::decodeName(qgetenv("XDG_RUNTIME_DIR"));
-        QString socketPath = runtimeDir + "/" + "ownCloud" + "/socket";
-        m_socket.connectToServer(socketPath);
-    }
-
-    QStringList overlaysForString(const QByteArray status) {
-        QStringList r;
-        if (status.startsWith("NOP"))
-            return r;
-
-        if (status.startsWith("OK"))
-            r << "dialog-ok";
-        if (status.startsWith("SYNC") || status.startsWith("NEW"))
-            r << "view-refresh";
-
-        if (status.contains("+SWM"))
-            r << "document-share";
-
-        kDebug() << status << r;
-        return r;
-    }
-
-private slots:
-    void readyRead() {
-        while (m_socket.bytesAvailable()) {
-            m_line += m_socket.readLine();
-            if (!m_line.endsWith("\n"))
-                continue;
-            QByteArray line;
-            qSwap(line, m_line);
-            line.chop(1);
-            kDebug() << "got line " << line;
-            if (line.isEmpty())
-                continue;
-            QList<QByteArray> tokens = line.split(':');
-            if (tokens.count() != 3)
-                continue;
-            if (tokens[0] != "STATUS" && tokens[0] != "BROADCAST")
-                continue;
-            if (tokens[2].isEmpty())
-                continue;
-
-            const QByteArray name = tokens[2];
-            QByteArray &status = m_status[name]; // reference to the item in the hash
-            if (status == tokens[1])
-                continue;
-            status = tokens[1];
-
-            emit this->overlaysChanged(KUrl::fromLocalFile(QString::fromUtf8(name)), overlaysForString(status));
-        }
-    }
-};
-
-K_PLUGIN_FACTORY(OwncloudDolphinPluginFactory, registerPlugin<OwncloudDolphinPlugin>();)
-K_EXPORT_PLUGIN(OwncloudDolphinPluginFactory("ownclouddolhpinplugin"))
-
-
-#include "ownclouddolphinplugin.moc"
diff --git a/shell_integration/dolphin/ownclouddolphinplugin.desktop b/shell_integration/dolphin/ownclouddolphinplugin.desktop
deleted file mode 100644
index 07fc63f..0000000
--- a/shell_integration/dolphin/ownclouddolphinplugin.desktop
+++ /dev/null
@@ -1,6 +0,0 @@
-[Desktop Entry]
-Type=Service
-Name=Owncloud
-X-KDE-ServiceTypes=KOverlayIconPlugin
-MimeType=text/plain;
-X-KDE-Library=ownclouddolphinplugin

-- 
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