From 47d89a69594b76a61dcb1674e07b9e37a2520958 Mon Sep 17 00:00:00 2001 From: RetroPooh Date: Mon, 22 Feb 2021 21:43:42 +0300 Subject: [PATCH 001/503] keyring - make accepted keys removing correct; allow multi-select --- retroshare-gui/src/gui/NetworkDialog.cpp | 44 ++++++++++++++---------- 1 file changed, 26 insertions(+), 18 deletions(-) diff --git a/retroshare-gui/src/gui/NetworkDialog.cpp b/retroshare-gui/src/gui/NetworkDialog.cpp index 1b02cbc7c..539e103fd 100644 --- a/retroshare-gui/src/gui/NetworkDialog.cpp +++ b/retroshare-gui/src/gui/NetworkDialog.cpp @@ -83,7 +83,7 @@ NetworkDialog::NetworkDialog(QWidget */*parent*/) ui.connectTreeWidget->setUpdatesEnabled(true); ui.connectTreeWidget->setSortingEnabled(true); ui.connectTreeWidget->setSelectionBehavior(QAbstractItemView::SelectRows); - ui.connectTreeWidget->setSelectionMode(QAbstractItemView::SingleSelection); + ui.connectTreeWidget->setSelectionMode(QAbstractItemView::ExtendedSelection); connect(ui.connectTreeWidget, SIGNAL( customContextMenuRequested( QPoint ) ), this, SLOT( connectTreeWidgetCostumPopupMenu( QPoint ) ) ); connect(ui.connectTreeWidget, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(peerdetails())); @@ -117,24 +117,11 @@ void NetworkDialog::connectTreeWidgetCostumPopupMenu( QPoint /*point*/ ) { return; } - QMenu *contextMnu = new QMenu; - - RsPgpId peer_id(ui.connectTreeWidget->model()->data(ui.connectTreeWidget->model()->index(l.begin()->row(), COLUMN_PEERID)).toString().toStdString()) ; - - // That's what context menus are made for - RsPeerDetails detail; - if(!rsPeers->getGPGDetails(peer_id, detail)) // that is not suppose to fail. - return ; - - if(peer_id == rsPeers->getGPGOwnId()) - contextMnu->addAction(QIcon(), tr("Export/create a new node"), this, SLOT(on_actionExportKey_activated())); - contextMnu->addAction(QIcon(IMAGE_PEERDETAILS), tr("Profile details..."), this, SLOT(peerdetails())); contextMnu->addSeparator() ; contextMnu->addAction(QIcon(), tr("Remove unused keys..."), this, SLOT(removeUnusedKeys())); contextMnu->addAction(QIcon(), tr("Remove this key"), this, SLOT(removeSelectedKeys())); - contextMnu->exec(QCursor::pos()); } @@ -177,11 +164,32 @@ void NetworkDialog::removeSelectedKeys() QModelIndexList l = ui.connectTreeWidget->selectionModel()->selection().indexes(); if(l.empty()) return; - std::set selected; - selected.insert(RsPgpId(ui.connectTreeWidget->model()->data(ui.connectTreeWidget->model()->index(l.begin()->row(), COLUMN_PEERID)).toString().toStdString())); - - removeKeys(selected); + std::set friends; + for (int i = 0; i < l.size(); i++) + { + RsPgpId peer_id = RsPgpId(ui.connectTreeWidget->model()->data(ui.connectTreeWidget->model()->index(l[i].row(), COLUMN_PEERID)).toString().toStdString()); + RsPeerDetails details ; + if(rsPeers->getGPGDetails(peer_id,details)) + { + if(details.accept_connection) + friends.insert(peer_id); + else + selected.insert(peer_id); + } + } + if(!friends.empty()) + { + if ((QMessageBox::question(this, "RetroShare", tr("You have selected %1 accepted peers among others,\n Are you sure you want to un-friend them?").arg(friends.size()), QMessageBox::Yes|QMessageBox::No, QMessageBox::Yes)) == QMessageBox::Yes) + { + for(std::set::const_iterator it(friends.begin());it!=friends.end();++it) + rsPeers->removeFriend(*it); + selected.insert(friends.begin(),friends.end()); + } + } + if(!selected.empty()) + removeKeys(selected); + updateDisplay(); } void NetworkDialog::removeKeys(std::set selected) From b9f389c8bb47793caf9cdbd25ec653c9960b14bd Mon Sep 17 00:00:00 2001 From: defnax Date: Sat, 15 Jan 2022 21:44:54 +0100 Subject: [PATCH 002/503] added webp support for stickers load --- retroshare-gui/src/gui/common/Emoticons.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/retroshare-gui/src/gui/common/Emoticons.cpp b/retroshare-gui/src/gui/common/Emoticons.cpp index 0f37eebfc..9da7530b1 100644 --- a/retroshare-gui/src/gui/common/Emoticons.cpp +++ b/retroshare-gui/src/gui/common/Emoticons.cpp @@ -51,7 +51,7 @@ static QHash iconcache; void Emoticons::load() { loadSmiley(); - filters << "*.png" << "*.jpg" << "*.gif"; + filters << "*.png" << "*.jpg" << "*.gif" << "*.webp"; stickerFolders << (QString::fromStdString(RsAccounts::AccountDirectory()) + "/stickers"); //under account, unique for user stickerFolders << (QString::fromStdString(RsAccounts::ConfigDirectory()) + "/stickers"); //under .retroshare, shared between users stickerFolders << (QString::fromStdString(RsAccounts::systemDataDirectory()) + "/stickers"); //exe's folder, shipped with RS From 9e4903c9b80ebb5c0f6101ea96c9fab51b6db4ae Mon Sep 17 00:00:00 2001 From: Phenom Date: Sat, 15 Jan 2022 15:19:05 +0100 Subject: [PATCH 003/503] Add General Font Size Factor --- retroshare-gui/src/gui/ChatLobbyWidget.cpp | 167 +++++++++--------- retroshare-gui/src/gui/ChatLobbyWidget.h | 10 +- .../src/gui/FileTransfer/TransfersDialog.cpp | 74 ++++---- retroshare-gui/src/gui/FriendsDialog.cpp | 28 +-- retroshare-gui/src/gui/HomePage.cpp | 40 ++--- retroshare-gui/src/gui/Identity/IdDialog.cpp | 28 +-- retroshare-gui/src/gui/MainPage.cpp | 16 +- retroshare-gui/src/gui/NewsFeed.cpp | 34 ++-- .../src/gui/Posted/PostedDialog.cpp | 22 ++- .../src/gui/gxschannels/GxsChannelDialog.cpp | 68 +++---- .../src/gui/gxsforums/GxsForumsDialog.cpp | 23 ++- .../src/gui/msgs/MessagesDialog.cpp | 25 +-- retroshare-gui/src/util/misc.cpp | 98 +++++----- retroshare-gui/src/util/misc.h | 22 ++- 14 files changed, 345 insertions(+), 310 deletions(-) diff --git a/retroshare-gui/src/gui/ChatLobbyWidget.cpp b/retroshare-gui/src/gui/ChatLobbyWidget.cpp index 13fdc4329..0b5350110 100644 --- a/retroshare-gui/src/gui/ChatLobbyWidget.cpp +++ b/retroshare-gui/src/gui/ChatLobbyWidget.cpp @@ -22,19 +22,20 @@ #include "ChatLobbyWidget.h" #include "notifyqt.h" +#include "RetroShareLink.h" #include "chat/ChatLobbyDialog.h" #include "chat/ChatLobbyUserNotify.h" #include "chat/ChatTabWidget.h" #include "chat/CreateLobbyDialog.h" +#include "common/FilesDefs.h" #include "common/RSTreeWidgetItem.h" #include "common/RSElidedItemDelegate.h" -#include "gui/RetroShareLink.h" -#include "gui/gxs/GxsIdDetails.h" -#include "gui/Identity/IdEditDialog.h" -#include "gui/settings/rsharesettings.h" +#include "gxs/GxsIdDetails.h" +#include "Identity/IdEditDialog.h" +#include "settings/rsharesettings.h" #include "util/HandleRichText.h" +#include "util/misc.h" #include "util/QtVersion.h" -#include "gui/common/FilesDefs.h" #include "retroshare/rsmsgs.h" #include "retroshare/rspeers.h" @@ -206,28 +207,29 @@ ChatLobbyWidget::ChatLobbyWidget(QWidget *parent, Qt::WindowFlags flags) // load settings processSettings(true); - QString help_str = tr("\ -

  Chat Rooms

\ -

Chat rooms work pretty much like IRC. \ - They allow you to talk anonymously with tons of people without the need to make friends.

\ -

