mirror of
https://github.com/onionshare/onionshare.git
synced 2025-02-11 12:18:54 -05:00
Reveal/hide private key
This commit is contained in:
parent
f797db0242
commit
029223304b
@ -34,6 +34,8 @@
|
|||||||
"gui_qr_code_dialog_title": "OnionShare QR Code",
|
"gui_qr_code_dialog_title": "OnionShare QR Code",
|
||||||
"gui_qr_label_url_title": "OnionShare Address",
|
"gui_qr_label_url_title": "OnionShare Address",
|
||||||
"gui_qr_label_auth_string_title": "Private Key",
|
"gui_qr_label_auth_string_title": "Private Key",
|
||||||
|
"gui_reveal": "Reveal",
|
||||||
|
"gui_hide": "Hide",
|
||||||
"gui_waiting_to_start": "Scheduled to start in {}. Click to cancel.",
|
"gui_waiting_to_start": "Scheduled to start in {}. Click to cancel.",
|
||||||
"gui_please_wait_no_button": "Starting…",
|
"gui_please_wait_no_button": "Starting…",
|
||||||
"gui_please_wait": "Starting… Click to cancel.",
|
"gui_please_wait": "Starting… Click to cancel.",
|
||||||
@ -214,4 +216,4 @@
|
|||||||
"error_port_not_available": "OnionShare port not available",
|
"error_port_not_available": "OnionShare port not available",
|
||||||
"history_receive_read_message_button": "Read Message",
|
"history_receive_read_message_button": "Read Message",
|
||||||
"error_tor_protocol_error": "There was an error with Tor: {}"
|
"error_tor_protocol_error": "There was an error with Tor: {}"
|
||||||
}
|
}
|
@ -252,11 +252,9 @@ class Mode(QtWidgets.QWidget):
|
|||||||
not self.server_status.local_only
|
not self.server_status.local_only
|
||||||
and not self.app.onion.supports_stealth
|
and not self.app.onion.supports_stealth
|
||||||
and not self.settings.get("general", "public")
|
and not self.settings.get("general", "public")
|
||||||
):
|
):
|
||||||
self.stop_server()
|
self.stop_server()
|
||||||
self.start_server_error(
|
self.start_server_error(strings._("gui_server_doesnt_support_stealth"))
|
||||||
strings._("gui_server_doesnt_support_stealth")
|
|
||||||
)
|
|
||||||
else:
|
else:
|
||||||
self.common.log("Mode", "start_server", "Starting an onion thread")
|
self.common.log("Mode", "start_server", "Starting an onion thread")
|
||||||
self.obtain_onion_early = obtain_onion_early
|
self.obtain_onion_early = obtain_onion_early
|
||||||
|
@ -85,7 +85,6 @@ class ServerStatus(QtWidgets.QWidget):
|
|||||||
# URL sharing instructions, above the URL and Copy Address/QR Code buttons
|
# URL sharing instructions, above the URL and Copy Address/QR Code buttons
|
||||||
self.url_instructions = QtWidgets.QLabel()
|
self.url_instructions = QtWidgets.QLabel()
|
||||||
self.url_instructions.setWordWrap(True)
|
self.url_instructions.setWordWrap(True)
|
||||||
self.url_instructions.setMinimumHeight(50)
|
|
||||||
|
|
||||||
# The URL label itself
|
# The URL label itself
|
||||||
self.url = QtWidgets.QLabel()
|
self.url = QtWidgets.QLabel()
|
||||||
@ -116,14 +115,11 @@ class ServerStatus(QtWidgets.QWidget):
|
|||||||
self.common.gui.css["server_status_url_buttons"]
|
self.common.gui.css["server_status_url_buttons"]
|
||||||
)
|
)
|
||||||
|
|
||||||
# Client Auth sharing instructions, above the
|
# Client Auth sharing instructions, above the
|
||||||
# Copy Private Key/QR Code buttons
|
# Copy Private Key/QR Code buttons
|
||||||
self.client_auth_instructions = QtWidgets.QLabel()
|
self.client_auth_instructions = QtWidgets.QLabel()
|
||||||
self.client_auth_instructions.setWordWrap(True)
|
self.client_auth_instructions.setWordWrap(True)
|
||||||
self.client_auth_instructions.setMinimumHeight(50)
|
self.client_auth_instructions.setText(strings._("gui_client_auth_instructions"))
|
||||||
self.client_auth_instructions.setText(
|
|
||||||
strings._("gui_client_auth_instructions")
|
|
||||||
)
|
|
||||||
|
|
||||||
# The private key itself
|
# The private key itself
|
||||||
self.private_key = QtWidgets.QLabel()
|
self.private_key = QtWidgets.QLabel()
|
||||||
@ -131,9 +127,8 @@ class ServerStatus(QtWidgets.QWidget):
|
|||||||
self.private_key.setWordWrap(True)
|
self.private_key.setWordWrap(True)
|
||||||
self.private_key.setMinimumSize(self.private_key.sizeHint())
|
self.private_key.setMinimumSize(self.private_key.sizeHint())
|
||||||
self.private_key.setStyleSheet(self.common.gui.css["server_status_url"])
|
self.private_key.setStyleSheet(self.common.gui.css["server_status_url"])
|
||||||
self.private_key.setTextInteractionFlags(
|
self.private_key.setTextInteractionFlags(Qt.NoTextInteraction)
|
||||||
Qt.TextSelectableByMouse | Qt.TextSelectableByKeyboard
|
self.private_key_hidden = True
|
||||||
)
|
|
||||||
|
|
||||||
# Copy ClientAuth button
|
# Copy ClientAuth button
|
||||||
self.copy_client_auth_button = QtWidgets.QPushButton(
|
self.copy_client_auth_button = QtWidgets.QPushButton(
|
||||||
@ -156,6 +151,16 @@ class ServerStatus(QtWidgets.QWidget):
|
|||||||
self.common.gui.css["server_status_url_buttons"]
|
self.common.gui.css["server_status_url_buttons"]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# ClientAuth reveal/hide toggle button
|
||||||
|
self.client_auth_toggle_button = QtWidgets.QPushButton(strings._("gui_reveal"))
|
||||||
|
self.client_auth_toggle_button.hide()
|
||||||
|
self.client_auth_toggle_button.clicked.connect(
|
||||||
|
self.client_auth_toggle_button_clicked
|
||||||
|
)
|
||||||
|
self.client_auth_toggle_button.setStyleSheet(
|
||||||
|
self.common.gui.css["server_status_url_buttons"]
|
||||||
|
)
|
||||||
|
|
||||||
# URL instructions layout
|
# URL instructions layout
|
||||||
url_buttons_layout = QtWidgets.QHBoxLayout()
|
url_buttons_layout = QtWidgets.QHBoxLayout()
|
||||||
url_buttons_layout.addWidget(self.copy_url_button)
|
url_buttons_layout.addWidget(self.copy_url_button)
|
||||||
@ -172,6 +177,7 @@ class ServerStatus(QtWidgets.QWidget):
|
|||||||
client_auth_buttons_layout = QtWidgets.QHBoxLayout()
|
client_auth_buttons_layout = QtWidgets.QHBoxLayout()
|
||||||
client_auth_buttons_layout.addWidget(self.copy_client_auth_button)
|
client_auth_buttons_layout.addWidget(self.copy_client_auth_button)
|
||||||
client_auth_buttons_layout.addWidget(self.show_client_auth_qr_code_button)
|
client_auth_buttons_layout.addWidget(self.show_client_auth_qr_code_button)
|
||||||
|
client_auth_buttons_layout.addWidget(self.client_auth_toggle_button)
|
||||||
client_auth_buttons_layout.addStretch()
|
client_auth_buttons_layout.addStretch()
|
||||||
|
|
||||||
client_auth_layout = QtWidgets.QVBoxLayout()
|
client_auth_layout = QtWidgets.QVBoxLayout()
|
||||||
@ -285,9 +291,7 @@ class ServerStatus(QtWidgets.QWidget):
|
|||||||
self.url_description.setToolTip(strings._("gui_url_label_stay_open"))
|
self.url_description.setToolTip(strings._("gui_url_label_stay_open"))
|
||||||
|
|
||||||
if self.settings.get("general", "public"):
|
if self.settings.get("general", "public"):
|
||||||
self.url_instructions.setText(
|
self.url_instructions.setText(strings._("gui_url_instructions_public_mode"))
|
||||||
strings._("gui_url_instructions_public_mode")
|
|
||||||
)
|
|
||||||
else:
|
else:
|
||||||
self.url_instructions.setText(strings._("gui_url_instructions"))
|
self.url_instructions.setText(strings._("gui_url_instructions"))
|
||||||
self.url_instructions.show()
|
self.url_instructions.show()
|
||||||
@ -303,10 +307,18 @@ class ServerStatus(QtWidgets.QWidget):
|
|||||||
self.show_client_auth_qr_code_button.hide()
|
self.show_client_auth_qr_code_button.hide()
|
||||||
else:
|
else:
|
||||||
self.client_auth_instructions.show()
|
self.client_auth_instructions.show()
|
||||||
self.private_key.setText(self.app.auth_string)
|
if self.private_key_hidden:
|
||||||
|
self.private_key.setText("*" * len(self.app.auth_string))
|
||||||
|
self.private_key.setTextInteractionFlags(Qt.NoTextInteraction)
|
||||||
|
else:
|
||||||
|
self.private_key.setText(self.app.auth_string)
|
||||||
|
self.private_key.setTextInteractionFlags(
|
||||||
|
Qt.TextSelectableByMouse | Qt.TextSelectableByKeyboard
|
||||||
|
)
|
||||||
self.private_key.show()
|
self.private_key.show()
|
||||||
self.copy_client_auth_button.show()
|
self.copy_client_auth_button.show()
|
||||||
self.show_client_auth_qr_code_button.show()
|
self.show_client_auth_qr_code_button.show()
|
||||||
|
self.client_auth_toggle_button.show()
|
||||||
|
|
||||||
def update(self):
|
def update(self):
|
||||||
"""
|
"""
|
||||||
@ -338,6 +350,7 @@ class ServerStatus(QtWidgets.QWidget):
|
|||||||
self.client_auth_instructions.hide()
|
self.client_auth_instructions.hide()
|
||||||
self.copy_client_auth_button.hide()
|
self.copy_client_auth_button.hide()
|
||||||
self.show_client_auth_qr_code_button.hide()
|
self.show_client_auth_qr_code_button.hide()
|
||||||
|
self.client_auth_toggle_button.hide()
|
||||||
|
|
||||||
self.mode_settings_widget.update_ui()
|
self.mode_settings_widget.update_ui()
|
||||||
|
|
||||||
@ -486,9 +499,7 @@ class ServerStatus(QtWidgets.QWidget):
|
|||||||
Show a QR code of the onion URL.
|
Show a QR code of the onion URL.
|
||||||
"""
|
"""
|
||||||
self.qr_code_dialog = QRCodeDialog(
|
self.qr_code_dialog = QRCodeDialog(
|
||||||
self.common,
|
self.common, strings._("gui_qr_label_url_title"), self.get_url()
|
||||||
strings._("gui_qr_label_url_title"),
|
|
||||||
self.get_url()
|
|
||||||
)
|
)
|
||||||
|
|
||||||
def show_client_auth_qr_code_button_clicked(self):
|
def show_client_auth_qr_code_button_clicked(self):
|
||||||
@ -498,9 +509,22 @@ class ServerStatus(QtWidgets.QWidget):
|
|||||||
self.qr_code_dialog = QRCodeDialog(
|
self.qr_code_dialog = QRCodeDialog(
|
||||||
self.common,
|
self.common,
|
||||||
strings._("gui_qr_label_auth_string_title"),
|
strings._("gui_qr_label_auth_string_title"),
|
||||||
self.app.auth_string
|
self.app.auth_string,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def client_auth_toggle_button_clicked(self):
|
||||||
|
"""
|
||||||
|
ClientAuth reveal/hide toggle button clicked
|
||||||
|
"""
|
||||||
|
if self.private_key_hidden:
|
||||||
|
self.private_key_hidden = False
|
||||||
|
self.client_auth_toggle_button.setText(strings._("gui_hide"))
|
||||||
|
else:
|
||||||
|
self.private_key_hidden = True
|
||||||
|
self.client_auth_toggle_button.setText(strings._("gui_reveal"))
|
||||||
|
|
||||||
|
self.show_url()
|
||||||
|
|
||||||
def start_server(self):
|
def start_server(self):
|
||||||
"""
|
"""
|
||||||
Start the server.
|
Start the server.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user