diff --git a/retroshare-gui/src/RetroShare.pro b/retroshare-gui/src/RetroShare.pro
index 7243cb468..208ad57fb 100644
--- a/retroshare-gui/src/RetroShare.pro
+++ b/retroshare-gui/src/RetroShare.pro
@@ -118,9 +118,12 @@ macx {
LIBS += ../../libretroshare/src/lib/libretroshare.a
LIBS += -lssl -lcrypto -lz -lgpgme -lgpg-error
LIBS += ../../../miniupnpc-1.0/libminiupnpc.a
+ LIBS += -framework CoreFoundation
INCLUDEPATH += .
#DEFINES* = MAC_IDLE # for idle feature
+ CONFIG -= uitools
+
}
diff --git a/retroshare-gui/src/gui/settings/ServerPage.cpp b/retroshare-gui/src/gui/settings/ServerPage.cpp
index eb423f535..9ee9953d2 100755
--- a/retroshare-gui/src/gui/settings/ServerPage.cpp
+++ b/retroshare-gui/src/gui/settings/ServerPage.cpp
@@ -135,11 +135,36 @@ void ServerPage::load()
}
ui.netModeComboBox->setCurrentIndex(netIndex);
- netIndex = 1;
- if (detail.visState & RS_VS_DISC_ON)
+ /* DHT + Discovery: (public)
+ * Discovery only: (private)
+ * DHT only: (inverted)
+ * None: (dark net)
+ */
+
+ netIndex = 3; // NONE.
+ if (detail.visState & RS_VS_DHT_ON)
{
- netIndex = 0;
+ if (detail.visState & RS_VS_DISC_ON)
+ {
+ netIndex = 0; // PUBLIC
+ }
+ else
+ {
+ netIndex = 2; // INVERTED
+ }
}
+ else
+ {
+ if (detail.visState & RS_VS_DISC_ON)
+ {
+ netIndex = 1; // PRIVATE
+ }
+ else
+ {
+ netIndex = 3; // NONE
+ }
+ }
+
ui.discComboBox->setCurrentIndex(netIndex);
rsiface->lockData(); /* Lock Interface */
@@ -249,8 +274,21 @@ void ServerPage::saveAddresses()
uint32_t visState = 0;
/* Check if vis has changed */
- if (0 == ui.discComboBox->currentIndex())
- visState |= RS_VS_DISC_ON;
+ switch(ui.discComboBox->currentIndex())
+ {
+ case 0:
+ visState |= (RS_VS_DISC_ON | RS_VS_DHT_ON);
+ break;
+ case 1:
+ visState |= RS_VS_DISC_ON;
+ break;
+ case 2:
+ visState |= RS_VS_DHT_ON;
+ break;
+ case 3:
+ default:
+ break;
+ }
if (visState != detail.visState)
rsPeers->setVisState(ownId, visState);
diff --git a/retroshare-gui/src/gui/settings/ServerPage.ui b/retroshare-gui/src/gui/settings/ServerPage.ui
index 80bb02f4e..bc2e5c902 100755
--- a/retroshare-gui/src/gui/settings/ServerPage.ui
+++ b/retroshare-gui/src/gui/settings/ServerPage.ui
@@ -492,9 +492,6 @@
6
-
- 6
-
-
@@ -546,17 +543,33 @@
-
+
+
+ 200
+ 0
+
+
Should be disabled if you don't want to share connection information between peers.
-
- Discovery Enabled
+ Public: DHT & Discovery
-
- Discovery Disabled
+ Private: Discovery Only
+
+
+ -
+
+ Inverted: DHT Only
+
+
+ -
+
+ Dark Net: None
@@ -580,12 +593,6 @@
-
-
- 6
-
-
- 0
-
-
diff --git a/retroshare-gui/src/gui/statusbar/dhtstatus.cpp b/retroshare-gui/src/gui/statusbar/dhtstatus.cpp
index 91c8a4e44..c13f1bf13 100644
--- a/retroshare-gui/src/gui/statusbar/dhtstatus.cpp
+++ b/retroshare-gui/src/gui/statusbar/dhtstatus.cpp
@@ -82,6 +82,15 @@ void DHTStatus::getDHTStatus()
dhtstatusLabel->setPixmap(QPixmap(":/images/redled.png"));
dhtstatusLabel->setToolTip(tr("DHT Off"));
}
+
+ QString dhtsize;
+ {
+ std::ostringstream out;
+ out << (int) config.netDhtRsNetSize << " ( " << (int) config.netDhtNetSize << " )";
+ dhtsize = QString::fromStdString(out.str());
+ }
+
+ dhtnetworksizeLabel->setText(dhtsize);
rsiface->unlockData(); /* UnLock Interface */