A chat room can be public (your friends see it) or private (your friends can't see it, unless you \ - invite them with ). \ - Once you have been invited to a private room, you will be able to see it when your friends \ - are using it.

\ -

The list at left shows \ - chat lobbies your friends are participating in. You can either \ -

    \ -
  • Right click to create a new chat room
  • \ -
  • Double click a chat room to enter, chat, and show it to your friends
  • \ -
\ - Note: For the chat rooms to work properly, your computer needs be on time. So check your system clock!\ -

\ - " - ).arg(QString::number(4*W), QString::number(2*W)) ; + int hbH = misc::getFontSizeFactor("HelpButton").height(); + QString help_str = tr( + "

  Chat Rooms

" + "

Chat rooms work pretty much like IRC." + " They allow you to talk anonymously with tons of people without the need to make friends.

" + "

A chat room can be public (your friends see it) or private (your friends can't see it, unless you" + " invite them with )." + " Once you have been invited to a private room, you will be able to see it when your friends" + " are using it.

" + "

The list at left shows" + " chat lobbies your friends are participating in. You can either" + "

    " + "
  • Right click to create a new chat room
  • " + "
  • Double click a chat room to enter, chat, and show it to your friends
  • " + "
" + " Note: For the chat rooms to work properly, your computer needs be on time. So check your system clock!" + "

" + ).arg(QString::number(2*hbH), QString::number(hbH)) ; registerHelpButton(ui.helpButton,help_str,"ChatLobbyDialog") ; - - ui.lobbyTreeWidget->setIconSize(QSize(H*1.5,H*1.5)); + + int ltwH = misc::getFontSizeFactor("LobbyTreeWidget", 1.5).height(); + ui.lobbyTreeWidget->setIconSize(QSize(ltwH,ltwH)); } ChatLobbyWidget::~ChatLobbyWidget() @@ -293,87 +295,84 @@ void ChatLobbyWidget::lobbyTreeWidgetCustomPopupMenu(QPoint) QMenu contextMnu(this); if (item && item->type() == TYPE_FOLDER) { - QAction *action = contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_CREATE), tr("Create chat room"), this, SLOT(createChatLobby())); + QAction *action = contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_CREATE), tr("Create chat room"), this, SLOT(createChatLobby())); action->setData(item->data(COLUMN_DATA, ROLE_PRIVACYLEVEL).toInt()); } - if (item && item->type() == TYPE_LOBBY) - { - std::list own_identities ; - rsIdentity->getOwnIds(own_identities) ; + if (item && item->type() == TYPE_LOBBY) + { + std::list own_identities ; + rsIdentity->getOwnIds(own_identities) ; - if (item->data(COLUMN_DATA, ROLE_SUBSCRIBED).toBool()) - contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_UNSUBSCRIBE), tr("Leave this room"), this, SLOT(unsubscribeItem())); - else - { - QTreeWidgetItem *item = ui.lobbyTreeWidget->currentItem(); + if (item->data(COLUMN_DATA, ROLE_SUBSCRIBED).toBool()) + contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_UNSUBSCRIBE), tr("Leave this room"), this, SLOT(unsubscribeItem())); + else + { + ChatLobbyFlags flags(item->data(COLUMN_DATA, ROLE_FLAGS).toUInt()); - //ChatLobbyId id = item->data(COLUMN_DATA, ROLE_ID).toULongLong(); - ChatLobbyFlags flags(item->data(COLUMN_DATA, ROLE_FLAGS).toUInt()); + bool removed = false ; + if(flags & RS_CHAT_LOBBY_FLAGS_PGP_SIGNED) + removed = trimAnonIds(own_identities) ; - bool removed = false ; - if(flags & RS_CHAT_LOBBY_FLAGS_PGP_SIGNED) - removed = trimAnonIds(own_identities) ; - - if(own_identities.empty()) - { - if(removed) - contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_SUBSCRIBE), tr("Create a non anonymous identity and enter this room"), this, SLOT(createIdentityAndSubscribe())); - else - contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_SUBSCRIBE), tr("Create an identity and enter this chat room"), this, SLOT(createIdentityAndSubscribe())); - } - else if(own_identities.size() == 1) - { - QAction *action = contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_SUBSCRIBE), tr("Enter this chat room"), this, SLOT(subscribeChatLobbyAs())); - action->setData(QString::fromStdString((own_identities.front()).toStdString())) ; - } - else - { - QMenu *mnu = contextMnu.addMenu(FilesDefs::getIconFromQtResourcePath(IMAGE_SUBSCRIBE),tr("Enter this chat room as...")) ; + if(own_identities.empty()) + { + if(removed) + contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_SUBSCRIBE), tr("Create a non anonymous identity and enter this room"), this, SLOT(createIdentityAndSubscribe())); + else + contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_SUBSCRIBE), tr("Create an identity and enter this chat room"), this, SLOT(createIdentityAndSubscribe())); + } + else if(own_identities.size() == 1) + { + QAction *action = contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_SUBSCRIBE), tr("Enter this chat room"), this, SLOT(subscribeChatLobbyAs())); + action->setData(QString::fromStdString((own_identities.front()).toStdString())) ; + } + else + { + QMenu *mnu = contextMnu.addMenu(FilesDefs::getIconFromQtResourcePath(IMAGE_SUBSCRIBE),tr("Enter this chat room as...")) ; - for(std::list::const_iterator it=own_identities.begin();it!=own_identities.end();++it) - { - RsIdentityDetails idd ; - rsIdentity->getIdDetails(*it,idd) ; + for(std::list::const_iterator it=own_identities.begin();it!=own_identities.end();++it) + { + RsIdentityDetails idd ; + rsIdentity->getIdDetails(*it,idd) ; - QPixmap pixmap ; + QPixmap pixmap ; - if(idd.mAvatar.mSize == 0 || !GxsIdDetails::loadPixmapFromData(idd.mAvatar.mData, idd.mAvatar.mSize, pixmap, GxsIdDetails::SMALL)) - pixmap = GxsIdDetails::makeDefaultIcon(*it,GxsIdDetails::SMALL) ; + if(idd.mAvatar.mSize == 0 || !GxsIdDetails::loadPixmapFromData(idd.mAvatar.mData, idd.mAvatar.mSize, pixmap, GxsIdDetails::SMALL)) + pixmap = GxsIdDetails::makeDefaultIcon(*it,GxsIdDetails::SMALL) ; - QAction *action = mnu->addAction(QIcon(pixmap), QString("%1 (%2)").arg(QString::fromUtf8(idd.mNickname.c_str()), QString::fromStdString((*it).toStdString())), this, SLOT(subscribeChatLobbyAs())); - action->setData(QString::fromStdString((*it).toStdString())) ; - } - } - } + QAction *action = mnu->addAction(QIcon(pixmap), QString("%1 (%2)").arg(QString::fromUtf8(idd.mNickname.c_str()), QString::fromStdString((*it).toStdString())), this, SLOT(subscribeChatLobbyAs())); + action->setData(QString::fromStdString((*it).toStdString())) ; + } + } + } #ifdef TO_BE_REMOVED - // This code is not needed anymore because AutoSubscribe is now automatically handled with chat room subscription. + // This code is not needed anymore because AutoSubscribe is now automatically handled with chat room subscription. - if (item->data(COLUMN_DATA, ROLE_AUTOSUBSCRIBE).toBool()) - contextMnu.addAction(QIcon(IMAGE_AUTOSUBSCRIBE), tr("Remove Auto Subscribe"), this, SLOT(autoSubscribeItem())); - else if(!own_identities.empty()) - contextMnu.addAction(QIcon(IMAGE_SUBSCRIBE), tr("Add Auto Subscribe"), this, SLOT(autoSubscribeItem())); + if (item->data(COLUMN_DATA, ROLE_AUTOSUBSCRIBE).toBool()) + contextMnu.addAction(QIcon(IMAGE_AUTOSUBSCRIBE), tr("Remove Auto Subscribe"), this, SLOT(autoSubscribeItem())); + else if(!own_identities.empty()) + contextMnu.addAction(QIcon(IMAGE_SUBSCRIBE), tr("Add Auto Subscribe"), this, SLOT(autoSubscribeItem())); #endif - contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_COPYRSLINK), tr("Copy RetroShare Link"), this, SLOT(copyItemLink())); - } + contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_COPYRSLINK), tr("Copy RetroShare Link"), this, SLOT(copyItemLink())); + } - contextMnu.addSeparator();//------------------------------------------------------------------- + contextMnu.addSeparator();//------------------------------------------------------------------- - showUserCountAct->setChecked(!ui.lobbyTreeWidget->isColumnHidden(COLUMN_USER_COUNT)); - showTopicAct->setChecked(!ui.lobbyTreeWidget->isColumnHidden(COLUMN_TOPIC)); + showUserCountAct->setChecked(!ui.lobbyTreeWidget->isColumnHidden(COLUMN_USER_COUNT)); + showTopicAct->setChecked(!ui.lobbyTreeWidget->isColumnHidden(COLUMN_TOPIC)); - QMenu *menu = contextMnu.addMenu(tr("Columns")); - menu->addAction(showUserCountAct); - menu->addAction(showTopicAct); + QMenu *menu = contextMnu.addMenu(tr("Columns")); + menu->addAction(showUserCountAct); + menu->addAction(showTopicAct); - contextMnu.exec(QCursor::pos()); + contextMnu.exec(QCursor::pos()); } void ChatLobbyWidget::lobbyChanged() { - updateDisplay(); + ChatLobbyWidget::updateDisplay(); } static void updateItem(QTreeWidget *treeWidget, QTreeWidgetItem *item, ChatLobbyId id, const std::string &name, const std::string &topic, int count, bool subscribed, bool autoSubscribe,ChatLobbyFlags lobby_flags) @@ -607,7 +606,7 @@ void ChatLobbyWidget::updateDisplay() QTreeWidgetItem *itemLoop = lobby_other_item->child(childIndex); if (itemLoop->type() == TYPE_LOBBY && itemLoop->data(COLUMN_DATA, ROLE_ID).toULongLong() == lobby.lobby_id) { delete(lobby_other_item->takeChild(lobby_other_item->indexOfChild(itemLoop))); - childCnt = lobby_other_item->childCount(); + //childCnt = lobby_other_item->childCount(); break; } } diff --git a/retroshare-gui/src/gui/ChatLobbyWidget.h b/retroshare-gui/src/gui/ChatLobbyWidget.h index a9bb01895..a5055788e 100644 --- a/retroshare-gui/src/gui/ChatLobbyWidget.h +++ b/retroshare-gui/src/gui/ChatLobbyWidget.h @@ -56,18 +56,18 @@ class ChatLobbyWidget : public RsAutoUpdatePage public: /** Default constructor */ - ChatLobbyWidget(QWidget *parent = 0, Qt::WindowFlags flags = 0); + ChatLobbyWidget(QWidget *parent = 0, Qt::WindowFlags flags = Qt::WindowFlags()); /** Default destructor */ ~ChatLobbyWidget(); - virtual QIcon iconPixmap() const { return QIcon(IMAGE_CHATLOBBY) ; } //MainPage - virtual QString pageName() const { return tr("Chats") ; } //MainPage - virtual QString helpText() const { return ""; } //MainPage + virtual QIcon iconPixmap() const override { return QIcon(IMAGE_CHATLOBBY) ; } //MainPage + virtual QString pageName() const override { return tr("Chats") ; } //MainPage + virtual QString helpText() const override { return ""; } //MainPage virtual UserNotify *createUserNotify(QObject *parent) override; //MainPage - virtual void updateDisplay(); + virtual void updateDisplay() override; //RsAutoUpdatePage void setCurrentChatPage(ChatLobbyDialog *) ; // used by ChatLobbyDialog to raise. void addChatPage(ChatLobbyDialog *) ; diff --git a/retroshare-gui/src/gui/FileTransfer/TransfersDialog.cpp b/retroshare-gui/src/gui/FileTransfer/TransfersDialog.cpp index 9fa03f3fd..035ed2ca6 100644 --- a/retroshare-gui/src/gui/FileTransfer/TransfersDialog.cpp +++ b/retroshare-gui/src/gui/FileTransfer/TransfersDialog.cpp @@ -449,7 +449,7 @@ public: case COLUMN_SOURCES: { int active = 0; - QString fileHash = QString::fromStdString(fileInfo.hash.toStdString()); + //QString fileHash = QString::fromStdString(fileInfo.hash.toStdString()); if (fileInfo.downloadStatus != FT_STATE_COMPLETE) for (std::vector::const_iterator pit = fileInfo.peers.begin() ; pit != fileInfo.peers.end(); ++pit) @@ -635,27 +635,27 @@ public: for(auto it(downHashes.begin());it!=downHashes.end();++it,++i) { FileInfo fileInfo(mDownloads[i]); // we dont update the data itself but only a copy of it.... - int old_size = fileInfo.peers.size() ; + int old_peers_size = fileInfo.peers.size() ; rsFiles->FileDetails(*it, RS_FILE_HINTS_DOWNLOAD, fileInfo); int new_size = fileInfo.peers.size() ; - if(old_size < new_size) + if(old_peers_size < new_size) { - beginInsertRows(index(i,0), old_size, new_size-1); - insertRows(old_size, new_size - old_size,index(i,0)); + beginInsertRows(index(i,0), old_peers_size, new_size-1); + insertRows(old_peers_size, new_size - old_peers_size,index(i,0)); #ifdef DEBUG_DOWNLOADLIST - std::cerr << "called insert rows ( " << old_size << ", " << new_size - old_size << ",index(" << index(i,0)<< "))" << std::endl; + std::cerr << "called insert rows ( " << old_peers_size << ", " << new_size - old_peers_size << ",index(" << index(i,0)<< "))" << std::endl; #endif endInsertRows(); } - else if(new_size < old_size) + else if(new_size < old_peers_size) { - beginRemoveRows(index(i,0), new_size, old_size-1); - removeRows(new_size, old_size - new_size,index(i,0)); + beginRemoveRows(index(i,0), new_size, old_peers_size-1); + removeRows(new_size, old_peers_size - new_size,index(i,0)); #ifdef DEBUG_DOWNLOADLIST - std::cerr << "called remove rows ( " << old_size << ", " << old_size - new_size << ",index(" << index(i,0)<< "))" << std::endl; + std::cerr << "called remove rows ( " << old_peers_size << ", " << old_peers_size - new_size << ",index(" << index(i,0)<< "))" << std::endl; #endif endRemoveRows(); } @@ -742,7 +742,7 @@ private: class SortByNameItem : public QStandardItem { public: - SortByNameItem(QHeaderView *header) : QStandardItem() + explicit SortByNameItem(QHeaderView *header) : QStandardItem() { this->header = header; } @@ -780,9 +780,9 @@ private: class ProgressItem : public SortByNameItem { public: - ProgressItem(QHeaderView *header) : SortByNameItem(header) {} + explicit ProgressItem(QHeaderView *header) : SortByNameItem(header) {} - virtual bool operator<(const QStandardItem &other) const + virtual bool operator<(const QStandardItem &other) const override { const int role = model() ? model()->sortRole() : Qt::DisplayRole; @@ -1077,24 +1077,23 @@ TransfersDialog::TransfersDialog(QWidget *parent) // load settings processSettings(true); - int S = static_cast(QFontMetricsF(font()).height()); + int H = misc::getFontSizeFactor("HelpButton").height(); QString help_str = tr( - "

  " - "File Transfer

" - "

Retroshare brings two ways of transferring files: direct " - "transfers from your friends, and distant anonymous tunnelled " - "transfers. In addition, file transfer is multi-source and " - "allows swarming (you can be a source while downloading)

" - "

You can share files using the " - "" - " icon from the left side bar. These files will be listed in " - "the My Files tab. You can decide for each friend group whether" - " they can or not see these files in their Friends Files tab

" - "

The search tab reports files from your friends' file lists," - " and distant files that can be reached anonymously using the " - "multi-hop tunnelling system.

") - .arg(QString::number(2*S)).arg(QString::number(S)) ; - + "

  " + " File Transfer

" + "

Retroshare brings two ways of transferring files: direct " + " transfers from your friends, and distant anonymous tunnelled " + " transfers. In addition, file transfer is multi-source and " + " allows swarming (you can be a source while downloading)

" + "

You can share files using the " + " " + " icon from the left side bar. These files will be listed in " + " the My Files tab. You can decide for each friend group whether" + " they can or not see these files in their Friends Files tab

" + "

The search tab reports files from your friends' file lists," + " and distant files that can be reached anonymously using the " + " multi-hop tunnelling system.

" + ).arg(QString::number(2*H), QString::number(H)) ; registerHelpButton(ui.helpButton,help_str,"TransfersDialog") ; @@ -1584,7 +1583,6 @@ int TransfersDialog::addULItem(int row, const FileInfo &fileInfo) //unique combination: fileHash + peerId, variant: hash + peerName (too long) QString hashFileAndPeerId = fileHash + QString::fromStdString(transferInfo.peerId.toStdString()); - qlonglong completed = transferInfo.transfered; double peerULSpeed = transferInfo.tfRate * 1024.0; @@ -1602,6 +1600,7 @@ int TransfersDialog::addULItem(int row, const FileInfo &fileInfo) peerpinfo.type = FileProgressInfo::UPLOAD_LINE ; peerpinfo.nb_chunks = peerpinfo.cmap._map.empty()?0:nb_chunks ; + qlonglong completed = 0; if(filled_chunks > 0 && nb_chunks > 0) { completed = peerpinfo.cmap.computeProgress(fileInfo.size,chunk_size) ; @@ -1720,9 +1719,6 @@ void TransfersDialog::insertTransfers() { // Since downloads use an AstractItemModel, we just need to update it, while saving the selected and expanded items. - std::set expanded_hashes ; - std::set selected_hashes ; - DLListModel->update_transfers(); // Now show upload hashes. Here we use the "old" way, since the number of uploads is generally not so large. @@ -1957,16 +1953,16 @@ void TransfersDialog::pasteLink() RsCollection col ; RSLinkClipboard::pasteLinks(links,RetroShareLink::TYPE_FILE_TREE); - for(QList::const_iterator it(links.begin());it!=links.end();++it) + for(auto &it: links) { - auto ft = RsFileTree::fromRadix64((*it).radix().toStdString()); + auto ft = RsFileTree::fromRadix64(it.radix().toStdString()); col.merge_in(*ft); } links.clear(); RSLinkClipboard::pasteLinks(links,RetroShareLink::TYPE_FILE); - for(QList::const_iterator it(links.begin());it!=links.end();++it) - col.merge_in((*it).name(),(*it).size(),RsFileHash((*it).hash().toStdString())) ; + for(auto &it : links) + col.merge_in(it.name(),it.size(),RsFileHash(it.hash().toStdString())) ; col.downloadFiles(); } @@ -1985,7 +1981,7 @@ void TransfersDialog::getDLSelectedItems(std::set *ids, std::setindex(index.parent().row(), COLUMN_ID); if (ids) { diff --git a/retroshare-gui/src/gui/FriendsDialog.cpp b/retroshare-gui/src/gui/FriendsDialog.cpp index e3f74fcfd..5df97121a 100644 --- a/retroshare-gui/src/gui/FriendsDialog.cpp +++ b/retroshare-gui/src/gui/FriendsDialog.cpp @@ -127,21 +127,21 @@ FriendsDialog::FriendsDialog(QWidget *parent) : MainPage(parent) ui.nicknameLabel->setText(QString::fromUtf8(pd.name.c_str()) + " (" + QString::fromUtf8(pd.location.c_str())+")"); } - QString hlp_str = tr( - "

  Network

\ -

The Network tab shows your friend Retroshare nodes: the neighbor Retroshare nodes that are connected to you. \ -

\ -

You can group nodes together to allow a finer level of information access, for instance to only allow \ - some nodes to see some of your files.

\ -

On the right, you will find 3 useful tabs: \ -

    \ -
  • Broadcast sends messages to all connected nodes at once
  • \ -
  • Local network graph shows the network around you, based on discovery information
  • \ -
  • Keyring contains node keys you collected, mostly forwarded to you by your friend nodes
  • \ -

\ - ") ; + int H = misc::getFontSizeFactor("HelpButton").height(); + QString hlp_str = tr( + "

  Network

" + "

The Network tab shows your friend Retroshare nodes: the neighbor Retroshare nodes that are connected to you.

" + "

You can group nodes together to allow a finer level of information access, for instance to only allow" + " some nodes to see some of your files.

" + "

On the right, you will find 3 useful tabs:" + "

    " + "
  • Broadcast sends messages to all connected nodes at once
  • " + "
  • Local network graph shows the network around you, based on discovery information
  • " + "
  • Keyring contains node keys you collected, mostly forwarded to you by your friend nodes
  • " + "

" + ).arg(QString::number(2*H)); - registerHelpButton(ui.helpButton, hlp_str,"FriendsDialog") ; + registerHelpButton(ui.helpButton, hlp_str,"FriendsDialog") ; } FriendsDialog::~FriendsDialog () diff --git a/retroshare-gui/src/gui/HomePage.cpp b/retroshare-gui/src/gui/HomePage.cpp index 6c1737076..ef6982e22 100644 --- a/retroshare-gui/src/gui/HomePage.cpp +++ b/retroshare-gui/src/gui/HomePage.cpp @@ -24,6 +24,7 @@ #include "retroshare/rsinit.h" #include "util/qtthreadsutils.h" +#include "util/misc.h" #include "gui/notifyqt.h" #include "gui/msgs/MessageComposer.h" @@ -100,21 +101,20 @@ HomePage::HomePage(QWidget *parent) : connect(ui->openwebhelp,SIGNAL(clicked()), this,SLOT(openWebHelp())) ; - int S = QFontMetricsF(font()).height(); - QString help_str = tr( - "

  Welcome to Retroshare!

\ -

You need to make friends! After you create a network of friends or join an existing network,\ - you'll be able to exchange files, chat, talk in forums, etc.

\ -
\ - \ -
\ -

To do so, copy your Retroshare ID on this page and send it to friends, and add your friends' Retroshare ID.

\ -

Another option is to search the internet for \"Retroshare chat servers\" (independently administrated). These servers allow you to exchange \ - Retroshare ID with a dedicated Retroshare node, through which\ - you will be able to anonymously meet other people.

").arg(QString::number(2*S)).arg(width()*0.5); - registerHelpButton(ui->helpButton,help_str,"HomePage") ; + int H = misc::getFontSizeFactor("HelpButton").height(); + QString help_str = tr( + "

  Welcome to Retroshare!

" + "

You need to make friends! After you create a network of friends or join an existing network," + " you'll be able to exchange files, chat, talk in forums, etc.

" + "
" + "

To do so, copy your Retroshare ID on this page and send it to friends, and add your friends' Retroshare ID.

" + "

Another option is to search the internet for \"Retroshare chat servers\" (independently administrated). These servers allow you to exchange" + " Retroshare ID with a dedicated Retroshare node, through which" + " you will be able to anonymously meet other people.

" + ).arg(QString::number(2*H), QString::number(width()*0.5), QString::number(width()*0.5*(337.0/800.0)));// needs height and width defined. + registerHelpButton(ui->helpButton,help_str,"HomePage") ; - // register a event handler to catch IP updates + // register a event handler to catch IP updates mEventHandlerId = 0; rsEvents->registerEventsHandler( [this](std::shared_ptr event) { handleEvent(event); }, mEventHandlerId, RsEventType::NETWORK ); @@ -249,13 +249,8 @@ void HomePage::updateOwnCert() ui->retroshareid->setToolTip(description); } -static void sendMail(QString sAddress, QString sSubject, QString sBody) +static void sendMail(const QString &sAddress, const QString &sSubject, const QString &sBody) { -#ifdef Q_OS_WIN - /* search and replace the end of lines with: "%0D%0A" */ - sBody.replace("\n", "%0D%0A"); -#endif - QUrl url = QUrl("mailto:" + sAddress); #if QT_VERSION >= QT_VERSION_CHECK(5,0,0) @@ -265,7 +260,12 @@ static void sendMail(QString sAddress, QString sSubject, QString sBody) #endif urlQuery.addQueryItem("subject", sSubject); +#ifdef Q_OS_WIN + /* search and replace the end of lines with: "%0D%0A" */ + urlQuery.addQueryItem("body", QString(sBody).replace("\n", "%0D%0A")); +#else urlQuery.addQueryItem("body", sBody); +#endif #if QT_VERSION >= QT_VERSION_CHECK(5,0,0) url.setQuery(urlQuery); diff --git a/retroshare-gui/src/gui/Identity/IdDialog.cpp b/retroshare-gui/src/gui/Identity/IdDialog.cpp index a7536b048..c40bb0931 100644 --- a/retroshare-gui/src/gui/Identity/IdDialog.cpp +++ b/retroshare-gui/src/gui/Identity/IdDialog.cpp @@ -385,20 +385,22 @@ IdDialog::IdDialog(QWidget *parent) mStateHelper->setActive(IDDIALOG_IDDETAILS, false); mStateHelper->setActive(IDDIALOG_REPLIST, false); + int H = misc::getFontSizeFactor("HelpButton").height(); QString hlp_str = tr( - "

  Identities

\ -

In this tab you can create/edit pseudo-anonymous identities, and circles.

\ -

Identities are used to securely identify your data: sign messages in chat lobbies, forum and channel posts,\ - receive feedback using the Retroshare built-in email system, post comments \ - after channel posts, chat using secured tunnels, etc.

\ -

Identities can optionally be signed by your Retroshare node's certificate. \ - Signed identities are easier to trust but are easily linked to your node's IP address.

\ -

Anonymous identities allow you to anonymously interact with other users. They cannot be \ - spoofed, but noone can prove who really owns a given identity.

\ -

Circles are groups of identities (anonymous or signed), that are shared at a distance over the network. They can be \ - used to restrict the visibility to forums, channels, etc.

\ -

An circle can be restricted to another circle, thereby limiting its visibility to members of that circle \ - or even self-restricted, meaning that it is only visible to invited members.

") ; + "

  Identities

" + "

In this tab you can create/edit pseudo-anonymous identities, and circles.

" + "

Identities are used to securely identify your data: sign messages in chat lobbies, forum and channel posts," + " receive feedback using the Retroshare built-in email system, post comments" + " after channel posts, chat using secured tunnels, etc.

" + "

Identities can optionally be signed by your Retroshare node's certificate." + " Signed identities are easier to trust but are easily linked to your node's IP address.

" + "

Anonymous identities allow you to anonymously interact with other users. They cannot be" + " spoofed, but noone can prove who really owns a given identity.

" + "

Circles are groups of identities (anonymous or signed), that are shared at a distance over the network. They can be" + " used to restrict the visibility to forums, channels, etc.

" + "

An circle can be restricted to another circle, thereby limiting its visibility to members of that circle" + " or even self-restricted, meaning that it is only visible to invited members.

" + ).arg(QString::number(2*H)); registerHelpButton(ui->helpButton, hlp_str,"PeopleDialog") ; diff --git a/retroshare-gui/src/gui/MainPage.cpp b/retroshare-gui/src/gui/MainPage.cpp index 545f1270e..6136343d7 100644 --- a/retroshare-gui/src/gui/MainPage.cpp +++ b/retroshare-gui/src/gui/MainPage.cpp @@ -18,12 +18,14 @@ * * *******************************************************************************/ -#include -#include - #include + #include "common/FloatingHelpBrowser.h" #include "gui/settings/rsharesettings.h" +#include "util/misc.h" + +#include +#include MainPage::MainPage(QWidget *parent , Qt::WindowFlags flags ) : QWidget(parent, flags) { @@ -44,13 +46,13 @@ UserNotify *MainPage::getUserNotify() void MainPage::registerHelpButton(QToolButton *button, const QString& help_html_text, const QString &code_name) { - mHelpCodeName = code_name ; + mHelpCodeName = code_name ; - if (mHelpBrowser == NULL) + if (mHelpBrowser == nullptr) mHelpBrowser = new FloatingHelpBrowser(this, button) ; - float S = QFontMetricsF(button->font()).height() ; - button->setIconSize(QSize(S,S)) ; + int H = misc::getFontSizeFactor("HelpButton").height(); + button->setIconSize(QSize(H, H)) ;//Square Icon mHelpBrowser->setHelpText(help_html_text) ; } diff --git a/retroshare-gui/src/gui/NewsFeed.cpp b/retroshare-gui/src/gui/NewsFeed.cpp index d86ba2d7a..252560d43 100644 --- a/retroshare-gui/src/gui/NewsFeed.cpp +++ b/retroshare-gui/src/gui/NewsFeed.cpp @@ -32,6 +32,7 @@ #include #include +#include "util/misc.h" #include "util/qtthreadsutils.h" #include "feeds/BoardsCommentsItem.h" #include "feeds/ChatMsgItem.h" @@ -111,22 +112,23 @@ NewsFeed::NewsFeed(QWidget *parent) : MainPage(parent), ui(new Ui::NewsFeed), connect(ui->feedOptionsButton, SIGNAL(clicked()), this, SLOT(feedoptions())); ui->feedOptionsButton->hide(); // (csoler) Hidden until we repare the system to display a specific settings page. -QString hlp_str = tr( - "

  Activity Feed

\ -

The Activity Feed displays the last events on your network, sorted by the time you received them. \ - This gives you a summary of the activity of your friends. \ - You can configure which events to show by pressing on Options.

\ -

The various events shown are: \ -

    \ -
  • Connection attempts (useful to make friends with new people and control who's trying to reach you)
  • \ -
  • Channel, Forum and Board posts
  • \ -
  • Circle membership requests and invites
  • \ -
  • New Channels, Forums and Boards you can subscribe to
  • \ -
  • Channel and Board comments
  • \ -
  • New Mail messages
  • \ -
  • Private messages from your friends
  • \ -

\ - ") ; + int H = misc::getFontSizeFactor("HelpButton").height(); + QString hlp_str = tr( + "

  Activity Feed

" + "

The Activity Feed displays the last events on your network, sorted by the time you received them." + " This gives you a summary of the activity of your friends." + " You can configure which events to show by pressing on Options.

" + "

The various events shown are:" + "

    " + "
  • Connection attempts (useful to make friends with new people and control who's trying to reach you)
  • " + "
  • Channel, Forum and Board posts
  • " + "
  • Circle membership requests and invites
  • " + "
  • New Channels, Forums and Boards you can subscribe to
  • " + "
  • Channel and Board comments
  • " + "
  • New Mail messages
  • " + "
  • Private messages from your friends
  • " + "

" + ).arg(QString::number(2*H)); registerHelpButton(ui->helpButton,hlp_str,"NewFeed") ; diff --git a/retroshare-gui/src/gui/Posted/PostedDialog.cpp b/retroshare-gui/src/gui/Posted/PostedDialog.cpp index f1837da3b..33a9c5854 100644 --- a/retroshare-gui/src/gui/Posted/PostedDialog.cpp +++ b/retroshare-gui/src/gui/Posted/PostedDialog.cpp @@ -26,6 +26,7 @@ #include "gui/gxs/GxsGroupShareKey.h" #include "gui/settings/rsharesettings.h" #include "gui/common/GroupTreeWidget.h" +#include "util/misc.h" #include "util/qtthreadsutils.h" #include @@ -95,14 +96,19 @@ UserNotify *PostedDialog::createUserNotify(QObject *parent) QString PostedDialog::getHelpString() const { - QString hlp_str = tr("

  Boards

\ -

The Boards service allows you to share images, blog posts & internet links, that spread among Retroshare nodes like forums and \ - channels

\ -

Posts can be commented by subscribed users. A promotion system also gives the opportunity to \ - enlight important links.

\ -

There is no restriction on which links are shared. Be careful when clicking on them.

\ -

Boards are kept for %1 days, and sync-ed over the last %2 days, unless you change this.

\ - ").arg(QString::number(rsPosted->getDefaultStoragePeriod()/86400)).arg(QString::number(rsPosted->getDefaultSyncPeriod()/86400)); + int H = misc::getFontSizeFactor("HelpButton").height(); + + QString hlp_str = tr( + "

  Boards

" + "

The Boards service allows you to share images, blog posts & internet links, that spread among Retroshare nodes like forums and" + " channels

" + "

Posts can be commented by subscribed users. A promotion system also gives the opportunity to" + " enlight important links.

" + "

There is no restriction on which links are shared. Be careful when clicking on them.

" + "

Boards are kept for %2 days, and sync-ed over the last %3 days, unless you change this.

" + ).arg( QString::number(2*H) + , QString::number(rsPosted->getDefaultStoragePeriod()/86400) + , QString::number(rsPosted->getDefaultSyncPeriod()/86400)); return hlp_str ; } diff --git a/retroshare-gui/src/gui/gxschannels/GxsChannelDialog.cpp b/retroshare-gui/src/gui/gxschannels/GxsChannelDialog.cpp index 5c6d1ae31..1abed7c64 100644 --- a/retroshare-gui/src/gui/gxschannels/GxsChannelDialog.cpp +++ b/retroshare-gui/src/gui/gxschannels/GxsChannelDialog.cpp @@ -35,6 +35,7 @@ #include "gui/notifyqt.h" #include "gui/common/GroupTreeWidget.h" #include "util/qtthreadsutils.h" +#include "util/misc.h" // class GxsChannelGroupInfoData : public RsUserdata // { @@ -90,8 +91,8 @@ void GxsChannelDialog::handleEvent_main_thread(std::shared_ptr ev const RsGxsChannelSearchResultEvent*f = dynamic_cast(event.get()); - if(nullptr != f) - for(auto it:f->mSearchResultsMap) + if(nullptr != f) + for(auto &it:f->mSearchResultsMap) updateSearchResults(it.first); } @@ -102,18 +103,23 @@ GxsChannelDialog::~GxsChannelDialog() QString GxsChannelDialog::getHelpString() const { - QString hlp_str = tr("

  Channels

\ -

Channels allow you to post data (e.g. movies, music) that will spread in the network

\ -

You can see the channels your friends are subscribed to, and you automatically forward subscribed channels to \ - your friends. This promotes good channels in the network.

\ -

Only the channel's creator can post on that channel. Other peers \ - in the network can only read from it, unless the channel is private. You can however share \ - the posting rights or the reading rights with friend Retroshare nodes.

\ -

Channels can be made anonymous, or attached to a Retroshare identity so that readers can contact you if needed.\ - Enable \"Allow Comments\" if you want to let users comment on your posts.

\ -

Channel posts are kept for %1 days, and sync-ed over the last %2 days, unless you change this.

\ -

UI Tip: use Control + mouse wheel to control image size in the thumbnail view.

\ - ").arg(QString::number(rsGxsChannels->getDefaultStoragePeriod()/86400)).arg(QString::number(rsGxsChannels->getDefaultSyncPeriod()/86400)); + int H = misc::getFontSizeFactor("HelpButton").height(); + + QString hlp_str = tr( + "

  Channels

" + "

Channels allow you to post data (e.g. movies, music) that will spread in the network

" + "

You can see the channels your friends are subscribed to, and you automatically forward subscribed channels to" + " your friends. This promotes good channels in the network.

" + "

Only the channel's creator can post on that channel. Other peers" + " in the network can only read from it, unless the channel is private. You can however share" + " the posting rights or the reading rights with friend Retroshare nodes.

" + "

Channels can be made anonymous, or attached to a Retroshare identity so that readers can contact you if needed." + " Enable \"Allow Comments\" if you want to let users comment on your posts.

" + "

Channel posts are kept for %2 days, and sync-ed over the last %3 days, unless you change this.

" + "

UI Tip: use Control + mouse wheel to control image size in the thumbnail view.

" + ).arg( QString::number(2*H) + , QString::number(rsGxsChannels->getDefaultStoragePeriod()/86400) + , QString::number(rsGxsChannels->getDefaultSyncPeriod()/86400)); return hlp_str ; } @@ -260,11 +266,13 @@ void GxsChannelDialog::groupTreeCustomActions(RsGxsGroupId grpId, int subscribeF if (isSubscribed) { - QAction *action = autoDownload ? (new QAction(FilesDefs::getIconFromQtResourcePath(":/images/redled.png"), tr("Disable Auto-Download"), this)) - : (new QAction(FilesDefs::getIconFromQtResourcePath(":/images/start.png"),tr("Enable Auto-Download"), this)); + { + QAction *action = autoDownload ? (new QAction(FilesDefs::getIconFromQtResourcePath(":/images/redled.png"), tr("Disable Auto-Download"), this)) + : (new QAction(FilesDefs::getIconFromQtResourcePath(":/images/start.png"),tr("Enable Auto-Download"), this)); - connect(action, SIGNAL(triggered()), this, SLOT(toggleAutoDownload())); - actions.append(action); + connect(action, SIGNAL(triggered()), this, SLOT(toggleAutoDownload())); + actions.append(action); + } std::string dl_directory; rsGxsChannels->getChannelDownloadDirectory(grpId,dl_directory) ; @@ -282,20 +290,20 @@ void GxsChannelDialog::groupTreeCustomActions(RsGxsGroupId grpId, int subscribeF for(std::list::const_iterator it(lst.begin());it!=lst.end();++it) { - QAction *action = NULL; + QAction *fileAction = NULL; if(dl_directory == it->filename) { - action = new QAction(FilesDefs::getIconFromQtResourcePath(":/images/start.png"),QString::fromUtf8(it->filename.c_str()),NULL) ; + fileAction = new QAction(FilesDefs::getIconFromQtResourcePath(":/images/start.png"),QString::fromUtf8(it->filename.c_str()),NULL) ; found = true ; } else - action = new QAction(QString::fromUtf8(it->filename.c_str()),NULL) ; + fileAction = new QAction(QString::fromUtf8(it->filename.c_str()),NULL) ; - connect(action,SIGNAL(triggered()),this,SLOT(setDownloadDirectory())) ; - action->setData(QString::fromUtf8(it->filename.c_str())) ; + connect(fileAction,SIGNAL(triggered()),this,SLOT(setDownloadDirectory())) ; + fileAction->setData(QString::fromUtf8(it->filename.c_str())) ; - mnu->addAction(action) ; + mnu->addAction(fileAction) ; } if(!found && !dl_directory.empty()) @@ -368,17 +376,17 @@ bool GxsChannelDialog::getGroupData(std::list& groupInfo { std::vector groups; - // request all group infos at once + // request all group infos at once - if(! rsGxsChannels->getChannelsInfo(std::list(),groups)) - return false; + if(! rsGxsChannels->getChannelsInfo(std::list(),groups)) + return false; - /* Save groups to fill icons and description */ + /* Save groups to fill icons and description */ for (auto& group: groups) - groupInfo.push_back(new RsGxsChannelGroup(group)); + groupInfo.push_back(new RsGxsChannelGroup(group)); - return true; + return true; } void GxsChannelDialog::groupInfoToGroupItemInfo(const RsGxsGenericGroupData *groupData, GroupItemInfo &groupItemInfo) diff --git a/retroshare-gui/src/gui/gxsforums/GxsForumsDialog.cpp b/retroshare-gui/src/gui/gxsforums/GxsForumsDialog.cpp index 9527d8675..367935382 100644 --- a/retroshare-gui/src/gui/gxsforums/GxsForumsDialog.cpp +++ b/retroshare-gui/src/gui/gxsforums/GxsForumsDialog.cpp @@ -24,9 +24,10 @@ #include "CreateGxsForumMsg.h" #include "GxsForumUserNotify.h" #include "gui/notifyqt.h" -#include "gui/gxs/GxsGroupShareKey.h" -#include "util/qtthreadsutils.h" #include "gui/common/GroupTreeWidget.h" +#include "gui/gxs/GxsGroupShareKey.h" +#include "util/misc.h" +#include "util/qtthreadsutils.h" class GxsForumGroupInfoData : public RsUserdata { @@ -110,13 +111,17 @@ bool GxsForumsDialog::getGroupStatistics(const RsGxsGroupId& groupId,GxsGroupSta QString GxsForumsDialog::getHelpString() const { + int H = misc::getFontSizeFactor("HelpButton").height(); + QString hlp_str = tr( - "

  Forums

\ -

Retroshare Forums look like internet forums, but they work in a decentralized way

\ -

You see forums your friends are subscribed to, and you forward subscribed forums to \ - your friends. This automatically promotes interesting forums in the network.

\ -

Forum messages are kept for %1 days and sync-ed over the last %2 days, unless you configure it otherwise.

\ - ").arg(QString::number(rsGxsForums->getDefaultStoragePeriod()/86400)).arg(QString::number(rsGxsForums->getDefaultSyncPeriod()/86400)); + "

  Forums

" + "

Retroshare Forums look like internet forums, but they work in a decentralized way

" + "

You see forums your friends are subscribed to, and you forward subscribed forums to" + " your friends. This automatically promotes interesting forums in the network.

" + "

Forum messages are kept for %2 days and sync-ed over the last %3 days, unless you configure it otherwise.

" + ).arg( QString::number(2*H) + , QString::number(rsGxsForums->getDefaultStoragePeriod()/86400) + , QString::number(rsGxsForums->getDefaultSyncPeriod()/86400)); return hlp_str ; } @@ -233,9 +238,11 @@ void GxsForumsDialog::groupInfoToGroupItemInfo(const RsGxsGenericGroupData *grou groupItemInfo.description = QString::fromUtf8(forumGroupData->mDescription.c_str()); if (!groupData->mMeta.mCircleId.isNull() ) + { if (details.mRestrictedCircleId == details.mCircleId) groupItemInfo.icon = FilesDefs::getIconFromQtResourcePath(":icons/png/forums-red.png"); else groupItemInfo.icon = FilesDefs::getIconFromQtResourcePath(":icons/png/forums-signed.png"); + } } diff --git a/retroshare-gui/src/gui/msgs/MessagesDialog.cpp b/retroshare-gui/src/gui/msgs/MessagesDialog.cpp index c5c3c543c..d39baf6d5 100644 --- a/retroshare-gui/src/gui/msgs/MessagesDialog.cpp +++ b/retroshare-gui/src/gui/msgs/MessagesDialog.cpp @@ -44,9 +44,10 @@ #include "gui/settings/rsharesettings.h" #include "util/DateTime.h" -#include "util/RsProtectedTimer.h" +#include "util/misc.h" #include "util/QtVersion.h" #include "util/qtthreadsutils.h" +#include "util/RsProtectedTimer.h" #include #include @@ -254,17 +255,17 @@ MessagesDialog::MessagesDialog(QWidget *parent) ui.tabWidget->hideCloseButton(0); ui.tabWidget->setHideTabBarWithOneTab(true); - int S = QFontMetricsF(font()).height(); - QString help_str = tr( - "

  Messages

\ -

Retroshare has its own internal email system. You can send/receive emails to/from connected friend nodes.

\ -

It is also possible to send messages to other people's Identities using the global routing system. These messages \ - are always encrypted and signed, and are relayed by intermediate nodes until they reach their final destination.

\ -

Distant messages stay into your Outbox until an acknowledgement of receipt has been received.

\ -

Generally, you may use messages to recommend files to your friends by pasting file links, \ - or recommend friend nodes to other friend nodes, in order to strengthen your network, or send feedback \ - to a channel's owner.

\ - ").arg(QString::number(2*S), QString::number(S)) ; + int H = misc::getFontSizeFactor("HelpButton").height(); + QString help_str = tr( + "

  Messages

" + "

Retroshare has its own internal email system. You can send/receive emails to/from connected friend nodes.

" + "

It is also possible to send messages to other people's Identities using the global routing system. These messages" + " are always encrypted and signed, and are relayed by intermediate nodes until they reach their final destination.

" + "

Distant messages stay into your Outbox until an acknowledgement of receipt has been received.

" + "

Generally, you may use messages to recommend files to your friends by pasting file links," + " or recommend friend nodes to other friend nodes, in order to strengthen your network, or send feedback" + " to a channel's owner.

" + ).arg(QString::number(2*H)) ; registerHelpButton(ui.helpButton,help_str,"MessagesDialog") ; diff --git a/retroshare-gui/src/util/misc.cpp b/retroshare-gui/src/util/misc.cpp index e63ad2fd6..c24ea2d11 100644 --- a/retroshare-gui/src/util/misc.cpp +++ b/retroshare-gui/src/util/misc.cpp @@ -19,17 +19,20 @@ * * *******************************************************************************/ -#include +#include "misc.h" + +#include "gui/common/FilesDefs.h" +#include "util/rsdebug.h" + +#include +#include +#include #include #include -#include -#include -#include #include +#include -#include "misc.h" -#include "util/rsdebug.h" -#include "gui/common/FilesDefs.h" +#include // return best userfriendly storage unit (B, KiB, MiB, GiB, TiB) // use Binary prefix standards from IEC 60027-2 @@ -67,46 +70,44 @@ QString misc::fingerPrintStyleSplit(const QString& in) bool misc::isPreviewable(QString extension) { extension = extension.toUpper(); - if(extension == "AVI") return true; - if(extension == "MP3") return true; - if(extension == "OGG") return true; - if(extension == "OGM") return true; - if(extension == "WMV") return true; - if(extension == "WMA") return true; - if(extension == "MPEG") return true; - if(extension == "MPG") return true; - if(extension == "ASF") return true; - if(extension == "QT") return true; - if(extension == "RM") return true; - if(extension == "RMVB") return true; - if(extension == "RMV") return true; - if(extension == "SWF") return true; - if(extension == "FLV") return true; - if(extension == "WAV") return true; - if(extension == "MOV") return true; - if(extension == "VOB") return true; - if(extension == "MID") return true; - if(extension == "AC3") return true; - if(extension == "MP4") return true; - if(extension == "MP2") return true; - if(extension == "AVI") return true; - if(extension == "FLAC") return true; - if(extension == "AU") return true; - if(extension == "MPE") return true; - if(extension == "MOV") return true; - if(extension == "MKV") return true; - if(extension == "AIF") return true; - if(extension == "AIFF") return true; - if(extension == "AIFC") return true; - if(extension == "RA") return true; - if(extension == "RAM") return true; - if(extension == "M4P") return true; - if(extension == "M4A") return true; if(extension == "3GP") return true; if(extension == "AAC") return true; - if(extension == "SWA") return true; + if(extension == "AC3") return true; + if(extension == "AIF") return true; + if(extension == "AIFC") return true; + if(extension == "AIFF") return true; + if(extension == "ASF") return true; + if(extension == "AU") return true; + if(extension == "AVI") return true; + if(extension == "FLAC") return true; + if(extension == "FLV") return true; + if(extension == "M4P") return true; + if(extension == "M4A") return true; + if(extension == "MOV") return true; + if(extension == "MID") return true; + if(extension == "MKV") return true; + if(extension == "MP2") return true; + if(extension == "MP3") return true; + if(extension == "MP4") return true; if(extension == "MPC") return true; + if(extension == "MPE") return true; + if(extension == "MPEG") return true; + if(extension == "MPG") return true; if(extension == "MPP") return true; + if(extension == "OGG") return true; + if(extension == "OGM") return true; + if(extension == "QT") return true; + if(extension == "RA") return true; + if(extension == "RAM") return true; + if(extension == "RM") return true; + if(extension == "RMV") return true; + if(extension == "RMVB") return true; + if(extension == "SWA") return true; + if(extension == "SWF") return true; + if(extension == "VOB") return true; + if(extension == "WAV") return true; + if(extension == "WMA") return true; + if(extension == "WMV") return true; return false; } @@ -227,8 +228,6 @@ QString misc::userFriendlyUnit(double count, unsigned int decimal, double factor return "0"; } - QString output; - int i; for (i = 0; i < 5; ++i) { if (count < factor) { @@ -434,3 +433,12 @@ void misc::clearLayout(QLayout * layout) { //delete item;//Auto deleted by Qt. } } + +QSizeF misc::getFontSizeFactor(const QString &group, const qreal defaultFactor /*= 1.0*/) +{ + static qreal appFontWidth = QFontMetrics(QApplication::font()).maxWidth(); + static qreal appFontHeight = QFontMetrics(QApplication::font()).height(); + qreal factor = Settings->valueFromGroup("FontHeighFactor",group,defaultFactor).toReal(); + return QSizeF(appFontWidth*factor,appFontHeight*factor); +} + diff --git a/retroshare-gui/src/util/misc.h b/retroshare-gui/src/util/misc.h index f09280ecf..2863a867c 100644 --- a/retroshare-gui/src/util/misc.h +++ b/retroshare-gui/src/util/misc.h @@ -22,14 +22,15 @@ #ifndef MISC_H #define MISC_H -#include +#include "gui/settings/rsharesettings.h" + +#include +#include #include #include #include -#include -#include -#include "gui/settings/rsharesettings.h" +#include /* Miscellaneaous functions that can be useful */ class misc : public QObject @@ -165,15 +166,15 @@ class misc : public QObject static QPixmap getOpenThumbnailedPicture(QWidget *parent, const QString &caption, int width, int height); static bool getOpenFileName(QWidget *parent, RshareSettings::enumLastDir type , const QString &caption, const QString &filter - , QString &file, QFileDialog::Options options = 0); + , QString &file, QFileDialog::Options options = QFileDialog::Options()); static bool getOpenFileNames(QWidget *parent, RshareSettings::enumLastDir type , const QString &caption, const QString &filter - , QStringList &files, QFileDialog::Options options = 0); + , QStringList &files, QFileDialog::Options options = QFileDialog::Options()); static bool getSaveFileName(QWidget *parent, RshareSettings::enumLastDir type , const QString &caption , const QString &filter - , QString &file, QString *selectedFilter = NULL - , QFileDialog::Options options = 0); + , QString &file, QString *selectedFilter = NULL + , QFileDialog::Options options = QFileDialog::Options()); static QFont getFont(bool *ok , const QFont &initial @@ -187,6 +188,9 @@ class misc : public QObject //Clear QLayout static void clearLayout(QLayout *layout); + static QSizeF getFontSizeFactor(const QString &group, const qreal defaultFactor = 1.0); + static QSizeF getFontSizeFactor() {return getFontSizeFactor("Main");} + }; // Trick to get a portable sleep() function @@ -201,7 +205,7 @@ class SleeperThread : public QThread{ template class SignalsBlocker { public: - SignalsBlocker(T *blocked) : blocked(blocked), previous(blocked->blockSignals(true)) {} + explicit SignalsBlocker(T *blocked) : blocked(blocked), previous(blocked->blockSignals(true)) {} ~SignalsBlocker() { blocked->blockSignals(previous); } T *operator->() { return blocked; } From 365682d7719f7db8221da7981af63bcbb94fc371 Mon Sep 17 00:00:00 2001 From: csoler Date: Sun, 16 Jan 2022 15:50:21 +0100 Subject: [PATCH 004/503] added PGP-encryption to server communication to avoid data harvesting --- libretroshare | 2 +- retroshare-friendserver/src/friendserver.cc | 109 +++++++++++++----- retroshare-friendserver/src/friendserver.h | 5 +- retroshare-gui/src/gui/settings/ServerPage.ui | 2 +- 4 files changed, 88 insertions(+), 30 deletions(-) diff --git a/libretroshare b/libretroshare index a7a430008..89b4d9c33 160000 --- a/libretroshare +++ b/libretroshare @@ -1 +1 @@ -Subproject commit a7a430008b76e53727598c4d13106e7ce95221d7 +Subproject commit 89b4d9c3352c02630cd555918515b1412b3264ff diff --git a/retroshare-friendserver/src/friendserver.cc b/retroshare-friendserver/src/friendserver.cc index b3c5d55ec..577730e73 100644 --- a/retroshare-friendserver/src/friendserver.cc +++ b/retroshare-friendserver/src/friendserver.cc @@ -4,6 +4,8 @@ #include "util/rsbase64.h" #include "util/radix64.h" +#include "crypto/hashstream.h" + #include "pgp/pgpkeyutil.h" #include "pgp/rscertificate.h" #include "pgp/openpgpsdkhandler.h" @@ -60,7 +62,7 @@ void FriendServer::threadTick() if(last_debugprint_TS + DELAY_BETWEEN_TWO_DEBUG_PRINT < now) { last_debugprint_TS = now; - debugPrint(); + debugPrint(false); } } @@ -82,12 +84,12 @@ void FriendServer::handleClientPublish(const RsFriendServerClientPublishItem *it RsDbg() << "Sending response item to " << item->PeerId() ; - RsFriendServerServerResponseItem *sr_item = new RsFriendServerServerResponseItem; + RsFriendServerServerResponseItem sr_item; std::map friends; - sr_item->nonce = pi->second.last_nonce; - sr_item->friend_invites = computeListOfFriendInvites(item->n_requested_friends,pi->first,friends); - sr_item->PeerId(item->PeerId()); + sr_item.nonce = pi->second.last_nonce; + sr_item.friend_invites = computeListOfFriendInvites(item->n_requested_friends,pi->first,friends); + sr_item.PeerId(item->PeerId()); // Update the have_added_as_friend for the list of each peer. We do that before sending because sending destroys // the item. @@ -100,10 +102,29 @@ void FriendServer::handleClientPublish(const RsFriendServerClientPublishItem *it // Now encrypt the item with the public PGP key of the destination. This prevents the wrong person to request for // someone else's data. -#warning TODO + RsFriendServerEncryptedServerResponseItem *encrypted_response_item = new RsFriendServerEncryptedServerResponseItem; + uint32_t serialized_clear_size = FsSerializer().size(&sr_item); + RsTemporaryMemory serialized_clear_mem(serialized_clear_size); + FsSerializer().serialise(&sr_item,serialized_clear_mem,&serialized_clear_size); + + uint32_t encrypted_mem_size = serialized_clear_size+1000; // leave some extra space + RsTemporaryMemory encrypted_mem(encrypted_mem_size); + + if(!mPgpHandler->encryptDataBin(PGPHandler::pgpIdFromFingerprint(pi->second.pgp_fingerprint), + serialized_clear_mem,serialized_clear_size, + encrypted_mem,&encrypted_mem_size)) + { + RsErr() << "Cannot encrypt item for PGP Id/FPR " << pi->second.pgp_fingerprint << ". Something went wrong." ; + return; + } + encrypted_response_item->PeerId(item->PeerId()); + encrypted_response_item->bin_len = encrypted_mem_size; + encrypted_response_item->bin_data = malloc(encrypted_mem_size); + + memcpy(encrypted_response_item->bin_data,encrypted_mem,encrypted_mem_size); // Send the item. - mni->SendItem(sr_item); + mni->SendItem(encrypted_response_item); // Update the list of closest peers for all peers currently in the database. @@ -349,8 +370,6 @@ void FriendServer::run() void FriendServer::autoWash() { rstime_t now = time(nullptr); - RsDbg() << "autoWash..." ; - std::list to_remove; for(std::map::iterator it(mCurrentClientPeers.begin());it!=mCurrentClientPeers.end();++it) @@ -380,32 +399,68 @@ void FriendServer::updateClosestPeers(const RsPeerId& pid,const RsPgpFingerprint } } -void FriendServer::debugPrint() +Sha1CheckSum FriendServer::computeDataHash() { - RsDbg() << "========== FriendServer statistics ============"; - RsDbg() << " Base directory: "<< mBaseDirectory; - RsDbg() << " Random peer bias: "<< mRandomPeerBias; - RsDbg() << " Network interface: "; - RsDbg() << " Max peers in n-closest list: " << MAXIMUM_PEERS_TO_REQUEST; - RsDbg() << " Current active peers: " << mCurrentClientPeers.size() ; + librs::crypto::HashStream s(librs::crypto::HashStream::SHA1); - rstime_t now = time(nullptr); - - for(const auto& it:mCurrentClientPeers) + for(auto p(mCurrentClientPeers.begin());p!=mCurrentClientPeers.end();++p) { - RsDbg() << " " << it.first << ": nonce=" << std::hex << it.second.last_nonce << std::dec << " fpr: " << it.second.pgp_fingerprint << ", last contact: " << now - it.second.last_connection_TS << " secs ago."; - RsDbg() << " Closest peers:" ; + s << p->first; - for(const auto& pit:it.second.closest_peers) - RsDbg() << " " << pit.second << " distance=" << pit.first ; + const auto& inf(p->second); - RsDbg() << " Have added this peer:" ; + s << inf.pgp_fingerprint; + s << inf.short_certificate; + s << (uint64_t)inf.last_connection_TS; + s << inf.last_nonce; - for(const auto& pit:it.second.have_added_this_peer) - RsDbg() << " " << pit.second << " distance=" << pit.first ; + for(auto d(inf.closest_peers.begin());d!=inf.closest_peers.end();++d) + { + s << d->first ; + s << d->second; + } + for(auto d(inf.have_added_this_peer.begin());d!=inf.have_added_this_peer.end();++d) + { + s << d->first ; + s << d->second; + } } + return s.hash(); +} +void FriendServer::debugPrint(bool force) +{ + auto h = computeDataHash(); - RsDbg() << "==============================================="; + if((h != mCurrentDataHash) || force) + { + RsDbg() << "========== FriendServer statistics ============"; + RsDbg() << " Base directory: "<< mBaseDirectory; + RsDbg() << " Random peer bias: "<< mRandomPeerBias; + RsDbg() << " Current hash: "<< h; + RsDbg() << " Network interface: "; + RsDbg() << " Max peers in n-closest list: " << MAXIMUM_PEERS_TO_REQUEST; + RsDbg() << " Current active peers: " << mCurrentClientPeers.size() ; + + rstime_t now = time(nullptr); + + for(const auto& it:mCurrentClientPeers) + { + RsDbg() << " " << it.first << ": nonce=" << std::hex << it.second.last_nonce << std::dec << " fpr: " << it.second.pgp_fingerprint << ", last contact: " << now - it.second.last_connection_TS << " secs ago."; + RsDbg() << " Closest peers:" ; + + for(const auto& pit:it.second.closest_peers) + RsDbg() << " " << pit.second << " distance=" << pit.first ; + + RsDbg() << " Have added this peer:" ; + + for(const auto& pit:it.second.have_added_this_peer) + RsDbg() << " " << pit.second << " distance=" << pit.first ; + } + + RsDbg() << "==============================================="; + + mCurrentDataHash = h; + } } diff --git a/retroshare-friendserver/src/friendserver.h b/retroshare-friendserver/src/friendserver.h index 202f6a1e0..4f46bebdc 100644 --- a/retroshare-friendserver/src/friendserver.h +++ b/retroshare-friendserver/src/friendserver.h @@ -75,7 +75,8 @@ private: PeerInfo::PeerDistance computePeerDistance(const RsPgpFingerprint &p1, const RsPgpFingerprint &p2); void autoWash(); - void debugPrint(); + void debugPrint(bool force); + Sha1CheckSum computeDataHash(); // Local members @@ -88,4 +89,6 @@ private: std::map mCurrentClientPeers; std::string mListeningAddress; uint16_t mListeningPort; + + Sha1CheckSum mCurrentDataHash; }; diff --git a/retroshare-gui/src/gui/settings/ServerPage.ui b/retroshare-gui/src/gui/settings/ServerPage.ui index 6b78b988c..60abc5fd8 100755 --- a/retroshare-gui/src/gui/settings/ServerPage.ui +++ b/retroshare-gui/src/gui/settings/ServerPage.ui @@ -6,7 +6,7 @@ 0 0 - 726 + 738 579 From eefbd8a71086d07827a3fd8797f90ea14e5461b3 Mon Sep 17 00:00:00 2001 From: csoler Date: Sun, 16 Jan 2022 21:17:10 +0100 Subject: [PATCH 005/503] fixed initing of profile passphrase for friend server manager --- libretroshare | 2 +- .../src/gui/FileTransfer/SearchDialog.h | 4 +- .../src/gui/FriendServerControl.cpp | 41 +++++-- retroshare-gui/src/gui/FriendServerControl.h | 4 +- retroshare-gui/src/gui/FriendServerControl.ui | 112 ++++++++++++------ retroshare-gui/src/gui/StartDialog.cpp | 2 +- 6 files changed, 107 insertions(+), 58 deletions(-) diff --git a/libretroshare b/libretroshare index 89b4d9c33..f03008485 160000 --- a/libretroshare +++ b/libretroshare @@ -1 +1 @@ -Subproject commit 89b4d9c3352c02630cd555918515b1412b3264ff +Subproject commit f0300848539b3decd7034e5c221eed33c1c784bc diff --git a/retroshare-gui/src/gui/FileTransfer/SearchDialog.h b/retroshare-gui/src/gui/FileTransfer/SearchDialog.h index 55db103ca..25925c36d 100644 --- a/retroshare-gui/src/gui/FileTransfer/SearchDialog.h +++ b/retroshare-gui/src/gui/FileTransfer/SearchDialog.h @@ -21,9 +21,9 @@ #ifndef _SEARCHDIALOG_H #define _SEARCHDIALOG_H -#include +#include "retroshare/rstypes.h" #include "ui_SearchDialog.h" -#include +#include "retroshare-gui/mainpage.h" class AdvancedSearchDialog; class RSTreeWidgetItemCompareRole; diff --git a/retroshare-gui/src/gui/FriendServerControl.cpp b/retroshare-gui/src/gui/FriendServerControl.cpp index c946521e6..3cc029ecd 100644 --- a/retroshare-gui/src/gui/FriendServerControl.cpp +++ b/retroshare-gui/src/gui/FriendServerControl.cpp @@ -20,12 +20,14 @@ #include #include +#include #include #include "retroshare/rsfriendserver.h" #include "retroshare/rstor.h" #include "util/qtthreadsutils.h" +#include "util/misc.h" #include "gui/common/FilesDefs.h" #include "FriendServerControl.h" @@ -37,7 +39,7 @@ /** Constructor */ FriendServerControl::FriendServerControl(QWidget *parent) - : QWidget(parent) + : MainPage(parent) { /* Invoke the Qt Designer generated object setup routine */ setupUi(this); @@ -48,6 +50,22 @@ FriendServerControl::FriendServerControl(QWidget *parent) return; } + int H = QFontMetricsF(torServerAddress_LE->font()).height(); + + QString help_str = tr("\ +

  Friend Server

\ +

This configuration panel allows you to specify the onion address of a \ + friend server. Retroshare will talk to that server anonymously through Tor \ + and use it to acquire a fixed number of friends.

\ +

The friend server will continue supplying new friends until that number is reached \ + in particular if you add your own friends manually, the friend server may become useless \ + and you will save bandwidth disabling it. When disabling it, you will keep existing friends.

\ +

The friend server only knows your peer ID and profile public key. It doesn't know your IP address.

\ + " + ).arg(QString::number(2*H), QString::number(2*H)) ; + + registerHelpButton(helpButton,help_str,"Friend Server") ; + mConnectionCheckTimer = new QTimer; // init values @@ -69,18 +87,6 @@ FriendServerControl::FriendServerControl(QWidget *parent) serverStatusCheckResult_LB->setMovie(mCheckingServerMovie); updateFriendServerStatusIcon(false); - updateTorProxyInfo(); -} - -void FriendServerControl::updateTorProxyInfo() -{ - std::string friend_proxy_address; - uint16_t friend_proxy_port; - - RsTor::getProxyServerInfo(friend_proxy_address,friend_proxy_port); - - torProxyPort_SB->setValue(friend_proxy_port); - torProxyAddress_LE->setText(QString::fromStdString(friend_proxy_address)); } FriendServerControl::~FriendServerControl() @@ -92,7 +98,16 @@ FriendServerControl::~FriendServerControl() void FriendServerControl::onOnOffClick(bool b) { if(b) + { + if(passphrase_LE->text().isNull()) + { + QMessageBox::critical(nullptr,tr("Missing profile passphrase."),tr("Your profile passphrase is missing. Please enter is in the field below before enabling the friend server.")); + whileBlocking(friendServerOnOff_CB)->setCheckState(Qt::Unchecked); + return; + } + rsFriendServer->setProfilePassphrase(passphrase_LE->text().toStdString()); rsFriendServer->startServer(); + } else rsFriendServer->stopServer(); } diff --git a/retroshare-gui/src/gui/FriendServerControl.h b/retroshare-gui/src/gui/FriendServerControl.h index 7217bcd5d..465c5d1ec 100644 --- a/retroshare-gui/src/gui/FriendServerControl.h +++ b/retroshare-gui/src/gui/FriendServerControl.h @@ -22,9 +22,10 @@ #include +#include "retroshare-gui/mainpage.h" #include "ui_FriendServerControl.h" -class FriendServerControl : public QWidget, public Ui::FriendServerControl +class FriendServerControl : public MainPage, public Ui::FriendServerControl { Q_OBJECT @@ -37,7 +38,6 @@ protected slots: void onOnionAddressEdit(const QString&); void onOnionPortEdit(int); void onNbFriendsToRequestsChanged(int n); - void updateTorProxyInfo(); void checkServerAddress(); private: diff --git a/retroshare-gui/src/gui/FriendServerControl.ui b/retroshare-gui/src/gui/FriendServerControl.ui index 73a5625d6..2ac69969b 100644 --- a/retroshare-gui/src/gui/FriendServerControl.ui +++ b/retroshare-gui/src/gui/FriendServerControl.ui @@ -12,11 +12,48 @@ - - - On/Off - - + + + + + On/Off + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Qt::NoFocus + + + + :/icons/help_64.png:/icons/help_64.png + + + true + + + false + + + true + + + + @@ -72,13 +109,22 @@ 0 + + <html><head/><body><p>Enter here the onion address of the Friend Server that was given to you. The address will be automatically checked after you enter it and a green bullet will appear if the server is online.</p></body></html> + .onion + + Onion address of the friend server + + + <html><head/><body><p>Communication port of the server. You usually get a server address as somestring.onion:port. The port is the number right after &quot;:&quot;</p></body></html> + 1025 @@ -107,49 +153,35 @@ - + - + - Tor proxy address: + Retroshare passphrase: - - - 127.0.0.1 + + + + 0 + 0 + + + + <html><head/><body><p>Your Retroshare login passphrase is needed to ensure the security of data exchange with the friend server.</p></body></html> + + + QLineEdit::Password + + + Your retroshare passphrase - - - 1025 - - - 65535 - - - 9050 - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - + Qt::Horizontal @@ -178,6 +210,8 @@ - + + + diff --git a/retroshare-gui/src/gui/StartDialog.cpp b/retroshare-gui/src/gui/StartDialog.cpp index 4a07d43c8..d6f9f707d 100644 --- a/retroshare-gui/src/gui/StartDialog.cpp +++ b/retroshare-gui/src/gui/StartDialog.cpp @@ -123,7 +123,7 @@ void StartDialog::loadPerson() rsNotify->cachePgpPassphrase(ui.password_input->text().toUtf8().constData()) ; rsNotify->setDisableAskPassword(true); - bool res = Rshare::loadCertificate(accountId, ui.autologin_checkbox->isChecked()) ; + bool res = Rshare::loadCertificate(accountId, ui.autologin_checkbox->isChecked()) ; rsNotify->setDisableAskPassword(false); rsNotify->clearPgpPassphrase(); From e7b822d1cb1679ab34afdb96120fca5a021319bf Mon Sep 17 00:00:00 2001 From: csoler Date: Mon, 17 Jan 2022 23:01:07 +0100 Subject: [PATCH 006/503] fixed bug in friend server auto wash --- libretroshare | 2 +- retroshare-friendserver/src/friendserver.cc | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/libretroshare b/libretroshare index f03008485..47548627a 160000 --- a/libretroshare +++ b/libretroshare @@ -1 +1 @@ -Subproject commit f0300848539b3decd7034e5c221eed33c1c784bc +Subproject commit 47548627adddc444a5d36368bd7a5f5baeed17ba diff --git a/retroshare-friendserver/src/friendserver.cc b/retroshare-friendserver/src/friendserver.cc index 577730e73..523a76640 100644 --- a/retroshare-friendserver/src/friendserver.cc +++ b/retroshare-friendserver/src/friendserver.cc @@ -323,7 +323,7 @@ void FriendServer::removePeer(const RsPeerId& peer_id) auto tmp(fit); ++tmp; - it.second.closest_peers.erase(fit); + it.second.have_added_this_peer.erase(fit); fit=tmp; } else @@ -381,8 +381,6 @@ void FriendServer::autoWash() for(auto peer_id:to_remove) removePeer(peer_id); - - RsDbg() << "done." ; } void FriendServer::updateClosestPeers(const RsPeerId& pid,const RsPgpFingerprint& fpr) From 57cee64966009cf8f1e3f7081b4a7bce7ae9c9c5 Mon Sep 17 00:00:00 2001 From: defnax Date: Fri, 21 Jan 2022 11:35:08 +0100 Subject: [PATCH 007/503] Fix default fonts & font metrics for Shared Files Tree --- .../gui/FileTransfer/SharedFilesDialog.cpp | 4 ++ .../src/gui/FileTransfer/SharedFilesDialog.ui | 5 +++ retroshare-gui/src/gui/RemoteDirModel.cpp | 2 +- retroshare-gui/src/gui/icons.qrc | 1 + .../src/gui/icons/folder-account.svg | 38 ++++++++++++++++++ retroshare-gui/src/gui/icons/folder-open.svg | 38 ++++++++++++++++++ retroshare-gui/src/gui/icons/folder.png | Bin 903 -> 1036 bytes retroshare-gui/src/gui/icons/folder.svg | 38 ++++++++++++++++++ retroshare-gui/src/gui/icons/folderopen.png | Bin 1704 -> 1627 bytes 9 files changed, 125 insertions(+), 1 deletion(-) create mode 100644 retroshare-gui/src/gui/icons/folder-account.svg create mode 100644 retroshare-gui/src/gui/icons/folder-open.svg create mode 100644 retroshare-gui/src/gui/icons/folder.svg diff --git a/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp b/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp index 61e01ab24..9ca80dea4 100644 --- a/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp +++ b/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp @@ -231,6 +231,10 @@ SharedFilesDialog::SharedFilesDialog(bool remote_mode, QWidget *parent) /* Set Multi Selection */ ui.dirTreeView->setSelectionMode(QAbstractItemView::ExtendedSelection); + QFontMetricsF fontMetrics(ui.dirTreeView->font()); + int iconHeight = fontMetrics.height() * 1.5; + ui.dirTreeView->setIconSize(QSize(iconHeight, iconHeight)); + /* Hide platform specific features */ copylinkAct = new QAction(QIcon(IMAGE_COPYLINK), tr( "Copy retroshare Links to Clipboard" ), this ); connect( copylinkAct , SIGNAL( triggered() ), this, SLOT( copyLink() ) ); diff --git a/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.ui b/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.ui index 6915c1c44..4207aa042 100644 --- a/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.ui +++ b/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.ui @@ -352,6 +352,11 @@ border-image: url(:/images/closepressed.png) 0 + + + 11 + + Qt::CustomContextMenu diff --git a/retroshare-gui/src/gui/RemoteDirModel.cpp b/retroshare-gui/src/gui/RemoteDirModel.cpp index 0cfcc9772..a6f31a428 100644 --- a/retroshare-gui/src/gui/RemoteDirModel.cpp +++ b/retroshare-gui/src/gui/RemoteDirModel.cpp @@ -136,7 +136,7 @@ void RetroshareDirModel::treeStyle() { categoryIcon.addPixmap(FilesDefs::getPixmapFromQtResourcePath(":/icons/folder.png"), QIcon::Normal, QIcon::Off); categoryIcon.addPixmap(FilesDefs::getPixmapFromQtResourcePath(":/icons/folderopen.png"), QIcon::Normal, QIcon::On); - peerIcon = FilesDefs::getIconFromQtResourcePath(":/images/user/identity16.png"); + peerIcon = FilesDefs::getIconFromQtResourcePath(":/icons/folder-account.svg"); } void TreeStyle_RDM::update() { diff --git a/retroshare-gui/src/gui/icons.qrc b/retroshare-gui/src/gui/icons.qrc index 48071b201..d28594130 100644 --- a/retroshare-gui/src/gui/icons.qrc +++ b/retroshare-gui/src/gui/icons.qrc @@ -340,5 +340,6 @@ icons/notification.png icons/wire.png icons/wire-circle.png + icons/folder-account.svg diff --git a/retroshare-gui/src/gui/icons/folder-account.svg b/retroshare-gui/src/gui/icons/folder-account.svg new file mode 100644 index 000000000..1247cb476 --- /dev/null +++ b/retroshare-gui/src/gui/icons/folder-account.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/retroshare-gui/src/gui/icons/folder-open.svg b/retroshare-gui/src/gui/icons/folder-open.svg new file mode 100644 index 000000000..2cd0d4905 --- /dev/null +++ b/retroshare-gui/src/gui/icons/folder-open.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/retroshare-gui/src/gui/icons/folder.png b/retroshare-gui/src/gui/icons/folder.png index 01f9426283672e5f1b6e79ad74104caed3781c65..50b84dc5678adb0c613c4f96ad0ac1e6892982a1 100644 GIT binary patch literal 1036 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H1|$#LC7uRSoCO|{#S9F7dqJ47I4eU0C@5Lt z8c`CQpH@mmtT}V`<;yx0|WC+PZ!6KiaBp@?eCUJl{xXdzS|VJM-~3@_x_C*c`q&{S*Pa_GN8MJ7C@tFEo-kAG8(VL> zpzh(F-d)1dopZVtHG1^jeV)B=0i)sPGiTrQ|J)b<)rLQQ#`kl!#&cMJPC^0=t>RfX zmwvAdyi@-DV#d#l0wwEHPH%k^J&|>{$Zqy?=Ze}~H|}Pz+gDRvw)k_@riDoFfE;irjWFP?c%nmJdGZSi)Hs27*Q z`+T|SB}*1YN~NYP@BX*J{I%sX-&?{8DR=AyEzubPTMRI?-A+1 zpevkmep!q^!`oty_wjmv^($E}*e$%QDW_9y$hak7%cuEoIT!RceVej(3d0;_hUXjy zESU=W1_5(j34`OVYfltb_;Y;RzUlfjK84K{TW?v+*mmaArSGds7_2`Yo3_MW%eN(S z*S^oc@8zG4i}}Y>@ajXUr}!$LmX*Ik*58T$)jq3?gXfyR9Q)hUI@l*B#m!HLx>ilBckNq{`w3@j~FVdQ&MBb@05pWn0RR91 literal 903 zcmeAS@N?(olHy`uVBq!ia0vp^4Is?H3?#oinD`S&v7|ftIx;Y9?C1WI$O_~uBzpw; zGB8xB0oAoIF#H0kf5E^|YQVtoDuIE)Y6b&?c)^@qfi^&iV*x%Pu0WdM|9^)0SJ`G? zW}SVVb>=mOnRi*|US^(km3cN4F)Xr&%VYm2c!%r z2qJ-6W?ci44AU<{v@p-U0%R~uzs?F)#xVUR^PDR{#XzG#;)^aqECOm_ntg>~=4FuJ z>>EIm1*GvB$i~?hLF8PZ;1%XMR~e=PHG<4!o^y?1Hds9agM^yNE1*XlN`m}?85kw> zjE(qB=Dzxt#<%oep6pf5Gx<|gel>pTim(;?dnEFdg5gu?<=vORaDRN)P^;3 z^D>us7tZII{bH85%<`D`K(iQ=yxm;OkH}&M2EHR8%s5q>PZ}u5UgGKN z%Kn5&jMtE-v!UQFP>+SDi(^Q|t+%&t1|2exXnUxjq_j2buK215@guc|MbG|?pK5!F zS{aH5my3_WypDBi0=jeM+Z+fr4 z{>J(1iYLP6e)B#U6>(tKYKqp-=}zm0Xkxq!^40j0|)QjC75RLJWlpinR(g8$%zH2dih1^v)|cB0TnTL My85}Sb4q9e02M7>=>Px# diff --git a/retroshare-gui/src/gui/icons/folder.svg b/retroshare-gui/src/gui/icons/folder.svg new file mode 100644 index 000000000..4989f5d1c --- /dev/null +++ b/retroshare-gui/src/gui/icons/folder.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/retroshare-gui/src/gui/icons/folderopen.png b/retroshare-gui/src/gui/icons/folderopen.png index 544e5f0b74e8298701404b43ed64cf356abde0c2..9f83b25617c391750c5b7bda6e677d52a649d07a 100644 GIT binary patch delta 1587 zcmZ9Me>Bs37{@=~OYfK_FH-soZ<~LEIlkfMshlP?T#a-nt zx6~~^R!Cd6lypnwM`;mO?#&RJRdliKu0Oixp8K5hocHVb3CRG!|L)g@G7?xu#cT8Okqu5eTNw5^l)CHU@tf=)PdNaY#V@PE)~6UsbwG+!UzsUN5IVVG?#uN4 z=EO~)WB621dNm(9s+ePZ%(G`-uu*xjf~6;!Fzjyu8kul z=2ozReuKAYGjgadD_aV(%S6^eKA@vIm%Ddzp7qZD%U@^?&UTv_ zf@ih7K9(pT35YY_8O-k9=+*cnmJENom=1)f170q}tFVgY_J0|=VtkdPQVt88SAamQEgA0spA;O<;^NWW zRRi~{+G4o|=x$!LP7Yi4C^R2pg-00_1jIVDgIi94n=dqB(A~Y647gu=iD9yH8eXJd zk1(9))6i_62iXk<6UqHt1w{yfB_DEZu+j!*hubdhTycr1C5Q&`hb-;MV0})HUz%-6IW~4Sf-`M2M+UFpIOm7A`aC2AfQkWTYo%uf zg`eMGs%7GRODf#V$--RIk%5_~es*qp)HV5f8#S}yQG zt#-A(`zpsVs}r+!ZqGwNk&G$BME?0Q)_Dt5a_LA6*CdmoL#=7Q0#6gGR1h07$W>+0 zVrsi52*H?^A5U<9Uh}7)!{R`RHsCtWTu`hOxJ)<;VwjByM*= zO{++yYZ;~v4`j5c&?(c9W|twfwkT9uQ} z?4E{2XJI7svK>6lp|hy&OAts=-}yBVj+#hS`*ntbqGGxXN-MuHpIK?&_OL?n{ApOC z12{$JsLXLYlhm%a`4!ylJ#)XJ+l|;wdd^lcC6LUDMTJLQ+I_ z+w0 z3X7#xsxAfw7xA#d#)MbFP?DT_)5ypOZ<(Lz(pg&g6YTcWzG|~-{^)6~J2=sZ?aJ!Y zT5RslK{BIl{ya?ErJt7&zOJC15{#DA6xyyKbQ}qEo(-;Y%)VQWcBr^vjzD=djA6vn#*EKVyzE;O!U%o5GQ|7+?Izko*DwZ2%Zs{b_Yxk$L|BOGez% literal 1704 zcmZ`&dpML?7(esP_c7x#W!#fXk=)Iot*nY7gB^rg+7jy;ikPsmnvrfQB)QCtNU}&` zySfxBEb%1FjBC5H$wq~!C1THqcAx!Y&vVXs&-=c=_xE1D=R51{Xe%wTN&)~NZO5>7 zfs&0M5)s~00~cqYKm)9pRsfVIOU`*?P}lHbxG(`YrVVik0DQvne*$on2Ed3H0Opwh zD2DMXcUb^HsB!+r%?1KMR;w6Sh-M2=t_Wmxpj-iwFC_Bd7J%Xf!0RM(MMRzmWOqX& z;0w`3FJRX!!BCzM;Xwc%f^Y>0UjV@vR{-++paptCRuAsQNgx1+fxLEPDFswvYHsHu z0B43&%PyEbYmt^O06D)SJRz3dxyaUva79?Q0H<1HLwR^c$gorxPPJI)(gPL=*bDGp zDiZQ6B1Ish2fkql?3xIBgdqzHOCflcjCQ=`RM-N}EQSvO4_w}S(UJq>~U=e_p zWo7|%VgC#SlB9Pmm&b(@76M*3%nPnS<1!oU7i4r1Ap>6ImlXI^;pm`>Gh-0L?OJ+6 z6%^wz`02WTS#1l&C6Z_fW28lG@BpVnN2?nb(tjt}&i`F4B6Pu@@;hIC|{UR+Ww& zNiO4r{1ib(DM zRiKvpfv#;o?Jc%XcP9eNBYf{*YYom|stl-*!x$bB08r}jL%6I@QGrHrmL1bZ{3W6w zP1mhU$maq;l(w_Ba*OVL%N;#HwURp}?xNXhBJF@0*chC%zt&-IDrt7t<+h|>YR~2R z(v;_+k>v(AW={Jw89#{d+Q^TZrH%cxd6qLgll@2KYBpVUd1Wu?Qii!E=0n93^1=J7 zy+jqe2lcxq^NL&o%e;M#JhDGA!t|f!cM0^U-62W0O2i$LJqR{pM+;^W3(6Ye*{NzF zch~0Tic=h7pN>A<(=jlqXi9OHE8{mF>U%3cP+ipHPf!af_h859g(wVM-NVDCDOFfx zui-QQ+qI?7MQB~j$9KVF?hoH2yH`q5R$J7E(MhaG!fPt$v2EF$JaQ$y<3PC<=UU6R zRWV6I9md$iqbKpm`gzZZxU6E%9<5oN~G`6p-^YfW*07 zq2gt|A!o9kUQwG{*j6$B`6M%--%x&&@rWeYI;`l2WYnXBYtGdAWm(qfRB6P<*=P^Q z4xu}}Slv1+tMs1Ood-@zSm{|kYW+A*OH)Z^w|XJLmC6~-N6}FGEs~;n4T|hnz#;&N(NwY}mYv_@rW?m%a*Z-iPm0~8r zO7!{gqtv!gqyWo;|tXf_ksnPSgm!A;*Ol%}t|g(Ky^Zg%@uUZlF=E%}zl2~JMnPHOwVe!@K< zlc_nQOUl`pf~c;H8`sxOIYnwsjoqWRgESpT_$XbgZak%O=X{a6TY6fWVZF|Uq)HhS8o-M+tI?L1qzGU>}=&JYWuE%-N0y-MM~vW{ir z&hqtU`I-BK`#}LrXeKm6nu(!_i5uP2+-$SC8C{=7GpEt~*qHKv0uF`x9`yg={{!Tn zKfDeDl<^F%q5iBW?{Gg56%}Q4@NjU1k9U}#QD}Go@14ae2m*FCj@G5yz2g4{#8uDe From dadf59ac04c4192c85611b8e784761bb3014689c Mon Sep 17 00:00:00 2001 From: defnax Date: Thu, 27 Jan 2022 22:09:47 +0100 Subject: [PATCH 008/503] Added to fix font metrics for messages tree --- retroshare-gui/src/gui/msgs/MessagesDialog.cpp | 3 +++ retroshare-gui/src/gui/msgs/MessagesDialog.ui | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/retroshare-gui/src/gui/msgs/MessagesDialog.cpp b/retroshare-gui/src/gui/msgs/MessagesDialog.cpp index d39baf6d5..b2beba606 100644 --- a/retroshare-gui/src/gui/msgs/MessagesDialog.cpp +++ b/retroshare-gui/src/gui/msgs/MessagesDialog.cpp @@ -228,6 +228,9 @@ MessagesDialog::MessagesDialog(QWidget *parent) /* Set header sizes for the fixed columns and resize modes, must be set after processSettings */ msgwheader->setStretchLastSection(true); + QFontMetricsF fontMetrics(ui.messageTreeWidget->font()); + int iconHeight = fontMetrics.height() * 1.4; + ui.messageTreeWidget->setIconSize(QSize(iconHeight, iconHeight)); // fill folder list updateMessageSummaryList(); diff --git a/retroshare-gui/src/gui/msgs/MessagesDialog.ui b/retroshare-gui/src/gui/msgs/MessagesDialog.ui index e0bf5c9a0..5f1d83eca 100644 --- a/retroshare-gui/src/gui/msgs/MessagesDialog.ui +++ b/retroshare-gui/src/gui/msgs/MessagesDialog.ui @@ -375,6 +375,11 @@ Qt::Vertical + + + 10 + + Qt::CustomContextMenu From 8b5c4bc7c52c676d11fabe425f5b00a194d7e4f3 Mon Sep 17 00:00:00 2001 From: defnax Date: Fri, 28 Jan 2022 20:56:06 +0100 Subject: [PATCH 009/503] fixed the notification icon --- retroshare-gui/src/gui/common/FilesDefs.cpp | 2 +- .../src/gui/gxs/GxsIdTreeWidgetItem.cpp | 2 +- retroshare-gui/src/gui/icons.qrc | 1 + retroshare-gui/src/gui/icons/notification.svg | 38 +++++++++++++++++++ 4 files changed, 41 insertions(+), 2 deletions(-) create mode 100644 retroshare-gui/src/gui/icons/notification.svg diff --git a/retroshare-gui/src/gui/common/FilesDefs.cpp b/retroshare-gui/src/gui/common/FilesDefs.cpp index b7f0192a4..4d9f9c903 100644 --- a/retroshare-gui/src/gui/common/FilesDefs.cpp +++ b/retroshare-gui/src/gui/common/FilesDefs.cpp @@ -156,7 +156,7 @@ QIcon FilesDefs::getIconFromGxsIdCache(const RsGxsId& id,const QIcon& setIcon, b if (setIcon.isNull()) { if (id.isNull()) - return getIconFromQtResourcePath(":/icons/notification.png"); + return getIconFromQtResourcePath(":/icons/notification.svg"); auto item = mIconCache.find(id); diff --git a/retroshare-gui/src/gui/gxs/GxsIdTreeWidgetItem.cpp b/retroshare-gui/src/gui/gxs/GxsIdTreeWidgetItem.cpp index 4c1715a39..97f128447 100644 --- a/retroshare-gui/src/gui/gxs/GxsIdTreeWidgetItem.cpp +++ b/retroshare-gui/src/gui/gxs/GxsIdTreeWidgetItem.cpp @@ -199,7 +199,7 @@ void GxsIdTreeItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem if(id.isNull()) { if (ownOption.icon.isNull()) - ownOption.icon = FilesDefs::getIconFromQtResourcePath(":/icons/notification.png"); + ownOption.icon = FilesDefs::getIconFromQtResourcePath(":/icons/notification.svg"); } else { diff --git a/retroshare-gui/src/gui/icons.qrc b/retroshare-gui/src/gui/icons.qrc index d28594130..89c0f83d9 100644 --- a/retroshare-gui/src/gui/icons.qrc +++ b/retroshare-gui/src/gui/icons.qrc @@ -341,5 +341,6 @@ icons/wire.png icons/wire-circle.png icons/folder-account.svg + icons/notification.svg diff --git a/retroshare-gui/src/gui/icons/notification.svg b/retroshare-gui/src/gui/icons/notification.svg new file mode 100644 index 000000000..c0cb95ba0 --- /dev/null +++ b/retroshare-gui/src/gui/icons/notification.svg @@ -0,0 +1,38 @@ + + + + + + From 00f82602d2d71e86e3d5654bf07537a6f5fe199c Mon Sep 17 00:00:00 2001 From: hunbernd Date: Mon, 24 Jan 2022 22:28:01 +0100 Subject: [PATCH 010/503] Added support for other msys2 environments --- build_scripts/Windows-msys2/build/build.bat | 1 + .../Windows-msys2/build/env-base.bat | 76 ++++++++++++++----- build_scripts/Windows-msys2/build/env.bat | 8 +- 3 files changed, 60 insertions(+), 25 deletions(-) diff --git a/build_scripts/Windows-msys2/build/build.bat b/build_scripts/Windows-msys2/build/build.bat index 4d366f28c..c9ad27f9f 100644 --- a/build_scripts/Windows-msys2/build/build.bat +++ b/build_scripts/Windows-msys2/build/build.bat @@ -66,6 +66,7 @@ echo %RS_QMAKE_CONFIG% > buildinfo.txt echo %RsBuildConfig% >> buildinfo.txt echo %RsArchitecture% >> buildinfo.txt echo Qt %QtVersion% >> buildinfo.txt +echo %RsToolchain% >> buildinfo.txt echo %RsCompiler% >> buildinfo.txt call "%ToolsPath%\msys2-path.bat" "%SourcePath%" MSYS2SourcePath diff --git a/build_scripts/Windows-msys2/build/env-base.bat b/build_scripts/Windows-msys2/build/env-base.bat index 9d9fa5379..883884262 100644 --- a/build_scripts/Windows-msys2/build/env-base.bat +++ b/build_scripts/Windows-msys2/build/env-base.bat @@ -1,6 +1,4 @@ :: Process commandline parameter -set Param32=0 -set Param64=0 set ParamRelease=0 set ParamDebug=0 set ParamAutologin=0 @@ -12,14 +10,36 @@ set ParamIndexing=0 set ParamNoupdate=0 set CoreCount=%NUMBER_OF_PROCESSORS% set RS_QMAKE_CONFIG= +set RsToolchain= +set tcc=0 :parameter_loop if "%~1" NEQ "" ( for /f "tokens=1,2 delims==" %%a in ("%~1") do ( if "%%~a"=="32" ( - set Param32=1 + set RsToolchain=mingw32 + set /A tcc=tcc+1 ) else if "%%~a"=="64" ( - set Param64=1 + set RsToolchain=mingw64 + set /A tcc=tcc+1 + ) else if "%%~a"=="mingw32" ( + set RsToolchain=mingw32 + set /A tcc=tcc+1 + ) else if "%%~a"=="mingw64" ( + set RsToolchain=mingw64 + set /A tcc=tcc+1 + ) else if "%%~a"=="ucrt64" ( + set RsToolchain=ucrt64 + set /A tcc=tcc+1 + ) else if "%%~a"=="clang64" ( + set RsToolchain=clang64 + set /A tcc=tcc+1 + ) else if "%%~a"=="clang32" ( + set RsToolchain=clang32 + set /A tcc=tcc+1 + ) else if "%%~a"=="clangarm64" ( + set RsToolchain=clangarm64 + set /A tcc=tcc+1 ) else if "%%~a"=="release" ( set ParamRelease=1 ) else if "%%~a"=="debug" ( @@ -52,22 +72,37 @@ if "%~1" NEQ "" ( goto parameter_loop ) -if "%Param32%"=="1" ( - if "%Param64%"=="1" ( - echo. - echo 32-bit or 64-bit? - goto :usage - ) - - set RsBit=32 - set RsArchitecture=x86 - set RsMSYS2Architecture=i686 +if %tcc% NEQ 1 ( + echo Multiple or no toolchain specified + goto :usage ) -if "%Param64%"=="1" ( - set RsBit=64 +if "%RsToolchain%"=="mingw32" ( + set RsArchitecture=x86 + set RsMSYS2Architecture=i686 + set MSYSTEM=MINGW32 +) else if "%RsToolchain%"=="mingw64" ( set RsArchitecture=x64 set RsMSYS2Architecture=x86_64 + set MSYSTEM=MINGW64 +) else if "%RsToolchain%"=="ucrt64" ( + set RsArchitecture=x64 + set RsMSYS2Architecture=ucrt-x86_64 + set MSYSTEM=UCRT64 +) else if "%RsToolchain%"=="clang64" ( + set RsArchitecture=x64 + set RsMSYS2Architecture=clang-x86_64 + set MSYSTEM=CLANG64 + set ParamClang=1 +) else if "%RsToolchain%"=="clang32" ( + set RsArchitecture=x86 + set RsMSYS2Architecture=clang-i686 + set MSYSTEM=CLANG32 + set ParamClang=1 +) else if "%RsToolchain%"=="clangarm64" ( + set RsArchitecture=arm64 + set RsMSYS2Architecture=clang-aarch64 + set MSYSTEM=CLANGARM64 ) if "%ParamClang%"=="1" ( @@ -76,8 +111,6 @@ if "%ParamClang%"=="1" ( set RsCompiler=GCC ) -if "%RsBit%"=="" goto :usage - if "%ParamRelease%"=="1" ( if "%ParamDebug%"=="1" ( echo. @@ -108,10 +141,13 @@ exit /B 0 :usage echo. -echo Usage: 32^|64 release^|debug [autologin plugins webui singlethread clang indexing noupdate] ["CONFIG+=..."] +echo Usage: 32^|64^|other release^|debug [autologin plugins webui singlethread clang indexing noupdate] ["CONFIG+=..."] echo. echo Mandatory parameter -echo 32^|64 32-bit or 64-bit Version +echo 32^|64 32-bit or 64-bit version (same as mingw32 or mingw64) +echo Or you can specify any other toolchain supported by msys2: +echo mingw32^|mingw64^|clang32^|clang64^|ucrt64^|clangarm64 +echo More info: https://www.msys2.org/docs/environments echo release^|debug Build release or debug version echo. echo Optional parameter (need clean when changed) diff --git a/build_scripts/Windows-msys2/build/env.bat b/build_scripts/Windows-msys2/build/env.bat index bfe2afeba..c8cb71ff4 100644 --- a/build_scripts/Windows-msys2/build/env.bat +++ b/build_scripts/Windows-msys2/build/env.bat @@ -2,8 +2,6 @@ call "%~dp0env-base.bat" %* if errorlevel 2 exit /B 2 if errorlevel 1 goto error_env -set MSYSTEM=MINGW%RsBit% - set BuildPath=%EnvRootPath%\builds set DeployPath=%EnvRootPath%\deploy @@ -14,10 +12,10 @@ if not exist "%DeployPath%" mkdir "%DeployPath%" call "%ToolsPath%\get-qt-version.bat" QtVersion if "%QtVersion%"=="" %cecho% error "Cannot get Qt version." & exit /B 1 -set RsMinGWPath=%EnvMSYS2BasePath%\mingw%RsBit% +set RsMinGWPath=%EnvMSYS2BasePath%\%RsToolchain% -set RsBuildPath=%BuildPath%\Qt-%QtVersion%-%RsArchitecture%-%RsCompiler%-%RsBuildConfig% -set RsDeployPath=%DeployPath%\Qt-%QtVersion%%RsType%-%RsArchitecture%-%RsCompiler%-%RsBuildConfig% +set RsBuildPath=%BuildPath%\Qt-%QtVersion%-%RsToolchain%-%RsCompiler%-%RsBuildConfig% +set RsDeployPath=%DeployPath%\Qt-%QtVersion%%RsType%-%RsToolchain%-%RsCompiler%-%RsBuildConfig% set RsPackPath=%DeployPath% set RsArchiveAdd= set RsWebuiPath=%RootPath%\%SourceName%-webui From a3f6d516e793a56da31448884196ef9aee8dc828 Mon Sep 17 00:00:00 2001 From: hunbernd Date: Mon, 31 Jan 2022 01:05:32 +0100 Subject: [PATCH 011/503] Fix webui compilation Copy files, instead of using the symlink. --- build_scripts/Windows-msys2/build/build.bat | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/build_scripts/Windows-msys2/build/build.bat b/build_scripts/Windows-msys2/build/build.bat index c9ad27f9f..972379aad 100644 --- a/build_scripts/Windows-msys2/build/build.bat +++ b/build_scripts/Windows-msys2/build/build.bat @@ -32,6 +32,16 @@ if not "%ParamNoupdate%"=="1" ( if "%ParamIndexing%"=="1" %EnvMSYS2Cmd% "pacman --noconfirm --needed -S mingw-w64-%RsMSYS2Architecture%-xapian-core mingw-w64-%RsMSYS2Architecture%-libvorbis mingw-w64-%RsMSYS2Architecture%-flac mingw-w64-%RsMSYS2Architecture%-taglib" ) +:: Fix webui compilation (TODO: remove when whole RS switched to cmake) +if "%ParamWebui%"=="1" ( + pushd "%SourcePath%" + copy "%SourcePath%\libretroshare\src\jsonapi\jsonapi-generator-doxygen.conf" "%SourcePath%\jsonapi-generator\src\jsonapi-generator-doxygen.conf" %Quite% + copy "%SourcePath%\libretroshare\src\jsonapi\async-method-wrapper-template.cpp.tmpl" "%SourcePath%\jsonapi-generator\src\async-method-wrapper-template.cpp.tmpl" %Quite% + copy "%SourcePath%\libretroshare\src\jsonapi\method-wrapper-template.cpp.tmpl" "%SourcePath%\jsonapi-generator\src\method-wrapper-template.cpp.tmpl" %Quite% + git update-index --assume-unchanged "jsonapi-generator\src\jsonapi-generator-doxygen.conf" "jsonapi-generator\src\async-method-wrapper-template.cpp.tmpl" "jsonapi-generator\src\method-wrapper-template.cpp.tmpl" + popd +) + :: Initialize environment call "%~dp0env.bat" %* if errorlevel 2 exit /B 2 From af0bea49c5efc373e12b7cb72e5532d587e01f72 Mon Sep 17 00:00:00 2001 From: csoler Date: Mon, 31 Jan 2022 15:32:04 +0100 Subject: [PATCH 012/503] fixed using of rs_socket_error() --- libretroshare | 2 +- retroshare-friendserver/src/network.cc | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/libretroshare b/libretroshare index 47548627a..55efaf9c7 160000 --- a/libretroshare +++ b/libretroshare @@ -1 +1 @@ -Subproject commit 47548627adddc444a5d36368bd7a5f5baeed17ba +Subproject commit 55efaf9c730859ef3fc5c6f6049595c1225f9204 diff --git a/retroshare-friendserver/src/network.cc b/retroshare-friendserver/src/network.cc index 3ed5b22a2..a607a89c2 100644 --- a/retroshare-friendserver/src/network.cc +++ b/retroshare-friendserver/src/network.cc @@ -134,7 +134,9 @@ bool FsNetworkInterface::checkForNewConnections() if(clintConnt < 0) { - if(errno == EWOULDBLOCK) + int err = rs_socket_error(); + + if(err == EWOULDBLOCK || err == EAGAIN) ;//RsErr()<< "Incoming connection with nothing to read!" << std::endl; else RsErr()<< "Error when accepting connection." << std::endl; From 1de12129da7cbff670eaf57b48212c861ce72e2c Mon Sep 17 00:00:00 2001 From: hunbernd Date: Mon, 31 Jan 2022 01:47:26 +0100 Subject: [PATCH 013/503] Friendserver support --- build_scripts/Windows-msys2/build/env-base.bat | 10 +++++++++- build_scripts/Windows-msys2/build/pack.bat | 3 +++ .../src/retroshare-friendserver.pro | 1 + retroshare-service/src/retroshare-service.pro | 7 +------ 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/build_scripts/Windows-msys2/build/env-base.bat b/build_scripts/Windows-msys2/build/env-base.bat index 883884262..01a7a8f12 100644 --- a/build_scripts/Windows-msys2/build/env-base.bat +++ b/build_scripts/Windows-msys2/build/env-base.bat @@ -7,6 +7,7 @@ set ParamTor=0 set ParamWebui=0 set ParamClang=0 set ParamIndexing=0 +set ParamFriendserver=0 set ParamNoupdate=0 set CoreCount=%NUMBER_OF_PROCESSORS% set RS_QMAKE_CONFIG= @@ -58,6 +59,8 @@ if "%~1" NEQ "" ( set ParamClang=1 ) else if "%%~a"=="indexing" ( set ParamIndexing=1 + ) else if "%%~a"=="friendserver" ( + set ParamFriendserver=1 ) else if "%%~a"=="noupdate" ( set ParamNoupdate=1 ) else if "%%~a"=="CONFIG+" ( @@ -137,11 +140,15 @@ if "%ParamIndexing%"=="1" ( set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% "CONFIG+=rs_deep_channels_index" "CONFIG+=rs_deep_files_index" "CONFIG+=rs_deep_files_index_ogg" "CONFIG+=rs_deep_files_index_flac" "CONFIG+=rs_deep_files_index_taglib" ) +if "%ParamFriendserver%"=="1" ( + set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% "CONFIG+=rs_efs" +) + exit /B 0 :usage echo. -echo Usage: 32^|64^|other release^|debug [autologin plugins webui singlethread clang indexing noupdate] ["CONFIG+=..."] +echo Usage: 32^|64^|other release^|debug [autologin plugins webui singlethread clang indexing friendserver noupdate] ["CONFIG+=..."] echo. echo Mandatory parameter echo 32^|64 32-bit or 64-bit version (same as mingw32 or mingw64) @@ -157,6 +164,7 @@ echo webui Enable JsonAPI and pack webui files echo singlethread Use only 1 thread for building echo clang Use clang compiler instead of GCC echo indexing Build with deep channel and file indexing support +echo friendserver Enable friendserver support echo noupdate Skip updating the libraries echo "CONFIG+=..." Enable some extra features, you can find the almost complete list in retroshare.pri echo. diff --git a/build_scripts/Windows-msys2/build/pack.bat b/build_scripts/Windows-msys2/build/pack.bat index 4948c1541..ceefd0144 100644 --- a/build_scripts/Windows-msys2/build/pack.bat +++ b/build_scripts/Windows-msys2/build/pack.bat @@ -105,6 +105,9 @@ copy "%RsBuildPath%\retroshare-nogui\src\%RsBuildConfig%\retroshare*-nogui.exe" copy "%RsBuildPath%\retroshare-service\src\%RsBuildConfig%\retroshare*-service.exe" "%RsDeployPath%" %Quite% copy "%RsBuildPath%\supportlibs\cmark\build\src\libcmark.dll" "%RsDeployPath%" %Quite% if exist "%RsBuildPath%\libretroshare\src\lib\retroshare.dll" copy "%RsBuildPath%\libretroshare\src\lib\retroshare.dll" "%RsDeployPath%" %Quite% +if exist "%RsBuildPath%\retroshare-friendserver\src\%RsBuildConfig%\retroshare-friendserver.exe" ( + copy "%RsBuildPath%\retroshare-friendserver\src\%RsBuildConfig%\retroshare-friendserver.exe" "%RsDeployPath%" %Quite% +) echo copy extensions for /D %%D in ("%RsBuildPath%\plugins\*") do ( diff --git a/retroshare-friendserver/src/retroshare-friendserver.pro b/retroshare-friendserver/src/retroshare-friendserver.pro index 61c604e43..a566a0927 100644 --- a/retroshare-friendserver/src/retroshare-friendserver.pro +++ b/retroshare-friendserver/src/retroshare-friendserver.pro @@ -44,6 +44,7 @@ unix { win32-g++|win32-clang-g++ { dLib = ws2_32 iphlpapi crypt32 LIBS *= $$linkDynamicLibs(dLib) + CONFIG += console } ################################### COMMON stuff ################################## diff --git a/retroshare-service/src/retroshare-service.pro b/retroshare-service/src/retroshare-service.pro index 2c7a3d094..6458e03ed 100644 --- a/retroshare-service/src/retroshare-service.pro +++ b/retroshare-service/src/retroshare-service.pro @@ -87,12 +87,7 @@ macx { ################################# Windows ########################################## win32-g++|win32-clang-g++ { - CONFIG(debug, debug|release) { - # show console output - CONFIG += console - } else { - CONFIG -= console - } + CONFIG += console CONFIG(debug, debug|release) { } else { From 631b9b5f7a09fa45595b517e87c1bbfbc70dda8b Mon Sep 17 00:00:00 2001 From: defnax Date: Tue, 1 Feb 2022 20:01:38 +0100 Subject: [PATCH 014/503] Fix default font metrics for forums tree --- retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp | 4 ++++ retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.ui | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp index fb962ca5c..19c408336 100644 --- a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp +++ b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp @@ -321,6 +321,10 @@ GxsForumThreadWidget::GxsForumThreadWidget(const RsGxsGroupId &forumId, QWidget float f = QFontMetricsF(font()).height()/14.0f ; + QFontMetricsF fontMetrics(ui->threadTreeWidget->font()); + int iconHeight = fontMetrics.height() * 1.4; + ui->threadTreeWidget->setIconSize(QSize(iconHeight, iconHeight)); + /* Set header resize modes and initial section sizes */ QHeaderView * ttheader = ui->threadTreeWidget->header () ; diff --git a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.ui b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.ui index b27354e8b..c74ea5ebb 100644 --- a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.ui +++ b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.ui @@ -233,6 +233,11 @@ + + + 10 + + Qt::CustomContextMenu From fa9bc09cec18382f9c7f5dadc4ae227fbde77856 Mon Sep 17 00:00:00 2001 From: defnax Date: Tue, 1 Feb 2022 20:38:14 +0100 Subject: [PATCH 015/503] changed default tree font color to black for light/builtin style --- retroshare-gui/src/gui/qss/stylesheet/default.qss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/retroshare-gui/src/gui/qss/stylesheet/default.qss b/retroshare-gui/src/gui/qss/stylesheet/default.qss index d1730bfef..607c371ff 100644 --- a/retroshare-gui/src/gui/qss/stylesheet/default.qss +++ b/retroshare-gui/src/gui/qss/stylesheet/default.qss @@ -311,7 +311,7 @@ BoardPostDisplayWidget_compact QToolButton#voteDownButton:disabled { ForumsDialog, GxsForumThreadWidget { - qproperty-textColorRead: darkgray; + qproperty-textColorRead: black; qproperty-textColorUnread: black; qproperty-textColorUnreadChildren: darkgray; qproperty-textColorNotSubscribed: black; From f125539d79dea2642f52abd76351253c7ec70f79 Mon Sep 17 00:00:00 2001 From: thunder2 Date: Wed, 2 Feb 2022 15:39:03 +0100 Subject: [PATCH 016/503] Added new parameter for Windows MinGW build - Service - Friend Server - embedded Friend Server --- build_scripts/Windows/build.bat | 4 +- .../Windows/build/build-installer.bat | 2 +- build_scripts/Windows/build/build.bat | 7 +- build_scripts/Windows/build/env.bat | 54 +++++++++++----- build_scripts/Windows/build/git-log.bat | 2 +- build_scripts/Windows/build/pack.bat | 18 +++++- .../Windows/installer/lang/ca_ES.nsh | 4 ++ build_scripts/Windows/installer/lang/de.nsh | 4 ++ build_scripts/Windows/installer/lang/en.nsh | 4 ++ build_scripts/Windows/installer/lang/es.nsh | 4 ++ build_scripts/Windows/installer/lang/fr.nsh | 4 ++ build_scripts/Windows/installer/lang/pl.nsh | 4 ++ build_scripts/Windows/installer/lang/ru.nsh | 4 ++ build_scripts/Windows/installer/lang/tr.nsh | 4 ++ build_scripts/Windows/installer/lang/ts/en.ts | 28 ++++++++ .../Windows/installer/lang/zh_CN.nsh | 4 ++ .../Windows/installer/retroshare-Qt5.nsi | 64 ++++++++++++++++++- 17 files changed, 190 insertions(+), 25 deletions(-) diff --git a/build_scripts/Windows/build.bat b/build_scripts/Windows/build.bat index 9dd51cc16..352274122 100644 --- a/build_scripts/Windows/build.bat +++ b/build_scripts/Windows/build.bat @@ -13,11 +13,11 @@ call "%~dp0build-libs\build-libs.bat" if errorlevel 1 %cecho% error "Failed to build libraries." & exit /B %ERRORLEVEL% %cecho% info "Build %SourceName%" -call "%~dp0build\build.bat" release autologin jsonapi plugins nativedialogs +call "%~dp0build\build.bat" release autologin jsonapi plugins nativedialogs service if errorlevel 1 %cecho% error "Failed to build %SourceName%." & exit /B %ERRORLEVEL% %cecho% info "Pack %SourceName%" -call "%~dp0build\pack.bat" release plugins +call "%~dp0build\pack.bat" release plugins service if errorlevel 1 %cecho% error "Failed to pack %SourceName%." & exit /B %ERRORLEVEL% %cecho% info "Build installer" diff --git a/build_scripts/Windows/build/build-installer.bat b/build_scripts/Windows/build/build-installer.bat index b34e76157..85500ef41 100644 --- a/build_scripts/Windows/build/build-installer.bat +++ b/build_scripts/Windows/build/build-installer.bat @@ -9,7 +9,7 @@ call "%EnvPath%\env.bat" if errorlevel 1 goto error_env :: Initialize environment -call "%~dp0env.bat" release +call "%~dp0env.bat" installer release if errorlevel 2 exit /B 2 if errorlevel 1 goto error_env diff --git a/build_scripts/Windows/build/build.bat b/build_scripts/Windows/build/build.bat index 095fc6081..23a89038e 100644 --- a/build_scripts/Windows/build/build.bat +++ b/build_scripts/Windows/build/build.bat @@ -9,7 +9,7 @@ call "%EnvPath%\env.bat" if errorlevel 1 goto error_env :: Initialize environment -call "%~dp0env.bat" %* +call "%~dp0env.bat" build %* if errorlevel 2 exit /B 2 if errorlevel 1 goto error_env @@ -49,11 +49,14 @@ echo. title Build - %SourceName%-%RsBuildConfig% [qmake] -set RS_QMAKE_CONFIG=%RsBuildConfig% no_rs_cppwarning +set RS_QMAKE_CONFIG=%RsBuildConfig% if "%ParamAutologin%"=="1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% rs_autologin if "%ParamJsonApi%"=="1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% rs_jsonapi if "%ParamPlugins%"=="1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% retroshare_plugins if "%ParamUseNativeDialogs%"=="1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% rs_use_native_dialogs +if "%ParamService%" NEQ "1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% no_retroshare_service +if "%ParamFriendServer%" NEQ "1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% no_rs_friendserver +if "%ParamEmbeddedFriendServer%"=="1" set RS_QMAKE_CONFIG=%RS_QMAKE_CONFIG% rs_efs qmake "%SourcePath%\RetroShare.pro" -r -spec win32-g++ "CONFIG+=%RS_QMAKE_CONFIG%" "EXTERNAL_LIB_DIR=%BuildLibsPath%\libs" if errorlevel 1 goto error diff --git a/build_scripts/Windows/build/env.bat b/build_scripts/Windows/build/env.bat index 883077173..c1b18492f 100644 --- a/build_scripts/Windows/build/env.bat +++ b/build_scripts/Windows/build/env.bat @@ -4,11 +4,17 @@ set ParamDebug=0 set ParamAutologin=0 set ParamPlugins=0 set ParamJsonApi=0 +set ParamService=0 +set ParamFriendServer=0 +set ParamEmbeddedFriendServer=0 set ParamUseNativeDialogs=0 set ParamTor=0 set NonInteractive=0 set CoreCount=%NUMBER_OF_PROCESSORS% +set Module=%~1 +shift /1 + :parameter_loop if "%~1" NEQ "" ( for /f "tokens=1,2 delims==" %%a in ("%~1") do ( @@ -20,6 +26,12 @@ if "%~1" NEQ "" ( set ParamAutologin=1 ) else if "%%~a"=="jsonapi" ( set ParamJsonApi=1 + ) else if "%%~a"=="service" ( + set ParamService=1 + ) else if "%%~a"=="friendserver" ( + set ParamFriendServer=1 + ) else if "%%~a"=="embedded-friendserver" ( + set ParamEmbeddedFriendServer=1 ) else if "%%~a"=="plugins" ( set ParamPlugins=1 ) else if "%%~a"=="tor" ( @@ -32,7 +44,7 @@ if "%~1" NEQ "" ( set ParamUseNativeDialogs=1 ) else ( echo. - echo Unknown parameter %1 + echo Unknown parameter %1 for %Module% goto :usage ) ) @@ -102,21 +114,31 @@ echo. echo Usage: release^|debug [^] echo. echo Mandatory parameter -echo release^|debug Build release or debug version +echo release^|debug Build release or debug version echo. -echo Optional parameter (need clean when changed) -echo autologin Build with autologin -echo jsonapi Build with jsonapi -echo plugins Build plugins -echo nativedialogs Build with native dialogs -echo. -echo Optional parameter -echo singlethread Use only 1 thread for building -echo. -echo Parameter for pack -echo tor Pack tor version -echo. -echo Parameter for git-log -echo non-interactive Non-interactive mode +if "%Module%"=="build" ( + echo Optional parameter ^(need clean when changed^) + echo autologin Build with autologin + echo jsonapi Build with jsonapi + echo service Build service + echo friendserver Build Friend Server + echo embedded-friendserver Build with embedded Friend Server + echo plugins Build plugins + echo nativedialogs Build with native dialogs + echo. + echo Optional parameter + echo singlethread Use only 1 thread for building +) +if "%Module%"=="pack" ( + echo Optional parameter + echo service Pack service + echo friendserver Pack Friend Server ^(needs Tor^) + echo tor Pack Tor version + echo plugins Pack plugins +) +if "%Module%"=="git-log" ( + echo Optional parameter + echo non-interactive Non-interactive mode +) echo. exit /B 2 diff --git a/build_scripts/Windows/build/git-log.bat b/build_scripts/Windows/build/git-log.bat index 4d479fc3f..286d813e2 100644 --- a/build_scripts/Windows/build/git-log.bat +++ b/build_scripts/Windows/build/git-log.bat @@ -8,7 +8,7 @@ if errorlevel 1 goto error_env call "%EnvPath%\env.bat" if errorlevel 1 goto error_env -call "%~dp0env.bat" %* +call "%~dp0env.bat" git-log %* if errorlevel 2 exit /B 2 if errorlevel 1 goto error_env diff --git a/build_scripts/Windows/build/pack.bat b/build_scripts/Windows/build/pack.bat index 2a86b9a16..6ec70c199 100644 --- a/build_scripts/Windows/build/pack.bat +++ b/build_scripts/Windows/build/pack.bat @@ -11,7 +11,7 @@ call "%EnvPath%\env.bat" if errorlevel 1 goto error_env :: Initialize environment -call "%~dp0env.bat" %* +call "%~dp0env.bat" pack %* if errorlevel 2 exit /B 2 if errorlevel 1 goto error_env @@ -95,9 +95,23 @@ copy nul "%RsDeployPath%\portable" %Quite% echo copy binaries copy "%RsBuildPath%\retroshare-gui\src\%RsBuildConfig%\retroshare*.exe" "%RsDeployPath%" %Quite% -copy "%RsBuildPath%\retroshare-service\src\%RsBuildConfig%\retroshare*-service.exe" "%RsDeployPath%" %Quite% if exist "%RsBuildPath%\libretroshare\src\lib\retroshare.dll" copy "%RsBuildPath%\libretroshare\src\lib\retroshare.dll" "%RsDeployPath%" %Quite% +if "%ParamService%"=="1" ( + copy "%RsBuildPath%\retroshare-service\src\%RsBuildConfig%\retroshare*-service.exe" "%RsDeployPath%" %Quite% + if errorlevel 1 %cecho% error "Service not found"& goto error +) + +if "%ParamFriendServer%"=="1" ( + if "%ParamTor%"=="1" ( + copy "%RsBuildPath%\retroshare-friendserver\src\%RsBuildConfig%\retroshare-friendserver.exe" "%RsDeployPath%" %Quite% + if errorlevel 1 %cecho% error "Friend Server not found"& goto error + ) else ( + %cecho% error "Friend Server needs Tor" + goto error + ) +) + echo copy extensions if "%ParamPlugins%"=="1" ( for /D %%D in ("%RsBuildPath%\plugins\*") do ( diff --git a/build_scripts/Windows/installer/lang/ca_ES.nsh b/build_scripts/Windows/installer/lang/ca_ES.nsh index 74f92ffe5..1d4d7496e 100644 --- a/build_scripts/Windows/installer/lang/ca_ES.nsh +++ b/build_scripts/Windows/installer/lang/ca_ES.nsh @@ -2,6 +2,10 @@ !insertmacro LANG_STRING Section_Main_Desc "Instal·la ${APPNAME} i els components necessaris." !insertmacro LANG_STRING Section_Tor "Tor" !insertmacro LANG_STRING Section_Tor_Desc "Installs Tor." +!insertmacro LANG_STRING Section_Service "Service" +!insertmacro LANG_STRING Section_Service_Desc "Installs Service." +!insertmacro LANG_STRING Section_FriendServer "Friend Server" +!insertmacro LANG_STRING Section_FriendServer_Desc "Installs Friend Server." !insertmacro LANG_STRING Section_Data "Pells" !insertmacro LANG_STRING Section_Data_Desc "Instal·la pells." !insertmacro LANG_STRING Section_Shortcuts "Icones d'accés directe" diff --git a/build_scripts/Windows/installer/lang/de.nsh b/build_scripts/Windows/installer/lang/de.nsh index 663e9e786..2d22e8be4 100644 --- a/build_scripts/Windows/installer/lang/de.nsh +++ b/build_scripts/Windows/installer/lang/de.nsh @@ -2,6 +2,10 @@ !insertmacro LANG_STRING Section_Main_Desc "Installiert ${APPNAME} und die benötigten Komponenten." !insertmacro LANG_STRING Section_Tor "Tor" !insertmacro LANG_STRING Section_Tor_Desc "Installiert Tor." +!insertmacro LANG_STRING Section_Service "Service" +!insertmacro LANG_STRING Section_Service_Desc "Installiert Service." +!insertmacro LANG_STRING Section_FriendServer "Friend Server" +!insertmacro LANG_STRING Section_FriendServer_Desc "Installiert Friend Server." !insertmacro LANG_STRING Section_Data "Skins" !insertmacro LANG_STRING Section_Data_Desc "Skins installieren." !insertmacro LANG_STRING Section_Shortcuts "Verknüpfungssymbole" diff --git a/build_scripts/Windows/installer/lang/en.nsh b/build_scripts/Windows/installer/lang/en.nsh index a709eec24..b076e271f 100644 --- a/build_scripts/Windows/installer/lang/en.nsh +++ b/build_scripts/Windows/installer/lang/en.nsh @@ -2,6 +2,10 @@ !insertmacro LANG_STRING Section_Main_Desc "Installs ${APPNAME} and required components." !insertmacro LANG_STRING Section_Tor "Tor" !insertmacro LANG_STRING Section_Tor_Desc "Installs Tor." +!insertmacro LANG_STRING Section_Service "Service" +!insertmacro LANG_STRING Section_Service_Desc "Installs Service." +!insertmacro LANG_STRING Section_FriendServer "Friend Server" +!insertmacro LANG_STRING Section_FriendServer_Desc "Installs Friend Server." !insertmacro LANG_STRING Section_Data "Skins" !insertmacro LANG_STRING Section_Data_Desc "Installs skins." !insertmacro LANG_STRING Section_Shortcuts "Shortcut icons" diff --git a/build_scripts/Windows/installer/lang/es.nsh b/build_scripts/Windows/installer/lang/es.nsh index 66021c14e..a105ba450 100644 --- a/build_scripts/Windows/installer/lang/es.nsh +++ b/build_scripts/Windows/installer/lang/es.nsh @@ -2,6 +2,10 @@ !insertmacro LANG_STRING Section_Main_Desc "Instala ${APPNAME} y los componentes requeridos." !insertmacro LANG_STRING Section_Tor "Tor" !insertmacro LANG_STRING Section_Tor_Desc "Installs Tor." +!insertmacro LANG_STRING Section_Service "Service" +!insertmacro LANG_STRING Section_Service_Desc "Installs Service." +!insertmacro LANG_STRING Section_FriendServer "Friend Server" +!insertmacro LANG_STRING Section_FriendServer_Desc "Installs Friend Server." !insertmacro LANG_STRING Section_Data "Coberturas (skins)" !insertmacro LANG_STRING Section_Data_Desc "Instalar coberturas" !insertmacro LANG_STRING Section_Shortcuts "Iconos de accesos directos" diff --git a/build_scripts/Windows/installer/lang/fr.nsh b/build_scripts/Windows/installer/lang/fr.nsh index 680746da0..bfc5a30c8 100644 --- a/build_scripts/Windows/installer/lang/fr.nsh +++ b/build_scripts/Windows/installer/lang/fr.nsh @@ -2,6 +2,10 @@ !insertmacro LANG_STRING Section_Main_Desc "Installe ${APPNAME} et les composants requis." !insertmacro LANG_STRING Section_Tor "Tor" !insertmacro LANG_STRING Section_Tor_Desc "Installs Tor." +!insertmacro LANG_STRING Section_Service "Service" +!insertmacro LANG_STRING Section_Service_Desc "Installs Service." +!insertmacro LANG_STRING Section_FriendServer "Friend Server" +!insertmacro LANG_STRING Section_FriendServer_Desc "Installs Friend Server." !insertmacro LANG_STRING Section_Data "Habillages" !insertmacro LANG_STRING Section_Data_Desc "Installe des habillages." !insertmacro LANG_STRING Section_Shortcuts "Icônes de raccourci" diff --git a/build_scripts/Windows/installer/lang/pl.nsh b/build_scripts/Windows/installer/lang/pl.nsh index 53fc42934..c92a4a730 100644 --- a/build_scripts/Windows/installer/lang/pl.nsh +++ b/build_scripts/Windows/installer/lang/pl.nsh @@ -2,6 +2,10 @@ !insertmacro LANG_STRING Section_Main_Desc "Instaluje ${APPNAME} oraz wymagane komponenty." !insertmacro LANG_STRING Section_Tor "Tor" !insertmacro LANG_STRING Section_Tor_Desc "Installs Tor." +!insertmacro LANG_STRING Section_Service "Service" +!insertmacro LANG_STRING Section_Service_Desc "Installs Service." +!insertmacro LANG_STRING Section_FriendServer "Friend Server" +!insertmacro LANG_STRING Section_FriendServer_Desc "Installs Friend Server." !insertmacro LANG_STRING Section_Data "Skórki" !insertmacro LANG_STRING Section_Data_Desc "Instaluje skórki." !insertmacro LANG_STRING Section_Shortcuts "Ikony skrótów" diff --git a/build_scripts/Windows/installer/lang/ru.nsh b/build_scripts/Windows/installer/lang/ru.nsh index b8ba2df89..33df21106 100644 --- a/build_scripts/Windows/installer/lang/ru.nsh +++ b/build_scripts/Windows/installer/lang/ru.nsh @@ -2,6 +2,10 @@ !insertmacro LANG_STRING Section_Main_Desc "Установка ${APPNAME} и необходимых компонентов." !insertmacro LANG_STRING Section_Tor "Tor" !insertmacro LANG_STRING Section_Tor_Desc "Installs Tor." +!insertmacro LANG_STRING Section_Service "Service" +!insertmacro LANG_STRING Section_Service_Desc "Installs Service." +!insertmacro LANG_STRING Section_FriendServer "Friend Server" +!insertmacro LANG_STRING Section_FriendServer_Desc "Installs Friend Server." !insertmacro LANG_STRING Section_Data "Оболочки" !insertmacro LANG_STRING Section_Data_Desc "Установка оболочек." !insertmacro LANG_STRING Section_Shortcuts "Ярлыки" diff --git a/build_scripts/Windows/installer/lang/tr.nsh b/build_scripts/Windows/installer/lang/tr.nsh index 85abeaac2..d45fe6c73 100644 --- a/build_scripts/Windows/installer/lang/tr.nsh +++ b/build_scripts/Windows/installer/lang/tr.nsh @@ -2,6 +2,10 @@ !insertmacro LANG_STRING Section_Main_Desc "${APPNAME} ve gerekli bileşenleri kurar." !insertmacro LANG_STRING Section_Tor "Tor" !insertmacro LANG_STRING Section_Tor_Desc "Installs Tor." +!insertmacro LANG_STRING Section_Service "Service" +!insertmacro LANG_STRING Section_Service_Desc "Installs Service." +!insertmacro LANG_STRING Section_FriendServer "Friend Server" +!insertmacro LANG_STRING Section_FriendServer_Desc "Installs Friend Server." !insertmacro LANG_STRING Section_Data "Temalar" !insertmacro LANG_STRING Section_Data_Desc "Tema yükleyin." !insertmacro LANG_STRING Section_Shortcuts "Kısayol simgeleri" diff --git a/build_scripts/Windows/installer/lang/ts/en.ts b/build_scripts/Windows/installer/lang/ts/en.ts index e95f6939f..e96aabc6d 100644 --- a/build_scripts/Windows/installer/lang/ts/en.ts +++ b/build_scripts/Windows/installer/lang/ts/en.ts @@ -22,6 +22,34 @@ + + Section_Service + + Service + + + + + Section_Service_Desc + + Installs Service. + + + + + Section_FriendServer + + Friend Server + + + + + Section_FriendServer_Desc + + Installs Friend Server. + + + Section_Data diff --git a/build_scripts/Windows/installer/lang/zh_CN.nsh b/build_scripts/Windows/installer/lang/zh_CN.nsh index 330de33ab..e3a59a980 100644 --- a/build_scripts/Windows/installer/lang/zh_CN.nsh +++ b/build_scripts/Windows/installer/lang/zh_CN.nsh @@ -2,6 +2,10 @@ !insertmacro LANG_STRING Section_Main_Desc "Installs ${APPNAME} and required components." !insertmacro LANG_STRING Section_Tor "Tor" !insertmacro LANG_STRING Section_Tor_Desc "Installs Tor." +!insertmacro LANG_STRING Section_Service "Service" +!insertmacro LANG_STRING Section_Service_Desc "Installs Service." +!insertmacro LANG_STRING Section_FriendServer "Friend Server" +!insertmacro LANG_STRING Section_FriendServer_Desc "Installs Friend Server." !insertmacro LANG_STRING Section_Data "皮肤" !insertmacro LANG_STRING Section_Data_Desc "安装皮肤" !insertmacro LANG_STRING Section_Shortcuts "快捷方式图标" diff --git a/build_scripts/Windows/installer/retroshare-Qt5.nsi b/build_scripts/Windows/installer/retroshare-Qt5.nsi index 9fd364764..13a2b4d47 100644 --- a/build_scripts/Windows/installer/retroshare-Qt5.nsi +++ b/build_scripts/Windows/installer/retroshare-Qt5.nsi @@ -60,6 +60,9 @@ !define /date DATE "%Y%m%d" !endif +# Service +${!defineifexist} SERVICE_EXISTS "${RELEASEDIR}\retroshare-service\src\release\retroshare-service.exe" + # Tor !ifdef TORDIR ${!defineifexist} TOR_EXISTS "${TORDIR}\tor.exe" @@ -68,6 +71,12 @@ ${!defineifexist} TOR_EXISTS "${TORDIR}\tor.exe" !endif !endif +# Friend Server +!ifdef TOR_EXISTS +# Add Friend Server with Tor only +#${!defineifexist} FRIENDSERVER_EXISTS "${RELEASEDIR}\retroshare-friendserver\src\release\retroshare-friendserver.exe" +!endif + # Application name and version !define APPNAME "RetroShare" !define APPNAMEANDVERSION "${APPNAME} ${VERSION}" @@ -193,7 +202,6 @@ Section $(Section_Main) Section_Main ; Main binaries SetOutPath "$INSTDIR" File "${RELEASEDIR}\retroshare-gui\src\release\retroshare.exe" - File "${RELEASEDIR}\retroshare-service\src\release\retroshare-service.exe" File /nonfatal "${RELEASEDIR}\libretroshare\src\lib\retroshare.dll" ; Qt binaries @@ -282,6 +290,22 @@ Section $(Section_Main) Section_Main File /r "${SOURCEDIR}\retroshare-gui\src\license\*.*" SectionEnd +# Service +!ifdef SERVICE_EXISTS + Section /o $(Section_Service) Section_Service + SetOutPath "$INSTDIR" + File "${RELEASEDIR}\retroshare-service\src\release\retroshare-service.exe" + SectionEnd +!endif + +# Friend Server +!ifdef FRIENDSERVER_EXISTS + Section /o $(Section_FriendServer) Section_FriendServer + SetOutPath "$INSTDIR" + File "${RELEASEDIR}\retroshare-friendserver\src\release\retroshare-friendserver.exe" + SectionEnd +!endif + # Tor !ifdef TOR_EXISTS Section /o $(Section_Tor) Section_Tor @@ -355,6 +379,22 @@ Section $(Section_StartMenu) Section_StartMenu CreateDirectory "$SMPROGRAMS\${APPNAME}" CreateShortCut "$SMPROGRAMS\${APPNAME}\$(Link_Uninstall).lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0 CreateShortCut "$SMPROGRAMS\${APPNAME}\${APPNAME}.lnk" "$INSTDIR\retroshare.exe" "" "$INSTDIR\retroshare.exe" 0 + +!ifdef SERVICE_EXISTS + SectionGetFlags ${Section_Service} $0 + IntOp $0 $0 & ${SF_SELECTED} + ${If} $0 == ${SF_SELECTED} + CreateShortCut "$SMPROGRAMS\${APPNAME}\${APPNAME} Service.lnk" "$INSTDIR\retroshare-service.exe" "" "$INSTDIR\retroshare-service.exe" 0 + ${EndIf} +!endif + +!ifdef FRIENDSERVER_EXISTS + SectionGetFlags ${Section_FriendServer} $0 + IntOp $0 $0 & ${SF_SELECTED} + ${If} $0 == ${SF_SELECTED} + CreateShortCut "$SMPROGRAMS\${APPNAME}\${APPNAME} Friend Server.lnk" "$INSTDIR\retroshare-friendserver.exe" "" "$INSTDIR\retroshare-friendserver.exe" 0 + ${EndIf} +!endif SectionEnd Section $(Section_Desktop) Section_Desktop @@ -407,6 +447,8 @@ SectionEnd ; !insertmacro MUI_DESCRIPTION_TEXT ${Section_Link} $(Section_Link_Desc) !insertmacro MUI_DESCRIPTION_TEXT ${Section_AutoStart} $(Section_AutoStart_Desc) !insertmacro MUI_DESCRIPTION_TEXT ${Section_Tor} $(Section_Tor_Desc) + !insertmacro MUI_DESCRIPTION_TEXT ${Section_Service} $(Section_Service_Desc) + !insertmacro MUI_DESCRIPTION_TEXT ${Section_FriendServer} $(Section_FriendServer_Desc) !insertmacro MUI_FUNCTION_DESCRIPTION_END # Uninstall @@ -461,6 +503,26 @@ Function .onInit !insertmacro MUI_LANGDLL_DISPLAY FunctionEnd +!ifdef FRIENDSERVER_EXISTS +Function .onSelChange + SectionGetFlags ${Section_FriendServer} $0 + IntOp $0 $0 & ${SF_SELECTED} + ${If} $0 == ${SF_SELECTED} + # Activate Tor and set readonly + SectionGetFlags ${Section_Tor} $1 + IntOp $1 $1 | ${SF_SELECTED} + IntOp $1 $1 | ${SF_RO} + SectionSetFlags ${Section_Tor} $1 + ${Else} + # Remove readonly from Tor + SectionGetFlags ${Section_Tor} $1 + IntOp $2 ${SF_RO} ~ + IntOp $1 $1 & $2 + SectionSetFlags ${Section_Tor} $1 + ${EndIf} +FunctionEnd +!endif + # Installation mode Function RequireAdmin From 58e3c04801b877e27da7783b496cfd2fd65f3025 Mon Sep 17 00:00:00 2001 From: csoler Date: Fri, 4 Feb 2022 14:49:39 +0100 Subject: [PATCH 017/503] disable friend server on non tor node --- retroshare-gui/src/gui/FriendsDialog.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/retroshare-gui/src/gui/FriendsDialog.cpp b/retroshare-gui/src/gui/FriendsDialog.cpp index e3f74fcfd..dbff08418 100644 --- a/retroshare-gui/src/gui/FriendsDialog.cpp +++ b/retroshare-gui/src/gui/FriendsDialog.cpp @@ -27,6 +27,7 @@ #include #include +#include #include "chat/ChatUserNotify.h" #include "connect/ConnectFriendWizard.h" @@ -92,7 +93,8 @@ FriendsDialog::FriendsDialog(QWidget *parent) : MainPage(parent) ui.tabWidget->setTabPosition(QTabWidget::North); #ifdef RS_EMBEDED_FRIEND_SERVER - ui.tabWidget->addTab(friendServerControl = new FriendServerControl(),QIcon(IMAGE_PEERS), tr("Friend Server")); + if(RsAccounts::isTorAuto()) + ui.tabWidget->addTab(friendServerControl = new FriendServerControl(),QIcon(IMAGE_PEERS), tr("Friend Server")); #endif ui.tabWidget->addTab(networkView = new NetworkView(),QIcon(IMAGE_NETWORK2), tr("Network graph")); ui.tabWidget->addTab(networkDialog = new NetworkDialog(),QIcon(IMAGE_PEERS), tr("Keyring")); From e2cda9fded1a55de1a1151bf4e7ab6ca03df002b Mon Sep 17 00:00:00 2001 From: csoler Date: Fri, 4 Feb 2022 15:12:13 +0100 Subject: [PATCH 018/503] improved UI for FS --- libretroshare | 2 +- .../src/gui/FriendServerControl.cpp | 6 + retroshare-gui/src/gui/FriendServerControl.ui | 174 +++++++++--------- 3 files changed, 96 insertions(+), 86 deletions(-) diff --git a/libretroshare b/libretroshare index 55efaf9c7..68864cbd7 160000 --- a/libretroshare +++ b/libretroshare @@ -1 +1 @@ -Subproject commit 55efaf9c730859ef3fc5c6f6049595c1225f9204 +Subproject commit 68864cbd7086dfe9346b2fb2d50b78e382a4e221 diff --git a/retroshare-gui/src/gui/FriendServerControl.cpp b/retroshare-gui/src/gui/FriendServerControl.cpp index 3cc029ecd..219a1e375 100644 --- a/retroshare-gui/src/gui/FriendServerControl.cpp +++ b/retroshare-gui/src/gui/FriendServerControl.cpp @@ -44,6 +44,8 @@ FriendServerControl::FriendServerControl(QWidget *parent) /* Invoke the Qt Designer generated object setup routine */ setupUi(this); + friendServerOnOff_CB->setEnabled(false); // until FS is connected. + if(!rsFriendServer) { setEnabled(false); @@ -170,11 +172,15 @@ void FriendServerControl::updateFriendServerStatusIcon(bool ok) { torServerStatus_LB->setToolTip(tr("Friend server is currently reachable.")) ; mCheckingServerMovie->setFileName(ICON_STATUS_OK); + friendServerOnOff_CB->setEnabled(true); } else { + rsFriendServer->stopServer(); torServerStatus_LB->setToolTip(tr("The proxy is not enabled or broken.\nAre all services up and running fine??\nAlso check your ports!")) ; mCheckingServerMovie->setFileName(ICON_STATUS_UNKNOWN); + friendServerOnOff_CB->setChecked(false); + friendServerOnOff_CB->setEnabled(false); } mCheckingServerMovie->start(); } diff --git a/retroshare-gui/src/gui/FriendServerControl.ui b/retroshare-gui/src/gui/FriendServerControl.ui index 2ac69969b..e51b85220 100644 --- a/retroshare-gui/src/gui/FriendServerControl.ui +++ b/retroshare-gui/src/gui/FriendServerControl.ui @@ -11,89 +11,8 @@ - - - - - - On/Off - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Qt::NoFocus - - - - :/icons/help_64.png:/icons/help_64.png - - - true - - - false - - - true - - - - - - - - - Friends to request: - - - - - - - 1 - - - 15 - - - 5 - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - @@ -112,9 +31,6 @@ <html><head/><body><p>Enter here the onion address of the Friend Server that was given to you. The address will be automatically checked after you enter it and a green bullet will appear if the server is online.</p></body></html> - - .onion - Onion address of the friend server @@ -150,8 +66,44 @@ + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Qt::NoFocus + + + + :/icons/help_64.png:/icons/help_64.png + + + true + + + false + + + true + + + + + + @@ -195,6 +147,58 @@ + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + + On/Off + + + + + + + Qt::Horizontal + + + + 302 + 26 + + + + + + + + Friends to request: + + + + + + + 1 + + + 15 + + + 5 + + + + + + @@ -211,7 +215,7 @@ - + From 63ee463086c54d85a3605edc048aaf32c57b5dbc Mon Sep 17 00:00:00 2001 From: David Gerber Date: Sat, 5 Feb 2022 18:12:04 +0100 Subject: [PATCH 019/503] Display the name of short invites properly Instead of [Unknown], since the name is actually in the short invite. --- retroshare-gui/src/gui/connect/ConnectFriendWizard.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/retroshare-gui/src/gui/connect/ConnectFriendWizard.cpp b/retroshare-gui/src/gui/connect/ConnectFriendWizard.cpp index 15456bbd5..ca56e06aa 100755 --- a/retroshare-gui/src/gui/connect/ConnectFriendWizard.cpp +++ b/retroshare-gui/src/gui/connect/ConnectFriendWizard.cpp @@ -599,7 +599,7 @@ void ConnectFriendWizard::initializePage(int id) if(mIsShortInvite) { if(ui->nameEdit->text().isEmpty()) - ui->nameEdit->setText(tr("[Unknown]")); + ui->nameEdit->setText(QString::fromUtf8(peerDetails.name.c_str())); ui->addKeyToKeyring_CB->setChecked(false); ui->addKeyToKeyring_CB->setEnabled(false); ui->signersEdit->hide(); From 2aee2f008575bd7c36278bf9a2b58e9629709b2a Mon Sep 17 00:00:00 2001 From: Phenom Date: Sat, 5 Feb 2022 18:25:19 +0100 Subject: [PATCH 020/503] Fix to follow libretroshare master --- libretroshare | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libretroshare b/libretroshare index 55efaf9c7..c1feae8b9 160000 --- a/libretroshare +++ b/libretroshare @@ -1 +1 @@ -Subproject commit 55efaf9c730859ef3fc5c6f6049595c1225f9204 +Subproject commit c1feae8b9144adaae8cf4d6c8a441bf41a6d7a95 From ba7f072144c54db3acf84a91a46dae0fb6385bbb Mon Sep 17 00:00:00 2001 From: thunder2 Date: Mon, 7 Feb 2022 17:27:42 +0100 Subject: [PATCH 021/503] Fixed clean of Windows MinGW build --- build_scripts/Windows/build/clean.bat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build_scripts/Windows/build/clean.bat b/build_scripts/Windows/build/clean.bat index e8d5aa7b8..4ab752d4d 100644 --- a/build_scripts/Windows/build/clean.bat +++ b/build_scripts/Windows/build/clean.bat @@ -8,7 +8,7 @@ if errorlevel 1 goto error_env call "%EnvPath%\env.bat" if errorlevel 1 goto error_env -call "%~dp0env.bat" %* +call "%~dp0env.bat" clean %* if errorlevel 2 exit /B 2 if errorlevel 1 goto error_env From a1502c2742a84fd9e69a58608c0870de628bbaba Mon Sep 17 00:00:00 2001 From: csoler Date: Wed, 9 Feb 2022 13:55:59 +0100 Subject: [PATCH 022/503] added missing spacer --- libretroshare | 2 +- retroshare-gui/src/gui/FriendServerControl.ui | 16 +++------------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/libretroshare b/libretroshare index 68864cbd7..05963ad04 160000 --- a/libretroshare +++ b/libretroshare @@ -1 +1 @@ -Subproject commit 68864cbd7086dfe9346b2fb2d50b78e382a4e221 +Subproject commit 05963ad041430bee30c1418de19aadc5320ad42c diff --git a/retroshare-gui/src/gui/FriendServerControl.ui b/retroshare-gui/src/gui/FriendServerControl.ui index e51b85220..4eed774ad 100644 --- a/retroshare-gui/src/gui/FriendServerControl.ui +++ b/retroshare-gui/src/gui/FriendServerControl.ui @@ -71,6 +71,9 @@ Qt::Horizontal + + QSizePolicy::Maximum + 40 @@ -132,19 +135,6 @@ - - - - Qt::Horizontal - - - - 40 - 20 - - - - From fc89ba0fb74819d0089e63a26cddf09a6f4ddaa7 Mon Sep 17 00:00:00 2001 From: csoler Date: Wed, 9 Feb 2022 15:40:01 +0100 Subject: [PATCH 023/503] fixed calling onion address testing only when editing is done, and updating of DNS in certificate --- libretroshare | 2 +- retroshare-gui/src/gui/FriendServerControl.cpp | 4 ++-- retroshare-gui/src/gui/FriendServerControl.h | 2 +- retroshare-gui/src/gui/FriendsDialog.cpp | 13 +++---------- retroshare-gui/src/gui/HomePage.cpp | 3 ++- retroshare-gui/src/gui/settings/ServerPage.cpp | 6 +++--- 6 files changed, 12 insertions(+), 18 deletions(-) diff --git a/libretroshare b/libretroshare index 05963ad04..b86968cd1 160000 --- a/libretroshare +++ b/libretroshare @@ -1 +1 @@ -Subproject commit 05963ad041430bee30c1418de19aadc5320ad42c +Subproject commit b86968cd178c06680a1d39375be4afc3e69874bf diff --git a/retroshare-gui/src/gui/FriendServerControl.cpp b/retroshare-gui/src/gui/FriendServerControl.cpp index 219a1e375..5842516ed 100644 --- a/retroshare-gui/src/gui/FriendServerControl.cpp +++ b/retroshare-gui/src/gui/FriendServerControl.cpp @@ -80,7 +80,7 @@ FriendServerControl::FriendServerControl(QWidget *parent) QObject::connect(friendServerOnOff_CB,SIGNAL(toggled(bool)),this,SLOT(onOnOffClick(bool))); QObject::connect(torServerFriendsToRequest_SB,SIGNAL(valueChanged(int)),this,SLOT(onFriendsToRequestChanged(int))); - QObject::connect(torServerAddress_LE,SIGNAL(textChanged(const QString&)),this,SLOT(onOnionAddressEdit(const QString&))); + QObject::connect(torServerAddress_LE,SIGNAL(editingFinished()),this,SLOT(onOnionAddressEdit())); QObject::connect(torServerPort_SB,SIGNAL(valueChanged(int)),this,SLOT(onOnionPortEdit(int))); QObject::connect(mConnectionCheckTimer,SIGNAL(timeout()),this,SLOT(checkServerAddress())); @@ -130,7 +130,7 @@ void FriendServerControl::onOnionPortEdit(int) } } -void FriendServerControl::onOnionAddressEdit(const QString&) +void FriendServerControl::onOnionAddressEdit() { // Setup timer to auto-check the friend server address mConnectionCheckTimer->stop(); diff --git a/retroshare-gui/src/gui/FriendServerControl.h b/retroshare-gui/src/gui/FriendServerControl.h index 465c5d1ec..832c67f39 100644 --- a/retroshare-gui/src/gui/FriendServerControl.h +++ b/retroshare-gui/src/gui/FriendServerControl.h @@ -35,7 +35,7 @@ public: protected slots: void onOnOffClick(bool b); - void onOnionAddressEdit(const QString&); + void onOnionAddressEdit(); void onOnionPortEdit(int); void onNbFriendsToRequestsChanged(int n); void checkServerAddress(); diff --git a/retroshare-gui/src/gui/FriendsDialog.cpp b/retroshare-gui/src/gui/FriendsDialog.cpp index dcf287f51..532a87f4a 100644 --- a/retroshare-gui/src/gui/FriendsDialog.cpp +++ b/retroshare-gui/src/gui/FriendsDialog.cpp @@ -125,9 +125,8 @@ FriendsDialog::FriendsDialog(QWidget *parent) : MainPage(parent) // add self nick and Avatar to Friends. RsPeerDetails pd ; - if (rsPeers->getPeerDetails(rsPeers->getOwnId(),pd)) { + if (rsPeers->getPeerDetails(rsPeers->getOwnId(),pd)) ui.nicknameLabel->setText(QString::fromUtf8(pd.name.c_str()) + " (" + QString::fromUtf8(pd.location.c_str())+")"); - } int H = misc::getFontSizeFactor("HelpButton").height(); QString hlp_str = tr( @@ -260,13 +259,9 @@ void FriendsDialog::loadmypersonalstatus() QString statustring = QString::fromUtf8(rsMsgs->getCustomStateString().c_str()); if (statustring.isEmpty()) - { ui.mypersonalstatusLabel->setText(tr("Set your status message here.")); - } else - { ui.mypersonalstatusLabel->setText(statustring); - } } void FriendsDialog::clearChatNotify() @@ -283,13 +278,11 @@ void FriendsDialog::statusmessage() /*static*/ bool FriendsDialog::isGroupChatActive() { FriendsDialog *friendsDialog = dynamic_cast(MainWindow::getPage(MainWindow::Friends)); - if (!friendsDialog) { + if (!friendsDialog) return false; - } - if (friendsDialog->ui.tabWidget->currentWidget() == friendsDialog->ui.groupChatTab) { + if (friendsDialog->ui.tabWidget->currentWidget() == friendsDialog->ui.groupChatTab) return true; - } return false; } diff --git a/retroshare-gui/src/gui/HomePage.cpp b/retroshare-gui/src/gui/HomePage.cpp index ef6982e22..327c8e44f 100644 --- a/retroshare-gui/src/gui/HomePage.cpp +++ b/retroshare-gui/src/gui/HomePage.cpp @@ -136,6 +136,7 @@ void HomePage::handleEvent(std::shared_ptr e) { case RsNetworkEventCode::LOCAL_IP_UPDATED: // [fallthrough] case RsNetworkEventCode::EXTERNAL_IP_UPDATED: // [fallthrough] + case RsNetworkEventCode::DNS_UPDATED: // [fallthrough] RsQThreadUtils::postToObject( [=]() { updateCertificate(); @@ -213,7 +214,7 @@ void HomePage::updateOwnCert() } QString invite ; - RetroshareInviteFlags invite_flags = RetroshareInviteFlags::CURRENT_IP; + RetroshareInviteFlags invite_flags = RetroshareInviteFlags::CURRENT_IP | RetroshareInviteFlags::DNS; if(mIncludeAllIPs) invite_flags |= RetroshareInviteFlags::FULL_IP_HISTORY; diff --git a/retroshare-gui/src/gui/settings/ServerPage.cpp b/retroshare-gui/src/gui/settings/ServerPage.cpp index 8addc4349..f840f90a6 100755 --- a/retroshare-gui/src/gui/settings/ServerPage.cpp +++ b/retroshare-gui/src/gui/settings/ServerPage.cpp @@ -205,9 +205,9 @@ ServerPage::ServerPage(QWidget * parent, Qt::WindowFlags flags) connect(ui.discComboBox,SIGNAL(currentIndexChanged(int)),this,SLOT(saveAddresses())); connect(ui.netModeComboBox,SIGNAL(currentIndexChanged(int)),this,SLOT(saveAddresses())); - connect(ui.localAddress, SIGNAL(textChanged(QString)),this,SLOT(saveAddresses())); - connect(ui.extAddress, SIGNAL(textChanged(QString)),this,SLOT(saveAddresses())); - connect(ui.dynDNS, SIGNAL(textChanged(QString)),this,SLOT(saveAddresses())); + connect(ui.localAddress, SIGNAL(editingFinished()),this,SLOT(saveAddresses())); + connect(ui.extAddress, SIGNAL(editingFinished()),this,SLOT(saveAddresses())); + connect(ui.dynDNS, SIGNAL(editingFinished()),this,SLOT(saveAddresses())); connect(ui.tabWidget, SIGNAL(currentChanged(int)), this, SLOT(tabChanged(int))); connect(ui.hiddenpage_proxyAddress_tor, SIGNAL(editingFinished()),this,SLOT(saveAddresses())); From e86e0ac05a851f3386ee57411ad4ae7580aa0914 Mon Sep 17 00:00:00 2001 From: csoler Date: Wed, 9 Feb 2022 22:16:02 +0100 Subject: [PATCH 024/503] merged --- build_scripts/Windows/build/clean.bat | 2 +- libretroshare | 2 +- retroshare-gui/src/gui/connect/ConnectFriendWizard.cpp | 2 +- retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp | 4 ++++ retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.ui | 5 +++++ retroshare-gui/src/gui/qss/stylesheet/default.qss | 2 +- 6 files changed, 13 insertions(+), 4 deletions(-) diff --git a/build_scripts/Windows/build/clean.bat b/build_scripts/Windows/build/clean.bat index e8d5aa7b8..4ab752d4d 100644 --- a/build_scripts/Windows/build/clean.bat +++ b/build_scripts/Windows/build/clean.bat @@ -8,7 +8,7 @@ if errorlevel 1 goto error_env call "%EnvPath%\env.bat" if errorlevel 1 goto error_env -call "%~dp0env.bat" %* +call "%~dp0env.bat" clean %* if errorlevel 2 exit /B 2 if errorlevel 1 goto error_env diff --git a/libretroshare b/libretroshare index b86968cd1..5a6f09ee1 160000 --- a/libretroshare +++ b/libretroshare @@ -1 +1 @@ -Subproject commit b86968cd178c06680a1d39375be4afc3e69874bf +Subproject commit 5a6f09ee11a34f1c52b5be3f0a440f185b9b2a89 diff --git a/retroshare-gui/src/gui/connect/ConnectFriendWizard.cpp b/retroshare-gui/src/gui/connect/ConnectFriendWizard.cpp index 15456bbd5..ca56e06aa 100755 --- a/retroshare-gui/src/gui/connect/ConnectFriendWizard.cpp +++ b/retroshare-gui/src/gui/connect/ConnectFriendWizard.cpp @@ -599,7 +599,7 @@ void ConnectFriendWizard::initializePage(int id) if(mIsShortInvite) { if(ui->nameEdit->text().isEmpty()) - ui->nameEdit->setText(tr("[Unknown]")); + ui->nameEdit->setText(QString::fromUtf8(peerDetails.name.c_str())); ui->addKeyToKeyring_CB->setChecked(false); ui->addKeyToKeyring_CB->setEnabled(false); ui->signersEdit->hide(); diff --git a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp index fb962ca5c..19c408336 100644 --- a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp +++ b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.cpp @@ -321,6 +321,10 @@ GxsForumThreadWidget::GxsForumThreadWidget(const RsGxsGroupId &forumId, QWidget float f = QFontMetricsF(font()).height()/14.0f ; + QFontMetricsF fontMetrics(ui->threadTreeWidget->font()); + int iconHeight = fontMetrics.height() * 1.4; + ui->threadTreeWidget->setIconSize(QSize(iconHeight, iconHeight)); + /* Set header resize modes and initial section sizes */ QHeaderView * ttheader = ui->threadTreeWidget->header () ; diff --git a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.ui b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.ui index b27354e8b..c74ea5ebb 100644 --- a/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.ui +++ b/retroshare-gui/src/gui/gxsforums/GxsForumThreadWidget.ui @@ -233,6 +233,11 @@ + + + 10 + + Qt::CustomContextMenu diff --git a/retroshare-gui/src/gui/qss/stylesheet/default.qss b/retroshare-gui/src/gui/qss/stylesheet/default.qss index d1730bfef..607c371ff 100644 --- a/retroshare-gui/src/gui/qss/stylesheet/default.qss +++ b/retroshare-gui/src/gui/qss/stylesheet/default.qss @@ -311,7 +311,7 @@ BoardPostDisplayWidget_compact QToolButton#voteDownButton:disabled { ForumsDialog, GxsForumThreadWidget { - qproperty-textColorRead: darkgray; + qproperty-textColorRead: black; qproperty-textColorUnread: black; qproperty-textColorUnreadChildren: darkgray; qproperty-textColorNotSubscribed: black; From c3c171125dedd38e3ceb9e28a9609c9845664ccc Mon Sep 17 00:00:00 2001 From: csoler Date: Fri, 11 Feb 2022 15:10:28 +0100 Subject: [PATCH 025/503] improved the logic of certificate handling in UI --- libretroshare | 2 +- retroshare-gui/src/gui/GetStartedDialog.cpp | 2 +- retroshare-gui/src/gui/HomePage.cpp | 86 ++++++++----------- retroshare-gui/src/gui/HomePage.h | 14 ++- .../src/gui/common/NewFriendList.cpp | 2 +- .../src/gui/connect/ConfCertDialog.cpp | 15 +++- .../src/gui/settings/CryptoPage.cpp | 4 +- 7 files changed, 58 insertions(+), 67 deletions(-) diff --git a/libretroshare b/libretroshare index 5a6f09ee1..d26821b89 160000 --- a/libretroshare +++ b/libretroshare @@ -1 +1 @@ -Subproject commit 5a6f09ee11a34f1c52b5be3f0a440f185b9b2a89 +Subproject commit d26821b891d7b3e72da475896814a82716574e56 diff --git a/retroshare-gui/src/gui/GetStartedDialog.cpp b/retroshare-gui/src/gui/GetStartedDialog.cpp index 21fe60be0..e3bbd7170 100644 --- a/retroshare-gui/src/gui/GetStartedDialog.cpp +++ b/retroshare-gui/src/gui/GetStartedDialog.cpp @@ -229,7 +229,7 @@ void GetStartedDialog::inviteFriends() { RsAutoUpdatePage::lockAllEvents(); - cert = rsPeers->GetRetroshareInvite(RsPeerId(),RetroshareInviteFlags::DNS | RetroshareInviteFlags::CURRENT_IP | RetroshareInviteFlags::FULL_IP_HISTORY); + cert = rsPeers->GetRetroshareInvite(RsPeerId(),RsPeers::defaultCertificateFlags | RetroshareInviteFlags::FULL_IP_HISTORY); RsAutoUpdatePage::unlockAllEvents() ; } diff --git a/retroshare-gui/src/gui/HomePage.cpp b/retroshare-gui/src/gui/HomePage.cpp index 327c8e44f..7eabe9dd4 100644 --- a/retroshare-gui/src/gui/HomePage.cpp +++ b/retroshare-gui/src/gui/HomePage.cpp @@ -50,14 +50,10 @@ HomePage::HomePage(QWidget *parent) : MainPage(parent), - ui(new Ui::HomePage), - mIncludeAllIPs(false), - mUseShortFormat(true) + ui(new Ui::HomePage) { ui->setupUi(this); - updateCertificate(); - connect(ui->addButton, SIGNAL(clicked()), this, SLOT(addFriend())); connect(ui->copyIDButton, SIGNAL(clicked()), this, SLOT(copyId())); @@ -73,29 +69,36 @@ HomePage::HomePage(QWidget *parent) : QAction *CopyIdAction = new QAction(QIcon(),tr("Copy your Retroshare ID to Clipboard"), this); connect(CopyIdAction, SIGNAL(triggered()), this, SLOT(copyId())); - QMenu *menu = new QMenu(); + QMenu *menu = new QMenu(); menu->addAction(CopyIdAction); - if(!RsAccounts::isHiddenNode()) - { - QAction *includeIPsAct = new QAction(QIcon(), tr("Include all your known IPs"),this); - connect(includeIPsAct, SIGNAL(triggered()), this, SLOT(toggleIncludeAllIPs())); - includeIPsAct->setCheckable(true); - includeIPsAct->setChecked(mIncludeAllIPs); - - menu->addAction(includeIPsAct); - } - QAction *useOldFormatAct = new QAction(QIcon(), tr("Use old certificate format"),this); - useOldFormatAct->setToolTip(tr("Displays the certificate format used up to version 0.6.5\nOld Retroshare nodes will not understand the\nnew short format")); - connect(useOldFormatAct, SIGNAL(triggered()), this, SLOT(toggleUseOldFormat())); - useOldFormatAct->setCheckable(true); - useOldFormatAct->setChecked(!mUseShortFormat); - menu->addAction(useOldFormatAct); - menu->addSeparator(); menu->addAction(SendAction); menu->addAction(WebMailAction); menu->addAction(RecAction); + menu->addSeparator(); + + if(!RsAccounts::isHiddenNode()) + { + mIncludeDNSact = new QAction(QIcon(), tr("Include my DNS"),this); + connect(mIncludeDNSact, SIGNAL(triggered()), this, SLOT(updateOwnCert())); + mIncludeDNSact->setCheckable(true); + mIncludeDNSact->setChecked(true); + menu->addAction(mIncludeDNSact); + + mIncludeIPsAct = new QAction(QIcon(), tr("Include all your known IPs"),this); + connect(mIncludeIPsAct, SIGNAL(triggered()), this, SLOT(updateOwnCert())); + mIncludeIPsAct->setCheckable(true); + mIncludeIPsAct->setChecked(false); + menu->addAction(mIncludeIPsAct); + } + + QAction *useOldFormatAct = new QAction(QIcon(), tr("Use old certificate format"),this); + useOldFormatAct->setToolTip(tr("Displays the certificate format used up to version 0.6.5\nOld Retroshare nodes will not understand the\nnew short format")); + connect(useOldFormatAct, SIGNAL(triggered()), this, SLOT(updateOwnCert())); + useOldFormatAct->setCheckable(true); + useOldFormatAct->setChecked(false); + menu->addAction(useOldFormatAct); ui->shareButton->setMenu(menu); @@ -118,6 +121,8 @@ HomePage::HomePage(QWidget *parent) : mEventHandlerId = 0; rsEvents->registerEventsHandler( [this](std::shared_ptr event) { handleEvent(event); }, mEventHandlerId, RsEventType::NETWORK ); + + updateOwnCert(); } void HomePage::handleEvent(std::shared_ptr e) @@ -139,13 +144,15 @@ void HomePage::handleEvent(std::shared_ptr e) case RsNetworkEventCode::DNS_UPDATED: // [fallthrough] RsQThreadUtils::postToObject( [=]() { - updateCertificate(); + updateOwnCert(); },this); break; default: break; } } + +#ifdef DEAD_CODE void HomePage::certContextMenu(QPoint /*point*/) { QMenu menu(this) ; @@ -178,17 +185,7 @@ void HomePage::certContextMenu(QPoint /*point*/) menu.exec(QCursor::pos()); } - -void HomePage::toggleUseShortFormat() -{ - mUseShortFormat = !mUseShortFormat; - updateCertificate(); -} -void HomePage::toggleIncludeAllIPs() -{ - mIncludeAllIPs = !mIncludeAllIPs; - updateCertificate(); -} +#endif HomePage::~HomePage() { @@ -196,14 +193,9 @@ HomePage::~HomePage() delete ui; } -void HomePage::updateCertificate() -{ - updateOwnCert(); -} - void HomePage::updateOwnCert() { - bool include_extra_locators = mIncludeAllIPs; + bool include_extra_locators = mIncludeIPsAct->isChecked(); RsPeerDetails detail; @@ -214,12 +206,12 @@ void HomePage::updateOwnCert() } QString invite ; - RetroshareInviteFlags invite_flags = RetroshareInviteFlags::CURRENT_IP | RetroshareInviteFlags::DNS; + RetroshareInviteFlags invite_flags = RsPeers::defaultCertificateFlags; - if(mIncludeAllIPs) + if(mIncludeIPsAct->isChecked()) invite_flags |= RetroshareInviteFlags::FULL_IP_HISTORY; - if(mUseShortFormat) + if(!mUseOldFormatAct->isChecked()) { std::string short_invite; rsPeers->getShortInvite(short_invite,rsPeers->getOwnId(),invite_flags | RetroshareInviteFlags::RADIX_FORMAT); @@ -245,7 +237,7 @@ void HomePage::updateOwnCert() ui->retroshareid->setText("\n"+invite+"\n"); - QString description = ConfCertDialog::getCertificateDescription(detail,false,mUseShortFormat,include_extra_locators); + QString description = ConfCertDialog::getCertificateDescription(detail,false,!mUseOldFormatAct->isChecked(),include_extra_locators); ui->retroshareid->setToolTip(description); } @@ -348,9 +340,3 @@ void HomePage::openWebHelp() { QDesktopServices::openUrl(QUrl(QString("https://retrosharedocs.readthedocs.io/en/latest/"))); } - -void HomePage::toggleUseOldFormat() -{ - mUseShortFormat = !mUseShortFormat; - updateCertificate(); -} diff --git a/retroshare-gui/src/gui/HomePage.h b/retroshare-gui/src/gui/HomePage.h index 2b9e28c18..c5f06f33b 100644 --- a/retroshare-gui/src/gui/HomePage.h +++ b/retroshare-gui/src/gui/HomePage.h @@ -47,27 +47,25 @@ public: virtual QString helpText() const { return ""; } //MainPage private slots: - void certContextMenu(QPoint); +#ifdef DEAD_CODE + void certContextMenu(QPoint); +#endif void updateOwnCert(); - void updateCertificate(); void runEmailClient(); void copyCert(); void copyId(); void saveCert(); void addFriend(); void webMail(); - //void loadCert(); void openWebHelp() ; - void toggleUseOldFormat() ; void recommendFriends(); - void toggleIncludeAllIPs(); - void toggleUseShortFormat(); private: Ui::HomePage *ui; - bool mIncludeAllIPs; - bool mUseShortFormat; + QAction *mIncludeDNSact; + QAction *mIncludeIPsAct; + QAction *mUseOldFormatAct; RsEventsHandlerId_t mEventHandlerId; diff --git a/retroshare-gui/src/gui/common/NewFriendList.cpp b/retroshare-gui/src/gui/common/NewFriendList.cpp index 37b1511f8..641397a30 100644 --- a/retroshare-gui/src/gui/common/NewFriendList.cpp +++ b/retroshare-gui/src/gui/common/NewFriendList.cpp @@ -1361,7 +1361,7 @@ bool NewFriendList::exportFriendlist(QString &fileName) if (!rsPeers->getPeerDetails(*list_iter2, detailSSL)) continue; - std::string certificate = rsPeers->GetRetroshareInvite(detailSSL.id, RetroshareInviteFlags::CURRENT_IP | RetroshareInviteFlags::DNS | RetroshareInviteFlags::RADIX_FORMAT); + std::string certificate = rsPeers->GetRetroshareInvite(detailSSL.id, RsPeers::defaultCertificateFlags | RetroshareInviteFlags::RADIX_FORMAT); // remove \n from certificate certificate.erase(std::remove(certificate.begin(), certificate.end(), '\n'), certificate.end()); diff --git a/retroshare-gui/src/gui/connect/ConfCertDialog.cpp b/retroshare-gui/src/gui/connect/ConfCertDialog.cpp index 03f7b4205..cd539933f 100644 --- a/retroshare-gui/src/gui/connect/ConfCertDialog.cpp +++ b/retroshare-gui/src/gui/connect/ConfCertDialog.cpp @@ -264,7 +264,7 @@ void ConfCertDialog::loadInvitePage() ui._shouldAddSignatures_CB->setEnabled(detail.gpgSigners.size() > 1) ; std::string invite ; - RetroshareInviteFlags flags = RetroshareInviteFlags::DNS | RetroshareInviteFlags::CURRENT_IP | RetroshareInviteFlags::RADIX_FORMAT; + RetroshareInviteFlags flags = RsPeers::defaultCertificateFlags | RetroshareInviteFlags::RADIX_FORMAT; if(!detail.isHiddenNode && ui._includeIPHistory_CB->isChecked()) flags |= RetroshareInviteFlags::FULL_IP_HISTORY; @@ -346,13 +346,20 @@ QString ConfCertDialog::getCertificateDescription(const RsPeerDetails& detail,bo infotext += "" ; } + if(!detail.dyndns.empty()) + { + infotext += "
  • " ; + infotext += tr("DNS: : ") + QString::fromStdString(detail.dyndns); + infotext += "
  • " ; + } + infotext += QString("

    ") ; if(rsPeers->getOwnId() == detail.id) if(use_short_format) - infotext += tr("

    You can use this Retroshare ID to make new friends. Send it by email, or give it hand to hand.

    ") ; - else - infotext += tr("

    You can use this certificate to make new friends. Send it by email, or give it hand to hand.

    ") ; + infotext += tr("

    You can use this Retroshare ID to make new friends. Send it by email, or give it hand to hand.

    ") ; + else + infotext += tr("

    You can use this certificate to make new friends. Send it by email, or give it hand to hand.

    ") ; return infotext; } diff --git a/retroshare-gui/src/gui/settings/CryptoPage.cpp b/retroshare-gui/src/gui/settings/CryptoPage.cpp index 99317c14d..450ae4330 100755 --- a/retroshare-gui/src/gui/settings/CryptoPage.cpp +++ b/retroshare-gui/src/gui/settings/CryptoPage.cpp @@ -103,7 +103,7 @@ void CryptoPage::showEvent ( QShowEvent * /*event*/ ) ui.pgpfingerprint->setText(misc::fingerPrintStyleSplit(QString::fromStdString(detail.fpr.toStdString()))); std::string invite ; - rsPeers->getShortInvite(invite,rsPeers->getOwnId(),RetroshareInviteFlags::RADIX_FORMAT | RetroshareInviteFlags::DNS | RetroshareInviteFlags::CURRENT_IP); + rsPeers->getShortInvite(invite,rsPeers->getOwnId(),RetroshareInviteFlags::RADIX_FORMAT | RsPeers::defaultCertificateFlags); ui.retroshareid->setText(QString::fromUtf8(invite.c_str())); /* set retroshare version */ @@ -139,7 +139,7 @@ void CryptoPage::load() { std::string cert ; - RetroshareInviteFlags flags = RetroshareInviteFlags::DNS | RetroshareInviteFlags::CURRENT_IP; + RetroshareInviteFlags flags = RetroshareInviteFlags::DNS | RetroshareInviteFlags::CURRENT_LOCAL_IP | RetroshareInviteFlags::CURRENT_EXTERNAL_IP; if(ui._shortFormat_CB->isChecked()) { From 33800e9cb9561160d7e909e1a0d13bdd042f15a9 Mon Sep 17 00:00:00 2001 From: csoler Date: Fri, 11 Feb 2022 15:23:14 +0100 Subject: [PATCH 026/503] removed/hid the certificate and ID from settings since it duplicates functionality of HomePage with different options --- retroshare-gui/src/gui/HomePage.cpp | 12 +++++----- .../src/gui/settings/CryptoPage.cpp | 6 ++++- retroshare-gui/src/gui/settings/CryptoPage.ui | 23 ++++++------------- 3 files changed, 18 insertions(+), 23 deletions(-) diff --git a/retroshare-gui/src/gui/HomePage.cpp b/retroshare-gui/src/gui/HomePage.cpp index 7eabe9dd4..f5d7a5719 100644 --- a/retroshare-gui/src/gui/HomePage.cpp +++ b/retroshare-gui/src/gui/HomePage.cpp @@ -93,12 +93,12 @@ HomePage::HomePage(QWidget *parent) : menu->addAction(mIncludeIPsAct); } - QAction *useOldFormatAct = new QAction(QIcon(), tr("Use old certificate format"),this); - useOldFormatAct->setToolTip(tr("Displays the certificate format used up to version 0.6.5\nOld Retroshare nodes will not understand the\nnew short format")); - connect(useOldFormatAct, SIGNAL(triggered()), this, SLOT(updateOwnCert())); - useOldFormatAct->setCheckable(true); - useOldFormatAct->setChecked(false); - menu->addAction(useOldFormatAct); + mUseOldFormatAct = new QAction(QIcon(), tr("Use old certificate format"),this); + mUseOldFormatAct->setToolTip(tr("Displays the certificate format used up to version 0.6.5\nOld Retroshare nodes will not understand the\nnew short format")); + connect(mUseOldFormatAct, SIGNAL(triggered()), this, SLOT(updateOwnCert())); + mUseOldFormatAct->setCheckable(true); + mUseOldFormatAct->setChecked(false); + menu->addAction(mUseOldFormatAct); ui->shareButton->setMenu(menu); diff --git a/retroshare-gui/src/gui/settings/CryptoPage.cpp b/retroshare-gui/src/gui/settings/CryptoPage.cpp index 450ae4330..9f813209a 100755 --- a/retroshare-gui/src/gui/settings/CryptoPage.cpp +++ b/retroshare-gui/src/gui/settings/CryptoPage.cpp @@ -61,6 +61,10 @@ CryptoPage::CryptoPage(QWidget * parent, Qt::WindowFlags flags) //connect(ui.exportprofile,SIGNAL(clicked()), this, SLOT(profilemanager())); connect(ui.exportprofile,SIGNAL(clicked()), this, SLOT(exportProfile())); + // Remove this because it duplicates functionality of the HomePage. + ui.retroshareId_LB->hide(); + ui.retroshareId_content_LB->hide(); + ui.stackPageCertificate->hide(); ui.onlinesince->setText(DateTime::formatLongDateTime(Rshare::startupTime())); } @@ -104,7 +108,7 @@ void CryptoPage::showEvent ( QShowEvent * /*event*/ ) std::string invite ; rsPeers->getShortInvite(invite,rsPeers->getOwnId(),RetroshareInviteFlags::RADIX_FORMAT | RsPeers::defaultCertificateFlags); - ui.retroshareid->setText(QString::fromUtf8(invite.c_str())); + ui.retroshareId_content_LB->setText(QString::fromUtf8(invite.c_str())); /* set retroshare version */ ui.version->setText(Rshare::retroshareVersion(true)); diff --git a/retroshare-gui/src/gui/settings/CryptoPage.ui b/retroshare-gui/src/gui/settings/CryptoPage.ui index 86b8e38b9..29a336721 100755 --- a/retroshare-gui/src/gui/settings/CryptoPage.ui +++ b/retroshare-gui/src/gui/settings/CryptoPage.ui @@ -7,25 +7,19 @@ 0 0 869 - 487 + 493 - - - 0 - - - - Node information - + + - + Retroshare ID: @@ -248,7 +242,7 @@ - <html><head/><body><p>Use this to export your profile key. You can then import it in a different computer and make a new node with the same profile. Doing so, existing friends that you also add to the new node will automatically recognise that new node as friend.</p></body></html> + <html><head/><body><p>Use this button to export your profile key. You can then import it in a different computer and make a new node with the same profile. Doing so, existing friends that you also add to the new node will automatically recognise that new node as friend.</p></body></html> Export @@ -474,7 +468,7 @@ - + 75 @@ -539,10 +533,7 @@ - - - Certificate - + From 6fcb3e8972dc6b0885d779e9f1e1d8dc6f343108 Mon Sep 17 00:00:00 2001 From: csoler Date: Fri, 11 Feb 2022 16:20:52 +0100 Subject: [PATCH 027/503] added entries to control what we add in the certificate --- retroshare-gui/src/gui/HomePage.cpp | 83 +++++++++++++++-------- retroshare-gui/src/gui/HomePage.h | 10 ++- retroshare-gui/src/gui/MainWindow.cpp | 4 +- retroshare-gui/src/gui/MainWindow.h | 7 +- retroshare-gui/src/gui/RetroShareLink.cpp | 44 +++++++----- 5 files changed, 98 insertions(+), 50 deletions(-) diff --git a/retroshare-gui/src/gui/HomePage.cpp b/retroshare-gui/src/gui/HomePage.cpp index f5d7a5719..3268b4e79 100644 --- a/retroshare-gui/src/gui/HomePage.cpp +++ b/retroshare-gui/src/gui/HomePage.cpp @@ -80,25 +80,37 @@ HomePage::HomePage(QWidget *parent) : if(!RsAccounts::isHiddenNode()) { + mIncludeLocIPact = new QAction(QIcon(), tr("Include current local IP"),this); + connect(mIncludeLocIPact, SIGNAL(triggered()), this, SLOT(updateOwnCert())); + mIncludeLocIPact->setCheckable(true); + mIncludeLocIPact->setChecked(true); + menu->addAction(mIncludeLocIPact); + + mIncludeExtIPact = new QAction(QIcon(), tr("Include current external IP"),this); + connect(mIncludeExtIPact, SIGNAL(triggered()), this, SLOT(updateOwnCert())); + mIncludeExtIPact->setCheckable(true); + mIncludeExtIPact->setChecked(true); + menu->addAction(mIncludeExtIPact); + mIncludeDNSact = new QAction(QIcon(), tr("Include my DNS"),this); connect(mIncludeDNSact, SIGNAL(triggered()), this, SLOT(updateOwnCert())); mIncludeDNSact->setCheckable(true); mIncludeDNSact->setChecked(true); menu->addAction(mIncludeDNSact); - mIncludeIPsAct = new QAction(QIcon(), tr("Include all your known IPs"),this); - connect(mIncludeIPsAct, SIGNAL(triggered()), this, SLOT(updateOwnCert())); - mIncludeIPsAct->setCheckable(true); - mIncludeIPsAct->setChecked(false); - menu->addAction(mIncludeIPsAct); + mIncludeIPHistoryact = new QAction(QIcon(), tr("Include all IPs history"),this); + connect(mIncludeIPHistoryact, SIGNAL(triggered()), this, SLOT(updateOwnCert())); + mIncludeIPHistoryact->setCheckable(true); + mIncludeIPHistoryact->setChecked(false); + menu->addAction(mIncludeIPHistoryact); } - mUseOldFormatAct = new QAction(QIcon(), tr("Use old certificate format"),this); - mUseOldFormatAct->setToolTip(tr("Displays the certificate format used up to version 0.6.5\nOld Retroshare nodes will not understand the\nnew short format")); - connect(mUseOldFormatAct, SIGNAL(triggered()), this, SLOT(updateOwnCert())); - mUseOldFormatAct->setCheckable(true); - mUseOldFormatAct->setChecked(false); - menu->addAction(mUseOldFormatAct); + mUseOldFormatact = new QAction(QIcon(), tr("Use old certificate format"),this); + mUseOldFormatact->setToolTip(tr("Displays the certificate format used up to version 0.6.5\nOld Retroshare nodes will not understand the\nnew short format")); + connect(mUseOldFormatact, SIGNAL(triggered()), this, SLOT(updateOwnCert())); + mUseOldFormatact->setCheckable(true); + mUseOldFormatact->setChecked(false); + menu->addAction(mUseOldFormatact); ui->shareButton->setMenu(menu); @@ -193,9 +205,8 @@ HomePage::~HomePage() delete ui; } -void HomePage::updateOwnCert() +void HomePage::getOwnCert(QString& invite,QString& description) const { - bool include_extra_locators = mIncludeIPsAct->isChecked(); RsPeerDetails detail; @@ -205,23 +216,47 @@ void HomePage::updateOwnCert() return ; } - QString invite ; - RetroshareInviteFlags invite_flags = RsPeers::defaultCertificateFlags; + RetroshareInviteFlags invite_flags = RetroshareInviteFlags::NOTHING; - if(mIncludeIPsAct->isChecked()) + if(mIncludeLocIPact->isChecked()) + invite_flags |= RetroshareInviteFlags::CURRENT_LOCAL_IP; + + if(mIncludeExtIPact->isChecked()) + invite_flags |= RetroshareInviteFlags::CURRENT_EXTERNAL_IP; + + if(mIncludeDNSact->isChecked()) + invite_flags |= RetroshareInviteFlags::DNS; + + if(mIncludeIPHistoryact->isChecked()) invite_flags |= RetroshareInviteFlags::FULL_IP_HISTORY; - if(!mUseOldFormatAct->isChecked()) + if(!mUseOldFormatact->isChecked()) { std::string short_invite; rsPeers->getShortInvite(short_invite,rsPeers->getOwnId(),invite_flags | RetroshareInviteFlags::RADIX_FORMAT); + invite = QString::fromStdString(short_invite); + } + else + invite = QString::fromStdString(rsPeers->GetRetroshareInvite(detail.id,invite_flags)); + bool include_extra_locators = mIncludeIPHistoryact->isChecked(); + description = ConfCertDialog::getCertificateDescription(detail,false,!mUseOldFormatact->isChecked(),include_extra_locators); +} + +void HomePage::updateOwnCert() +{ + QString certificate, description; + + getOwnCert(certificate,description); + + if(!mUseOldFormatact->isChecked()) // in this case we have to split the cert for a bettr display + { QString S; QString txt; - for(uint32_t i=0;iGetRetroshareInvite(detail.id,invite_flags)); - - ui->retroshareid->setText("\n"+invite+"\n"); - - QString description = ConfCertDialog::getCertificateDescription(detail,false,!mUseOldFormatAct->isChecked(),include_extra_locators); + ui->retroshareid->setText("\n"+certificate+"\n"); ui->retroshareid->setToolTip(description); } diff --git a/retroshare-gui/src/gui/HomePage.h b/retroshare-gui/src/gui/HomePage.h index c5f06f33b..a20f07863 100644 --- a/retroshare-gui/src/gui/HomePage.h +++ b/retroshare-gui/src/gui/HomePage.h @@ -46,6 +46,10 @@ public: virtual QString pageName() const { return tr("Home") ; } //MainPage virtual QString helpText() const { return ""; } //MainPage + // Returns the certificate along with its description using current options. + + void getOwnCert(QString& invite,QString& description) const; + private slots: #ifdef DEAD_CODE void certContextMenu(QPoint); @@ -64,8 +68,10 @@ private: Ui::HomePage *ui; QAction *mIncludeDNSact; - QAction *mIncludeIPsAct; - QAction *mUseOldFormatAct; + QAction *mIncludeIPHistoryact; + QAction *mIncludeExtIPact; + QAction *mIncludeLocIPact; + QAction *mUseOldFormatact; RsEventsHandlerId_t mEventHandlerId; diff --git a/retroshare-gui/src/gui/MainWindow.cpp b/retroshare-gui/src/gui/MainWindow.cpp index 207fc5130..16af6710a 100644 --- a/retroshare-gui/src/gui/MainWindow.cpp +++ b/retroshare-gui/src/gui/MainWindow.cpp @@ -1083,7 +1083,9 @@ void SetForegroundWindowInternal(HWND hWnd) return _instance->gxsforumDialog; case Posted: return _instance->postedDialog; - } + case Home: + return _instance->homePage; + } return NULL; } diff --git a/retroshare-gui/src/gui/MainWindow.h b/retroshare-gui/src/gui/MainWindow.h index b4f3cccd5..23b70e66f 100644 --- a/retroshare-gui/src/gui/MainWindow.h +++ b/retroshare-gui/src/gui/MainWindow.h @@ -100,9 +100,10 @@ public: Channels = 6, /** Channels page. */ Forums = 7, /** Forums page. */ Search = 8, /** Search page. */ - Posted = 11, /** Posted links */ - People = 12, /** People page. */ - Options = 13 /** People page. */ + Posted = 11, /** Posted links */ + People = 12, /** People page. */ + Options = 13, /** People page. */ + Home = 14 /** Home page. */ }; diff --git a/retroshare-gui/src/gui/RetroShareLink.cpp b/retroshare-gui/src/gui/RetroShareLink.cpp index d34871104..524f3c757 100644 --- a/retroshare-gui/src/gui/RetroShareLink.cpp +++ b/retroshare-gui/src/gui/RetroShareLink.cpp @@ -22,6 +22,7 @@ #include "ChatLobbyWidget.h" #include "MainWindow.h" +#include "HomePage.h" #include "chat/ChatDialog.h" #include "common/PeerDefs.h" #include "common/RsCollection.h" @@ -551,32 +552,41 @@ RetroShareLink RetroShareLink::createMessage(const RsGxsId& peerId, const QStrin RetroShareLink RetroShareLink::createCertificate(const RsPeerId& ssl_id) { - RetroShareLink link; - link.clear(); + RetroShareLink link; + link.clear(); #ifndef RS_NO_WARN_CPP #pragma message("csoler 2012-08-14: This is baaaaaad code") #endif - // - we should not need to parse and re-read a cert in old format. - // - RsPeerDetails detail; - if (rsPeers->getPeerDetails(ssl_id, detail) == false) { - std::cerr << "RetroShareLink::createPerson() Couldn't find peer id " << ssl_id << std::endl; - } else { + // - we should not need to parse and re-read a cert in old format. + // + RsPeerDetails detail; + if (rsPeers->getPeerDetails(ssl_id, detail) == false) + std::cerr << "RetroShareLink::createPerson() Couldn't find peer id " << ssl_id << std::endl; + else + { + link._type = TYPE_CERTIFICATE; - link._type = TYPE_CERTIFICATE; - link._radix = QString::fromUtf8(rsPeers->GetRetroshareInvite(ssl_id).c_str()); - link._name = QString::fromUtf8(detail.name.c_str()); - link._location = QString::fromUtf8(detail.location.c_str()); - link._radix.replace("\n",""); + if(rsPeers->getOwnId() == ssl_id) // in this case, use application-wide parameters set in HomePage + { + QString invite,description; + static_cast(MainWindow::getPage(MainWindow::Home))->getOwnCert(invite,description); + link._radix = invite; + } + else + link._radix = QString::fromUtf8(rsPeers->GetRetroshareInvite(ssl_id).c_str()); - std::cerr << "Found radix = " << link._radix.toStdString() << std::endl; - } + link._name = QString::fromUtf8(detail.name.c_str()); + link._location = QString::fromUtf8(detail.location.c_str()); + link._radix.replace("\n",""); - link.check(); + std::cerr << "Found radix = " << link._radix.toStdString() << std::endl; + } - return link; + link.check(); + + return link; } RetroShareLink RetroShareLink::createUnknownSslCertificate(const RsPeerId& sslId, const RsPgpId& gpgId) { From 24d5fc9eca2dfb63753958f319a9cbbc79c3957c Mon Sep 17 00:00:00 2001 From: csoler Date: Fri, 11 Feb 2022 22:17:13 +0100 Subject: [PATCH 028/503] show info that is parsed from the cert that was generated --- retroshare-gui/src/gui/HomePage.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/retroshare-gui/src/gui/HomePage.cpp b/retroshare-gui/src/gui/HomePage.cpp index 3268b4e79..8dd936b38 100644 --- a/retroshare-gui/src/gui/HomePage.cpp +++ b/retroshare-gui/src/gui/HomePage.cpp @@ -208,7 +208,7 @@ HomePage::~HomePage() void HomePage::getOwnCert(QString& invite,QString& description) const { - RsPeerDetails detail; + RsPeerDetails detail,parsed_details; if (!rsPeers->getPeerDetails(rsPeers->getOwnId(), detail)) { @@ -235,9 +235,19 @@ void HomePage::getOwnCert(QString& invite,QString& description) const std::string short_invite; rsPeers->getShortInvite(short_invite,rsPeers->getOwnId(),invite_flags | RetroshareInviteFlags::RADIX_FORMAT); invite = QString::fromStdString(short_invite); + uint32_t err; + + if(!rsPeers->parseShortInvite(short_invite,parsed_details,err)) + std::cerr << "Something unexpected happenned while re-parsing a cert just created: error " << err << std::endl; } else + { invite = QString::fromStdString(rsPeers->GetRetroshareInvite(detail.id,invite_flags)); + uint32_t err; + + if(!rsPeers->loadDetailsFromStringCert(invite.toStdString(),parsed_details,err)) + std::cerr << "Something unexpected happenned while re-parsing a cert just created: error " << err << std::endl; + } bool include_extra_locators = mIncludeIPHistoryact->isChecked(); description = ConfCertDialog::getCertificateDescription(detail,false,!mUseOldFormatact->isChecked(),include_extra_locators); From dc0cddae7e54195f0a412c9938d08eb0f981903f Mon Sep 17 00:00:00 2001 From: defnax Date: Sat, 12 Feb 2022 00:07:23 +0100 Subject: [PATCH 029/503] removed clean up old icons, replaced some by svg --- .../gui/FileTransfer/SharedFilesDialog.cpp | 2 +- retroshare-gui/src/gui/Identity/IdDialog.cpp | 6 +- retroshare-gui/src/gui/Identity/IdDialog.ui | 14 +--- retroshare-gui/src/gui/MainWindow.cpp | 3 +- .../src/gui/common/FriendListModel.cpp | 31 +++++++- .../src/gui/common/FriendSelectionWidget.cpp | 27 ++++++- .../src/gui/common/FriendSelectionWidget.ui | 5 ++ .../src/gui/common/NewFriendList.cpp | 16 ++-- .../src/gui/common/RSTreeWidget.cpp | 4 +- retroshare-gui/src/gui/groups/CreateGroup.cpp | 4 +- .../src/gui/gxs/GxsGroupFrameDialog.cpp | 8 +- retroshare-gui/src/gui/icons.qrc | 11 +++ .../src/gui/icons/account-convert.svg | 1 + retroshare-gui/src/gui/icons/account-plus.svg | 1 + retroshare-gui/src/gui/icons/cancel.svg | 38 +++++++++ retroshare-gui/src/gui/icons/groups/blue.svg | 53 +++++++++++++ .../src/gui/icons/groups/colored.svg | 73 ++++++++++++++++++ retroshare-gui/src/gui/icons/groups/green.svg | 53 +++++++++++++ .../src/gui/icons/groups/indigo.svg | 53 +++++++++++++ retroshare-gui/src/gui/icons/groups/pink.svg | 53 +++++++++++++ .../src/gui/icons/groups/purple.svg | 53 +++++++++++++ retroshare-gui/src/gui/icons/groups/red.svg | 53 +++++++++++++ .../src/gui/icons/groups/yellow.svg | 53 +++++++++++++ retroshare-gui/src/gui/icons/newtab.svg | 38 +++++++++ retroshare-gui/src/gui/icons/newwindow.svg | 38 +++++++++ retroshare-gui/src/gui/images.qrc | 15 ---- .../src/gui/images/button_cancel.png | Bin 1518 -> 0 bytes .../src/gui/images/rsmessenger48.png | Bin 4171 -> 0 bytes .../src/gui/images/share-icon-16.png | Bin 691 -> 0 bytes .../src/gui/images/share-icon-24.png | Bin 1379 -> 0 bytes .../src/gui/images/share-icon-32.png | Bin 1270 -> 0 bytes .../src/gui/images/stock_signature_bad.png | Bin 2094 -> 0 bytes .../gui/images/stock_signature_missing.png | Bin 2021 -> 0 bytes .../src/gui/images/stock_signature_ok.png | Bin 1877 -> 0 bytes .../gui/images/stock_signature_unverified.png | Bin 2001 -> 0 bytes retroshare-gui/src/gui/images/tab-dock.png | Bin 265 -> 0 bytes retroshare-gui/src/gui/images/tab-new.png | Bin 435 -> 0 bytes retroshare-gui/src/gui/images/tab-undock.png | Bin 319 -> 0 bytes .../src/gui/images/view_calendar_day.png | Bin 696 -> 0 bytes .../src/gui/images/view_calendar_list.png | Bin 662 -> 0 bytes .../src/gui/images/view_calendar_month.png | Bin 652 -> 0 bytes .../src/gui/images/view_calendar_week.png | Bin 677 -> 0 bytes .../src/gui/images/view_split_top_bottom.png | Bin 422 -> 0 bytes retroshare-gui/src/gui/msgs/MessageModel.cpp | 4 +- .../src/gui/msgs/MessagesDialog.cpp | 4 +- 45 files changed, 652 insertions(+), 62 deletions(-) create mode 100644 retroshare-gui/src/gui/icons/account-convert.svg create mode 100644 retroshare-gui/src/gui/icons/account-plus.svg create mode 100644 retroshare-gui/src/gui/icons/cancel.svg create mode 100644 retroshare-gui/src/gui/icons/groups/blue.svg create mode 100644 retroshare-gui/src/gui/icons/groups/colored.svg create mode 100644 retroshare-gui/src/gui/icons/groups/green.svg create mode 100644 retroshare-gui/src/gui/icons/groups/indigo.svg create mode 100644 retroshare-gui/src/gui/icons/groups/pink.svg create mode 100644 retroshare-gui/src/gui/icons/groups/purple.svg create mode 100644 retroshare-gui/src/gui/icons/groups/red.svg create mode 100644 retroshare-gui/src/gui/icons/groups/yellow.svg create mode 100644 retroshare-gui/src/gui/icons/newtab.svg create mode 100644 retroshare-gui/src/gui/icons/newwindow.svg delete mode 100644 retroshare-gui/src/gui/images/button_cancel.png delete mode 100644 retroshare-gui/src/gui/images/rsmessenger48.png delete mode 100644 retroshare-gui/src/gui/images/share-icon-16.png delete mode 100644 retroshare-gui/src/gui/images/share-icon-24.png delete mode 100644 retroshare-gui/src/gui/images/share-icon-32.png delete mode 100644 retroshare-gui/src/gui/images/stock_signature_bad.png delete mode 100644 retroshare-gui/src/gui/images/stock_signature_missing.png delete mode 100644 retroshare-gui/src/gui/images/stock_signature_ok.png delete mode 100644 retroshare-gui/src/gui/images/stock_signature_unverified.png delete mode 100644 retroshare-gui/src/gui/images/tab-dock.png delete mode 100644 retroshare-gui/src/gui/images/tab-new.png delete mode 100644 retroshare-gui/src/gui/images/tab-undock.png delete mode 100644 retroshare-gui/src/gui/images/view_calendar_day.png delete mode 100644 retroshare-gui/src/gui/images/view_calendar_list.png delete mode 100644 retroshare-gui/src/gui/images/view_calendar_month.png delete mode 100644 retroshare-gui/src/gui/images/view_calendar_week.png delete mode 100644 retroshare-gui/src/gui/images/view_split_top_bottom.png diff --git a/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp b/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp index 9ca80dea4..933e30168 100644 --- a/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp +++ b/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp @@ -75,7 +75,7 @@ #define IMAGE_COLLOPEN ":/icons/collections.png" #define IMAGE_EDITSHARE ":/icons/png/pencil-edit-button.png" #define IMAGE_MYFILES ":/icons/svg/folders1.svg" -#define IMAGE_UNSHAREEXTRA ":/images/button_cancel.png" +#define IMAGE_UNSHAREEXTRA ":/icons/cancel.svg" /*define viewType_CB value */ #define VIEW_TYPE_TREE 0 diff --git a/retroshare-gui/src/gui/Identity/IdDialog.cpp b/retroshare-gui/src/gui/Identity/IdDialog.cpp index c40bb0931..0f657a577 100644 --- a/retroshare-gui/src/gui/Identity/IdDialog.cpp +++ b/retroshare-gui/src/gui/Identity/IdDialog.cpp @@ -2260,7 +2260,7 @@ void IdDialog::IdListCustomPopupMenu( QPoint ) contextMenu->addAction(QIcon(""),tr("Copy identity to clipboard"),this,SLOT(copyRetroshareLink())) ; if(n_is_not_a_contact == 0) - contextMenu->addAction(FilesDefs::getIconFromQtResourcePath(":/images/cancel.png"), tr("Remove from Contacts"), this, SLOT(removefromContacts())); + contextMenu->addAction(FilesDefs::getIconFromQtResourcePath(":/icons/cancel.svg"), tr("Remove from Contacts"), this, SLOT(removefromContacts())); contextMenu->addSeparator(); @@ -2279,8 +2279,8 @@ void IdDialog::IdListCustomPopupMenu( QPoint ) contextMenu->addSeparator(); contextMenu->addAction(QIcon(""),tr("Copy identity to clipboard"),this,SLOT(copyRetroshareLink())) ; - contextMenu->addAction(ui->editIdentity); - contextMenu->addAction(ui->removeIdentity); + contextMenu->addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_EDIT),tr("Edit identity"),this,SLOT(editIdentity())) ; + contextMenu->addAction(FilesDefs::getIconFromQtResourcePath(":/icons/cancel.svg"),tr("Delete identity"),this,SLOT(removeIdentity())) ; } } diff --git a/retroshare-gui/src/gui/Identity/IdDialog.ui b/retroshare-gui/src/gui/Identity/IdDialog.ui index 8e40da52b..f18ddbc87 100644 --- a/retroshare-gui/src/gui/Identity/IdDialog.ui +++ b/retroshare-gui/src/gui/Identity/IdDialog.ui @@ -302,7 +302,7 @@ 0 0 634 - 523 + 538 @@ -1091,10 +1091,6 @@ border-image: url(:/images/closepressed.png) - - - :/images/edit_16.png:/images/edit_16.png - Edit identity @@ -1103,19 +1099,11 @@ border-image: url(:/images/closepressed.png) - - - :/images/delete.png:/images/delete.png - Delete identity - - - :/images/toaster/chat.png:/images/toaster/chat.png - Chat with this peer diff --git a/retroshare-gui/src/gui/MainWindow.cpp b/retroshare-gui/src/gui/MainWindow.cpp index 207fc5130..8d323524e 100644 --- a/retroshare-gui/src/gui/MainWindow.cpp +++ b/retroshare-gui/src/gui/MainWindow.cpp @@ -141,7 +141,6 @@ #define IMAGE_OVERLAY ":/icons/star_overlay_128.png" #define IMAGE_BWGRAPH ":/icons/png/bandwidth.png" -#define IMAGE_MESSENGER ":/images/rsmessenger48.png" #define IMAGE_COLOR ":/images/highlight.png" #define IMAGE_NEWRSCOLLECTION ":/images/library.png" #define IMAGE_ADDSHARE ":/images/directoryadd_24x24_shadow.png" @@ -625,7 +624,7 @@ void MainWindow::createTrayIcon() trayMenu->addSeparator(); #ifdef MESSENGER_WINDOW - trayMenu->addAction(QIcon(IMAGE_MESSENGER), tr("Open Messenger"), this, SLOT(showMessengerWindow())); + trayMenu->addAction(QIcon(), tr("Open Messenger"), this, SLOT(showMessengerWindow())); #endif trayMenu->addAction(QIcon(IMAGE_MESSAGES), tr("Open Messages"), this, SLOT(showMess())); #ifdef RS_JSONAPI diff --git a/retroshare-gui/src/gui/common/FriendListModel.cpp b/retroshare-gui/src/gui/common/FriendListModel.cpp index 1b83485bc..f8740466d 100644 --- a/retroshare-gui/src/gui/common/FriendListModel.cpp +++ b/retroshare-gui/src/gui/common/FriendListModel.cpp @@ -42,7 +42,12 @@ #define IS_MESSAGE_UNREAD(flags) (flags & (RS_MSG_NEW | RS_MSG_UNREAD_BY_USER)) -#define IMAGE_GROUP24 ":/images/user/group24.png" +#define IMAGE_COWORKERS ":/icons/groups/green.svg" +#define IMAGE_FRIENDS ":/icons/groups/blue.svg" +#define IMAGE_FAMILY ":/icons/groups/purple.svg" +#define IMAGE_FAVORITES ":/icons/groups/yellow.svg" +#define IMAGE_OTHERCONTACTS ":/icons/groups/pink.svg" +#define IMAGE_OTHERGROUPS ":/icons/groups/red.svg" #define IMAGE_STAR_ON ":/images/star-on-16.png" #define IMAGE_STAR_OFF ":/images/star-off-16.png" @@ -497,7 +502,7 @@ QVariant RsFriendListModel::sizeHintRole(const EntryIndex& e,int col) const y_factor *= 3.0; if(e.type == ENTRY_TYPE_GROUP) - y_factor = std::max(y_factor, 24.0f / 14.0f ); // allows to fit the 24 pixels icon for groups in the line + y_factor *= 1.5; switch(col) { @@ -871,8 +876,28 @@ QVariant RsFriendListModel::decorationRole(const EntryIndex& entry,int col) cons switch(entry.type) { - case ENTRY_TYPE_GROUP: return QVariant(FilesDefs::getIconFromQtResourcePath(IMAGE_GROUP24)); + case ENTRY_TYPE_GROUP: + { + const HierarchicalGroupInformation *groupInfo = getGroupInfo(entry); + if (groupInfo->group_info.id.toStdString() == RS_GROUP_ID_FRIENDS.toStdString()) { + return QVariant(FilesDefs::getIconFromQtResourcePath(IMAGE_FRIENDS)); + } + if (groupInfo->group_info.id.toStdString() == RS_GROUP_ID_FAMILY.toStdString()) { + return QVariant(FilesDefs::getIconFromQtResourcePath(IMAGE_FAMILY)); + } + if (groupInfo->group_info.id.toStdString() == RS_GROUP_ID_COWORKERS.toStdString()) { + return QVariant(FilesDefs::getIconFromQtResourcePath(IMAGE_COWORKERS)); + } + if (groupInfo->group_info.id.toStdString() == RS_GROUP_ID_OTHERS.toStdString()) { + return QVariant(FilesDefs::getIconFromQtResourcePath(IMAGE_OTHERCONTACTS)); + } + if (groupInfo->group_info.id.toStdString() == RS_GROUP_ID_FAVORITES.toStdString()) { + return QVariant(FilesDefs::getIconFromQtResourcePath(IMAGE_FAVORITES)); + } + + return QVariant(FilesDefs::getIconFromQtResourcePath(IMAGE_OTHERGROUPS)); + } case ENTRY_TYPE_PROFILE: { if(!isProfileExpanded(entry)) diff --git a/retroshare-gui/src/gui/common/FriendSelectionWidget.cpp b/retroshare-gui/src/gui/common/FriendSelectionWidget.cpp index a2b355e06..b5b3d8264 100644 --- a/retroshare-gui/src/gui/common/FriendSelectionWidget.cpp +++ b/retroshare-gui/src/gui/common/FriendSelectionWidget.cpp @@ -53,7 +53,6 @@ #define ROLE_SORT_STATE Qt::UserRole + 4 #define ROLE_FILTER_REASON Qt::UserRole + 5 -#define IMAGE_GROUP16 ":/images/user/group16.png" #define IMAGE_FRIENDINFO ":/images/peerdetails_16x16.png" static bool isSelected(FriendSelectionWidget::Modus modus, QTreeWidgetItem *item) @@ -382,12 +381,34 @@ void FriendSelectionWidget::secured_fillList() // Add item to the list ui->friendList->addTopLevelItem(groupItem); + QFontMetricsF fontMetrics(ui->friendList->font()); + int avatarHeight = fontMetrics.height() * 1.5; + ui->friendList->setIconSize(QSize(avatarHeight, avatarHeight)); + groupItem->setFlags(Qt::ItemIsUserCheckable | groupItem->flags()); groupItem->setChildIndicatorPolicy(QTreeWidgetItem::DontShowIndicatorWhenChildless); groupItem->setTextAlignment(COLUMN_NAME, Qt::AlignLeft | Qt::AlignVCenter); - groupItem->setIcon(COLUMN_NAME, FilesDefs::getIconFromQtResourcePath(IMAGE_GROUP16)); - groupItem->setData(COLUMN_DATA, ROLE_ID, QString::fromStdString(groupInfo->id.toStdString())); + if (groupInfo->id.toStdString() == RS_GROUP_ID_FRIENDS.toStdString()) { + groupItem->setIcon(COLUMN_NAME, FilesDefs::getIconFromQtResourcePath(":/icons/groups/blue.svg")); + } + else if (groupInfo->id.toStdString() == RS_GROUP_ID_FAMILY.toStdString()) { + groupItem->setIcon(COLUMN_NAME, FilesDefs::getIconFromQtResourcePath(":/icons/groups/purple.svg")); + } + else if (groupInfo->id.toStdString() == RS_GROUP_ID_COWORKERS.toStdString()) { + groupItem->setIcon(COLUMN_NAME, FilesDefs::getIconFromQtResourcePath(":/icons/groups/green.svg")); + } + else if (groupInfo->id.toStdString() == RS_GROUP_ID_OTHERS.toStdString()) { + groupItem->setIcon(COLUMN_NAME, FilesDefs::getIconFromQtResourcePath(":/icons/groups/pink.svg")); + } + else if (groupInfo->id.toStdString() == RS_GROUP_ID_FAVORITES.toStdString()) { + groupItem->setIcon(COLUMN_NAME, FilesDefs::getIconFromQtResourcePath(":/icons/groups/yellow.svg")); + } + else { + groupItem->setIcon(COLUMN_NAME, FilesDefs::getIconFromQtResourcePath(":/icons/groups/red.svg")); + } + + groupItem->setData(COLUMN_DATA, ROLE_ID, QString::fromStdString(groupInfo->id.toStdString())); groupItem->setExpanded(true); diff --git a/retroshare-gui/src/gui/common/FriendSelectionWidget.ui b/retroshare-gui/src/gui/common/FriendSelectionWidget.ui index d3682f014..065c9013b 100644 --- a/retroshare-gui/src/gui/common/FriendSelectionWidget.ui +++ b/retroshare-gui/src/gui/common/FriendSelectionWidget.ui @@ -38,6 +38,11 @@ 0 + + + 11 + + Qt::CustomContextMenu diff --git a/retroshare-gui/src/gui/common/NewFriendList.cpp b/retroshare-gui/src/gui/common/NewFriendList.cpp index 37b1511f8..1b2d513f4 100644 --- a/retroshare-gui/src/gui/common/NewFriendList.cpp +++ b/retroshare-gui/src/gui/common/NewFriendList.cpp @@ -68,15 +68,13 @@ #define IMAGE_MSG ":/icons/mail/write-mail.png" #define IMAGE_CONNECT ":/images/connect_friend.png" #define IMAGE_COPYLINK ":/images/copyrslink.png" -#define IMAGE_GROUP16 ":/images/user/group16.png" +#define IMAGE_GROUPS ":/icons/groups/colored.svg" #define IMAGE_EDIT ":/icons/png/pencil-edit-button.png" -#define IMAGE_REMOVE ":/images/delete.png" -#define IMAGE_EXPAND ":/images/edit_add24.png" -#define IMAGE_COLLAPSE ":/images/edit_remove24.png" +#define IMAGE_REMOVE ":/icons/cancel.svg" +#define IMAGE_ADD ":/icons/png/add.png" /* Images for Status icons */ #define IMAGE_AVAILABLE ":/images/user/identityavaiblecyan24.png" #define IMAGE_PASTELINK ":/images/pasterslink.png" -#define IMAGE_GROUP24 ":/images/user/group24.png" #define COLUMN_DATA 0 // column for storing the userdata id @@ -687,8 +685,8 @@ void NewFriendList::peerTreeWidgetCustomPopupMenu() } } - QMenu *groupsMenu = contextMenu.addMenu(FilesDefs::getIconFromQtResourcePath(IMAGE_GROUP16), tr("Groups")); - groupsMenu->addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_EXPAND), tr("Create new group"), this, SLOT(createNewGroup())); + QMenu *groupsMenu = contextMenu.addMenu(FilesDefs::getIconFromQtResourcePath(IMAGE_GROUPS), tr("Groups")); + groupsMenu->addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_ADD), tr("Create new group"), this, SLOT(createNewGroup())); if (addToGroupMenu || moveToGroupMenu || foundGroup) { if (addToGroupMenu) { @@ -763,8 +761,8 @@ void NewFriendList::peerTreeWidgetCustomPopupMenu() if (RSLinkClipboard::empty(RetroShareLink::TYPE_CERTIFICATE)) action->setDisabled(true); - contextMenu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_EXPAND), tr("Expand all"), ui->peerTreeWidget, SLOT(expandAll())); - contextMenu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_COLLAPSE), tr("Collapse all"), ui->peerTreeWidget, SLOT(collapseAll())); + contextMenu.addAction(QIcon(""), tr("Expand all"), ui->peerTreeWidget, SLOT(expandAll())); + contextMenu.addAction(QIcon(""), tr("Collapse all"), ui->peerTreeWidget, SLOT(collapseAll())); contextMenu.addSeparator(); diff --git a/retroshare-gui/src/gui/common/RSTreeWidget.cpp b/retroshare-gui/src/gui/common/RSTreeWidget.cpp index 9c91c5f2e..7e3a8b216 100644 --- a/retroshare-gui/src/gui/common/RSTreeWidget.cpp +++ b/retroshare-gui/src/gui/common/RSTreeWidget.cpp @@ -264,7 +264,7 @@ QMenu *RSTreeWidget::createStandardContextMenu(QMenu *contextMenu) QLabel *iconLabel = new QLabel(widget); iconLabel->setObjectName("trans_Icon"); - QPixmap pix = FilesDefs::getPixmapFromQtResourcePath(":/images/settings.png").scaledToHeight(QFontMetricsF(iconLabel->font()).height()*1.5); + QPixmap pix = FilesDefs::getPixmapFromQtResourcePath(":/icons/png/options2.png").scaledToHeight(QFontMetricsF(iconLabel->font()).height()*1.5); iconLabel->setPixmap(pix); iconLabel->setMaximumSize(iconLabel->frameSize().height() + pix.height(), pix.width()); hbox->addWidget(iconLabel); @@ -273,7 +273,7 @@ QMenu *RSTreeWidget::createStandardContextMenu(QMenu *contextMenu) textLabel->setObjectName("trans_Text"); hbox->addWidget(textLabel); - QSpacerItem *spacerItem = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); + QSpacerItem *spacerItem = new QSpacerItem(40, 24, QSizePolicy::Expanding, QSizePolicy::Minimum); hbox->addItem(spacerItem); widget->setLayout(hbox); diff --git a/retroshare-gui/src/gui/groups/CreateGroup.cpp b/retroshare-gui/src/gui/groups/CreateGroup.cpp index 91380f98b..2a3defc9c 100644 --- a/retroshare-gui/src/gui/groups/CreateGroup.cpp +++ b/retroshare-gui/src/gui/groups/CreateGroup.cpp @@ -41,7 +41,7 @@ CreateGroup::CreateGroup(const RsNodeGroupId &groupId, QWidget *parent) mIsStandard = false; - ui.headerFrame->setHeaderImage(FilesDefs::getPixmapFromQtResourcePath(":/images/user/add_group256.png")); + ui.headerFrame->setHeaderImage(FilesDefs::getPixmapFromQtResourcePath(":/icons/groups/colored.svg")); mGroupId = groupId; @@ -69,7 +69,7 @@ CreateGroup::CreateGroup(const RsNodeGroupId &groupId, QWidget *parent) } setWindowTitle(tr("Edit Group")); - ui.headerFrame->setHeaderImage(FilesDefs::getPixmapFromQtResourcePath(":/images/user/edit_group64.png")); + ui.headerFrame->setHeaderImage(FilesDefs::getPixmapFromQtResourcePath(":/icons/groups/colored.svg")); ui.headerFrame->setHeaderText(tr("Edit Group")); ui.groupName->setDisabled(mIsStandard); diff --git a/retroshare-gui/src/gui/gxs/GxsGroupFrameDialog.cpp b/retroshare-gui/src/gui/gxs/GxsGroupFrameDialog.cpp index 963b3a8ad..425b87faf 100644 --- a/retroshare-gui/src/gui/gxs/GxsGroupFrameDialog.cpp +++ b/retroshare-gui/src/gui/gxs/GxsGroupFrameDialog.cpp @@ -42,13 +42,11 @@ /* Images for TreeWidget */ #define IMAGE_SUBSCRIBE ":/images/edit_add24.png" -#define IMAGE_UNSUBSCRIBE ":/images/cancel.png" +#define IMAGE_UNSUBSCRIBE ":/icons/cancel.svg" #define IMAGE_INFO ":/images/info16.png" -//#define IMAGE_GROUPAUTHD ":/images/konv_message2.png" #define IMAGE_COPYLINK ":/images/copyrslink.png" #define IMAGE_EDIT ":/icons/png/pencil-edit-button.png" -#define IMAGE_SHARE ":/images/share-icon-16.png" -#define IMAGE_TABNEW ":/images/tab-new.png" +#define IMAGE_TABNEW ":/icons/newtab.svg" #define IMAGE_DELETE ":/images/delete.png" #define IMAGE_RETRIEVE ":/images/edit_add24.png" #define IMAGE_COMMENT "" @@ -490,7 +488,7 @@ void GxsGroupFrameDialog::groupTreeCustomPopupMenu(QPoint point) ctxMenu2->setEnabled(isSubscribed); if (shareKeyType()) { - action = contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(IMAGE_SHARE), tr("Share publish permissions..."), this, SLOT(sharePublishKey())); + action = contextMnu.addAction(QIcon(""), tr("Share publish permissions..."), this, SLOT(sharePublishKey())); action->setEnabled(!mGroupId.isNull() && isPublisher); } diff --git a/retroshare-gui/src/gui/icons.qrc b/retroshare-gui/src/gui/icons.qrc index 89c0f83d9..33560031a 100644 --- a/retroshare-gui/src/gui/icons.qrc +++ b/retroshare-gui/src/gui/icons.qrc @@ -342,5 +342,16 @@ icons/wire-circle.png icons/folder-account.svg icons/notification.svg + icons/groups/blue.svg + icons/groups/colored.svg + icons/groups/green.svg + icons/groups/indigo.svg + icons/groups/pink.svg + icons/groups/purple.svg + icons/groups/red.svg + icons/groups/yellow.svg + icons/newtab.svg + icons/newwindow.svg + icons/cancel.svg diff --git a/retroshare-gui/src/gui/icons/account-convert.svg b/retroshare-gui/src/gui/icons/account-convert.svg new file mode 100644 index 000000000..1e5609fad --- /dev/null +++ b/retroshare-gui/src/gui/icons/account-convert.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/retroshare-gui/src/gui/icons/account-plus.svg b/retroshare-gui/src/gui/icons/account-plus.svg new file mode 100644 index 000000000..cf743afad --- /dev/null +++ b/retroshare-gui/src/gui/icons/account-plus.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/retroshare-gui/src/gui/icons/cancel.svg b/retroshare-gui/src/gui/icons/cancel.svg new file mode 100644 index 000000000..bb921b5fa --- /dev/null +++ b/retroshare-gui/src/gui/icons/cancel.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/retroshare-gui/src/gui/icons/groups/blue.svg b/retroshare-gui/src/gui/icons/groups/blue.svg new file mode 100644 index 000000000..ee0b3786f --- /dev/null +++ b/retroshare-gui/src/gui/icons/groups/blue.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + diff --git a/retroshare-gui/src/gui/icons/groups/colored.svg b/retroshare-gui/src/gui/icons/groups/colored.svg new file mode 100644 index 000000000..8483f270f --- /dev/null +++ b/retroshare-gui/src/gui/icons/groups/colored.svg @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + diff --git a/retroshare-gui/src/gui/icons/groups/green.svg b/retroshare-gui/src/gui/icons/groups/green.svg new file mode 100644 index 000000000..3ca8e3074 --- /dev/null +++ b/retroshare-gui/src/gui/icons/groups/green.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + diff --git a/retroshare-gui/src/gui/icons/groups/indigo.svg b/retroshare-gui/src/gui/icons/groups/indigo.svg new file mode 100644 index 000000000..56efae8d7 --- /dev/null +++ b/retroshare-gui/src/gui/icons/groups/indigo.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + diff --git a/retroshare-gui/src/gui/icons/groups/pink.svg b/retroshare-gui/src/gui/icons/groups/pink.svg new file mode 100644 index 000000000..e8b72e1df --- /dev/null +++ b/retroshare-gui/src/gui/icons/groups/pink.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + diff --git a/retroshare-gui/src/gui/icons/groups/purple.svg b/retroshare-gui/src/gui/icons/groups/purple.svg new file mode 100644 index 000000000..f4d78db5b --- /dev/null +++ b/retroshare-gui/src/gui/icons/groups/purple.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + diff --git a/retroshare-gui/src/gui/icons/groups/red.svg b/retroshare-gui/src/gui/icons/groups/red.svg new file mode 100644 index 000000000..07b706a28 --- /dev/null +++ b/retroshare-gui/src/gui/icons/groups/red.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + diff --git a/retroshare-gui/src/gui/icons/groups/yellow.svg b/retroshare-gui/src/gui/icons/groups/yellow.svg new file mode 100644 index 000000000..06982a820 --- /dev/null +++ b/retroshare-gui/src/gui/icons/groups/yellow.svg @@ -0,0 +1,53 @@ + + + + + + + + + + + + + diff --git a/retroshare-gui/src/gui/icons/newtab.svg b/retroshare-gui/src/gui/icons/newtab.svg new file mode 100644 index 000000000..5e7c4316b --- /dev/null +++ b/retroshare-gui/src/gui/icons/newtab.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/retroshare-gui/src/gui/icons/newwindow.svg b/retroshare-gui/src/gui/icons/newwindow.svg new file mode 100644 index 000000000..dd9e408cb --- /dev/null +++ b/retroshare-gui/src/gui/icons/newwindow.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/retroshare-gui/src/gui/images.qrc b/retroshare-gui/src/gui/images.qrc index 4dc8177bd..468a0177d 100644 --- a/retroshare-gui/src/gui/images.qrc +++ b/retroshare-gui/src/gui/images.qrc @@ -22,10 +22,6 @@ images/streaming.png images/white-bubble-64.png images/orange-bubble-64.png - images/stock_signature_bad.png - images/stock_signature_ok.png - images/stock_signature_missing.png - images/stock_signature_unverified.png images/anonymous_128_blue.png images/browsable_128_green.png images/browsable_128_blue.png @@ -107,7 +103,6 @@ images/graph-checking.png images/graph-blue.png images/avatar_background.png - images/button_cancel.png images/chat.png images/cancel.png images/close-down.png @@ -295,9 +290,6 @@ images/sort_incr.png images/sort_decrease.png images/sound.png - images/tab-dock.png - images/tab-undock.png - images/tab-new.png images/transferupdown.png images/tools_wizard.png images/uploads.png @@ -356,11 +348,6 @@ images/up1down0.png images/underconstruction.png images/user.png - images/view_calendar_day.png - images/view_calendar_week.png - images/view_calendar_month.png - images/view_calendar_list.png - images/view_split_top_bottom.png qss/chat/standard/private/info.xml qss/chat/standard/private/incoming.htm qss/chat/standard/private/outgoing.htm @@ -427,11 +414,9 @@ images/tags/dev-translator.png images/tags/dev-patcher.png images/tags/developer.png - images/share-icon-16.png images/toasterEnable.png images/toasterDisable.png images/emblem-web.png - images/rsmessenger48.png images/SmileyText.png images/SimpleText.png images/ColoredText.png diff --git a/retroshare-gui/src/gui/images/button_cancel.png b/retroshare-gui/src/gui/images/button_cancel.png deleted file mode 100644 index 3f0c98b7d98da3ca38d36f581de0fed5d55b5f95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1518 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 Z1^}|Y?mox^I4b}E002ovPDHLkV1nNgH*Wv{ diff --git a/retroshare-gui/src/gui/images/share-icon-24.png b/retroshare-gui/src/gui/images/share-icon-24.png deleted file mode 100644 index 09eee141f0e8b56e0a11ecfdddbab06a23c79297..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1379 zcmV-p1)TbcP)V6h7zP-ckhQvtP8dR7#5z=LXp@E}5G@3`E@|VjQ@*xDO)9+?EV7ld3UssFVHJ zM$DE>&3-P+Ha47baWm0OojBvi1Qi9ff*_W*R4AYAeRtk_OECk7F?(-s`+nT_ea>^9 zbIvV7tXXRox*4DefYAumkAQ$8f`A&3M1D)4rC&s0avSw&M^pxZUo;TawR%hT3=#&!*`z-aq%ru@*G0%@ap^Mz=Z2javgg zL7XJ;L@l;ALoY|Wn*BRXPUFX@f5jn<+#afTzhkTIx<+OQlNKuE|J9$GUA%OpI5hGKR66U~$B^9U3$i_EE_X_Uogo6S*Y)1w!p`movKe--*#heqmxCw>5E^~} zyASV!Z~puaM9_fQ0l)#w3rrrguF01MZVV_4`tEQBFexI&y!vn-$t~*uM6jt?oIc!?`24p0q z#R2~4Xu;PHyvub0gJlxH=)oKU2r2;fI{!UXWuz-AN9dN7*hUl;3NN{qzz55!VV>R& zEdBA0{P{2An~0jt3o;F3H!XG8h>ZkjIM4;Djy9K14@GF1tT;A6oBS!58Pf zKr0NJE;q9?-m`G2rxi?djc86WGH13(EETu``T#E4k-!AFfbB=njhbT;K%^+5FkNP z8RQgE6y>gSO8r+u^{zKwr zU++Q7t9B`LYnTA+byT??qf|4pd=Bhe)d)|U7RG0PX+I3xe&0@MMioE8fCE_ESyb#+ zTBX4|V+sRNC(cl!rTw=X&xbCH`Em{wS%p|0_I z7e$ejB;w<~(PX8ZM3tzccL7g4waQSN7$yKNvYRw8l@UPq*hkjY)~y*%Z33{_Tr^7~ zlt9P$SXWc`&YS|nUNo<=ioWB0=EVGrS}8MeDLnZLGcMAEf8@ki$H1qK(!5^fFynHw zuK$!TGa8Ph{T~3@6zzcRLgzWnxXML}Uq9SZo_dg_l-$DdP|I{k5QT46m2LP2OoL)~pjl16=+sG63e-<#9o$ z)}dib4PGkW1xb_^%$u6E!|+Ba5;XB(xp_xH2!Lz?80nQUm$Xo5Z{4z+)3ZWW2`Yk9 z!9#soa=d3tE%uhz!Y3NWaWisKv*rPme^>$2_z=$#7J-blA_hYNjP`p0nDZIeEUMO5 zpt`h@Kc6;s;&A6N)Ra|`^WA>Ozl`*vsr3-f7`srox&V*g^9XFyHXQ%84P!P7)Krda zCIeWN7Yg9PM2ro30i0CNuWoI?i<@f}-G-jgUL0(F4_!m&pp~>dLTqb16l>CaDm|57 z126}Wo=pHJLjYVg%Um+;4m(EQ>J936aKemz#}A@=_($lNV{#-!pxq2$WmXt~@nIQ? zpwM0#aH6gy=pTLX{U^M|OL4T)$PWz$kh&%ez{C}=jIsz^X$&5L?*>j||JO~h*eAHu zvd~8aKnKz-tHS_TN4)#Ta^RKw8}QtQ#dF|9UmM=}_7KJd+#s4lL;3mfbFf80U+&7Ftw1AX7UssP*8QWebF zIG|-Rpb7{e<<>9&Hj5X46Vr#utX~KCio80&1gO5W7SEU6&;gUx41<2Y4m^6K0%q%+ z4iG?cS}1@A5;1x020$naRKmKF8tg9F#aH@Yvpem$_oGru*mw@GYy|;)vj~8J0RFkI zLgG`o{b5RLj$dQ^)app*ATDfOA@j&U-)3G(1~lVXV5WW+$xuvjbya^ld`GwLDo+i#cge-q|8Zq9K+M zP+YRf^5vx+id!}!;KhU~h@M&og8@H~V`A)(uu&VKW<|iOnGYhK8hbgs*)L}P08n#M gn`X`tLq`$YzW_3pKZNYoo&W#<07*qoM6N<$f)?>l9smFU diff --git a/retroshare-gui/src/gui/images/stock_signature_bad.png b/retroshare-gui/src/gui/images/stock_signature_bad.png deleted file mode 100644 index c8de64f7ac1b48486601431f0ba9766bbe439d46..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2094 zcmV+}2+{Y6P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i*t+ z4FCsA+J83y00*u~L_t(o!^N0sa8>0Q$Ny)&+d21~a~FbyuuG6=fr-E%TZSMGAYhGE zJ9P%z;s>n5U=>?iv@Lvqf(FQP2~;<-{(2M^Stl-{Qu_&xNGCB9!|qG&l^yOU%7PkYD2i<0O;BQcykan$60hH&L^Kpk@ebq~)J?+S-3|8>OFzC(3W#Mv{& zkju}Yrt$=!lmmg%0dQCU=`MiGpVe<<+^>fu8rXmMBBX2QQBm|YY+M2K{($pApiVw5 z-&u&clU#l8TQqKB4;;)ZMrm;|>~9aDy5=;X#Q?@bK$#UmZDi#g1bM9|d}eyea|w>} ziYgpGc@cI|9;zyi0gBWJfgV6< z2!}ntky6}T0;367OwuiWsH@C%csR%F{~{`Ei3N3qi9;?cgrAlQz20Mi+kRa&x(b82}&xfCI>!SZO52 z)~h5acqlTZ+>(D1ar`^o!pvKT_<1k5%uveoQ67a6?EWktk(0R)c^0$07qPfOK~h+U z02_dfVbvaVt(UV}KnN_@p_S)flx;sQYc0t5*B#u-M5RG-}@)k+gPPODxLLEA=v zM9?OJc7ft$mWjPT4l-$O|B0)(YWsOUIdcmI^>+-2NleovRttXG2+~G?HUexwz}~1U zTyEj_KbS7nhtPhPi)7CDk%2=+~ zWY!4&R=I+#68zktDb-6YOuOkyXIhxC-Q#FgnMRm0(Z^MWP?crEe|`3d1h`W!&B{8$ zg)4LEF;h8Md6b(xY7@Zq2dWbMTx|#q%PsV|K8qA#j4 zweWM3N97wYhZsNV6F%!ngjYn4Ovi^ zSvXMmJ(%dz5#)ZCi^(oe7|;jaF>!YbnEvNDso{jGlT8rKR~-V}qNyD3*C_zA+LO1v z4sF`Bp-O02;{Bq+wjEypAP{)as5q4vhs^dQmfA6Q!jli-A5Z9A+(UL=MW1>{lWsIB z2SErB(67!3PmS%1vFlH6t-;aGUXe)?`s2!`Dfh8SiyDuy(6}6hiV=01Yy|Din!=?% zJk^;H6O#I(a@|N5|EFqE8q|OQH)smy>&VS-E0)~uanvpIA-OXk#*OZU?>0|ubX2Vx z8i^oxXbw)+aToxW`0!EF29D}8AL}xg_%P;nAd(YfQT#zNxc7T%Y$M2xn#wtYEduyi zbHEA{YtA(;6I)m2L$6ekW}$yaAYvZ~qTr(xaCeKfyIzSsZYMu^>8A{;*aJXm4q9wM zO7mgcnO4hWBfuKL&-VmIS#eHc^Cpja^LK7tz?*9fp~>F0I5Zw~y16aI$8g?! zzA)AzfY~?8waOGOl{Koi-P-A;S=be_e#8U6YCv0LAY9r?@@)ipTJdt%voYkk-*9)< z)9k6^6ae!U%vH=xjyg0hx3J)czhHRr`DMwBf+&_uzCSv^x-TB%!Bvm* ziNQ_+c==ZMTb7CL>kKic^wk=j_xP%^=Si`<(D|di5dXExKrk8g^ATGOk`$SaJK$^ zVK)ODd%wity;XW-6aby0nC%^}n=UZE3+RyXEr6l8N28x8AR>t<01%IRJl+H_{9Xe5 YA9`&FUHFxB3IG5A07*qoM6N<$g0aBe+W-In diff --git a/retroshare-gui/src/gui/images/stock_signature_missing.png b/retroshare-gui/src/gui/images/stock_signature_missing.png deleted file mode 100644 index 66c03a4e6aabcd050d7a8e24a91b570b26a6d536..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2021 zcmVPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i*z> z6dV9ZOVhXj00(7BL_t(o!^N0+aMjfn$3MTfWP2oe5J5s9KoSTAf&ef!7z z1zr&(BoNQco%`;ad(ZFl&bep#J%cur6_Ejy=exo<2*>g*|vG&w^j#IqC<`wzUa|!}0bHCq)klcH79joQI?Q zGBuUwz*!EDl=LB}`i(XKd23G0@NTo>2ZeI@WG?p7YgFWDaxt;+=F$70}s}B_F8fNt>0EY$P2aE=$0I`DZz!_kV;7j0;0rkxXsaxDLdDxVs zCpxnIzgNgTeV)erlfYF7>Im&0gR%gqC|d&W<=zAVIs?xGlYF#w21Wr_fJ=hEHbANq zs=gay=Gc(fnAfIHi{s42d@>H7r!nW0SB*p9?hg$e;YRUR_{#@PrT2;|+SvB8>q zSU?*cuwF3c?hw;@5a?b#d1ivksaihYbAj6P8K5l7B|RZ1778n`Vph%nzX-SHJYWrw z3tR>+0V9El7DzbYZ@DgB@H^mB13b4>O>u(p(WvJpL=E~uC?9@wg6qdJyzbx|2nqxD z04T15s=}r4kL+f9TF^l-Rxn5KwLsP=5d1-2KugBI-h13St=oM~PtV>d!*7vbf*?{j z+lz>aBJwxFn7jp^wzoJK1xbS4J}{NmItfNh4Cp@3T)p$EUR{1j0U>V*rV9oLBS?e| z5>c-R|0xA9E~ZskL0|}a3qBPzS}=`O*v@tgoN#^4np0Z7HbXA=O2JEl5dyaeiWEI& zijb*-q~|SNLEowZ%>^+)zy-l8z;R#^;0nU*v$0n_RYnmnEjde7X%0}}jS{DUEp!0= z%5N~eJpI^fY#HbkHF}Zh!EdMib15rtICKTH|Nq-7zor zd9mx`PjP7Be@MtWNdOJRQGB-}MZg81&Rbw811f-JKCZt%SvmoGP$B!`6_%J-7Km{^ z=UaOU4F^Y@?KxWK$@~@73&Sx>t&3vwnbUhWZa2FLTIV03-uCuo zeF%yd*dJIym$yp%Ot7s18hjtzU_(_sf~6?u&F^;m`N<9Q?yHHr*M+YMqD^y z1tIKdG^n%oUzE3Swiv)ENEYl8UZwS*lEE(N@NcDtGg942sq8bUu2ip1c}&0z>+DYj zmo1PQ!OGTvj20YdswefJl0gn>*L2BqKr%C>!oN#qjt*{mQ{7yA=5zK@!Mi?IywcLh zm@6prbw}P{q>~e+@_$NZmQN4`N0r9i6dW}gX%K;J?YR;j;E-SkJql?Mjgw!b5p&YTishYF#et( zR(Vgvr`uW+hP&?!8%CdTWL~l{@+VW-xap7BiuQoL9fx;rWyg`?G+^Id^lpP&cLzwg zCx|s?SUpBsUcRb3k?ivx=eD*Z@jR&H4DcB6br?kS>ddewl9Na~QBK#mF|-dep=1xH>EiglZ2r7v8`%}C21@T? z?R?;z&w9lD)S4Mj4(;Zrz(`DDh>nY=G4lg19zMgay*X^zm&?IyJ_J@ZBN&T-Q$Vt{ z9@^Yg64Av)-i9}Z>+{VEWHx3gW5+zbIXPGfJy5WdGT`OrHd9uH9xuqW^2+Syg8XU1 zz(8$%?-$DY>JzP7@{~qKA-5knz*3-B3zDSEDi_18_v?E~-|%2c=TD8%jtvX6C}p6! z1|r~JK+m@Nmo3EK&VeUm>{^gAP*W4SsGXfkAcZ!TK^Cnk->s0v z?m!gV3Hdw728QrGNsP^))@~yUh~;~h-``K1KMeUF&IO~Unj@yd00000NkvXXu0mjf DuZ5}B diff --git a/retroshare-gui/src/gui/images/stock_signature_ok.png b/retroshare-gui/src/gui/images/stock_signature_ok.png deleted file mode 100644 index 454421ad15d80765f71173c3f2ceecb59075817f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1877 zcmV-b2demqP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i*t+ z3^)kQIJ9a200z}bL_t(o!^N0;Y*XhMho5tNY{yQV3%Qh;5CXZAgj))vTto;olt6EQ z7$p_!+NztjmC`W^Y!gMSl_(`jTc#F4pcRZrbflYDfeIDWt+ZT1C|Me421y8Z;*g8u z*hy^1_WAaQL8=&|F-_o=zQ4}--t(N_?|kohzfXcv?oWuMuqeZp$T;2ft~R?p(C<2j zFr0w!lMv|FK+%1GP-CSC&~Rd{kj6a;e~+JsWVevn4A~IKTbBFaaeF!FQC!| zrtuJ#1D(oM1qO!Gl43(j^0vZ-NmSL^=(gEVo6qC+T!n~-ASxGnV!RA^cMYQ=fia9o z*s=84Y`xRf$L0D~RBJ7Lt~$_af)FG@w|57qRSI~ALkSIX*!Fopojh(-fz<)AaT zyQ_bm`I7mOx$HhvN&P7w&LVHW!g9;69qXzMH&8gWt#yH4CDEW` zrx2k@Js6Opf)qY3U7H*}u5bzHGr;cxUoR-|(Fdh8Iw&2f(&dK=MGL-r*ciw^aJ_JL zG8KPbV+zkHegX`6ARED12c~SkKJ*R;kJTIp_I36`doO6@d;4?UZQ8uNQ5@L%q7<9` z*gS}u3wks3)`RN9>j<#7d^eUp%5N>}Yj#kip#>S06;JuL=NLKT$w{29jc3J+yK(n9 zpr;BVGC23y0S=#P`4ag1tw|TH;0*+mN+FIrg6L#kTU|_YVNoO`EaL2!-+{Xaeg8M$ zchcY0%l=*4=@?)u->cmXT~OZ+dTr36P{y5v%zikLGnIdmBa-GUqtTX0pEsVYsW~W? z-4Kz^iDPZ7TC?*)tDBkJ*5bt&AvtESW$f;&=JA4TB9gMF;PmETcPQj7Sb%h+5_;=# z2eLR=agbIw`?*7(+1(!;KlU4u^w}fi}wM?P=efU&8pec zN9%+k36)e*awijLEa%GUZ#jO#%Au33eAUbzplmn~GDexhvF&?(rugFEI-v%dM9q=k zip@(+VpcN3q@@S=RS3U@dydjYlMJHry%nOV?h~5z>`y@pe>Q#E2;$t1CSmRUq-=mko+&#~1Ug_x73 z5!1)&M7Tl|Fpmci8>0<~j0A*Up&6LU1Bz5x!mE*K0y22Ou?d*|AOZdhBVDXUjC;tj P00000NkvXXu0mjfWIK7W diff --git a/retroshare-gui/src/gui/images/stock_signature_unverified.png b/retroshare-gui/src/gui/images/stock_signature_unverified.png deleted file mode 100644 index aae661fa686e42630f258886cf9ac83851bd765a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2001 zcmV;?2QK)DP)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i*z> z6dEqV$9eGp00&V?L_t(o!^N0;P*m3)$3J&jU>DeB71t^tAR=fG1X0lum11gC)Hu~* zL=&g6KJplw##b}RC^fa!)Wk+-OnebX6J~70w9crF^^q|WH9ip%B?<&sK?Rm&7g!#$ zzy86dLsHpYh@-!mJ7?~_=bZW6-|u(M?|ZJoW3$a+nn3M(eIK9X+Ph|Rdz0;JM0*na zPr++V%Hx4}CrAnKKQ?t?%&7Yfjg%DJp!vHKG&S4+p9wc<8~Kvzv2du>o5s!@G)iYs zQBqum+FDF=!%gtELZ7-J_}SO}2t*)8AX~sB&?-RQNJZjv4MTtp)oV!+u zm!$%m=?V^NK^G00VbG?&t#pET33wmye#mThfH4Y~x(D&rH0_{>L(eac^SySniW}E& z;kb2zM%#G^=mo}9unuma_QCkh9@!350!x8lKo3j zxlvS!!&E?{?Hlm+g1|T+4C-38!Mcl`L9&6N3hY#%N&%Y!$AE>-_ftHFc+CryYV)MI ziIE|F)#P2hLv!g3n(pU=Vg_9#_z!^^slZ|10`NZ&1r{k_f5@ztoNa*TAgyl|g_m&pEIPo1V zMfo75&X5cQzZj@#D96#bqVq_V3y4v`X`l~qNP+#XA?A34^3l^Trbi|X4dh>kZ*u=) zK2YAV==_4f5D(^7Xsp=)d&}H{2n+;{0tO%#$aL?GrZv%1pH9u3HI!4wi@Emie2|Kc zka$Z6M7sgZRk_f*$D=3rP(Q;Y2@hj2j-xkOeh!+$;At*_R zd{ywBa}TCQd7SeCW+zC0_r1r);y3&5@(-`e#+~`%Z+K5&sX(fLLGTL`A{Gkz41tNi z>#_=T@w}I_z3Uoclp0i`Iq<&;+2c)#F z+H+fCQa%&dAh1jzO(00{4;R7~2%2Pp=$UQ{bWcEhRJ_0Zw?mc$kNqXP4(3vHwhd?i zs(=#kc7Q$>EM?GqXET@%_XtFsAyMG}gwuv}yc+C;SJk%j+_*#%lXL{P=dkA=W^8Tc z9U;*@1?_;f=q#wRdhB}Vis>>x!VN5aWh}CGZnP9#+AGqMBj@>pb8a?Qv|iK zu7k)kQ@ZOB1?Fdr^2;6)+}kH0P)8rVoe`rWiH|Cw#vad>qoHK)JIKB2`@a{D%7P0J z7xwJDWS^WZ@4n(!Tw}yiauK7Z27BEds>({3{??~hY{H898E1=YNxf7-`wz+wSmP|9 zeVyCF5#UdX+b!ZDRruHOG*jv3J#f`7%;EB6?bl!juv1ow_X-!XihSHSTr zb+>`NJ;>2X&UTdo4p+ix^x%Gs8J#wfE0?W=#!aSIkOS&Y;BfeJ=~Nki|L`znHnszn z9)NVI{C+9}UKpP|z(=%UIEZ3UTq5lyySa6)kmDy!96VJ?UKx9UEk8$Cxl?{2!Twb3 zTQ^R=IIv0_?WK}`u1TNNW|cS z3D^J(ejNXFp6ai|vLYi&j_g|{Yvw0Ns1^bKNylO9k(fKdrT6vX?D!}zSv5aFGE#yi zz>5Z8{-gd{cOV;s1Cfb?y(D>{kNB%8?X=7uE65uLEfUig@l{hs#}@oVEJ~%&;-#XL j4oUY!Z7q=eBmw>lX3k8JmH;4j00000NkvXXu0mjfKzzFU diff --git a/retroshare-gui/src/gui/images/tab-dock.png b/retroshare-gui/src/gui/images/tab-dock.png deleted file mode 100644 index ba059de403d4058de57681bcc4f1ef2d92e34e41..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 265 zcmV+k0rvihP);~1(3M+$Axi7yB1%$mcHqwjXZ$wChS9>p z{{RSN4O#Vi9CC)-r+`h8BnQi~=x3v{l}gf*6M55?~L5gj`1f z&N-7(el_a4My6?wUZC&$aR&$?*wCUr{N5R3! zqA0Wg$8i);mZcV8+qMGW(P#ni_!Q7I4QtzW7C;C=hGBF-^omYh7XQWvC!|$#gu6U} P00000NkvXXu0mjf((rFj diff --git a/retroshare-gui/src/gui/images/tab-new.png b/retroshare-gui/src/gui/images/tab-new.png deleted file mode 100644 index 3bbbb51c18367c5c098254c0a7d0ab4b97e1e35e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 435 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf4nJ zFzyCnMyofE9{~j=OI#yLg7ec#$`gxH8OqDc^)mCai<1)zQuXqS(r3T3kpikV@N{tu zskn7_;zqB-0U~YttM_`ZjFLIx$0upbsk+~D+`a#@FL{)%G@V$ta!n}0Op@DdfU&KFZs6fs+4WY>~nyNqkvq&UM^dC=2y``*i!0C&%+|-); b@jn=3mz;W3(chg43}6ONS3j3^P6-?)JUISV`@iy0Ug zcY`pa)tkqUfP#`Gt`Q}{`DrEPiAAXl<>lpinR(g8$%zH2dih1^v)|cB0Tu1@ba4!+ zxRrZuC+{HxhSrDI)A~JfCMxReG7$-Ik?CHN$k8X7z&DMyi}L4_|79>o*;SOuYX02j=_GOCv<;;a3`8F$&1E zu{jzyPn+-XmS>m3i?jtd*)Q?wOh{_w-FD+~gRIe-v(`t2K8oAz%RBP$%FKyCpD=j3 L`njxgN@xNATUvMy diff --git a/retroshare-gui/src/gui/images/view_calendar_day.png b/retroshare-gui/src/gui/images/view_calendar_day.png deleted file mode 100644 index a32fbb72388f5cf59be2e8f2d826b571146053ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 696 zcmV;p0!RIcP)a>g%^Qro(TkfdA)LTw^i zge$RsAZXE|O@BaZmoC}}ZHgkXAR@vt7#DpI3|3&%e5Es^Io>;W?)$!{MciQ&r5-q( z!}~t`c+Rl^dvS3w;dx#Tz_#t$?Cfj@2eh!Tpu>4?ZY}~KBF18ZTk)>=_4Nnq7XbEZ zdus5;;L1Tj`EmJDICo#|evRRwypef}i@dsa`^w~aFbRO;MDT{Q#G_rr+B(33-!+$= zR9gdaNzA_2fqu}HYIWkb(7k8-&}KA$HRi;3&H`p^W0LIGn8#YzQfZKb%qjWGrhA(zWB zHa12omHJRBmEHnaz@+QCFPrailrou&tgWqmoSB)K5RqyKIGs!;&pM7{{R`mxzTVv2 eTosX>@a+$KB9MM>NLw}l0000YnNTP31p)PN_8V*0@F|sRD@D>r=YD3b&{D(=gqq=+6go?pcgLh zz7G!Pa(N2S)oOJj2!bB~TI=re^70scvAVh%C-ut8N(w+ktl|=PbJ^UjttVS0fKIn# zrf*L-`T@Job}LCeeq;PCmYTei$BN6mxq0vUVli3-z;RLpbKl9Ovt)+HK*67`&)&vx z54MqM@chxM*Z!J+)dAG!olTy$UXU3%K`uSY>CG`FPNg|>G7Z2lugy=@W~bfZciZQD zG>_vrDF6q+T0sPiwM4O{8yUQAcwnT5xHJENFRibf9i8Rnw>3VsKK5)J0Ama~*2FP% zqZofbMiUZ*27rg|ecJmGdqIE~gj~qYfh33_t{7viF-HD1<2aV7*{N$Hf+0P$&#ENZuX+Bp0sh zQY;p6U3Z{Cxm-TpKt#yr^C+dr=kxz(kN}#^CJPG-G@H$14Lr|dW@d&=CL_M@_x{GB z@B6mX>4@iflB~z&`ue&UW29QGz6VAQ#&~F^lv1fw3V>wok8Cz8wOZ}N($Z2{L;?T> woSU4Syy!TN8rb+@gkczOZ*RLIvX`9w1@Ajb0p^Y-od5s;07*qoM6N<$f-3JJWB>pF diff --git a/retroshare-gui/src/gui/images/view_calendar_month.png b/retroshare-gui/src/gui/images/view_calendar_month.png deleted file mode 100644 index e90194dcc2cb68f78a2f097e98daf8c4c35a3e1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 652 zcmV;70(1R|P)f^uXbF z&RP8VbN&i&^7(w5=XpN?9LMp8hlkS~s?pKWs5*~~jMM>$NUZ4Ney%Y$xbbY`3c#+v zYrF1t%^nsgjg_ud=jPkZGsHZX_wrP6m3Ma@-0Hs^_5+}G9bV55a+yZ5sWd3~>sQ!W zNF9hRWM_H#X8fYn`X*-jl^>hY+-({Cy%4N&l<&Rt8 zeAtWDx(+}C#IYa(HjW9S7(cX>eY5AtNpP?C5udg{)6vk)>o1e6Y%d?U(E!$3oX8=H zzz-uTL4=`cPdO)fY39egfV{5G(x1%VM&hE|u5kV7TMTBoH zEr{NGXb=@4xX?u@)?h_&OY(D=9Pgbw_uTWgh?&%c^nsV( z%i-bSd5;3D@$vEIFbtOgEXyhn4-aS9qp`8Eq`HrcjHCcW#3=f>?KOHgmL4wk0&JJJ zb;r$)>AeA)Pc|=9_oi!2Z!tWQck)1Sp4Zp!3=Z_f0|3}|im>YkUbc}2Hv>^i zZY^xKVVb9-Q!j(b;Ia*<#q~Uo3llUPJ%X35<5)gJb1ut?`YZseTP0RhiS^Pp8>N6# zaW}SYrvPjKV+0Y<#tN7j<8$E)t#zHe_&Ui#VZPSJ2GCk#B^F5n z6 zeIH}YE+*RWeLBTXpGuUjogh-{Lt9(hzHIG@*p|s diff --git a/retroshare-gui/src/gui/images/view_split_top_bottom.png b/retroshare-gui/src/gui/images/view_split_top_bottom.png deleted file mode 100644 index 8c0e4db5685e6275d704316c0ac6f81d0bcdd920..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 422 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf4nJ zFzyCnMyofE9{~j=OI#yLg7ec#$`gxH8OqDc^)mCai<1)zQuXqS(r3T3kpik#_H=O! zvFKep+0pM%fI!>+N?9qT+fibyO45fkcQkYJFAV=IrZVRs^MyPw0Wpc}-@lHry75lr zc(nb0+P^rHV&S`grqI0s*tsMeR z4DUH_>*{&lGVy&cGU4t!)m5v)t>#LEs&*~%zj%gYq3ZeKUw`esUKT!mwCUwvXO@n4 zkM}V4E&FKF``^%Y(vmG}1$~#@@mVI%r{S=^{Ahti!u_Z3XGoq-tNLC`UD zKU+)_^M`xMY3kl-ZQp;d6Iq}WKIQ2ve@+nv-}RC_Mtye=Dk`#k+QYDKYQ-v^2XlV! z7ZTm@_18{bMH$`9xJNwAO?)A)9yYjjg%{aaE{U5&B%bP9Nmp%Z+ O0)wZkpUXO@geCxsbgHBP diff --git a/retroshare-gui/src/gui/msgs/MessageModel.cpp b/retroshare-gui/src/gui/msgs/MessageModel.cpp index 5196764a3..4ecdf67ad 100644 --- a/retroshare-gui/src/gui/msgs/MessageModel.cpp +++ b/retroshare-gui/src/gui/msgs/MessageModel.cpp @@ -544,8 +544,8 @@ QVariant RsMessageModel::decorationRole(const Rs::Msgs::MsgInfoSummary& fmpe,int case COLUMN_THREAD_SUBJECT: { if(fmpe.msgflags & RS_MSG_NEW ) return FilesDefs::getIconFromQtResourcePath(":/images/message-state-new.png"); - if(fmpe.msgflags & RS_MSG_USER_REQUEST) return FilesDefs::getIconFromQtResourcePath(":/images/user/user_request16.png"); - if(fmpe.msgflags & RS_MSG_FRIEND_RECOMMENDATION) return FilesDefs::getIconFromQtResourcePath(":/images/user/friend_suggestion16.png"); + if(fmpe.msgflags & RS_MSG_USER_REQUEST) return FilesDefs::getIconFromQtResourcePath(":/images/user/user_request48.png"); + if(fmpe.msgflags & RS_MSG_FRIEND_RECOMMENDATION) return FilesDefs::getIconFromQtResourcePath(":/images/user/invite24.png"); if(fmpe.msgflags & RS_MSG_PUBLISH_KEY) return FilesDefs::getIconFromQtResourcePath(":/images/share-icon-16.png"); if(fmpe.msgflags & RS_MSG_UNREAD_BY_USER) diff --git a/retroshare-gui/src/gui/msgs/MessagesDialog.cpp b/retroshare-gui/src/gui/msgs/MessagesDialog.cpp index b2beba606..480959bb8 100644 --- a/retroshare-gui/src/gui/msgs/MessagesDialog.cpp +++ b/retroshare-gui/src/gui/msgs/MessagesDialog.cpp @@ -663,13 +663,13 @@ void MessagesDialog::messageTreeWidgetCustomPopupMenu(QPoint /*point*/) QMenu contextMnu( this ); - QAction *action = contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(":/images/view_split_top_bottom.png"), tr("Open in a new window"), this, SLOT(openAsWindow())); + QAction *action = contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(":/icons/newwindow.svg"), tr("Open in a new window"), this, SLOT(openAsWindow())); if (nCount != 1) { action->setDisabled(true); } - action = contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(":/images/tab-dock.png"), tr("Open in a new tab"), this, SLOT(openAsTab())); + action = contextMnu.addAction(FilesDefs::getIconFromQtResourcePath(":/icons/newtab.svg"), tr("Open in a new tab"), this, SLOT(openAsTab())); if (nCount != 1) { action->setDisabled(true); } From 235ef6f509351922f244f283dbea223b38f4ecf8 Mon Sep 17 00:00:00 2001 From: defnax Date: Sat, 12 Feb 2022 11:49:50 +0100 Subject: [PATCH 030/503] removed old icons & cleanup --- .../gui/FileTransfer/SharedFilesDialog.cpp | 2 +- retroshare-gui/src/gui/MainWindow.cpp | 5 +-- retroshare-gui/src/gui/QuickStartWizard.cpp | 2 +- retroshare-gui/src/gui/common/FriendList.cpp | 2 +- .../src/gui/common/NewFriendList.cpp | 2 +- retroshare-gui/src/gui/icons.qrc | 1 + retroshare-gui/src/gui/icons/connection.svg | 38 ++++++++++++++++++ retroshare-gui/src/gui/images.qrc | 7 ---- .../src/gui/images/connect_friend.png | Bin 3472 -> 0 bytes retroshare-gui/src/gui/images/kbackgammon.png | Bin 2491 -> 0 bytes retroshare-gui/src/gui/images/kcmsystem24.png | Bin 1535 -> 0 bytes retroshare-gui/src/gui/images/rs_wizard.png | Bin 4495 -> 0 bytes .../src/gui/images/security-high-16.png | Bin 682 -> 0 bytes .../src/gui/images/security-high-32.png | Bin 1628 -> 0 bytes retroshare-gui/src/gui/images/settings.png | Bin 2637 -> 0 bytes .../src/gui/images/underconstruction.png | Bin 1755 -> 0 bytes .../src/gui/settings/rsettingswin.cpp | 2 - 17 files changed, 45 insertions(+), 16 deletions(-) create mode 100644 retroshare-gui/src/gui/icons/connection.svg delete mode 100755 retroshare-gui/src/gui/images/connect_friend.png delete mode 100644 retroshare-gui/src/gui/images/kbackgammon.png delete mode 100644 retroshare-gui/src/gui/images/kcmsystem24.png delete mode 100644 retroshare-gui/src/gui/images/rs_wizard.png delete mode 100644 retroshare-gui/src/gui/images/security-high-16.png delete mode 100755 retroshare-gui/src/gui/images/security-high-32.png delete mode 100644 retroshare-gui/src/gui/images/settings.png delete mode 100644 retroshare-gui/src/gui/images/underconstruction.png diff --git a/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp b/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp index 933e30168..a7d61489a 100644 --- a/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp +++ b/retroshare-gui/src/gui/FileTransfer/SharedFilesDialog.cpp @@ -91,7 +91,7 @@ //#define DEBUG_SHARED_FILES_DIALOG 1 -const QString Image_AddNewAssotiationForFile = ":/images/kcmsystem24.png"; +const QString Image_AddNewAssotiationForFile = ":/icons/svg/options.svg"; class SFDSortFilterProxyModel : public QSortFilterProxyModel { diff --git a/retroshare-gui/src/gui/MainWindow.cpp b/retroshare-gui/src/gui/MainWindow.cpp index 8d323524e..10ce2695b 100644 --- a/retroshare-gui/src/gui/MainWindow.cpp +++ b/retroshare-gui/src/gui/MainWindow.cpp @@ -145,7 +145,6 @@ #define IMAGE_NEWRSCOLLECTION ":/images/library.png" #define IMAGE_ADDSHARE ":/images/directoryadd_24x24_shadow.png" #define IMAGE_OPTIONS ":/images/settings.png" -#define IMAGE_UNFINISHED ":/images/underconstruction.png" #define IMAGE_MINIMIZE ":/icons/fullscreen.png" #define IMAGE_MAXIMIZE ":/icons/fullscreen-exit.png" @@ -506,7 +505,7 @@ void MainWindow::initStackedPage() #ifdef UNFINISHED - addAction(new QAction(QIcon(IMAGE_UNFINISHED), tr("Unfinished"), ui->toolBar), &MainWindow::showApplWindow, SLOT(showApplWindow())); + addAction(new QAction(QIcon(), tr("Unfinished"), ui->toolBar), &MainWindow::showApplWindow, SLOT(showApplWindow())); ui->toolBarAction->addSeparator(); notify += applicationWindow->getNotify(); #endif @@ -637,7 +636,7 @@ void MainWindow::createTrayIcon() #ifdef UNFINISHED - trayMenu->addAction(QIcon(IMAGE_UNFINISHED), tr("Applications"), this, SLOT(showApplWindow())); + trayMenu->addAction(QIcon(), tr("Applications"), this, SLOT(showApplWindow())); #endif trayMenu->addAction(QIcon(IMAGE_PREFERENCES), tr("Options"), this, SLOT(showSettings())); trayMenu->addAction(QIcon(IMG_HELP), tr("Help"), this, SLOT(showHelpDialog())); diff --git a/retroshare-gui/src/gui/QuickStartWizard.cpp b/retroshare-gui/src/gui/QuickStartWizard.cpp index 200e75948..ce953a32e 100644 --- a/retroshare-gui/src/gui/QuickStartWizard.cpp +++ b/retroshare-gui/src/gui/QuickStartWizard.cpp @@ -43,7 +43,7 @@ QuickStartWizard::QuickStartWizard(QWidget *parent) : { ui.setupUi(this); - ui.headerFrame->setHeaderImage(FilesDefs::getPixmapFromQtResourcePath(":/images/rs_wizard.png")); + ui.headerFrame->setHeaderImage(FilesDefs::getPixmapFromQtResourcePath(":/images/tools_wizard.png")); ui.headerFrame->setHeaderText("RetroShare"); ui.pagesWizard->setCurrentIndex(0); diff --git a/retroshare-gui/src/gui/common/FriendList.cpp b/retroshare-gui/src/gui/common/FriendList.cpp index 303b34356..dd2d17875 100644 --- a/retroshare-gui/src/gui/common/FriendList.cpp +++ b/retroshare-gui/src/gui/common/FriendList.cpp @@ -68,7 +68,7 @@ #define IMAGE_FRIENDINFO ":/images/info16.png" #define IMAGE_CHAT ":/icons/png/chats.png" #define IMAGE_MSG ":/icons/mail/write-mail.png" -#define IMAGE_CONNECT ":/images/connect_friend.png" +#define IMAGE_CONNECT ":/icons/connection.svg" #define IMAGE_COPYLINK ":/images/copyrslink.png" #define IMAGE_GROUP16 ":/images/user/group16.png" #define IMAGE_EDIT ":/icons/png/pencil-edit-button.png" diff --git a/retroshare-gui/src/gui/common/NewFriendList.cpp b/retroshare-gui/src/gui/common/NewFriendList.cpp index 1b2d513f4..991f5d647 100644 --- a/retroshare-gui/src/gui/common/NewFriendList.cpp +++ b/retroshare-gui/src/gui/common/NewFriendList.cpp @@ -66,7 +66,7 @@ #define IMAGE_FRIENDINFO ":/images/info16.png" #define IMAGE_CHAT ":/icons/png/chats.png" #define IMAGE_MSG ":/icons/mail/write-mail.png" -#define IMAGE_CONNECT ":/images/connect_friend.png" +#define IMAGE_CONNECT ":/icons/connection.svg" #define IMAGE_COPYLINK ":/images/copyrslink.png" #define IMAGE_GROUPS ":/icons/groups/colored.svg" #define IMAGE_EDIT ":/icons/png/pencil-edit-button.png" diff --git a/retroshare-gui/src/gui/icons.qrc b/retroshare-gui/src/gui/icons.qrc index 33560031a..57527d447 100644 --- a/retroshare-gui/src/gui/icons.qrc +++ b/retroshare-gui/src/gui/icons.qrc @@ -353,5 +353,6 @@ icons/newtab.svg icons/newwindow.svg icons/cancel.svg + icons/connection.svg diff --git a/retroshare-gui/src/gui/icons/connection.svg b/retroshare-gui/src/gui/icons/connection.svg new file mode 100644 index 000000000..b22e7275d --- /dev/null +++ b/retroshare-gui/src/gui/icons/connection.svg @@ -0,0 +1,38 @@ + + + + + + diff --git a/retroshare-gui/src/gui/images.qrc b/retroshare-gui/src/gui/images.qrc index 468a0177d..a835757bd 100644 --- a/retroshare-gui/src/gui/images.qrc +++ b/retroshare-gui/src/gui/images.qrc @@ -35,7 +35,6 @@ images/help/natgreen.png images/help/natred.png images/pgp.png - images/rs_wizard.png images/avatar_request.png images/avatar_refused.png images/avatar_request_unknown.png @@ -200,10 +199,7 @@ images/junk.png images/junk_on.png images/junk_off.png - images/connect_friend.png images/kalarm.png - images/kbackgammon.png - images/kcmsystem24.png images/ledoff1.png images/ledon1.png images/locale.png @@ -268,7 +264,6 @@ images/replymailall24-hover.png images/reset.png images/resume.png - images/security-high-16.png images/security-high-48.png images/security-low-48.png images/security-medium-48.png @@ -277,7 +272,6 @@ images/security-medium-off-48.png images/save24.png images/send24.png - images/settings.png images/show_toolbox_frame.png images/start.png images/stop.png @@ -346,7 +340,6 @@ images/up0down1.png images/up1down1.png images/up1down0.png - images/underconstruction.png images/user.png qss/chat/standard/private/info.xml qss/chat/standard/private/incoming.htm diff --git a/retroshare-gui/src/gui/images/connect_friend.png b/retroshare-gui/src/gui/images/connect_friend.png deleted file mode 100755 index 3549e6d83daa8cc78302a34b9888c5ac50d1b441..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3472 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 Q{Qv*}07*qoM6N<$f?fSJSpWb4 diff --git a/retroshare-gui/src/gui/images/security-high-32.png b/retroshare-gui/src/gui/images/security-high-32.png deleted file mode 100755 index 95e73d93e0d768731d8d2f496adc16781f0d2b6b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1628 zcmV-i2BZ0jP)szb1L91}H`m zR=Ih(CptUt3{VUW4i2KbyL;exfxejCW6!*B1ANr4E~U6wQ+=neuMd@NGRMl0WrluO_%FBihq-(nT{Qb0~ z`7YCbssTR9X6baS`6{MboinVg0|0Uo<5 zcR|q5^+ZB08d$Gb2VcLr>ny z_y}N~&s=4W+S|2Y(fgWU^H$ zdy@LJg;^NmKZZsmwq1(^3pCtm0C?;!-wnwL34{i^Uqqyd&B}O(F@jXv;k{|&L(+0) znjVX@g*{$PpbyUoy?*Fbty3ZaFrSMueVAXdvxX$NIw zIGk22Z)93b(_jPK#A`OTHc|Pe zIycu2roptHbw6NkYikp$%RM|;R(S@WrF<&(c_k6Ums=9AN|e|wKTiG#NvR2}`wdy! zSSK=#=h=|FLQLPV!L7Euq7(%cdc32WDw+r*BDk4wapY5Cra+UE26dvEwcaN7F4K5s z1K^Fx*x2~1@QAR^pQN*Dn)%8H^lSiohmgF;O{pbC zNJL~rcYQ-0uC`oZ`#-d{wxFr`GAgSopj1ZmQp;7aXGgXvHQa<5vCL_O)1`fBdmogY zD;+E=D;?DAPwRJfUUiw>}^l_w;$;yRG zZ+^Y1rgn)CVk90LZR4EJ^mx4ailTsXQ)uxxQmG_il)`4W!I|fTBuj`4N7}o)&ph4S z^wExaH!PTZw!bepW9D^(U%hSR=kq{9i$gc`rGDSQ!a`3mtg7m=*_}%$rO4_A1_lO1 zTgyp=LSb+YFh*gqScKbMfQb`pQB_^@rAbrjUo0!HIO%jcr@0CWK0b6{|AX7!{h;@m zr+$iK%}1}D1J%{lsHv%euIsmif`R3uBT;yZN&!Nl>pHqRJ8lLnyPWs%?^Lx7*g=edmsbIrI3b_SR1T(D4Hy1YUUI z1?YxREQCNf6ojtp;6fl8iJ-l$6;_KKHoJo}#xj(UEM-(MNrIwSiOrTrQfU(>kGG<$ zt4oZ=;)rPpGo8*fZGLB$F}c3}(?j6*`#=bxjg5`_Dk>^&DJ?IUs#vTLTp${af`BD; zLq8B6zOX-`X#q)+WS6V3D&JMOK(*N#D5XwDB|->+|NM~P94K&m*l0}q@`h)ge50_? z9lIvLx^?R?IufzXp10&7cTwr=Y$hY@4u>Fw63#gwgc*-TpWnLWjg2GG;q;{jyhSB% z-n?veLv3CCU8-ukfl^8dkx67Y3MMIVy4+u%zo@b8R9nj*r%sy@pE#*rY~S|g*qP^|- zKrA+LsH$qBLsf0{j4?_H1EB&ItIBNly!jOqs#n$4O{wYZXla^UKRw&mbLJvILqh`$ z!>D)UIqxZ}tX2Vla{^^fUa_HcmKbeNnNf{d}GeUrK4qev~ zkH>6+i*G;v@H*M;DZaQ0TrL+t=OCsl);JOuwumu zM5EE95F%}uCNk+1Vxv*?b$0;ZkQjxcC`7e6)>~Ekw+c(D@Xxn*UoELM0O8h_<^zHY zpCm~D2)N*Y0E7_RI@(*d967j`bak{{1ZZq*gx~KE$K&z0GU@a#!!S+&Bo*)vU^p}c zi$#H=C{R_K%W74BD>CslvSN|n*?Hh<5b^fbkNXWn?~`N+CLardtXRbL4fBVc`L4?b zU)l>w2qA@vqENTnZCki-;S+98(QP*^y9K4?l`sqwoO76_2|&as!OMh@=M7!&kt9ic z<)#I=`=0v|jzo~q;@;c8_MO-4&b*ab-2mrft0|k!q=$z?uMM6bc&f6hHt^DOzqt&+ z1E45(Y^=ZUf!miYU$voPLbb#>hsim(ncH&?A-Dk0OMv$vu;1i7U~ zmrcq+8HL0c%v`uQ7wBy}iFddC1Ki}Ot(#(`(y5@sZinADaCtkv_ujS0W;0-n&BeK81P@LgyTvkQI8htSm2 zM7z7YwepGz-D*|mWilB#78`AeYuam+Qad4}*fdRIu~@KZ(IQx_7D$qWR4R$Lx4nfU zhYzCZ=n=?_p}M9Tk|d$Bazebfr~CQ#_STmZn&!JC-#+G}Mp#uVWLZKmID}XK`U-l^oQBVL9zNfB%$hX| zMMYi!Pz}Rudw<9F4*)~}j9k`^uaE&?Skp9l@7@nzBm{`XVi^GR+_|$C&YvIn!{WtD z@(jcHuC8a{bml>pWn?nxY$lT)rHrW(A&x=64_miv#^S|Gv3vKf(6Q#G;{b+p09P$U zSIP~*o2&CtjCH_50BU37jSuBH^VXG>mZPMk1QnGP;9Ttb257|hxGkEBllh~xmX7;C!#kOJT&gqXT+ptrXNr%!jmFwLRiaQM}; zXZw4tR;z!~D|EZPu6$Ri zBulQd{r%0cSj-0?lnYbQC2wm0@aMeuzX1SHo%7!KA87`FFE<$jP!7NbAda!bOJBdhHrNJO5L3!r00000NkvXXu0mjf64&-- diff --git a/retroshare-gui/src/gui/images/underconstruction.png b/retroshare-gui/src/gui/images/underconstruction.png deleted file mode 100644 index af754a98cc40c82a77cd43f49d44bb4f1f4ce252..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1755 zcmV<11|<23P)ba+mNH=?i zamn5uZ`-*T`Dwug9Ea2KgVm{&&kbji&6K>%t$XPX!38+y80gl^{YAS924)Pge~$${ zabme8i@?#z&|r8URuhpSYcdGZBku0CJzj@^>ME_1n#1DSAgMndO&a?rNk1M z{1cBvV9db)ci^_RVLlANg@AEbwqxfiQmzF+$h1qmJD!3z2F4iJ)JkEnvjidqvI?*Y zL`i+M31AbLns%ilv|s_k&pp!a-YPR;S7iv?f?jMjBg#S0U(^%2V5ITVQP-U zlErUkG=BL~h``YR*}4dr#$E$l6I0g*p8;^bxiM-9!|7jVFgfP{0Q$Rtb3Y0ZcmTlg z`kOxfaNY+1Fb16ceuTq=2>`;~8IJG1mPR!OhzQRfR`|vDqR;BVK>YXxXF#j?v{o_J z02||p{uqB7NkJQ6IV8+3CK!5T2|B6Zv7I5_{m{YmB7-po?~DQ`4=zBWf{a^1K4oz2 zb^rhvpB5-)BlPbmqnV?DUx^={vY!&5RgA1(K{hbBKAx=ydf=if7oxYd1fydd+7sf! z2dzjnM>XO2Xqw~L{#j@pV^2qjsd*2R^Ytu^jC*)$Z~=j=d|JSFj;r0JP(4>FtE5y` zNf@bWwWdl@MMXWWtI>mHUse*y0@u*(Dc?TUJ-et?TqYAo#ayh%XEILU8d@$3VpI(a zsZuGbsOZt|mCDVjyel}t5kzD6T(!SrCMuPcYH(F+u{y&pp2gYDHv9mrUX+<-)K0ug z!Bz~J&35It%&ymk;gx7|8B_ahVoEGzqZVmI2NsYvy9ybV|l$N=Ui>(RH^^fRvJiln`Lb&UW zfiFKJ#OE_1tKGtJAjC$t8Mis62>|0dFNGAY5F58< zMs14#;-)Bs3*OAdc$PCVj?oHhfYq3|&{^DS0a}}OkXh$3M!^`9mPAGxqt+d*)!-3z z0hrrL0ZQuvh{2eRZ$vsJ$!bsQjjWG-65_8Tx%c^{zGPQ>MSO5Khh6Oz?Cq%Ne~s=C z9l2PZIIvLu-NnB2(MOlmxt)l=?I1J??&261BWr>g}#-oN@_cdKi4tLH!rbZHP75E+!KMzQffr;>bzI{*;X2);C!UbH{|(o6Brwz3CCUiZ%T z75OuaOYp|1n_IDENu>E&55x&ULc=KJw~`zH60Oo&GiV}sYqN+*N?6T}Za5`?Q5Io> z+*S*Ss+3-h2wW(vJx7cnWi_@;Hw2U-*f_@AN`$*xEg&po>>)#UI5^CII#6N&svVOcOK!{g>D9e%iw>05BGs5fPdQ xT>##u)oPXn{u=v4p!002ovPDHLkV1fpyGYJ3y diff --git a/retroshare-gui/src/gui/settings/rsettingswin.cpp b/retroshare-gui/src/gui/settings/rsettingswin.cpp index 4cdd929e5..46c85ea8e 100644 --- a/retroshare-gui/src/gui/settings/rsettingswin.cpp +++ b/retroshare-gui/src/gui/settings/rsettingswin.cpp @@ -52,8 +52,6 @@ # include "JsonApiPage.h" #endif -#define IMAGE_GENERAL ":/images/kcmsystem24.png" - #define ITEM_SPACING 2 #include "rsettingswin.h" From aa5e40828eac4133ed555f9706187b5888e40975 Mon Sep 17 00:00:00 2001 From: defnax Date: Sat, 12 Feb 2022 12:22:52 +0100 Subject: [PATCH 031/503] removed old icon --- retroshare-gui/src/gui/GenCertDialog.cpp | 2 +- retroshare-gui/src/gui/Identity/IdDialog.cpp | 2 +- .../src/gui/common/SubscribeToolButton.cpp | 2 +- retroshare-gui/src/gui/images.qrc | 1 - retroshare-gui/src/gui/images/cancel.png | Bin 640 -> 0 bytes retroshare-gui/src/gui/unfinished/PhotoDialog.cpp | 2 +- 6 files changed, 4 insertions(+), 5 deletions(-) delete mode 100644 retroshare-gui/src/gui/images/cancel.png diff --git a/retroshare-gui/src/gui/GenCertDialog.cpp b/retroshare-gui/src/gui/GenCertDialog.cpp index 1abdb698b..b71e324c7 100644 --- a/retroshare-gui/src/gui/GenCertDialog.cpp +++ b/retroshare-gui/src/gui/GenCertDialog.cpp @@ -48,7 +48,7 @@ #include #define IMAGE_GOOD ":/images/accepted16.png" -#define IMAGE_BAD ":/images/cancel.png" +#define IMAGE_BAD ":/icons/cancel.svg" class EntropyCollectorWidget: public QTextBrowser { diff --git a/retroshare-gui/src/gui/Identity/IdDialog.cpp b/retroshare-gui/src/gui/Identity/IdDialog.cpp index 0f657a577..5397f6300 100644 --- a/retroshare-gui/src/gui/Identity/IdDialog.cpp +++ b/retroshare-gui/src/gui/Identity/IdDialog.cpp @@ -1111,7 +1111,7 @@ void IdDialog::CircleListCustomPopupMenu( QPoint ) static const int CANCEL = 3 ; // Admin list: no Subscription request: yes const QString menu_titles[4] = { tr("Request subscription"), tr("Accept circle invitation"), tr("Quit this circle"),tr("Cancel subscribe request")} ; - const QString image_names[4] = { ":/images/edit_add24.png",":/images/accepted16.png",":/icons/png/enter.png",":/images/cancel.png" } ; + const QString image_names[4] = { ":/images/edit_add24.png",":/images/accepted16.png",":/icons/png/enter.png",":/icons/cancel.svg" } ; std::vector< std::vector > ids(4) ; diff --git a/retroshare-gui/src/gui/common/SubscribeToolButton.cpp b/retroshare-gui/src/gui/common/SubscribeToolButton.cpp index 4015e641c..165b6caa1 100644 --- a/retroshare-gui/src/gui/common/SubscribeToolButton.cpp +++ b/retroshare-gui/src/gui/common/SubscribeToolButton.cpp @@ -72,7 +72,7 @@ void SubscribeToolButton::updateUi() delete mMenu ; mMenu = new QMenu; - mMenu->addAction(FilesDefs::getIconFromQtResourcePath(":/images/cancel.png"), tr("Unsubscribe"), this, SLOT(unsubscribePrivate())); + mMenu->addAction(FilesDefs::getIconFromQtResourcePath(":/icons/cancel.svg"), tr("Unsubscribe"), this, SLOT(unsubscribePrivate())); if (!mSubscribedActions.empty()) { mMenu->addSeparator(); diff --git a/retroshare-gui/src/gui/images.qrc b/retroshare-gui/src/gui/images.qrc index a835757bd..6e893722d 100644 --- a/retroshare-gui/src/gui/images.qrc +++ b/retroshare-gui/src/gui/images.qrc @@ -103,7 +103,6 @@ images/graph-blue.png images/avatar_background.png images/chat.png - images/cancel.png images/close-down.png images/copy.png images/delete.png diff --git a/retroshare-gui/src/gui/images/cancel.png b/retroshare-gui/src/gui/images/cancel.png deleted file mode 100644 index 87cd0b0125d6193c16c59f25b88396493e885f6b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 640 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJbFq_W2nPqp?T7vkfLzW3kH}&M z2FBeW%xLxI@gtz1WQl7;NpOBzNqJ&XDnogBxn5>oc5!lIL8@MUQTpt6Hc~*<;sHJ( zuK)l4Z(v|p!N9PVfuWs&p^JfGA_Kz=28KBd467IzAX4jDSb*GiKE6H%hCBv_Tn2_L z28Klp4AZo=>*d6nRHQFelpgl-Jed$XS6*hniPlkf`z7+iOXNkDC`v6+mRl+(v`kK5 zwTk$9b?ME9YMZs?_j%bL_HsDk<9sU2r$Je2`?nP^4n zy$lTd7#Q|j8XpwoI%I5o$k*ermDN#8qhmrm$Ax%K+S#3Uu|MtSb;ix@0t3SZA)d=& zVVA>0E~h43Ns7Cc5PLm2@wTwQZ4try!urld@myOUR3yfXZwfVuCELX$$gHBz;HAv3GxeOFfuao00U1?PcLu(fWV*& z*YDnY^6b^8FJFJbz;6)v0|bBn{{8pwYTmshp#IsOE{-7*lD!9A#hMrxSP$@P+)yej zFHd4mDu4d>{K5|<=XpdH-eIeeoFkI5#Mch*eE5E3q& zsDJ)QWe~HZu=JPqwHHm!J!tPMoAuVM<=A|yGuL0$MD)r}t=B23K4h_=$wxfq{j{s6 zvbJ;1RM`0b{&%I*Q{~<_^9mg*KC_8ox^*ST366Hw_&MDTLh{a=g|okJNlO7blfl!~ K&t;ucLK6VLNBNWh diff --git a/retroshare-gui/src/gui/unfinished/PhotoDialog.cpp b/retroshare-gui/src/gui/unfinished/PhotoDialog.cpp index 42fd5acee..83009c267 100644 --- a/retroshare-gui/src/gui/unfinished/PhotoDialog.cpp +++ b/retroshare-gui/src/gui/unfinished/PhotoDialog.cpp @@ -42,7 +42,7 @@ /* Images for context menu icons */ #define IMAGE_REMOVEFRIEND ":/images/removefriend16.png" -#define IMAGE_REMOVE ":/images/cancel.png" +#define IMAGE_REMOVE ":/icons/cancel.svg" #define IMAGE_CHAT ":/images/chat.png" /* Images for Status icons */ #define IMAGE_PEER ":/images/user/identity16.png" From 2428ebf6c36a44ef52db2fd6201b8110eb39340b Mon Sep 17 00:00:00 2001 From: csoler Date: Sat, 12 Feb 2022 18:32:36 +0100 Subject: [PATCH 032/503] removed re-parsing of certificate --- retroshare-gui/src/gui/HomePage.cpp | 13 +------------ retroshare-gui/src/gui/connect/ConfCertDialog.cpp | 4 ---- 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/retroshare-gui/src/gui/HomePage.cpp b/retroshare-gui/src/gui/HomePage.cpp index 8dd936b38..0908b5c37 100644 --- a/retroshare-gui/src/gui/HomePage.cpp +++ b/retroshare-gui/src/gui/HomePage.cpp @@ -207,8 +207,7 @@ HomePage::~HomePage() void HomePage::getOwnCert(QString& invite,QString& description) const { - - RsPeerDetails detail,parsed_details; + RsPeerDetails detail; if (!rsPeers->getPeerDetails(rsPeers->getOwnId(), detail)) { @@ -235,19 +234,9 @@ void HomePage::getOwnCert(QString& invite,QString& description) const std::string short_invite; rsPeers->getShortInvite(short_invite,rsPeers->getOwnId(),invite_flags | RetroshareInviteFlags::RADIX_FORMAT); invite = QString::fromStdString(short_invite); - uint32_t err; - - if(!rsPeers->parseShortInvite(short_invite,parsed_details,err)) - std::cerr << "Something unexpected happenned while re-parsing a cert just created: error " << err << std::endl; } else - { invite = QString::fromStdString(rsPeers->GetRetroshareInvite(detail.id,invite_flags)); - uint32_t err; - - if(!rsPeers->loadDetailsFromStringCert(invite.toStdString(),parsed_details,err)) - std::cerr << "Something unexpected happenned while re-parsing a cert just created: error " << err << std::endl; - } bool include_extra_locators = mIncludeIPHistoryact->isChecked(); description = ConfCertDialog::getCertificateDescription(detail,false,!mUseOldFormatact->isChecked(),include_extra_locators); diff --git a/retroshare-gui/src/gui/connect/ConfCertDialog.cpp b/retroshare-gui/src/gui/connect/ConfCertDialog.cpp index cd539933f..dc8c871e0 100644 --- a/retroshare-gui/src/gui/connect/ConfCertDialog.cpp +++ b/retroshare-gui/src/gui/connect/ConfCertDialog.cpp @@ -303,13 +303,9 @@ QString ConfCertDialog::getCertificateDescription(const RsPeerDetails& detail,bo QString infotext; if(use_short_format) - { infotext += tr("

    This Retroshare ID contains:") ; - } else - { infotext += tr("

    This certificate contains:") ; - } infotext += "