in client/securedrop_client/gui/auth/dialog.py [0:0]
def __init__(self, parent: QWidget) -> None:
super().__init__(parent)
# Set modal
self.setModal(True)
# Set layout
layout = QVBoxLayout(self)
self.setLayout(layout)
# Set margins and spacing
layout.setContentsMargins(0, 274, 0, 20)
layout.setSpacing(0)
# Set background
self.setAutoFillBackground(True)
palette = QPalette()
palette.setBrush(QPalette.Background, QBrush(load_image("login_bg.svg")))
self.setPalette(palette)
self.setFixedSize(QSize(596, 671)) # Set to size provided in the login_bg.svg file
self.setSizePolicy(QSizePolicy.Fixed, QSizePolicy.Fixed)
# Create error bar
self.error_bar = LoginErrorBar()
# Create form widget
form = QWidget()
form.setObjectName("LoginDialog_form")
self.setStyleSheet(load_relative_css(__file__, "dialog.css"))
form_layout = QVBoxLayout()
form.setLayout(form_layout)
form_layout.setContentsMargins(80, 0, 80, 0)
form_layout.setSpacing(8)
self.username_label = QLabel(_("Username"))
self.username_field = QLineEdit()
self.password_label = QLabel(_("Passphrase"))
self.password_field = PasswordEdit(self)
self.check = SDCheckBox()
self.check.checkbox.stateChanged.connect(self.password_field.on_toggle_password_Action)
self.tfa_label = QLabel(_("Two-Factor Code"))
self.tfa_field = QLineEdit()
self.opacity_effect = QGraphicsOpacityEffect()
buttons = QWidget()
buttons_layout = QHBoxLayout()
buttons.setLayout(buttons_layout)
buttons_layout.setContentsMargins(0, 20, 0, 0)
self.submit = SignInButton()
self.submit.clicked.connect(self.validate)
self.offline_mode = LoginOfflineLink()
buttons_layout.addWidget(self.offline_mode)
buttons_layout.addStretch()
buttons_layout.addWidget(self.submit)
form_layout.addWidget(self.username_label)
form_layout.addWidget(self.username_field)
form_layout.addWidget(QWidget(self))
form_layout.addWidget(self.password_label)
form_layout.addWidget(self.password_field)
form_layout.addWidget(self.check, alignment=Qt.AlignRight)
form_layout.addWidget(self.tfa_label)
form_layout.addWidget(self.tfa_field)
form_layout.addWidget(buttons)
# Create widget to display application name and version
application_version = QLabel(_("SecureDrop Client v{}").format(__version__))
application_version.setAlignment(Qt.AlignHCenter)
application_version.setObjectName("LoginDialog_app_version_label")
# Add widgets
layout.addWidget(self.error_bar)
layout.addStretch()
layout.addWidget(form)
layout.addStretch()
layout.addWidget(application_version)
self.submit.setDefault(True)