-
Notifications
You must be signed in to change notification settings - Fork 79
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
WIP feat(Onboarding) Implement new Login screen #17057
base: master
Are you sure you want to change the base?
Conversation
544dd34
to
f6b898d
Compare
Jenkins BuildsClick to see older builds (128)
|
f6b898d
to
7be9676
Compare
7be9676
to
401e2e0
Compare
401e2e0
to
b688aae
Compare
b688aae
to
c263dfc
Compare
d5524fd
to
35b8620
Compare
c263dfc
to
73ddd3b
Compare
29ce4b0
to
43a5b68
Compare
73ddd3b
to
0557b49
Compare
0557b49
to
a9fecc4
Compare
a9fecc4
to
5e00603
Compare
5e00603
to
589e17c
Compare
589e17c
to
0157c62
Compare
0157c62
to
e788759
Compare
e788759
to
8f2112d
Compare
- explicitely provide a bg color - also fix the mouse cursor shape
8f2112d
to
3d87833
Compare
3d87833
to
bf1d7e1
Compare
bf1d7e1
to
6ae95f6
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.
Nice work
@@ -226,9 +229,15 @@ Item { | |||
|
|||
// Some component validations: | |||
if(text.length !== d.currentPinIndex) | |||
console.error("StatusPinInput input management error. Current pin length must be "+ text.length + "and is " + d.currentPinIndex) | |||
console.error("StatusPinInput input management error. Current pin length must be "+ text.length + " and is " + d.currentPinIndex) |
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.
Does QML support strings using backticks?
If so, this would be cleaner:
console.error("StatusPinInput input management error. Current pin length must be "+ text.length + " and is " + d.currentPinIndex) | |
console.error(`StatusPinInput input management error. Current pin length must be ${text.length} and is ${ d.currentPinIndex}`) |
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.
Yeah it does; existing code so didn't touch it more than I wanted :)
required property var loginAccountsModel | ||
|
||
property bool biometricsAvailable: Qt.platform.os === Constants.mac | ||
required property bool isBiometricsLogin // FIXME should come from the loginAccountsModel for each profile separately? |
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 just checked and indeed, it is per account because it comes from localAccountSettings
and it changes depending on the selected profile
proc setSelectedLoginAccount*(self: Controller, keyUid: string, isKeycardAccount: bool) =
...
let selectedAccount = self.getSelectedLoginAccount()
singletonInstance.localAccountSettings.setFileName(selectedAccount.name)
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.
But wtf... how can this work when we are not logged in yet 🤔
Currently it's evaluated based on:
isBiometricsLogin: localAccountSettings.storeToKeychainValue === Constants.keychain.storedValue.store
localAccountSettings
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 mean, in the context of the login screen, this doesn't make sense, as we are not logged in yet
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 settings are not encrypted. It's what you can find in Status/qt
. sensitive_settings
are the settings for when you are logged in
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 settings are not encrypted. It's what you can find in
Status/qt
.sensitive_settings
are the settings for when you are logged in
Ok, but how does the particular setting get associated with another profile (one that's not yet logged in)?
image: model.thumbnailImage | ||
colorId: model.colorId | ||
colorHash: model.colorHash | ||
// keycardLocked // FIXME needed here too? should be coming from the model imo |
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.
What happens if this is set to true? Does it mean that it uses a keycard or that the keycard is locked?
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 latter, we can arrive there after too many failed PIN attempts
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.
But I verified with Ben that it's not needed in the combo (that keycard may not be inserted yet); will remove
6ae95f6
to
3e8ee44
Compare
3e8ee44
to
bb03c20
Compare
bb03c20
to
740cdcb
Compare
740cdcb
to
f9242cd
Compare
f9242cd
to
8eed24e
Compare
What does the PR do
TODO:
Fixes #17049
Fixes #17081
Affected areas
Login screen
Architecture compliance
My PR is consistent with this document: Status Desktop Architecture Guide
Screenshot of functionality (including design for comparison)