aboutsummaryrefslogtreecommitdiff
path: root/onionshare_gui/tab/tab.py
diff options
context:
space:
mode:
authorMicah Lee <micah@micahflee.com>2019-11-02 21:45:55 -0700
committerMicah Lee <micah@micahflee.com>2019-11-02 21:45:55 -0700
commita5f8fee065af1758f7247be1ecc32d7d34acdfb0 (patch)
tree3496cc97ccefce2bc7d9cd5111d7fbf747b493b4 /onionshare_gui/tab/tab.py
parent1b36fe4036e5963ef702273b8d2218f5c043c4ed (diff)
downloadonionshare-a5f8fee065af1758f7247be1ecc32d7d34acdfb0.tar.gz
onionshare-a5f8fee065af1758f7247be1ecc32d7d34acdfb0.zip
Starting to make persistent tabs persistent
Diffstat (limited to 'onionshare_gui/tab/tab.py')
-rw-r--r--onionshare_gui/tab/tab.py27
1 files changed, 23 insertions, 4 deletions
diff --git a/onionshare_gui/tab/tab.py b/onionshare_gui/tab/tab.py
index 2e9f0df2..04e4bf9d 100644
--- a/onionshare_gui/tab/tab.py
+++ b/onionshare_gui/tab/tab.py
@@ -43,7 +43,15 @@ class Tab(QtWidgets.QWidget):
change_icon = QtCore.pyqtSignal(int, str)
change_persistent = QtCore.pyqtSignal(int, bool)
- def __init__(self, common, tab_id, system_tray, status_bar, filenames=None):
+ def __init__(
+ self,
+ common,
+ tab_id,
+ system_tray,
+ status_bar,
+ mode_settings=None,
+ filenames=None,
+ ):
super(Tab, self).__init__()
self.common = common
self.common.log("Tab", "__init__")
@@ -130,8 +138,19 @@ class Tab(QtWidgets.QWidget):
)
self.persistent_image_label.setFixedSize(20, 20)
- # Settings for this tab
- self.mode_settings = ModeSettings(self.common)
+ if mode_settings:
+ # Load this tab
+ self.settings = mode_settings
+ mode = self.settings.get("persistent", "mode")
+ if mode == "share":
+ self.share_mode_clicked()
+ elif mode == "receive":
+ self.receive_mode_clicked()
+ elif mode == "website":
+ self.website_mode_clicked()
+ else:
+ # This is a new tab
+ self.settings = ModeSettings(self.common)
def share_mode_clicked(self):
self.common.log("Tab", "share_mode_clicked")
@@ -496,7 +515,7 @@ class Tab(QtWidgets.QWidget):
if self.mode is None:
return True
- if self.mode_settings.get("persistent", "enabled"):
+ if self.settings.get("persistent", "enabled"):
dialog_text = strings._("gui_close_tab_warning_persistent_description")
else:
server_status = self.get_mode().server_status