diff options
author | Claudio Cambra <claudio.cambra@gmail.com> | 2022-11-03 17:16:34 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-03 17:16:34 +0300 |
commit | b11a51dff908559b73dd9ffcbb379a9752e5360b (patch) | |
tree | efe26d4747e0499e1f781539da40b65abb34f80c | |
parent | 34a59fbb458c6042729b28f79373157fda95bc22 (diff) | |
parent | e45a023961c0960c09d2c56a4c95bbd91abdb487 (diff) |
Merge pull request #5123 from nextcloud/bugfix/remove-unused-internal-link-widget
Remove unused internal link widget from old share dialog
-rw-r--r-- | src/gui/CMakeLists.txt | 3 | ||||
-rw-r--r-- | src/gui/internallinkwidget.cpp | 86 | ||||
-rw-r--r-- | src/gui/internallinkwidget.h | 59 | ||||
-rw-r--r-- | src/gui/internallinkwidget.ui | 168 |
4 files changed, 0 insertions, 316 deletions
diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index 77d875b85..5d4f8f479 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -28,7 +28,6 @@ set(theme_dir ${CMAKE_SOURCE_DIR}/theme) set(client_UI_SRCS accountsettings.ui conflictdialog.ui - internallinkwidget.ui invalidfilenamedialog.ui foldercreationdialog.ui folderwizardsourcepage.ui @@ -102,8 +101,6 @@ set(client_SRCS generalsettings.cpp legalnotice.h legalnotice.cpp - internallinkwidget.h - internallinkwidget.cpp ignorelisteditor.h ignorelisteditor.cpp ignorelisttablewidget.h diff --git a/src/gui/internallinkwidget.cpp b/src/gui/internallinkwidget.cpp deleted file mode 100644 index e8c65005f..000000000 --- a/src/gui/internallinkwidget.cpp +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright (C) 2022 by Claudio Cambra <claudio.cambra@nextcloud.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. - */ - -#include "internallinkwidget.h" -#include "accountstate.h" -#include "folderman.h" -#include "theme.h" - -#include "QProgressIndicator.h" -#include <QClipboard> - -namespace OCC { - -Q_LOGGING_CATEGORY(lcInternalLink, "nextcloud.gui.internallink", QtInfoMsg) - -InternalLinkWidget::InternalLinkWidget(const QString &localPath, - QWidget *parent) - : QWidget(parent) - , _localPath(localPath) -{ - _ui->setupUi(this); - - const auto folder = FolderMan::instance()->folderForPath(_localPath); - const auto folderRelativePath = _localPath.mid(folder->cleanPath().length() + 1); - const auto serverRelativePath = QDir(folder->remotePath()).filePath(folderRelativePath); - - const auto bindLinkSlot = [this](QString link) { slotLinkFetched(link); }; - - fetchPrivateLinkUrl( - folder->accountState()->account(), - serverRelativePath, - {}, - this, - bindLinkSlot - ); - - _ui->copyInternalLinkButton->setEnabled(false); - _ui->internalLinkProgressIndicator->setVisible(true); - _ui->internalLinkProgressIndicator->startAnimation(); - - connect(_ui->copyInternalLinkButton, &QPushButton::clicked, this, &InternalLinkWidget::slotCopyInternalLink); -} - -void InternalLinkWidget::slotLinkFetched(const QString &url) -{ - _internalUrl = url; - _ui->copyInternalLinkButton->setEnabled(true); - _ui->internalLinkProgressIndicator->setVisible(false); - _ui->internalLinkProgressIndicator->stopAnimation(); - _ui->horizontalSpacer->changeSize(0, 0); - _ui->horizontalSpacer_2->changeSize(0, 0); -} - -void InternalLinkWidget::slotCopyInternalLink() const -{ - QApplication::clipboard()->setText(_internalUrl); -} - -void InternalLinkWidget::setupUiOptions() -{ - customizeStyle(); -} - -void InternalLinkWidget::slotStyleChanged() -{ - customizeStyle(); -} - -void InternalLinkWidget::customizeStyle() -{ - _ui->copyInternalLinkButton->setIcon(Theme::createColorAwareIcon(":/client/theme/copy.svg")); - _ui->internalLinkIconLabel->setPixmap(Theme::createColorAwarePixmap(":/client/theme/external.svg")); -} - -} diff --git a/src/gui/internallinkwidget.h b/src/gui/internallinkwidget.h deleted file mode 100644 index cb343a11e..000000000 --- a/src/gui/internallinkwidget.h +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (C) 2022 by Claudio Cambra <claudio.cambra@nextcloud.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. - */ - -#ifndef INTERNALLINKWIDGET_H -#define INTERNALLINKWIDGET_H - -#include "QProgressIndicator.h" -#include <QList> -#include <QPushButton> - -#include "ui_internallinkwidget.h" - -namespace OCC { - -/** - * @brief The ShareDialog class - * @ingroup gui - */ -class InternalLinkWidget : public QWidget -{ - Q_OBJECT - -public: - explicit InternalLinkWidget(const QString &localPath, - QWidget *parent = nullptr); - ~InternalLinkWidget() override = default; - - void setupUiOptions(); - -public slots: - void slotStyleChanged(); - -private slots: - void slotLinkFetched(const QString &url); - void slotCopyInternalLink() const; - -private: - void customizeStyle(); - - std::unique_ptr<Ui::InternalLinkWidget> _ui = std::make_unique<Ui::InternalLinkWidget>(); - QString _localPath; - QString _internalUrl; - - QPushButton *_copyInternalLinkButton{}; -}; -} - -#endif // INTERNALLINKWIDGET_H diff --git a/src/gui/internallinkwidget.ui b/src/gui/internallinkwidget.ui deleted file mode 100644 index 202ec7240..000000000 --- a/src/gui/internallinkwidget.ui +++ /dev/null @@ -1,168 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<ui version="4.0"> - <class>OCC::InternalLinkWidget</class> - <widget class="QWidget" name="OCC::InternalLinkWidget"> - <property name="geometry"> - <rect> - <x>0</x> - <y>0</y> - <width>400</width> - <height>238</height> - </rect> - </property> - <property name="sizePolicy"> - <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <layout class="QVBoxLayout" name="verticalLayout"> - <property name="spacing"> - <number>0</number> - </property> - <property name="leftMargin"> - <number>12</number> - </property> - <property name="topMargin"> - <number>0</number> - </property> - <property name="rightMargin"> - <number>20</number> - </property> - <item> - <layout class="QHBoxLayout" name="horizontalLayout"> - <property name="spacing"> - <number>6</number> - </property> - <property name="rightMargin"> - <number>0</number> - </property> - <item> - <widget class="QLabel" name="internalLinkIconLabel"> - <property name="text"> - <string notr="true"/> - </property> - <property name="pixmap"> - <pixmap resource="../../theme.qrc">:/client/theme/external.svg</pixmap> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> - <item> - <layout class="QVBoxLayout" name="verticalTextLayout"> - <item> - <widget class="QLabel" name="internalLinkLabel"> - <property name="sizePolicy"> - <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="text"> - <string>Internal link</string> - </property> - </widget> - </item> - <item> - <widget class="QLabel" name="infoMessage"> - <property name="sizePolicy"> - <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="enabled"> - <bool>true</bool> - </property> - <property name="styleSheet"> - <string notr="true">color: rgb(118, 118, 118)</string> - </property> - <property name="text"> - <string>Only works for users with access to this folder</string> - </property> - <property name="wordWrap"> - <bool>true</bool> - </property> - </widget> - </item> - </layout> - </item> - <item> - <spacer name="horizontalSpacer"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>25</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QProgressIndicator" name="internalLinkProgressIndicator" native="true"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Fixed" vsizetype="Fixed"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="minimumSize"> - <size> - <width>28</width> - <height>27</height> - </size> - </property> - </widget> - </item> - <item> - <spacer name="horizontalSpacer_2"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>25</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QPushButton" name="copyInternalLinkButton"> - <property name="text"> - <string/> - </property> - <property name="icon"> - <iconset resource="../../theme.qrc"> - <normaloff>:/client/theme/copy.svg</normaloff>:/client/theme/copy.svg</iconset> - </property> - <property name="checkable"> - <bool>false</bool> - </property> - <property name="flat"> - <bool>true</bool> - </property> - </widget> - </item> - </layout> - </item> - </layout> - </widget> - <layoutdefault spacing="6" margin="11"/> - <customwidgets> - <customwidget> - <class>QProgressIndicator</class> - <extends>QWidget</extends> - <header>QProgressIndicator.h</header> - <container>1</container> - </customwidget> - </customwidgets> - <resources> - <include location="../../theme.qrc"/> - </resources> - <connections/> -</ui> |