Components that used QQC1 in sddm-theme/ (excluding the symlinked components folder) have been changed to use QQC2.
Concept makes sense, minor tweaks above
Make sure you test in full sddm, the test mode will infer some settings from your session which won't be valid in real usage.
Why the wrapper?
Implicit height should be propagated upwards, not height.
Seems like you have all the QQC1 imports covered. I'm seeing a couple more in other files that are unused so it would be perfectly fine to remove them as a part of this diff.
I'll give the new code a spin soon and then I can add more detailed comments.
Note that (confusingly) Plasma components 2 is QQC1
It might fix the menu issue
width by default is bound to the implicitWidth so you don't need to set it
Added some comments that apply to both button files.
On a final note, watch out for whitespace because there's lots of it that's been added. You can turn on whitespace displaying in Kate:
It seems to be running fine without the Item wrapper for me. What I did though was but the QQC2 menu inside the button, I didn't split them up.
While we're doing this, can you perhaps make the menu pop up *above* the button?
This can be up for debate, but I sort of liked the older behavior more when the menu's width would be determined by the size of the ToolButton at a particular point.
Why do we need to set this?
Prefer descriptive variable names; toolButton is better than toolBtn, but even better would be a description of what this button is actually for. The original was better and didn't need to be changed IMO.
For positioning the menu maybe you could have a look at how it was done in Kickoff config window: https://github.com/KDE/plasma-desktop/blob/master/applets/kickoff/package/contents/ui/ConfigGeneral.qml
The menu seems to be extremely stubborn when it comes to y positioning. No amount of properties set or values passed to popup will get it to budge from its y position, including the method Kickoff uses.
If keeping the new menu style we have to wait until all those patches get merged in Plasma.
Might be better to just follow current style; updating it to the new one would be a quick review.
LGTM in use. The only thing I'd ask you to do is add font.pointSize: config.fontSize to both of the QQC2.Labels you were working on. SDDM defaults to 9pt font sizes; we need to override that so it's 10pt (same as the Plasma default).