New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[gui] Add proxy icon in statusbar #11491
Conversation
Hmm, a fixed icon that is disabled/enabled doesn't extend well to a tri-state when Tor is added. But that can be deferred until adding Tor I guess. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested ACK, some comments though.
src/Makefile.qt.include
Outdated
@@ -278,6 +278,8 @@ RES_ICONS = \ | |||
qt/res/icons/network_disabled.png \ | |||
qt/res/icons/open.png \ | |||
qt/res/icons/overview.png \ | |||
qt/res/icons/proxy_enabled.png \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sort.
src/qt/bitcoingui.cpp
Outdated
{ | ||
bool proxyEnabled = false; | ||
proxyType proxy; | ||
UniValue networks(UniValue::VARR); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unused, remove?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The #include
above too.
src/qt/bitcoingui.cpp
Outdated
} | ||
} | ||
|
||
labelProxyIcon->show(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Already visible? Remove.
src/qt/bitcoingui.cpp
Outdated
|
||
labelProxyIcon->show(); | ||
labelProxyIcon->setPixmap(platformStyle->SingleColorIcon(proxyEnabled ? ":/icons/proxy_enabled" : ":/icons/proxy_disabled").pixmap(STATUSBAR_ICONSIZE,STATUSBAR_ICONSIZE)); | ||
labelProxyIcon->setToolTip(proxyEnabled ? tr("Proxy is <b>enabled</b>: %1").arg(QString::fromStdString(proxy.proxy.ToStringIPPort())) : tr("Proxy is <b>disabled</b>")); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why the cosmetic in the tooltips?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: If enabled tooltip = Proxy: %1
else Proxy disabled
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the bold helps readability. Can remove if needed.
src/qt/bitcoingui.cpp
Outdated
@@ -1084,6 +1092,30 @@ void BitcoinGUI::setEncryptionStatus(int status) | |||
} | |||
#endif // ENABLE_WALLET | |||
|
|||
void BitcoinGUI::updateProxyIcon() | |||
{ | |||
bool proxyEnabled = false; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
proxy_enabled
.
src/qt/bitcoingui.cpp
Outdated
proxyType proxy; | ||
UniValue networks(UniValue::VARR); | ||
|
||
for(int n=0; n<NET_MAX; ++n) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for (int n = 0; n < NET_MAX; ++n) {
src/qt/bitcoingui.cpp
Outdated
for(int n=0; n<NET_MAX; ++n) | ||
{ | ||
enum Network network = static_cast<enum Network>(n); | ||
if(network == NET_UNROUTABLE || network == NET_INTERNAL) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Space after if
. continue
in this line.
src/qt/bitcoingui.cpp
Outdated
if(network == NET_UNROUTABLE || network == NET_INTERNAL) | ||
continue; | ||
GetProxy(network, proxy); | ||
if(proxy.IsValid()) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Space after if
.
src/qt/bitcoingui.cpp
Outdated
} | ||
|
||
labelProxyIcon->show(); | ||
labelProxyIcon->setPixmap(platformStyle->SingleColorIcon(proxyEnabled ? ":/icons/proxy_enabled" : ":/icons/proxy_disabled").pixmap(STATUSBAR_ICONSIZE,STATUSBAR_ICONSIZE)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Space after ,
.
Nit, split in 2 lines? Or something like:
if (proxy_enabled) {
...
} else {
...
}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed space, prefer it like this for now.
@luke-jr We can have an icon for each state no? |
I'm unsure, but does this also need a mention in |
597cd7b
to
20b3979
Compare
@promag @meshcollider Thanks for the reviews. If you think the remaining nits are very important, I can change them. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should squash right?
src/qt/bitcoin.qrc
Outdated
@@ -53,6 +53,8 @@ | |||
<file alias="hd_enabled">res/icons/hd_enabled.png</file> | |||
<file alias="hd_disabled">res/icons/hd_disabled.png</file> | |||
<file alias="network_disabled">res/icons/network_disabled.png</file> | |||
<file alias="proxy_enabled">res/icons/proxy_enabled.png</file> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit, sort.
src/qt/bitcoingui.cpp
Outdated
bool proxy_enabled = false; | ||
proxyType proxy; | ||
|
||
for (int n = 0; n < NET_MAX; ++n) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
GetProxy
returns IsValid
so something like this should work:
for (int n = 0; !proxy_enabled && n < NET_MAX; ++n) {
proxy_enabled = GetProxy((Network) n, proxy);
}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice, I didn't notice GetProxy checks for valid.
src/qt/bitcoingui.h
Outdated
@@ -189,6 +190,9 @@ public Q_SLOTS: | |||
void incomingTransaction(const QString& date, int unit, const CAmount& amount, const QString& type, const QString& address, const QString& label); | |||
#endif // ENABLE_WALLET | |||
|
|||
/** Set the proxy-enabled icon as shown in the UI. */ | |||
void updateProxyIcon(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing indentation. No need to be a slot, just a private member.
096a756
to
8767cbb
Compare
src/qt/bitcoingui.cpp
Outdated
proxyType proxy; | ||
|
||
for (int n = 0; !proxy_enabled && n < NET_MAX; ++n) { | ||
proxy_enabled = GetProxy((Network) n, proxy); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Instead of directly accessing core features, can you wrap that via clientmodel?
There are serval tries to detach the GUI from the rest and those little things will cause a lot of work.
Concept ACK. |
First seeing the icon I was confused, meaning was not intuitive for me. |
8767cbb
to
af937dd
Compare
@wodry guess I wasn't 100% clear. I attempted to construct a proxy icon from 3 copies of https://github.com/bitcoin/bitcoin/blob/master/src/qt/res/icons/debugwindow.png but it was too much to fit in the space and the icon ended up looking too different from the others. So I chose the icon you see because it fits and is public domain @jonasschnelli I checked the link you provided. Indeed it would be nice to include from the same set, but I couldn't find one that matches. Imo, the current icon is better. However, here are a few long shots:
|
Tested a bit:
|
af937dd
to
4fceed5
Compare
The new icon is made from 3 device-desktop and 1 rotated chevron from http://s-ings.com/typicons/ After talking with @jonasschnelli, I will do the clickable icon in a different PR. |
df0c4da
to
15e1282
Compare
I think it only makes sense to have this as an icon if the proxy is enableable/disableable from the GUI - otherwise, why? Why not have icons for various things, e.g. bloom filters enabled too then? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rebroad UI evolve because of these changes, eventually recognising less is more. I also don't appreciate the icon there, but this is for sure something that can be improved. I would only show mutable state information in the status bar, and settings is not state.
IMO icon is unrecognisable in small size. Beside doesn't feel related to proxy at all (personal opinion).
src/qt/bitcoingui.h
Outdated
@@ -10,6 +10,7 @@ | |||
#endif | |||
|
|||
#include "amount.h" | |||
#include <univalue.h> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove.
src/qt/clientmodel.cpp
Outdated
@@ -336,3 +337,20 @@ void ClientModel::unsubscribeFromCoreSignals() | |||
uiInterface.NotifyBlockTip.disconnect(boost::bind(BlockTipChanged, this, _1, _2, false)); | |||
uiInterface.NotifyHeaderTip.disconnect(boost::bind(BlockTipChanged, this, _1, _2, true)); | |||
} | |||
|
|||
UniValue ClientModel::getProxyInfo() const |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Suggestion to remove UniValue
dependency:
bool ClientModel::GetProxyInfo(std::string& ip_port) const
{
for (int n = 0; n < NET_MAX; ++n) {
proxyType proxy;
if (GetProxy((Network) n, proxy)) {
ip_port = proxy.proxy.ToStringIPPort();
return true;
}
}
return false;
}
Haven't tested.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can not see how the new icon relates to proxy. Instead of showing "something with computer and cable", maybe simply show a "P" ?
15e1282
to
19e68f7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IMO the icon could be improved. Not sure if it should be visible only when the proxy is enabled.
Edit: Feels better without the disabled proxy icon.
src/qt/bitcoingui.cpp
Outdated
|
||
labelProxyIcon->setPixmap(platformStyle->SingleColorIcon(":/icons/proxy").pixmap(STATUSBAR_ICONSIZE, STATUSBAR_ICONSIZE)); | ||
labelProxyIcon->setToolTip(tr("Proxy is <b>enabled</b>: %1").arg(ip_port_q)); | ||
labelProxyIcon->setEnabled(proxy_enabled); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove as it is already enabled?
src/qt/bitcoingui.cpp
Outdated
if (proxy_enabled) { | ||
QString ip_port_q = QString::fromStdString(ip_port); | ||
|
||
labelProxyIcon->setPixmap(platformStyle->SingleColorIcon(":/icons/proxy").pixmap(STATUSBAR_ICONSIZE, STATUSBAR_ICONSIZE)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If idea is to show/hide then the pixmap can be set when the label is created.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the future, I plan to support a Tor icon, so I prefer to do this here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Even in that case it can't change in runtime right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Although toggling proxy requires a restart, I prefer it if the UI doesn't assume that (to prevent a regression later). Not a show-stopper perse, but this code could confuse people.
Suggestion: add an if
statement that checks if the icon has already been drawn. If so, call show()
.
src/qt/clientmodel.cpp
Outdated
@@ -336,3 +337,15 @@ void ClientModel::unsubscribeFromCoreSignals() | |||
uiInterface.NotifyBlockTip.disconnect(boost::bind(BlockTipChanged, this, _1, _2, false)); | |||
uiInterface.NotifyHeaderTip.disconnect(boost::bind(BlockTipChanged, this, _1, _2, true)); | |||
} | |||
|
|||
bool ClientModel::getProxyInfo(std::string& ip_port) const |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit, some may prefer std::pair<bool, std::string> ClientModel::getProxyInfo() const;
, both work for me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Gonna go with what is currently implemented
19e68f7
to
44e1092
Compare
@promag yea, I agree, the icon needs improving. Will come up with something better |
The icons at the bottom are already quite confusing. Some allow the user to take action (e.g. BTC), another does not allow action and never chances (HD). The network icon allows the user to take action, but unlike the BTC icon doesn't first show a dropdown menu, but instead disables your network without warning. Instead of adding another icon, I suggest turning the connection icon into something that opens a dialog, where you inspect and change network settings (including disconnecting, using a proxy or tor). The shape or color of the icon could give a hint as to the current state (e.g. green for Tor), but once the user clicks on it they would get the full information. That way the icon doesn't need to be perfect. |
I wonder if a small "P" (and later "T" for Tor) in the connection icon would do the trick... |
44e1092
to
99fdf7b
Compare
I updated the proposal to use an icon form http://s-ings.com/typicons/ as @jonasschnelli suggested (decided to try this instead of creating an svg with P in it - curious about feedback). The set also contains a @Sjors yea, the icons can be a bit confusing. This is why in the first version of this PR, I created proxy enabled/disabled similar to how the network icon behaves. However, each icon has slightly different behavior and needs. I think the security benefit of seeing the proxy icon is worth it though. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utACK 35d50aa833cea53f9c6195987256351f4b1c710a
src/qt/clientmodel.cpp
Outdated
bool ClientModel::getProxyInfo(std::string& ip_port) const | ||
{ | ||
proxyType ipv4, ipv6; | ||
if (GetProxy((Network) 1, ipv4) && GetProxy((Network) 2, ipv6)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could call m_node.getProxy()
here and drop netbase.h
include above. This would be a little more future-proof with #10102.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
netbase.h
is still needed for proxyType, but I can change to m_node.getProxy
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utACK 35d50aa.
I have a couple of nits for you to consider or feel free to ignore them and keep the above ACKs.
src/qt/res/icons/tx_in*.png | ||
src/qt/res/icons/verify.png |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit, unrelated change. If you happen to push again consider removing this change.
@@ -83,6 +83,7 @@ BitcoinGUI::BitcoinGUI(interfaces::Node& node, const PlatformStyle *_platformSty | |||
unitDisplayControl(0), | |||
labelWalletEncryptionIcon(0), | |||
labelWalletHDStatusIcon(0), | |||
labelProxyIcon(0), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit, could be initialized in the declaration as per developer notes.
src/qt/bitcoingui.cpp
Outdated
if (proxy_enabled) { | ||
QString ip_port_q = QString::fromStdString(ip_port); | ||
|
||
if (labelProxyIcon->pixmap() == 0) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit, IMO the label pixmap could be initialized when the label is created above.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is consistent with labelWalletHDStatusIcon
, so I will prefer the approach taken
src/qt/bitcoingui.cpp
Outdated
bool proxy_enabled = clientModel->getProxyInfo(ip_port); | ||
|
||
if (proxy_enabled) { | ||
QString ip_port_q = QString::fromStdString(ip_port); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit, could inline this below.
Thanks for the reviews. I inlined the string creation and using |
73cd5b2 [gui] Add proxy icon in statusbar (Cristian Mircea Messel) Pull request description: Relates to #7734 ![image](https://user-images.githubusercontent.com/226170/33406640-8ea700c6-d576-11e7-9d69-fde9a696c219.png) Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :( I plan to extend this feature in future PRs to include: - custom Tor icon - clickable icon which opens network settings Old proposals, dropped in favor of current ![image](https://user-images.githubusercontent.com/226170/32688635-979ef690-c6dd-11e7-8869-49da7e0f0a11.png) ![proxy_preview](https://user-images.githubusercontent.com/226170/31521305-99c43f22-afb1-11e7-9daf-d1ed6347daa8.png) ![image](https://user-images.githubusercontent.com/226170/31680585-72706098-b37d-11e7-88ad-028c4c723f42.png) Tree-SHA512: e5f18c20c0be292256a3e78c91cdf390a3b6084346a192a8170460f706f5b6cd198ba5b0035798a85a442fe7f262cf1c2350064670085ff8f473f880ab5ba589
6d5fcad [gui] Make proxy icon from statusbar clickable (Cristian Mircea Messel) Pull request description: Clicking on the proxy icon will open settings showing the network tab #11491 (comment) Tree-SHA512: c3549749296918818694a371326d1a3b1075478918aaee940b5c7119a7e2cb991dcfda78f20d44d6d001157b9b82951f0d5157b17f4f0d1a0a242795efade036
Summary: 73cd5b25b [gui] Add proxy icon in statusbar (Cristian Mircea Messel) Pull request description: Relates to #7734 ![image](https://user-images.githubusercontent.com/226170/33406640-8ea700c6-d576-11e7-9d69-fde9a696c219.png) Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :( I plan to extend this feature in future PRs to include: - custom Tor icon - clickable icon which opens network settings Old proposals, dropped in favor of current ![image](https://user-images.githubusercontent.com/226170/32688635-979ef690-c6dd-11e7-8869-49da7e0f0a11.png) ![proxy_preview](https://user-images.githubusercontent.com/226170/31521305-99c43f22-afb1-11e7-9daf-d1ed6347daa8.png) ![image](https://user-images.githubusercontent.com/226170/31680585-72706098-b37d-11e7-88ad-028c4c723f42.png) Tree-SHA512: e5f18c20c0be292256a3e78c91cdf390a3b6084346a192a8170460f706f5b6cd198ba5b0035798a85a442fe7f262cf1c2350064670085ff8f473f880ab5ba589 Backport of Core PR11491 bitcoin/bitcoin#11491 Test Plan: make check bitcoin-qt -proxy=<valid proxy> However cursor over the `P` symbol in the bottom right corner until small window detailing proxy information appears. {F4078608} bitcoin-qt The `P` symbol should not appear because no proxy is being used. {F4078606} Reviewers: O1 Bitcoin ABC, #bitcoin_abc, deadalnix, Fabien, jasonbcox Reviewed By: O1 Bitcoin ABC, #bitcoin_abc, deadalnix Differential Revision: https://reviews.bitcoinabc.org/D4269
Summary: 6d5fcad576962e5950641f7e7b113a6ac6f397e5 [gui] Make proxy icon from statusbar clickable (Cristian Mircea Messel) Pull request description: Clicking on the proxy icon will open settings showing the network tab bitcoin/bitcoin#11491 (comment) Tree-SHA512: c3549749296918818694a371326d1a3b1075478918aaee940b5c7119a7e2cb991dcfda78f20d44d6d001157b9b82951f0d5157b17f4f0d1a0a242795efade036 Backport of Core PR13248 bitcoin/bitcoin#13248 Depends on D4269 Test Plan: make check ./bitcoin-qt -proxy=<valid proxy> Clicking the `P` icon in the bottom right corner should open up the `network` tab in the `options` menu. Reviewers: deadalnix, Fabien, jasonbcox, O1 Bitcoin ABC, #bitcoin_abc Reviewed By: deadalnix, Fabien, O1 Bitcoin ABC, #bitcoin_abc Differential Revision: https://reviews.bitcoinabc.org/D4270
73cd5b2 [gui] Add proxy icon in statusbar (Cristian Mircea Messel) Pull request description: Relates to bitcoin#7734 ![image](https://user-images.githubusercontent.com/226170/33406640-8ea700c6-d576-11e7-9d69-fde9a696c219.png) Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :( I plan to extend this feature in future PRs to include: - custom Tor icon - clickable icon which opens network settings Old proposals, dropped in favor of current ![image](https://user-images.githubusercontent.com/226170/32688635-979ef690-c6dd-11e7-8869-49da7e0f0a11.png) ![proxy_preview](https://user-images.githubusercontent.com/226170/31521305-99c43f22-afb1-11e7-9daf-d1ed6347daa8.png) ![image](https://user-images.githubusercontent.com/226170/31680585-72706098-b37d-11e7-88ad-028c4c723f42.png) Tree-SHA512: e5f18c20c0be292256a3e78c91cdf390a3b6084346a192a8170460f706f5b6cd198ba5b0035798a85a442fe7f262cf1c2350064670085ff8f473f880ab5ba589
73cd5b2 [gui] Add proxy icon in statusbar (Cristian Mircea Messel) Pull request description: Relates to bitcoin#7734 ![image](https://user-images.githubusercontent.com/226170/33406640-8ea700c6-d576-11e7-9d69-fde9a696c219.png) Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :( I plan to extend this feature in future PRs to include: - custom Tor icon - clickable icon which opens network settings Old proposals, dropped in favor of current ![image](https://user-images.githubusercontent.com/226170/32688635-979ef690-c6dd-11e7-8869-49da7e0f0a11.png) ![proxy_preview](https://user-images.githubusercontent.com/226170/31521305-99c43f22-afb1-11e7-9daf-d1ed6347daa8.png) ![image](https://user-images.githubusercontent.com/226170/31680585-72706098-b37d-11e7-88ad-028c4c723f42.png) Tree-SHA512: e5f18c20c0be292256a3e78c91cdf390a3b6084346a192a8170460f706f5b6cd198ba5b0035798a85a442fe7f262cf1c2350064670085ff8f473f880ab5ba589
73cd5b2 [gui] Add proxy icon in statusbar (Cristian Mircea Messel) Pull request description: Relates to bitcoin#7734 ![image](https://user-images.githubusercontent.com/226170/33406640-8ea700c6-d576-11e7-9d69-fde9a696c219.png) Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :( I plan to extend this feature in future PRs to include: - custom Tor icon - clickable icon which opens network settings Old proposals, dropped in favor of current ![image](https://user-images.githubusercontent.com/226170/32688635-979ef690-c6dd-11e7-8869-49da7e0f0a11.png) ![proxy_preview](https://user-images.githubusercontent.com/226170/31521305-99c43f22-afb1-11e7-9daf-d1ed6347daa8.png) ![image](https://user-images.githubusercontent.com/226170/31680585-72706098-b37d-11e7-88ad-028c4c723f42.png) Tree-SHA512: e5f18c20c0be292256a3e78c91cdf390a3b6084346a192a8170460f706f5b6cd198ba5b0035798a85a442fe7f262cf1c2350064670085ff8f473f880ab5ba589
73cd5b2 [gui] Add proxy icon in statusbar (Cristian Mircea Messel) Pull request description: Relates to bitcoin#7734 ![image](https://user-images.githubusercontent.com/226170/33406640-8ea700c6-d576-11e7-9d69-fde9a696c219.png) Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :( I plan to extend this feature in future PRs to include: - custom Tor icon - clickable icon which opens network settings Old proposals, dropped in favor of current ![image](https://user-images.githubusercontent.com/226170/32688635-979ef690-c6dd-11e7-8869-49da7e0f0a11.png) ![proxy_preview](https://user-images.githubusercontent.com/226170/31521305-99c43f22-afb1-11e7-9daf-d1ed6347daa8.png) ![image](https://user-images.githubusercontent.com/226170/31680585-72706098-b37d-11e7-88ad-028c4c723f42.png) Tree-SHA512: e5f18c20c0be292256a3e78c91cdf390a3b6084346a192a8170460f706f5b6cd198ba5b0035798a85a442fe7f262cf1c2350064670085ff8f473f880ab5ba589
73cd5b2 [gui] Add proxy icon in statusbar (Cristian Mircea Messel) Pull request description: Relates to bitcoin#7734 ![image](https://user-images.githubusercontent.com/226170/33406640-8ea700c6-d576-11e7-9d69-fde9a696c219.png) Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :( I plan to extend this feature in future PRs to include: - custom Tor icon - clickable icon which opens network settings Old proposals, dropped in favor of current ![image](https://user-images.githubusercontent.com/226170/32688635-979ef690-c6dd-11e7-8869-49da7e0f0a11.png) ![proxy_preview](https://user-images.githubusercontent.com/226170/31521305-99c43f22-afb1-11e7-9daf-d1ed6347daa8.png) ![image](https://user-images.githubusercontent.com/226170/31680585-72706098-b37d-11e7-88ad-028c4c723f42.png) Tree-SHA512: e5f18c20c0be292256a3e78c91cdf390a3b6084346a192a8170460f706f5b6cd198ba5b0035798a85a442fe7f262cf1c2350064670085ff8f473f880ab5ba589
6d5fcad [gui] Make proxy icon from statusbar clickable (Cristian Mircea Messel) Pull request description: Clicking on the proxy icon will open settings showing the network tab bitcoin#11491 (comment) Tree-SHA512: c3549749296918818694a371326d1a3b1075478918aaee940b5c7119a7e2cb991dcfda78f20d44d6d001157b9b82951f0d5157b17f4f0d1a0a242795efade036 # Conflicts: # src/qt/bitcoingui.cpp # src/qt/bitcoingui.h
73cd5b2 [gui] Add proxy icon in statusbar (Cristian Mircea Messel) Pull request description: Relates to bitcoin#7734 ![image](https://user-images.githubusercontent.com/226170/33406640-8ea700c6-d576-11e7-9d69-fde9a696c219.png) Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :( I plan to extend this feature in future PRs to include: - custom Tor icon - clickable icon which opens network settings Old proposals, dropped in favor of current ![image](https://user-images.githubusercontent.com/226170/32688635-979ef690-c6dd-11e7-8869-49da7e0f0a11.png) ![proxy_preview](https://user-images.githubusercontent.com/226170/31521305-99c43f22-afb1-11e7-9daf-d1ed6347daa8.png) ![image](https://user-images.githubusercontent.com/226170/31680585-72706098-b37d-11e7-88ad-028c4c723f42.png) Tree-SHA512: e5f18c20c0be292256a3e78c91cdf390a3b6084346a192a8170460f706f5b6cd198ba5b0035798a85a442fe7f262cf1c2350064670085ff8f473f880ab5ba589
73cd5b2 [gui] Add proxy icon in statusbar (Cristian Mircea Messel) Pull request description: Relates to bitcoin#7734 ![image](https://user-images.githubusercontent.com/226170/33406640-8ea700c6-d576-11e7-9d69-fde9a696c219.png) Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :( I plan to extend this feature in future PRs to include: - custom Tor icon - clickable icon which opens network settings Old proposals, dropped in favor of current ![image](https://user-images.githubusercontent.com/226170/32688635-979ef690-c6dd-11e7-8869-49da7e0f0a11.png) ![proxy_preview](https://user-images.githubusercontent.com/226170/31521305-99c43f22-afb1-11e7-9daf-d1ed6347daa8.png) ![image](https://user-images.githubusercontent.com/226170/31680585-72706098-b37d-11e7-88ad-028c4c723f42.png) Tree-SHA512: e5f18c20c0be292256a3e78c91cdf390a3b6084346a192a8170460f706f5b6cd198ba5b0035798a85a442fe7f262cf1c2350064670085ff8f473f880ab5ba589
73cd5b2 [gui] Add proxy icon in statusbar (Cristian Mircea Messel) Pull request description: Relates to bitcoin#7734 ![image](https://user-images.githubusercontent.com/226170/33406640-8ea700c6-d576-11e7-9d69-fde9a696c219.png) Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :( I plan to extend this feature in future PRs to include: - custom Tor icon - clickable icon which opens network settings Old proposals, dropped in favor of current ![image](https://user-images.githubusercontent.com/226170/32688635-979ef690-c6dd-11e7-8869-49da7e0f0a11.png) ![proxy_preview](https://user-images.githubusercontent.com/226170/31521305-99c43f22-afb1-11e7-9daf-d1ed6347daa8.png) ![image](https://user-images.githubusercontent.com/226170/31680585-72706098-b37d-11e7-88ad-028c4c723f42.png) Tree-SHA512: e5f18c20c0be292256a3e78c91cdf390a3b6084346a192a8170460f706f5b6cd198ba5b0035798a85a442fe7f262cf1c2350064670085ff8f473f880ab5ba589
6d5fcad [gui] Make proxy icon from statusbar clickable (Cristian Mircea Messel) Pull request description: Clicking on the proxy icon will open settings showing the network tab bitcoin#11491 (comment) Tree-SHA512: c3549749296918818694a371326d1a3b1075478918aaee940b5c7119a7e2cb991dcfda78f20d44d6d001157b9b82951f0d5157b17f4f0d1a0a242795efade036
Relates to #7734
Please ignore the wrong alpha in the screenshot, I couldn't get the screenshot alpha right :(
I plan to extend this feature in future PRs to include:
Old proposals, dropped in favor of current