diff --git a/.gitmodules b/.gitmodules index 9a68ca0cb..273336f84 100644 --- a/.gitmodules +++ b/.gitmodules @@ -36,6 +36,8 @@ [submodule "retroshare-webui"] path = retroshare-webui url = https://github.com/RetroShare/RSNewWebUI.git + branch = master [submodule "supportlibs/librnp"] path = supportlibs/librnp url = https://github.com/rnpgp/rnp.git + branch = main diff --git a/README.asciidoc b/README.asciidoc index e1f41e74d..6e5c52ce9 100644 --- a/README.asciidoc +++ b/README.asciidoc @@ -7,6 +7,9 @@ RetroShare is a decentralized, private, secure, cross-platform, communication toolkit. RetroShare provides file sharing, chat, messages, forums, channels and more. +|=============================================================================== +| Developer Documentation | image:https://deepwiki.com/badge.svg[link="https://deepwiki.com/RetroShare/RetroShare",title="Ask DeepWiki"] +|=============================================================================== .Build Status |=============================================================================== |GNU/Linux (via Gitlab CI) | image:https://gitlab.com/RetroShare/RetroShare/badges/master/pipeline.svg[link="https://gitlab.com/RetroShare/RetroShare/-/commits/master",title="pipeline status"] diff --git a/build_scripts/OSX/MacOS_X_InstallGuide.md b/build_scripts/OSX/MacOS_X_InstallGuide.md index 4b3f6a8c5..b63b12185 100644 --- a/build_scripts/OSX/MacOS_X_InstallGuide.md +++ b/build_scripts/OSX/MacOS_X_InstallGuide.md @@ -2,13 +2,15 @@ ## Qt Installation -Install Qt via: [Qt Download](http://www.qt.io/download/) +Qt 5.15 is not available as install package. -Use default options. And add Qt Script support. +Download Qt 5.15.x from here: [Qt 5.15.17](https://download.qt.io/archive/qt/5.15/5.15.17/single/qt-everywhere-opensource-src-5.15.17.tar.xz) +Instruction howto Build Qt 5.15.x on macOS: [macOS Building](https://doc.qt.io/archives/qt-5.15/macos-building.html) +## Set the Environment Variables Add to the PATH environment variable by editing your *~/.profile* file. - export PATH="/users/$USER/Qt/5.14.1/clang_64/bin:$PATH" + export PATH="/users/$USER/Qt/5.15.17/clang_64/bin:$PATH" Depends on which version of Qt you use. @@ -32,11 +34,9 @@ In GitHub Desktop -> Clone Repository -> URL ## ***Get XCode & MacOSX SDK*** -Install XCode following this guide: [XCode](http://guide.macports.org/#installing.xcode) - To identify the correct version of Xcode to install, you need to know which OS you are running. Go to the [x] menu -> "About This Mac" and read the macOS version number. -If you are running the macOS Catalina >= 10.15, you can install Xcode directly from App Store using the instructions below. +If you are running macOS Ventura 13.5 or later, you can install Xcode directly from App Store using the instructions below. You can find older versions of Xcode at [Apple Developer Downloads](https://developer.apple.com/downloads/). Find the appropriate .xip file for your macOS version @@ -53,27 +53,12 @@ Install XCode command line developer tools: Start XCode to get it updated and to able C compiler to create executables. -Get Your MacOSX SDK if missing: [MacOSX-SDKs](https://github.com/phracker/MacOSX-SDKs) - -## ***Choose if you use MacPort or HomeBrew*** +Older MacOSX SDK is available from here: [MacOSX-SDKs](https://github.com/phracker/MacOSX-SDKs) ### MacPort Installation Install MacPort following this guide: [MacPort](http://guide.macports.org/#installing.xcode) -#### Install libraries - - $ sudo port -v selfupdate - $ sudo port install openssl - $ sudo port install miniupnpc - -For VOIP Plugin: - - $ sudo port install speex-devel - $ sudo port install opencv - $ sudo port install ffmpeg - - ### HOMEBREW Installation Install HomeBrew following this guide: [HomeBrew](http://brew.sh/) diff --git a/build_scripts/RedHat+Fedora/data/retroshare.desktop b/build_scripts/RedHat+Fedora/data/retroshare.desktop index f9ef52e82..91ea93250 100644 --- a/build_scripts/RedHat+Fedora/data/retroshare.desktop +++ b/build_scripts/RedHat+Fedora/data/retroshare.desktop @@ -1,10 +1,11 @@ [Desktop Entry] +Encoding=UTF-8 Version=1.0 Name=RetroShare -Comment=Securely share files with your friends +Comment=Securely communicate with your friends Exec=retroshare %U Icon=retroshare.xpm Terminal=false Type=Application -Categories=Network;P2P; +Categories=Network;Email;InstantMessaging;Chat;Feed;FileTransfer;P2P MimeType=x-scheme-handler/retroshare; diff --git a/build_scripts/Windows-msys2/WindowsMSys2_InstallGuide.md b/build_scripts/Windows-msys2/WindowsMSys2_InstallGuide.md index 2105112f1..a0d1b67b6 100644 --- a/build_scripts/Windows-msys2/WindowsMSys2_InstallGuide.md +++ b/build_scripts/Windows-msys2/WindowsMSys2_InstallGuide.md @@ -18,8 +18,8 @@ At the end, you'll get at ..\\*-msys2\deploy\ the Portable 7zip file. ### MSYS2 INSTALLATION (for editing or debugging) -Download MSYS2 from [MSYS2](http://www.msys2.org/). Get the i686 version -if you run a 32-bit Windows or the x86_64 if you run a 64-bit Windows. +Download MSYS2 from [MSYS2](http://www.msys2.org/). Installing +MSYS2 requires 64 bit Windows 10 or newer. Run the installer and install MSYS2. @@ -40,26 +40,29 @@ Run MSYS2 MSYS again and finish updating with: Install the default programs needed to build: - pacman -S base-devel git wget p7zip gcc perl ruby python2 doxygen cmake + pacman -S base-devel git wget p7zip gcc perl ruby doxygen cmake -Install the 32-bit toolchain: +Install the 64-bit toolchain: - pacman -S mingw-w64-i686-toolchain + pacman -S mingw-w64-x86_64-toolchain Install all needed dependencies: - pacman -S mingw-w64-i686-miniupnpc - pacman -S mingw-w64-i686-libmicrohttpd - pacman -S mingw-w64-i686-libxslt - pacman -S mingw-w64-i686-xapian-core - pacman -S mingw-w64-i686-sqlcipher - pacman -S mingw-w64-i686-qt5 - pacman -S mingw32/mingw-w64-i686-cmake - pacman -S mingw-w64-i686-rapidjson + pacman -S mingw-w64-x86_64-miniupnpc + pacman -S mingw-w64-x86_64-libxslt + pacman -S mingw-w64-x86_64-xapian-core + pacman -S mingw-w64-x86_64-sqlcipher + pacman -S mingw-w64-x86_64-qt5-base + pacman -S mingw-w64-x86_64-qt5-multimedia + pacman -S mingw-w64-x86_64-ccmake + pacman -S mingw-w64-x86_64-rapidjson + pacman -S mingw-w64-x86_64-json-c + pacman -S mingw-w64-x86_64-libbotan + pacman -S mingw-w64-x86_64-asio If you want to use QtCreator as IDE, prefer using this one publish by MSYS2 as all build Kit are already setted. - pacman -S mingw-w64-i686-qt-creator + pacman -S mingw-w64-x86_64-qt-creator *You can start it from MSYS2 terminal.* @@ -67,7 +70,7 @@ We're done installing MSYS2, close the shell terminal. ### BUILDING RETROSHARE -Now run the MSYS2 MinGW 32-bit shell terminal (it's in the start menu). +Now run the MSYS2 MinGW 64-bit shell terminal (it's in the start menu). We will use it to checkout Retroshare and build it: git clone https://github.com/RetroShare/RetroShare.git diff --git a/build_scripts/Windows-msys2/build/build.bat b/build_scripts/Windows-msys2/build/build.bat index bf68f3e20..e72ab3d1d 100644 --- a/build_scripts/Windows-msys2/build/build.bat +++ b/build_scripts/Windows-msys2/build/build.bat @@ -22,7 +22,7 @@ if not "%ParamNoupdate%"=="1" ( %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-json-c mingw-w64-%RsMSYS2Architecture%-libbotan" :: Webui - if "%ParamWebui%"=="1" %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-doxygen" + if "%ParamWebui%"=="1" %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-doxygen mingw-w64-%RsMSYS2Architecture%-asio" :: Plugins if "%ParamPlugins%"=="1" %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-speex mingw-w64-%RsMSYS2Architecture%-speexdsp mingw-w64-%RsMSYS2Architecture%-curl mingw-w64-%RsMSYS2Architecture%-libxslt mingw-w64-%RsMSYS2Architecture%-opencv mingw-w64-%RsMSYS2Architecture%-ffmpeg" diff --git a/build_scripts/Windows/build-libs/Makefile b/build_scripts/Windows/build-libs/Makefile index 534356914..f1649d91f 100644 --- a/build_scripts/Windows/build-libs/Makefile +++ b/build_scripts/Windows/build-libs/Makefile @@ -13,6 +13,7 @@ LIBMICROHTTPD_VERSION=0.9.75 FFMPEG_VERSION=4.4 RAPIDJSON_VERSION=1.1.0 XAPIAN_VERSION=1.4.19 +ASIO_VERSION=1-34-2 #RNP_VERSION=0.17.1 # libaries for rnp @@ -23,7 +24,7 @@ DOWNLOAD_PATH?=download BUILD_PATH=build LIBS_PATH?=libs -all: dirs zlib bzip2 miniupnpc openssl speex speexdsp libxml2 libxslt curl sqlcipher libmicrohttpd ffmpeg rapidjson xapian jsonc botan copylibs +all: dirs zlib bzip2 miniupnpc openssl speex speexdsp libxml2 libxslt curl sqlcipher libmicrohttpd ffmpeg rapidjson xapian jsonc botan asio copylibs #rnp download: \ @@ -398,6 +399,20 @@ $(BUILD_PATH)/botan-$(BOTAN_VERSION): rm -r -f botan-$(BOTAN_VERSION) mv $(BUILD_PATH)/botan-$(BOTAN_VERSION).tmp $(BUILD_PATH)/botan-$(BOTAN_VERSION) +asio: $(BUILD_PATH)/asio-$(ASIO_VERSION) + +$(BUILD_PATH)/asio-$(ASIO_VERSION): + # prepare + rm -r -f $(BUILD_PATH)/asio-* + [ -d "asio-$(ASIO_VERSION)" ] || git clone https://github.com/chriskohlhoff/asio.git --depth=1 --branch asio-$(ASIO_VERSION) "asio-$(ASIO_VERSION)" + # copy files + mkdir -p $(BUILD_PATH)/asio-$(ASIO_VERSION).tmp/include/asio + cp asio-$(ASIO_VERSION)/asio/include/*.hpp $(BUILD_PATH)/asio-$(ASIO_VERSION).tmp/include/ + cp -r asio-$(ASIO_VERSION)/asio/include/asio/* $(BUILD_PATH)/asio-$(ASIO_VERSION).tmp/include/asio/ + # cleanup + rm -r -f asio-$(ASIO_VERSION) + mv $(BUILD_PATH)/asio-$(ASIO_VERSION).tmp $(BUILD_PATH)/asio-$(ASIO_VERSION) + rnp: $(BUILD_PATH)/rnp-$(RNP_VERSION) $(BUILD_PATH)/rnp-$(RNP_VERSION): diff --git a/data/retroshare.desktop b/data/retroshare.desktop index 22f6689b0..91ea93250 100644 --- a/data/retroshare.desktop +++ b/data/retroshare.desktop @@ -7,5 +7,5 @@ Exec=retroshare %U Icon=retroshare.xpm Terminal=false Type=Application -Categories=Application;Network;Email;InstantMessaging;Chat;Feed;FileTransfer;P2P +Categories=Network;Email;InstantMessaging;Chat;Feed;FileTransfer;P2P MimeType=x-scheme-handler/retroshare; diff --git a/plugins/FeedReader/FeedReader.pro b/plugins/FeedReader/FeedReader.pro index 5c696b5c3..e9a352b33 100644 --- a/plugins/FeedReader/FeedReader.pro +++ b/plugins/FeedReader/FeedReader.pro @@ -45,6 +45,7 @@ SOURCES = FeedReaderPlugin.cpp \ gui/FeedReaderUserNotify.cpp \ gui/FeedReaderFeedItem.cpp \ gui/FeedTreeWidget.cpp \ + gui/ProxyWidget.cpp \ util/CURLWrapper.cpp \ util/XMLWrapper.cpp \ util/HTMLWrapper.cpp \ @@ -66,6 +67,7 @@ HEADERS = FeedReaderPlugin.h \ gui/FeedReaderUserNotify.h \ gui/FeedReaderFeedItem.h \ gui/FeedTreeWidget.h \ + gui/ProxyWidget.h \ util/CURLWrapper.h \ util/XMLWrapper.h \ util/HTMLWrapper.h \ @@ -76,7 +78,8 @@ FORMS = gui/FeedReaderDialog.ui \ gui/AddFeedDialog.ui \ gui/PreviewFeedDialog.ui \ gui/FeedReaderConfig.ui \ - gui/FeedReaderFeedItem.ui + gui/FeedReaderFeedItem.ui \ + gui/ProxyWidget.ui TARGET = FeedReader diff --git a/plugins/FeedReader/gui/AddFeedDialog.cpp b/plugins/FeedReader/gui/AddFeedDialog.cpp index 59baf908a..b6e781c4b 100644 --- a/plugins/FeedReader/gui/AddFeedDialog.cpp +++ b/plugins/FeedReader/gui/AddFeedDialog.cpp @@ -180,8 +180,7 @@ void AddFeedDialog::useStandardUpdateIntervalToggled() void AddFeedDialog::useStandardProxyToggled() { bool checked = ui->useStandardProxyCheckBox->isChecked(); - ui->proxyAddressLineEdit->setEnabled(!checked); - ui->proxyPortSpinBox->setEnabled(!checked); + ui->proxyWidget->setEnabled(!checked); } void AddFeedDialog::typeForumToggled() @@ -335,8 +334,8 @@ bool AddFeedDialog::fillFeed(uint32_t feedId) ui->passwordLineEdit->setText(QString::fromUtf8(feedInfo.password.c_str())); ui->useStandardProxyCheckBox->setChecked(feedInfo.flag.standardProxy); - ui->proxyAddressLineEdit->setText(QString::fromUtf8(feedInfo.proxyAddress.c_str())); - ui->proxyPortSpinBox->setValue(feedInfo.proxyPort); + ui->proxyWidget->setAddress(QString::fromUtf8(feedInfo.proxyAddress.c_str())); + ui->proxyWidget->setPort(feedInfo.proxyPort); ui->useStandardUpdateInterval->setChecked(feedInfo.flag.standardUpdateInterval); ui->updateIntervalSpinBox->setValue(feedInfo.updateInterval / 60); @@ -425,8 +424,8 @@ void AddFeedDialog::getFeedInfo(FeedInfo &feedInfo) feedInfo.password = ui->passwordLineEdit->text().toUtf8().constData(); feedInfo.flag.standardProxy = ui->useStandardProxyCheckBox->isChecked(); - feedInfo.proxyAddress = ui->proxyAddressLineEdit->text().toUtf8().constData(); - feedInfo.proxyPort = ui->proxyPortSpinBox->value(); + feedInfo.proxyAddress = ui->proxyWidget->address().toUtf8().constData(); + feedInfo.proxyPort = ui->proxyWidget->port(); feedInfo.flag.standardUpdateInterval = ui->useStandardUpdateInterval->isChecked(); feedInfo.updateInterval = ui->updateIntervalSpinBox->value() * 60; diff --git a/plugins/FeedReader/gui/AddFeedDialog.ui b/plugins/FeedReader/gui/AddFeedDialog.ui index ebb478162..569578473 100644 --- a/plugins/FeedReader/gui/AddFeedDialog.ui +++ b/plugins/FeedReader/gui/AddFeedDialog.ui @@ -133,37 +133,16 @@ Proxy - - + + Use standard proxy - - - - Server - - - - - - - - - - : - - - - - - - 65535 - - + + @@ -465,6 +444,12 @@ QComboBox
gui/common/RSComboBox.h
+ + ProxyWidget + QWidget +
gui/ProxyWidget.h
+ 1 +
urlLineEdit @@ -494,8 +479,7 @@ useStandardUpdateInterval updateIntervalSpinBox useStandardProxyCheckBox - proxyAddressLineEdit - proxyPortSpinBox + proxyWidget diff --git a/plugins/FeedReader/gui/FeedReaderConfig.cpp b/plugins/FeedReader/gui/FeedReaderConfig.cpp index 89456e3da..91b24f394 100644 --- a/plugins/FeedReader/gui/FeedReaderConfig.cpp +++ b/plugins/FeedReader/gui/FeedReaderConfig.cpp @@ -31,8 +31,7 @@ FeedReaderConfig::FeedReaderConfig(QWidget *parent, Qt::WindowFlags flags) /* Invoke the Qt Designer generated object setup routine */ ui->setupUi(this); - ui->proxyAddressLineEdit->setEnabled(false); - ui->proxyPortSpinBox->setEnabled(false); + ui->proxyWidget->setEnabled(false); /* Connect signals */ connect(ui->updateIntervalSpinBox, (void(QSpinBox::*)(int))&QSpinBox::valueChanged, this, [this]() { @@ -51,8 +50,7 @@ FeedReaderConfig::FeedReaderConfig(QWidget *parent, Qt::WindowFlags flags) Settings->setValueToGroup("FeedReaderDialog", "OpenAllInNewTab", ui->openAllInNewTabCheckBox->isChecked()); }); connect(ui->useProxyCheckBox, &QCheckBox::toggled, this, &FeedReaderConfig::updateProxy); - connect(ui->proxyAddressLineEdit, &QLineEdit::textChanged, this, &FeedReaderConfig::updateProxy); - connect(ui->proxyPortSpinBox, (void(QSpinBox::*)(int))&QSpinBox::valueChanged, this, &FeedReaderConfig::updateProxy); + connect(ui->proxyWidget, &ProxyWidget::changed, this, &FeedReaderConfig::updateProxy); connect(ui->useProxyCheckBox, SIGNAL(toggled(bool)), this, SLOT(useProxyToggled())); } @@ -75,8 +73,8 @@ void FeedReaderConfig::load() std::string proxyAddress; uint16_t proxyPort; whileBlocking(ui->useProxyCheckBox)->setChecked(rsFeedReader->getStandardProxy(proxyAddress, proxyPort)); - whileBlocking(ui->proxyAddressLineEdit)->setText(QString::fromUtf8(proxyAddress.c_str())); - whileBlocking(ui->proxyPortSpinBox)->setValue(proxyPort); + whileBlocking(ui->proxyWidget)->setAddress(QString::fromUtf8(proxyAddress.c_str())); + whileBlocking(ui->proxyWidget)->setPort(proxyPort); loaded = true; @@ -87,11 +85,10 @@ void FeedReaderConfig::useProxyToggled() { bool enabled = ui->useProxyCheckBox->isChecked(); - ui->proxyAddressLineEdit->setEnabled(enabled); - ui->proxyPortSpinBox->setEnabled(enabled); + ui->proxyWidget->setEnabled(enabled); } void FeedReaderConfig::updateProxy() { - rsFeedReader->setStandardProxy(ui->useProxyCheckBox->isChecked(), ui->proxyAddressLineEdit->text().toUtf8().constData(), ui->proxyPortSpinBox->value()); + rsFeedReader->setStandardProxy(ui->useProxyCheckBox->isChecked(), ui->proxyWidget->address().toUtf8().constData(), ui->proxyWidget->port()); } diff --git a/plugins/FeedReader/gui/FeedReaderConfig.ui b/plugins/FeedReader/gui/FeedReaderConfig.ui index 8928dc85e..18fa29a42 100644 --- a/plugins/FeedReader/gui/FeedReaderConfig.ui +++ b/plugins/FeedReader/gui/FeedReaderConfig.ui @@ -77,37 +77,16 @@ Proxy - - + + Use proxy - - - - Server - - - - - - - - - - 65535 - - - - - - - : - - + + @@ -157,12 +136,19 @@ + + + ProxyWidget + QWidget +
gui/ProxyWidget.h
+ 1 +
+
updateIntervalSpinBox storageTimeSpinBox useProxyCheckBox - proxyAddressLineEdit - proxyPortSpinBox + proxyWidget saveInBackgroundCheckBox setMsgToReadOnActivate openAllInNewTabCheckBox diff --git a/plugins/FeedReader/gui/ProxyWidget.cpp b/plugins/FeedReader/gui/ProxyWidget.cpp new file mode 100644 index 000000000..eeb0c5256 --- /dev/null +++ b/plugins/FeedReader/gui/ProxyWidget.cpp @@ -0,0 +1,142 @@ +#include "ProxyWidget.h" +#include "ui_ProxyWidget.h" + +ProxyWidget::ProxyWidget(QWidget *parent) + : QWidget(parent) + , ui(new Ui::ProxyWidget) +{ + ui->setupUi(this); + + /* Connect signals */ + connectUi(true); + connect(ui->portSpinBox, (void(QSpinBox::*)(int))&QSpinBox::valueChanged, this, &ProxyWidget::changed); + + /* Initialize types */ + ui->schemeComboBox->addItem("", ""); + ui->schemeComboBox->addItem("HTTP", "http://"); + ui->schemeComboBox->setItemData(ui->schemeComboBox->count() - 1, tr("HTTP Proxy."), Qt::ToolTipRole); + ui->schemeComboBox->addItem("HTTPS", "https://"); + ui->schemeComboBox->setItemData(ui->schemeComboBox->count() - 1, tr("HTTPS Proxy."), Qt::ToolTipRole); + ui->schemeComboBox->addItem("SOCKS4", "socks4://"); + ui->schemeComboBox->setItemData(ui->schemeComboBox->count() - 1, tr("SOCKS4 Proxy."), Qt::ToolTipRole); + ui->schemeComboBox->addItem("SOCKS4a", "socks4a://"); + ui->schemeComboBox->setItemData(ui->schemeComboBox->count() - 1, tr("SOCKS4a Proxy. Proxy resolves URL hostname."), Qt::ToolTipRole); + ui->schemeComboBox->addItem("SOCKS5", "socks5://"); + ui->schemeComboBox->setItemData(ui->schemeComboBox->count() - 1, tr("SOCKS5 Proxy."), Qt::ToolTipRole); + ui->schemeComboBox->addItem("SOCKS5h", "socks5h://"); + ui->schemeComboBox->setItemData(ui->schemeComboBox->count() - 1, tr("SOCKS5 Proxy. Proxy resolves URL hostname."), Qt::ToolTipRole); +} + +ProxyWidget::~ProxyWidget() +{ + delete ui; +} + +void ProxyWidget::connectUi(bool doConnect) +{ + if (doConnect) { + if (!mAddressConnection) { + mAddressConnection = connect(ui->addressLineEdit, &QLineEdit::textChanged, this, &ProxyWidget::addressChanged); + } + if (!mSchemeConnection) { + mSchemeConnection = connect(ui->schemeComboBox, (void(QComboBox::*)(int))&QComboBox::currentIndexChanged, this, &ProxyWidget::changed); + } + } else { + if (mAddressConnection) { + disconnect(mAddressConnection); + } + if (mSchemeConnection) { + disconnect(mSchemeConnection); + } + } +} + +QString ProxyWidget::address() +{ + QString host = ui->addressLineEdit->text(); + if (host.isEmpty()) { + return ""; + } + + QString value; + + QString scheme = ui->schemeComboBox->currentData().toString(); + if (!scheme.isEmpty()) { + value = scheme; + } + + value += ui->addressLineEdit->text(); + + return value; +} + +void ProxyWidget::setAddress(const QString &value) +{ + int schemeIndex; + QString host; + + splitAddress(value, schemeIndex, host); + + connectUi(false); + ui->schemeComboBox->setCurrentIndex(schemeIndex); + ui->addressLineEdit->setText(host); + connectUi(true); +} + +int ProxyWidget::port() +{ + return ui->portSpinBox->value(); +} + +void ProxyWidget::setPort(int value) +{ + ui->portSpinBox->setValue(value); +} + +void ProxyWidget::addressChanged(const QString &value) +{ + int schemeIndex; + QString host; + + splitAddress(value, schemeIndex, host); + + connectUi(false); + ui->schemeComboBox->setCurrentIndex(schemeIndex); + if (host != ui->addressLineEdit->text()) { + ui->addressLineEdit->setText(host); + } + connectUi(true); + + emit changed(); +} + +void ProxyWidget::splitAddress(const QString &value, int &schemeIndex, QString &host) +{ + if (value.isEmpty()) { + schemeIndex = ui->schemeComboBox->currentIndex(); + host = value; + return; + } + + QString scheme; + int index = value.indexOf("://"); + if (index >= 0) { + scheme = value.left(index + 3); + host = value.mid(index + 3); + } else { + if (ui->schemeComboBox->currentIndex() == 0) { + // Default to HTTP + scheme = "http://"; + } else { + scheme = ui->schemeComboBox->currentData().toString(); + } + host = value; + } + + schemeIndex = ui->schemeComboBox->findData(scheme); + if (schemeIndex < 0) { + /* Unknown scheme */ + schemeIndex = 0; + host = value; + } +} diff --git a/plugins/FeedReader/gui/ProxyWidget.h b/plugins/FeedReader/gui/ProxyWidget.h new file mode 100644 index 000000000..d1fdac315 --- /dev/null +++ b/plugins/FeedReader/gui/ProxyWidget.h @@ -0,0 +1,40 @@ +#ifndef PROXYWIDGET_H +#define PROXYWIDGET_H + +#include + +namespace Ui { +class ProxyWidget; +} + +class ProxyWidget : public QWidget +{ + Q_OBJECT + +public: + explicit ProxyWidget(QWidget *parent = nullptr); + ~ProxyWidget(); + + QString address(); + void setAddress(const QString &value); + + int port(); + void setPort(int value); + +Q_SIGNALS: + void changed(); + +private Q_SLOTS: + void addressChanged(const QString &value); + +private: + void connectUi(bool doConnect); + void splitAddress(const QString &value, int &schemeIndex, QString &host); + +private: + Ui::ProxyWidget *ui; + QMetaObject::Connection mAddressConnection; + QMetaObject::Connection mSchemeConnection; +}; + +#endif // PROXYWIDGET_H diff --git a/plugins/FeedReader/gui/ProxyWidget.ui b/plugins/FeedReader/gui/ProxyWidget.ui new file mode 100644 index 000000000..0671cebc3 --- /dev/null +++ b/plugins/FeedReader/gui/ProxyWidget.ui @@ -0,0 +1,53 @@ + + + ProxyWidget + + + + 0 + 0 + 400 + 22 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + + : + + + + + + + 65535 + + + + + + + + diff --git a/plugins/FeedReader/lang/FeedReader_en.ts b/plugins/FeedReader/lang/FeedReader_en.ts index 707c8cec9..2fea9589e 100644 --- a/plugins/FeedReader/lang/FeedReader_en.ts +++ b/plugins/FeedReader/lang/FeedReader_en.ts @@ -9,7 +9,7 @@ - + Board @@ -34,7 +34,7 @@ - + Authentication (not yet supported) @@ -59,7 +59,7 @@ - + Update interval @@ -89,7 +89,7 @@ - + Storage time @@ -114,17 +114,7 @@ - - Server - - - - - : - - - - + Type @@ -199,7 +189,7 @@ - + Edit feed @@ -264,17 +254,7 @@ - - Server - - - - - : - - - - + Misc @@ -317,12 +297,12 @@ - + Message Folders - + New @@ -372,7 +352,7 @@ - + Add new folder @@ -535,7 +515,7 @@ - + Title @@ -551,6 +531,11 @@ Author + + + Copy Link Location + + Search Title @@ -567,7 +552,7 @@ - + Open link in browser @@ -577,7 +562,7 @@ - + The messages will be added to the forum @@ -637,7 +622,7 @@ - + Hide @@ -957,4 +942,37 @@ + + ProxyWidget + + + HTTP Proxy. + + + + + HTTPS Proxy. + + + + + SOCKS4 Proxy. + + + + + SOCKS4a Proxy. Proxy resolves URL hostname. + + + + + SOCKS5 Proxy. + + + + + SOCKS5 Proxy. Proxy resolves URL hostname. + + + diff --git a/retroshare-gui/src/gui/ChatLobbyWidget.cpp b/retroshare-gui/src/gui/ChatLobbyWidget.cpp index 4caa97706..60ed255a8 100644 --- a/retroshare-gui/src/gui/ChatLobbyWidget.cpp +++ b/retroshare-gui/src/gui/ChatLobbyWidget.cpp @@ -422,7 +422,7 @@ static void updateItem(QTreeWidget *treeWidget, QTreeWidgetItem *item, ChatLobby if(lobby_flags & RS_CHAT_LOBBY_FLAGS_PGP_SIGNED) { tooltipstr += QObject::tr("\nSecurity: no anonymous IDs") ; - QColor foreground = QColor(0, 128, 0); // green + QColor foreground = QColor(16, 157, 0); // green for (int column = 0; column < COLUMN_COUNT; ++column) item->setData(column, Qt::ForegroundRole, foreground); } diff --git a/retroshare-gui/src/gui/FriendsDialog.ui b/retroshare-gui/src/gui/FriendsDialog.ui index 02408e382..a8e8217fc 100644 --- a/retroshare-gui/src/gui/FriendsDialog.ui +++ b/retroshare-gui/src/gui/FriendsDialog.ui @@ -102,7 +102,7 @@ Qt::NoFocus - + :/icons/help_64.png:/icons/help_64.png @@ -132,10 +132,10 @@ - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised @@ -401,8 +401,8 @@ - + diff --git a/retroshare-gui/src/gui/HomePage.cpp b/retroshare-gui/src/gui/HomePage.cpp index ff7622b4b..914fde3e9 100644 --- a/retroshare-gui/src/gui/HomePage.cpp +++ b/retroshare-gui/src/gui/HomePage.cpp @@ -27,11 +27,13 @@ #include "util/misc.h" #include "gui/notifyqt.h" +#include "gui/common/FilesDefs.h" #include "gui/msgs/MessageComposer.h" #include "gui/connect/ConnectFriendWizard.h" #include "gui/connect/ConfCertDialog.h" #include #include "gui/connect/FriendRecommendDialog.h" +#include "settings/rsharesettings.h" #if QT_VERSION >= QT_VERSION_CHECK(5,0,0) #include @@ -135,6 +137,8 @@ HomePage::HomePage(QWidget *parent) : rsEvents->registerEventsHandler( [this](std::shared_ptr event) { handleEvent(event); }, mEventHandlerId, RsEventType::NETWORK ); updateOwnCert(); + + updateHomeLogo(); } void HomePage::handleEvent(std::shared_ptr e) @@ -377,3 +381,18 @@ void HomePage::openWebHelp() { QDesktopServices::openUrl(QUrl(QString("https://retrosharedocs.readthedocs.io/en/latest/"))); } + +void HomePage::showEvent(QShowEvent *event) +{ + if (!event->spontaneous()) { + updateHomeLogo(); + } +} + +void HomePage::updateHomeLogo() +{ + if (Settings->getSheetName() == ":Standard_Dark") + ui->label->setPixmap(FilesDefs::getPixmapFromQtResourcePath(":images/logo/logo_web_nobackground_black.png")); + else + ui->label->setPixmap(FilesDefs::getPixmapFromQtResourcePath(":images/logo/logo_web_nobackground.png")); +} diff --git a/retroshare-gui/src/gui/HomePage.h b/retroshare-gui/src/gui/HomePage.h index aa77ed1a3..2dfc62f82 100644 --- a/retroshare-gui/src/gui/HomePage.h +++ b/retroshare-gui/src/gui/HomePage.h @@ -51,6 +51,8 @@ public: void getOwnCert(QString& invite,QString& description) const; RetroshareInviteFlags currentInviteFlags() const ; + virtual void showEvent(QShowEvent *) override; + private slots: #ifdef DEAD_CODE void certContextMenu(QPoint); @@ -63,7 +65,8 @@ private slots: void addFriend(); void webMail(); void openWebHelp() ; - void recommendFriends(); + void recommendFriends(); + void updateHomeLogo(); private: Ui::HomePage *ui; diff --git a/retroshare-gui/src/gui/Posted/PostedItem.ui b/retroshare-gui/src/gui/Posted/PostedItem.ui index cbf5ae7f4..ad37a936c 100644 --- a/retroshare-gui/src/gui/Posted/PostedItem.ui +++ b/retroshare-gui/src/gui/Posted/PostedItem.ui @@ -44,10 +44,10 @@ false - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised @@ -725,17 +725,17 @@ + + GxsIdLabel + QLabel +
gui/gxs/GxsIdLabel.h
+
ElidedLabel QLabel
gui/common/ElidedLabel.h
1
- - GxsIdLabel - QLabel -
gui/gxs/GxsIdLabel.h
-
ZoomableLabel QLabel @@ -743,9 +743,9 @@
- - + + diff --git a/retroshare-gui/src/gui/StartDialog.ui b/retroshare-gui/src/gui/StartDialog.ui index dd037adf4..39287a797 100644 --- a/retroshare-gui/src/gui/StartDialog.ui +++ b/retroshare-gui/src/gui/StartDialog.ui @@ -346,7 +346,7 @@ The current identities/locations will not be affected. <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans'; font-size:13pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="Create new Profile..."><span style=" font-family:'MS Shell Dlg 2'; font-size:14pt; text-decoration: underline; color:#0000ff;">New Profile/Node</span></a></p></body></html> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="Create new Profile..."><span style=" font-family:'MS Shell Dlg 2'; font-size:14pt; text-decoration: underline; color:#366fe0;">New Profile/Node</span></a></p></body></html>
diff --git a/retroshare-gui/src/gui/chat/ChatLobbyDialog.ui b/retroshare-gui/src/gui/chat/ChatLobbyDialog.ui index 0851eba15..e00790f83 100644 --- a/retroshare-gui/src/gui/chat/ChatLobbyDialog.ui +++ b/retroshare-gui/src/gui/chat/ChatLobbyDialog.ui @@ -80,10 +80,10 @@ - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/ChannelsCommentsItem.ui b/retroshare-gui/src/gui/feeds/ChannelsCommentsItem.ui index cd0265c1d..db4ac6b1a 100644 --- a/retroshare-gui/src/gui/feeds/ChannelsCommentsItem.ui +++ b/retroshare-gui/src/gui/feeds/ChannelsCommentsItem.ui @@ -6,8 +6,8 @@ 0 0 - 755 - 157 + 836 + 160 @@ -35,10 +35,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/GxsChannelGroupItem.ui b/retroshare-gui/src/gui/feeds/GxsChannelGroupItem.ui index e17f53c48..43537d061 100644 --- a/retroshare-gui/src/gui/feeds/GxsChannelGroupItem.ui +++ b/retroshare-gui/src/gui/feeds/GxsChannelGroupItem.ui @@ -7,7 +7,7 @@ 0 0 618 - 176 + 189 @@ -134,10 +134,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/GxsChannelPostItem.ui b/retroshare-gui/src/gui/feeds/GxsChannelPostItem.ui index 578fa1637..d4d41dc06 100644 --- a/retroshare-gui/src/gui/feeds/GxsChannelPostItem.ui +++ b/retroshare-gui/src/gui/feeds/GxsChannelPostItem.ui @@ -7,7 +7,7 @@ 0 0 1092 - 231 + 255 @@ -41,10 +41,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/GxsCircleItem.ui b/retroshare-gui/src/gui/feeds/GxsCircleItem.ui index 7a77f5bda..374e8f84d 100644 --- a/retroshare-gui/src/gui/feeds/GxsCircleItem.ui +++ b/retroshare-gui/src/gui/feeds/GxsCircleItem.ui @@ -7,7 +7,7 @@ 0 0 618 - 108 + 128 @@ -126,10 +126,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised @@ -317,7 +317,7 @@ Revoke - + :/images/cancel.png:/images/cancel.png diff --git a/retroshare-gui/src/gui/feeds/GxsForumGroupItem.ui b/retroshare-gui/src/gui/feeds/GxsForumGroupItem.ui index 152d4951d..aee325282 100644 --- a/retroshare-gui/src/gui/feeds/GxsForumGroupItem.ui +++ b/retroshare-gui/src/gui/feeds/GxsForumGroupItem.ui @@ -126,10 +126,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/GxsForumMsgItem.ui b/retroshare-gui/src/gui/feeds/GxsForumMsgItem.ui index 89aec4e1b..4a080effb 100644 --- a/retroshare-gui/src/gui/feeds/GxsForumMsgItem.ui +++ b/retroshare-gui/src/gui/feeds/GxsForumMsgItem.ui @@ -99,10 +99,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/MsgItem.ui b/retroshare-gui/src/gui/feeds/MsgItem.ui index b195e80c6..cf0a3ac08 100644 --- a/retroshare-gui/src/gui/feeds/MsgItem.ui +++ b/retroshare-gui/src/gui/feeds/MsgItem.ui @@ -6,8 +6,8 @@ 0 0 - 707 - 180 + 777 + 234 @@ -35,10 +35,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/PeerItem.ui b/retroshare-gui/src/gui/feeds/PeerItem.ui index 603002f7f..2433cdf09 100644 --- a/retroshare-gui/src/gui/feeds/PeerItem.ui +++ b/retroshare-gui/src/gui/feeds/PeerItem.ui @@ -7,7 +7,7 @@ 0 0 476 - 283 + 328 @@ -38,10 +38,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/PostedGroupItem.ui b/retroshare-gui/src/gui/feeds/PostedGroupItem.ui index b525facb9..6c043972f 100644 --- a/retroshare-gui/src/gui/feeds/PostedGroupItem.ui +++ b/retroshare-gui/src/gui/feeds/PostedGroupItem.ui @@ -7,7 +7,7 @@ 0 0 618 - 161 + 195 @@ -126,10 +126,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/SecurityIpItem.ui b/retroshare-gui/src/gui/feeds/SecurityIpItem.ui index 11a742880..53f4172b9 100644 --- a/retroshare-gui/src/gui/feeds/SecurityIpItem.ui +++ b/retroshare-gui/src/gui/feeds/SecurityIpItem.ui @@ -7,7 +7,7 @@ 0 0 763 - 185 + 205 @@ -38,10 +38,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/SecurityItem.ui b/retroshare-gui/src/gui/feeds/SecurityItem.ui index bc0524d18..585c18e00 100644 --- a/retroshare-gui/src/gui/feeds/SecurityItem.ui +++ b/retroshare-gui/src/gui/feeds/SecurityItem.ui @@ -7,7 +7,7 @@ 0 0 1015 - 246 + 326 @@ -35,10 +35,10 @@ true - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/feeds/SubFileItem.ui b/retroshare-gui/src/gui/feeds/SubFileItem.ui index 8fdd8230d..d869fc7b8 100644 --- a/retroshare-gui/src/gui/feeds/SubFileItem.ui +++ b/retroshare-gui/src/gui/feeds/SubFileItem.ui @@ -29,10 +29,10 @@ - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/gxsforums/CreateGxsForumMsg.ui b/retroshare-gui/src/gui/gxsforums/CreateGxsForumMsg.ui index 683c8f07d..bae7223e3 100644 --- a/retroshare-gui/src/gui/gxsforums/CreateGxsForumMsg.ui +++ b/retroshare-gui/src/gui/gxsforums/CreateGxsForumMsg.ui @@ -34,7 +34,14 @@ 0 - + + + QFrame::StyledPanel + + + QFrame::Raised + + @@ -150,10 +157,10 @@ p, li { white-space: pre-wrap; } - QFrame::Box + QFrame::StyledPanel - QFrame::Sunken + QFrame::Raised diff --git a/retroshare-gui/src/gui/images.qrc b/retroshare-gui/src/gui/images.qrc index de468d270..473fd4844 100644 --- a/retroshare-gui/src/gui/images.qrc +++ b/retroshare-gui/src/gui/images.qrc @@ -208,6 +208,7 @@ images/logo/logo_info.png images/logo/logo_splash.png images/logo/logo_web_nobackground.png + images/logo/logo_web_nobackground_black.png images/mail-signed.png images/mail-signature-unknown.png images/mailforward24-hover.png diff --git a/retroshare-gui/src/gui/images/logo/logo_web_nobackground_black.png b/retroshare-gui/src/gui/images/logo/logo_web_nobackground_black.png new file mode 100644 index 000000000..1be6fbdc0 Binary files /dev/null and b/retroshare-gui/src/gui/images/logo/logo_web_nobackground_black.png differ diff --git a/retroshare-gui/src/gui/msgs/MessagesDialog.cpp b/retroshare-gui/src/gui/msgs/MessagesDialog.cpp index 8f573c6b7..7cddc1b7d 100644 --- a/retroshare-gui/src/gui/msgs/MessagesDialog.cpp +++ b/retroshare-gui/src/gui/msgs/MessagesDialog.cpp @@ -528,7 +528,7 @@ void MessagesDialog::fillQuickView() ui.quickViewWidget->clear(); // add static items - item = new QListWidgetItem(tr("Stared"), ui.quickViewWidget); + item = new QListWidgetItem(tr("Starred"), ui.quickViewWidget); item->setIcon(FilesDefs::getIconFromQtResourcePath(IMAGE_STAR_ON)); item->setData(ROLE_QUICKVIEW_TYPE, QUICKVIEW_TYPE_STATIC); item->setData(ROLE_QUICKVIEW_ID, QUICKVIEW_STATIC_ID_STARRED); diff --git a/retroshare-gui/src/gui/qss/stylesheet/Standard_Light.qss b/retroshare-gui/src/gui/qss/stylesheet/Standard_Light.qss index df6b9d51c..40fe0b78c 100644 --- a/retroshare-gui/src/gui/qss/stylesheet/Standard_Light.qss +++ b/retroshare-gui/src/gui/qss/stylesheet/Standard_Light.qss @@ -231,7 +231,7 @@ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qgroupbox --------------------------------------------------------------------------- */ QGroupBox { font-weight: bold; - border: 1px solid #C9CDD0; + border: 1px solid #C0C4C8; border-radius: 4px; padding: 2px; margin-top: 6px; @@ -1234,7 +1234,7 @@ https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qcombobox --------------------------------------------------------------------------- */ QComboBox { - border: 1px solid #C9CDD0; + border: 1px solid #C0C4C8; border-radius: 4px; selection-background-color: #9FCBFF; padding-left: 4px; @@ -1250,7 +1250,7 @@ QComboBox { } QComboBox QAbstractItemView { - border: 1px solid #C9CDD0; + border: 1px solid #C0C4C8; border-radius: 0; background-color: #FAFAFA; selection-background-color: #9FCBFF; @@ -1263,7 +1263,7 @@ QComboBox QAbstractItemView:hover { QComboBox QAbstractItemView:selected { background: #9FCBFF; - color: #C9CDD0; + color: #C0C4C8; } QComboBox QAbstractItemView:alternate { @@ -1301,6 +1301,18 @@ QComboBox::indicator:alternate { background: #FAFAFA; } +QComboBox::item { + /* Remove to fix #282, #285 and MR #288*/ + /*&:checked { + font-weight: bold; + } + + &:selected { + border: 0px solid transparent; + } + */ +} + QComboBox::item:alternate { background: #FAFAFA; } @@ -1433,14 +1445,14 @@ QLineEdit { padding-left: 4px; padding-right: 4px; border-style: solid; - border: 1px solid #C9CDD0; + border: 1px solid #C0C4C8; border-radius: 4px; color: #19232D; } QLineEdit:disabled { background-color: #FAFAFA; - color: #788D9C; + color: #9DA9B5; } QLineEdit:hover { @@ -2151,12 +2163,12 @@ QSplitter::handle:hover { } QSplitter::handle:horizontal { - width: 5px; + width: 2px; image: url(":/standard_light/rc/line_vertical.png"); } QSplitter::handle:vertical { - height: 5px; + height: 2px; image: url(":/standard_light/rc/line_horizontal.png"); } @@ -2350,51 +2362,6 @@ QFrame#titleBarFrame QTextEdit { background: white; } -/**** Special Page tweak ****/ - - -/* ConnectFriendWizard */ - -ConnectFriendWizard QPlainTextEdit#friendCertEdit { - border: none; - background: white; - color: black; -} - -ConnectFriendWizard QFrame#friendFrame { - border: 2px solid #0099cc; - border-radius: 6px; - background: white; -} - -ConnectFriendWizard QWizardPage#ConclusionPage > QGroupBox#peerDetailsFrame { - border: 2px solid #039bd5; - border-radius:6px; - background: white; - color: black; - padding: 12 12px; -} - -ConnectFriendWizard QGroupBox::title#peerDetailsFrame -{ - padding: 4 12px; - background: transparent; - padding: 4 12px; - background: #039bd5; - color: white; -} - - -/* GetStartedDialog */ - -GetStartedDialog QTextEdit { - border: 1px solid #B8B6B1; - border-radius: 6px; - background: white; - color: black; -} - - /* HomePage */ HomePage QLabel#userCertLabel { @@ -2509,7 +2476,7 @@ GxsGroupDialog QLabel#groupLogo{ /* Settings */ -PluginItem > QFrame#pluginFrame { +PluginItem QFrame#pluginFrame { border: 2px solid #A8B8D1; background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #FCFDFE, stop: 1 #E2E8EF); border-radius: 0px @@ -2521,7 +2488,7 @@ PluginItem QLabel#infoLabel { /* Feeds */ -AttachFileItem > QFrame#frame { +AttachFileItem QFrame#frame { border: 2px solid black; background: white; } @@ -2627,88 +2594,78 @@ BoardPostDisplayWidget_card QLabel#siteBoldLabel { color: #787c7e; } +/* GenCertDialog + Change colors here because GUI is not started yet so no user StyleSheet loads */ -/* MessengerWindow */ - -MessengerWindow QFrame#messengerframetop{ - background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #9BDBF9, stop:1 #1592CD); - border: 0px; +GenCertDialog QFrame#profileframe{ + border-image: url(:/images/logo/background.png) 0 0 0 0 stretch stretch; + border-width: 0px; } - -/*************** Optional ***************/ - -/**** WikiPoos ****/ -WikiEditDialog QPushButton#pushButton_History { - color: white; - background: #5bb62b; - border-radius: 4px; - max-height: 20px; - min-width: 4em; - padding: 2px; - padding-left: 6px; - padding-right: 6px; -} - -WikiEditDialog QPushButton#pushButton_History:hover { - background: #57af29; -} - - -/**** The Wire ****/ - -WireGroupItem QFrame#wire_frame:hover { - background-color: #7ecbfb; -} -WireGroupItem QFrame#wire_frame > QLabel { +GenCertDialog QFrame#profileframe QCheckBox, +GenCertDialog QFrame#profileframe QLabel { background: transparent; } -PulseTopLevel QFrame#plainFrame, -PulseViewGroup QFrame#plainFrame, -PulseReply QFrame#plainFrame { - border: 2px solid #c4cfd6; - background: white; +GenCertDialog QLabel#info_Label:enabled { + color: black; + border: 1px solid #DCDC41; + border-radius: 6px; + background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #FFFFD7, stop:1 #FFFFB2); } -PulseAddDialog QTextEdit#textEdit_Pulse { - border: 2px solid #c4cfd6; +GenCertDialog QGroupBox#groupBox, +GenCertDialog QGroupBox#profile_groupBox { + background: rgba(0,0,0,10%); +} +GenCertDialog QGroupBox#profile_groupBox QComboBox, +GenCertDialog QGroupBox#profile_groupBox QSpinBox, +GenCertDialog QGroupBox#profile_groupBox QLineEdit, +GenCertDialog QComboBox#genPGPuser { + border: 2px solid #0099cc; border-radius: 6px; background: white; color: black; } -PulseReply #line_replyLine, -PulseMessage #line{ - color: #c4cfd6; +GenCertDialog QPushButton#genButton { + border-image: url(:/images/btn_blue.png) 4; + border-width: 4; + color: white; +} +GenCertDialog QPushButton#genButton:hover { + border-image: url(:/images/btn_blue_hover.png) 4; +} +GenCertDialog QPushButton#genButton:disabled { + border-image: url(:/images/btn_27.png) 4; + color: black; } -PulseReply QLabel#label_groupName{ - color: #5b7083; +/* StartDialog + To get the same style for all user and not use last connected one. */ + +StartDialog QFrame#loginframe{ + border-image: url(:/images/logo/background_lessblue.png) 0 0 0 0 stretch stretch; + border-width: 0px; } -PulseReplySeperator QFrame#frame { - border: 2px solid #CCCCCC; - background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #EEEEEE, stop: 1 #CCCCCC); - border-radius: 10px} +StartDialog QFrame#loginframe QCheckBox, +StartDialog QFrame#loginframe QLabel { + background: transparent; +} +StartDialog QGroupBox#profilGBox { + background: rgba(0,0,0,10%); + border-radius: 3px; + border-width: 0px; } -QLabel#label_masthead{ - border: 2px solid #CCCCCC; - border-radius: 4px; +StartDialog QPushButton#loadButton { + background: transparent; + border-image: url(:/images/btn_blue.png) 4; + border-width: 4; + color: white; } - -/**** PhotoShare ****/ -AlbumItem QFrame#albumFrame { - border: 2px solid #CCCCCC; - border-radius: 10px -} - -PhotoItem QFrame#photoFrame { - border: 2px solid #CCCCCC; - border-radius: 10px -} - -PhotoItem QWidget:hover { - background-color: #7ecbfb; +StartDialog QPushButton#loadButton:hover { + background: transparent; + border-image: url(:/images/btn_blue_hover.png) 4; } diff --git a/retroshare-gui/src/gui/qss/stylesheet/default.qss b/retroshare-gui/src/gui/qss/stylesheet/default.qss index defcc82f8..4b8d1645f 100644 --- a/retroshare-gui/src/gui/qss/stylesheet/default.qss +++ b/retroshare-gui/src/gui/qss/stylesheet/default.qss @@ -141,88 +141,6 @@ QLabel#newLabel:enabled { } -/* StartDialog - To get the same style for all user and not use last connected one. */ - -StartDialog QFrame#loginframe{ - border-image: url(:/images/logo/background_lessblue.png) 0 0 0 0 stretch stretch; - border-width: 0px; -} -StartDialog QFrame#loginframe QCheckBox, -StartDialog QFrame#loginframe QLabel { - background: transparent; -} -StartDialog QGroupBox#profilGBox { - background: rgba(0,0,0,10%); - border-radius: 3px; - border-width: 0px; -} - -StartDialog QGroupBox#profilGBox * { - background-color: white; - color: black; -} - -StartDialog QPushButton#loadButton { - background: transparent; - border-image: url(:/images/btn_blue.png) 4; - border-width: 4; - color: white; -} -StartDialog QPushButton#loadButton:hover { - background: transparent; - border-image: url(:/images/btn_blue_hover.png) 4; -} - - - -/* GenCertDialog - Change colors here because GUI is not started yet so no user StyleSheet loads */ - -GenCertDialog QFrame#profileframe{ - border-image: url(:/images/logo/background.png) 0 0 0 0 stretch stretch; - border-width: 0px; -} -GenCertDialog QFrame#profileframe QCheckBox, -GenCertDialog QFrame#profileframe QLabel { - background: transparent; -} - -GenCertDialog QLabel#info_Label:enabled { - color: black; - border: 1px solid #DCDC41; - border-radius: 6px; - background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #FFFFD7, stop:1 #FFFFB2); -} - -GenCertDialog QGroupBox#groupBox, -GenCertDialog QGroupBox#profile_groupBox { - background: rgba(0,0,0,10%); -} -GenCertDialog QGroupBox#profile_groupBox QComboBox, -GenCertDialog QGroupBox#profile_groupBox QSpinBox, -GenCertDialog QGroupBox#profile_groupBox QLineEdit, -GenCertDialog QComboBox#genPGPuser { - border: 2px solid #0099cc; - border-radius: 6px; - background: white; - color: black; -} - -GenCertDialog QPushButton#genButton { - border-image: url(:/images/btn_blue.png) 4; - border-width: 4; - color: white; -} -GenCertDialog QPushButton#genButton:hover { - border-image: url(:/images/btn_blue_hover.png) 4; -} -GenCertDialog QPushButton#genButton:disabled { - border-image: url(:/images/btn_27.png) 4; - color: black; -} - - /* AvatarWidget */ AvatarWidget{border-width: 10px;} @@ -418,3 +336,27 @@ OpModeStatus[opMode="Minimal"] { [WrongValue="true"] { background-color: #FF8080; } + +GenCertDialog QPushButton#genButton { + border-image: url(:/images/btn_blue.png) 4; + border-width: 4; + color: white; +} +GenCertDialog QPushButton#genButton:hover { + border-image: url(:/images/btn_blue_hover.png) 4; +} +GenCertDialog QPushButton#genButton:disabled { + border-image: url(:/images/btn_27.png) 4; + color: black; +} + +StartDialog QPushButton#loadButton { + background: transparent; + border-image: url(:/images/btn_blue.png) 4; + border-width: 4; + color: white; +} +StartDialog QPushButton#loadButton:hover { + background: transparent; + border-image: url(:/images/btn_blue_hover.png) 4; +} diff --git a/retroshare-gui/src/lang/retroshare_bg.ts b/retroshare-gui/src/lang/retroshare_bg.ts index 7bb75556d..c57ad6a7a 100644 --- a/retroshare-gui/src/lang/retroshare_bg.ts +++ b/retroshare-gui/src/lang/retroshare_bg.ts @@ -14303,7 +14303,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_ca_ES.ts b/retroshare-gui/src/lang/retroshare_ca_ES.ts index ef5261f6a..1e88b2136 100644 --- a/retroshare-gui/src/lang/retroshare_ca_ES.ts +++ b/retroshare-gui/src/lang/retroshare_ca_ES.ts @@ -14370,7 +14370,7 @@ Voleu desar el missatge? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_cs.ts b/retroshare-gui/src/lang/retroshare_cs.ts index b0c0c123b..9ddff2a55 100644 --- a/retroshare-gui/src/lang/retroshare_cs.ts +++ b/retroshare-gui/src/lang/retroshare_cs.ts @@ -14334,7 +14334,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_da.ts b/retroshare-gui/src/lang/retroshare_da.ts index ffd7a7c0e..4cb8c0823 100644 --- a/retroshare-gui/src/lang/retroshare_da.ts +++ b/retroshare-gui/src/lang/retroshare_da.ts @@ -14303,7 +14303,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_de.ts b/retroshare-gui/src/lang/retroshare_de.ts index b2b9f2ea3..e37c020a9 100644 --- a/retroshare-gui/src/lang/retroshare_de.ts +++ b/retroshare-gui/src/lang/retroshare_de.ts @@ -14360,7 +14360,7 @@ Möchtest du die Nachricht speichern ? - Stared + Starred Markiert diff --git a/retroshare-gui/src/lang/retroshare_el.ts b/retroshare-gui/src/lang/retroshare_el.ts index 82ed18b46..1b43e7f05 100644 --- a/retroshare-gui/src/lang/retroshare_el.ts +++ b/retroshare-gui/src/lang/retroshare_el.ts @@ -14332,7 +14332,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_en.ts b/retroshare-gui/src/lang/retroshare_en.ts index 0f9c08da7..74a7b83b3 100644 --- a/retroshare-gui/src/lang/retroshare_en.ts +++ b/retroshare-gui/src/lang/retroshare_en.ts @@ -14303,7 +14303,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_es.ts b/retroshare-gui/src/lang/retroshare_es.ts index 358668fc3..cc21a60c3 100644 --- a/retroshare-gui/src/lang/retroshare_es.ts +++ b/retroshare-gui/src/lang/retroshare_es.ts @@ -14369,7 +14369,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_fi.ts b/retroshare-gui/src/lang/retroshare_fi.ts index 035f64f23..2a52e18a6 100644 --- a/retroshare-gui/src/lang/retroshare_fi.ts +++ b/retroshare-gui/src/lang/retroshare_fi.ts @@ -14374,7 +14374,7 @@ Haluatko tallentaa viestin? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_fr.ts b/retroshare-gui/src/lang/retroshare_fr.ts index 876414b16..127c0fdd7 100644 --- a/retroshare-gui/src/lang/retroshare_fr.ts +++ b/retroshare-gui/src/lang/retroshare_fr.ts @@ -14385,7 +14385,7 @@ Voulez-vous enregistrer votre message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_hu.ts b/retroshare-gui/src/lang/retroshare_hu.ts index c2e111012..d5967ea59 100644 --- a/retroshare-gui/src/lang/retroshare_hu.ts +++ b/retroshare-gui/src/lang/retroshare_hu.ts @@ -14358,7 +14358,7 @@ Szeretnéd menteni az üzenetet? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_it.ts b/retroshare-gui/src/lang/retroshare_it.ts index 4cfb28a4d..ade137565 100644 --- a/retroshare-gui/src/lang/retroshare_it.ts +++ b/retroshare-gui/src/lang/retroshare_it.ts @@ -14352,7 +14352,7 @@ ricerca - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_ja_JP.ts b/retroshare-gui/src/lang/retroshare_ja_JP.ts index 89bf9c9f2..5f2256dd5 100644 --- a/retroshare-gui/src/lang/retroshare_ja_JP.ts +++ b/retroshare-gui/src/lang/retroshare_ja_JP.ts @@ -14304,7 +14304,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_ko.ts b/retroshare-gui/src/lang/retroshare_ko.ts index 8867098a1..927baa9e7 100644 --- a/retroshare-gui/src/lang/retroshare_ko.ts +++ b/retroshare-gui/src/lang/retroshare_ko.ts @@ -14312,7 +14312,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_nl.ts b/retroshare-gui/src/lang/retroshare_nl.ts index 6d7c25195..bb4fef66a 100644 --- a/retroshare-gui/src/lang/retroshare_nl.ts +++ b/retroshare-gui/src/lang/retroshare_nl.ts @@ -14331,7 +14331,7 @@ Wil je het bericht bewaren? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_pl.ts b/retroshare-gui/src/lang/retroshare_pl.ts index 46abcec56..637121e24 100644 --- a/retroshare-gui/src/lang/retroshare_pl.ts +++ b/retroshare-gui/src/lang/retroshare_pl.ts @@ -14434,7 +14434,7 @@ Czy chcesz zapisać wiadomość ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_pt.ts b/retroshare-gui/src/lang/retroshare_pt.ts index a760d3920..842fde2d7 100644 --- a/retroshare-gui/src/lang/retroshare_pt.ts +++ b/retroshare-gui/src/lang/retroshare_pt.ts @@ -14303,7 +14303,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_ru.ts b/retroshare-gui/src/lang/retroshare_ru.ts index 197a77c4f..20b2f9e16 100644 --- a/retroshare-gui/src/lang/retroshare_ru.ts +++ b/retroshare-gui/src/lang/retroshare_ru.ts @@ -14373,7 +14373,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_sl.ts b/retroshare-gui/src/lang/retroshare_sl.ts index bb6973983..581ac731c 100644 --- a/retroshare-gui/src/lang/retroshare_sl.ts +++ b/retroshare-gui/src/lang/retroshare_sl.ts @@ -14303,7 +14303,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_sr.ts b/retroshare-gui/src/lang/retroshare_sr.ts index 208c6f3e6..01e51db3d 100644 --- a/retroshare-gui/src/lang/retroshare_sr.ts +++ b/retroshare-gui/src/lang/retroshare_sr.ts @@ -14304,7 +14304,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_sv.ts b/retroshare-gui/src/lang/retroshare_sv.ts index ee425491b..754e79479 100644 --- a/retroshare-gui/src/lang/retroshare_sv.ts +++ b/retroshare-gui/src/lang/retroshare_sv.ts @@ -14332,7 +14332,7 @@ Vill du spara meddelandet? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_tr.ts b/retroshare-gui/src/lang/retroshare_tr.ts index cd2651115..1163f7149 100644 --- a/retroshare-gui/src/lang/retroshare_tr.ts +++ b/retroshare-gui/src/lang/retroshare_tr.ts @@ -14374,7 +14374,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_zh_CN.ts b/retroshare-gui/src/lang/retroshare_zh_CN.ts index d35ab9a92..82bafc9e1 100644 --- a/retroshare-gui/src/lang/retroshare_zh_CN.ts +++ b/retroshare-gui/src/lang/retroshare_zh_CN.ts @@ -14361,7 +14361,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-gui/src/lang/retroshare_zh_TW.ts b/retroshare-gui/src/lang/retroshare_zh_TW.ts index d81166627..2acc19ab2 100644 --- a/retroshare-gui/src/lang/retroshare_zh_TW.ts +++ b/retroshare-gui/src/lang/retroshare_zh_TW.ts @@ -14303,7 +14303,7 @@ Do you want to save message ? - Stared + Starred diff --git a/retroshare-service/data/retroshare-service.desktop b/retroshare-service/data/retroshare-service.desktop index 5d077597b..fc8135e05 100644 --- a/retroshare-service/data/retroshare-service.desktop +++ b/retroshare-service/data/retroshare-service.desktop @@ -7,4 +7,4 @@ Exec=retroshare-service %U Icon=retroshare-service Terminal=false Type=Application -Categories=Application;Network; +Categories=Network; diff --git a/retroshare.pri b/retroshare.pri index 2e8bb729a..18207838d 100644 --- a/retroshare.pri +++ b/retroshare.pri @@ -520,6 +520,18 @@ trough qmake command line arguments!") } } +# Some supportlibs compilation won't start if the intstalled CMAKE verison is >=3.5. +# Force compilation in that case +CMAKE_FORCE_MINVERSION="" +CMAKE_VERSION_SPLIT = $$system(cmake --version) +CMAKE_VERSION_SPLIT = $$split(CMAKE_VERSION_SPLIT, \\s+) +CMAKE_VERSION = $$member(CMAKE_VERSION_SPLIT, 2) +message("Cmake version detected: $${CMAKE_VERSION}") +versionAtLeast(CMAKE_VERSION, 3.5) { + warning("Forcing compilation with CMAKE_POLICY_VERSION_MINIMUM=3.5") + CMAKE_FORCE_MINVERSION="-DCMAKE_POLICY_VERSION_MINIMUM=3.5" +} + gxsdistsync:DEFINES *= RS_USE_GXS_DISTANT_SYNC wikipoos:DEFINES *= RS_USE_WIKI rs_gxs:DEFINES *= RS_ENABLE_GXS diff --git a/supportlibs/cmark b/supportlibs/cmark index b9c7a496b..3460cd809 160000 --- a/supportlibs/cmark +++ b/supportlibs/cmark @@ -1 +1 @@ -Subproject commit b9c7a496ba7dd9c3495bae2ff2855899e47b245d +Subproject commit 3460cd809b6dd311b58e92733ece2fc956224fd2 diff --git a/supportlibs/libsam3 b/supportlibs/libsam3 index ea52a3251..f90555ba4 160000 --- a/supportlibs/libsam3 +++ b/supportlibs/libsam3 @@ -1 +1 @@ -Subproject commit ea52a3251d60906d67f9a1031a6ed7642753f94f +Subproject commit f90555ba4d6f9fadb6f0fbb1e2253e13557aad34 diff --git a/supportlibs/rapidjson b/supportlibs/rapidjson index f54b0e47a..24b5e7a8b 160000 --- a/supportlibs/rapidjson +++ b/supportlibs/rapidjson @@ -1 +1 @@ -Subproject commit f54b0e47a08782a6131cc3d60f94d038fa6e0a51 +Subproject commit 24b5e7a8b27f42fa16b96fc70aade9106cf7102f diff --git a/supportlibs/restbed b/supportlibs/restbed index c27c6726d..6001a3228 160000 --- a/supportlibs/restbed +++ b/supportlibs/restbed @@ -1 +1 @@ -Subproject commit c27c6726d28c42e2e1b7537ba63eeb23e944789d +Subproject commit 6001a322809b5005b8bcccdf593fdda6f0173691