Bug ID 1003742
Summary default sddm shows empty user list when no user exists
Classification openSUSE
Product openSUSE Distribution
Version Leap 42.2
Hardware Other
OS Other
Status NEW
Severity Normal
Priority P5 - None
Component KDE Workspace (Plasma)
Assignee opensuse-kde-bugs@opensuse.org
Reporter luizluca@tre-sc.jus.br
QA Contact qa-bugs@suse.de
Found By ---
Blocker ---

Hello,

Because of this logic:

/usr/share/sddm/themes/breeze-openSUSE/Main.qml:

110:            showUserList: (userListModel.count &&
userListModel.disableAvatarsThreshold) ? userListModel.count <=
userListModel.disableAvatarsThreshold : true

It cannot differ between "zero users" and "no userListModel.count info" as 0 is
false for "&&".

I guess the logic has some problem here. The "userListModel.count &&
userListModel.disableAvatarsThreshold" seems to really want to check for null
values. When do they become null? I could not set them as null on LEAP 42.2.
If either is null, a list of users is shown.

Now considering only not-null numbers:

(count,disableAvatarsThreshold):
(0,-1)=show a list of users (an useless empty one!)
(0,0)=show a list of users (an useless empty one!)
(1,-1)=hide the list of users(OK)
(1,0)=show a list of users (but it should hide it)
(1,1)=show the list of users (OK)
(1,2)=show the list of users (OK)
(2,1)=hide the list of users (OK)

I guess the logic should be:

showUserList: (userListModel.count!=null &&
userListModel.disableAvatarsThreshold!=null) ? userListModel.count > 0 &&
userListModel.count <= userListModel.disableAvatarsThreshold : true

Which will produce:

(count,disableAvatarsThreshold):
(null,*)=show a list of users
(*,null)=show a list of users
(0,-1)=hide the list of users
(0,0)=hide the list of users
(0,1)=hide the list of users
(1,-1)=hide the list of users
(1,0)=hide the list of users
(1,1)=show the list of users
(1,2)=show the list of users
(2,1)=hide the list of users


You are receiving this mail because: