File indexing completed on 2024-05-12 17:09:48

0001 /*
0002     SPDX-FileCopyrightText: 2008, 2009 Fredrik Höglund <fredrik@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include <KIO/ForwardingWorkerBase>
0010 
0011 class DesktopProtocol : public KIO::ForwardingWorkerBase
0012 {
0013     Q_OBJECT
0014 public:
0015     DesktopProtocol(const QByteArray &protocol, const QByteArray &pool, const QByteArray &app);
0016     ~DesktopProtocol() override;
0017 
0018 protected:
0019     void checkLocalInstall();
0020     QString desktopFile(KIO::UDSEntry &) const;
0021     bool rewriteUrl(const QUrl &url, QUrl &newUrl) override;
0022     KIO::WorkerResult listDir(const QUrl &url) override;
0023     void adjustUDSEntry(KIO::UDSEntry &entry, UDSEntryCreationMode creationMode) const override;
0024     KIO::WorkerResult rename(const QUrl &, const QUrl &, KIO::JobFlags flags) override;
0025 
0026 private:
0027     KIO::WorkerResult fileSystemFreeSpace(const QUrl &url) override;
0028 };