Merge lp:~mterry/unity8/greeter-refactor into lp:unity8
| Status: | Merged |
|---|---|
| Approved by: | Daniel d'Andrada on 2015-02-18 |
| Approved revision: | 1507 |
| Merged at revision: | 1622 |
| Proposed branch: | lp:~mterry/unity8/greeter-refactor |
| Merge into: | lp:unity8 |
| Prerequisite: | lp:~mterry/unity8/tutorial-new-screens |
| Diff against target: |
5614 lines (+2954/-1668) 28 files modified
cmake/modules/QmlTest.cmake (+1/-1) qml/Components/DelayedLockscreen.qml (+3/-1) qml/Components/PassphraseLockscreen.qml (+2/-3) qml/Components/PinLockscreen.qml (+3/-4) qml/Greeter/CoverPage.qml (+163/-110) qml/Greeter/Greeter.qml (+358/-186) qml/Greeter/Infographics.qml (+1/-0) qml/Greeter/LoginList.qml (+70/-88) qml/Greeter/NarrowView.qml (+170/-0) qml/Greeter/WideView.qml (+134/-0) qml/Shell.qml (+78/-364) tests/autopilot/unity8/shell/emulators/greeter.py (+19/-3) tests/autopilot/unity8/shell/emulators/main_window.py (+0/-6) tests/autopilot/unity8/shell/tests/__init__.py (+2/-3) tests/autopilot/unity8/shell/tests/test_lock_screen.py (+8/-12) tests/plugins/LightDM/CMakeLists.txt (+21/-6) tests/plugins/LightDM/usersmodel.cpp (+84/-0) tests/qmltests/CMakeLists.txt (+4/-3) tests/qmltests/Greeter/TestView.qml (+99/-0) tests/qmltests/Greeter/tst_Greeter.qml (+472/-0) tests/qmltests/Greeter/tst_MultiGreeter.qml (+0/-475) tests/qmltests/Greeter/tst_NarrowView.qml (+522/-0) tests/qmltests/Greeter/tst_SingleGreeter.qml (+0/-244) tests/qmltests/Greeter/tst_WideView.qml (+519/-0) tests/qmltests/Tutorial/tst_Tutorial.qml (+5/-4) tests/qmltests/tst_Shell.qml (+65/-43) tests/qmltests/tst_ShellWithPin.qml (+97/-48) tests/qmltests/tst_TabletShell.qml (+54/-64) |
| To merge this branch: | bzr merge lp:~mterry/unity8/greeter-refactor |
| Related bugs: |
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| Michael Zanetti (community) | Approve on 2015-02-24 | ||
| Daniel d'Andrada (community) | 2015-02-05 | Approve on 2015-02-18 | |
| PS Jenkins bot | continuous-integration | 2015-02-05 | Needs Fixing on 2015-02-18 |
|
Review via email:
|
|||
This proposal supersedes a proposal from 2015-01-29.
Commit Message
Refactor the greeter code to be more compartmented and isolatable.
This will help make it an optional piece of the shell when we allow a split greeter/shell.
My driving goals were:
- Remove as much logic from Shell.qml as possible. Right now, there is so much Greeter logic spread all throughout Shell.qml in different bits. For example, the Lockscreen widget sitting there instead of in qml/Greeter/.
- Clean up how we load the two different views (tablet & phone). Right now we have some widgets always present but sometimes hidden (Lockscreen) and Loaders within Loaders (LoginList inside GreeterContent). I wanted just two top-level view widgets that could be separately loaded depending on which mode we are in.
- Toward that end, I wanted to consolidate all the Greeter logic out of Shell and out of those two view classes to avoid duplication. So I made the main Greeter entry point widget handle all the login logic and interactions with LightDM. It controls the views, who always ask it to do things on their behalf. Classic MVC stuff.
- I separated out some of the widgetry from the previous Greeter class into a CoverPage class that both NarrowView and WideView use. This class now holds the drag handle for sliding the greeter away and the infographic.
- Now that each piece of the greeter has a much more brightly defined boundary, testing them in isolation is much easier. I've added tst_WideView, tst_NarrowView, and tst_Greeter files. I've moved existing tests around a bit and added some more. But it should be much more clear where a prospective test belongs now (logic tests in Greeter, visual tests in the respective View).
- I also moved some tests we had in qmluitests/ that were purely testing the LightDM plugin into their own plugin test file.
Description of the Change
* Are there any related MPs required for this MP to build/function as expected? Please list.
No.
* If you changed the packaging (debian), did you subscribe the ubuntu-unity team to this MP?
Not applicable.
* If you changed the UI, has there been a design review?
Not applicable.
| Michael Terry (mterry) wrote : | # |
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1476
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| Daniel d'Andrada (dandrader) wrote : | # |
About the commit message: Mind doing the "short summary on first line, empty line, rest of the explanation" format?
| Daniel d'Andrada (dandrader) wrote : | # |
"""
1174 + * Copyright (C) 2014 Canonical, Ltd.
"""
We're past that year, man. :)
| Michael Terry (mterry) wrote : | # |
OK, copied "Description" into "Commit Message" and updated years. :)
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1478
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1480
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1481
http://
Executed test runs:
FAILURE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1481
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| Albert Astals Cid (aacid) wrote : | # |
Text conflict in qml/Greeter/
Text conflict in qml/Greeter/
Text conflict in qml/Shell.qml
Text conflict in tests/plugins/
Text conflict in tests/qmltests/
Contents conflict in tests/qmltests/
Text conflict in tests/qmltests/
7 conflicts encountered.
| Michael Terry (mterry) wrote : | # |
I rebased this MP on tutorial-
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1484
No commit message was specified in the merge proposal. Click on the following link and set the commit message (if you want a jenkins rebuild you need to trigger it yourself):
https:/
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
- 1485. By Michael Terry on 2015-02-06
-
Fix tutorial autopilot test with new greeter refactor
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1485
http://
Executed test runs:
UNSTABLE: http://
FAILURE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
- 1486. By Michael Terry on 2015-02-06
-
Fix autopilot harder
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1486
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
- 1487. By Michael Terry on 2015-02-09
-
Wait until userlist settles at beginning of TabletShell test
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1487
http://
Executed test runs:
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1487
http://
Executed test runs:
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| Daniel d'Andrada (dandrader) wrote : | # |
There seems to be a badly resolved merge conflict:
qml/Components/
| Daniel d'Andrada (dandrader) wrote : | # |
Please update the copyright year of qml/Components/
| Daniel d'Andrada (dandrader) wrote : | # |
I run "make tryGreeter" and got a black screen on the left side. clicking the "show greeter" button has no visible effect. Is that expected?
| Daniel d'Andrada (dandrader) wrote : | # |
"""
=== modified file 'qml/Components
--- qml/Components/
+++ qml/Components/
@@ -98,6 +98,11 @@ Item {
// has oddly sized password characters that don't scale right)
+ onFocusChanged: {
+ // Within our FocusScope, we always want to have focus
+ focus = true;
+ }
+
// simulate being disabled, but without removing OSK focus
"""
This looks like a desperate hack. Setting "focus: true" should suffice (along with a FocusScope surrounding the offender in the worst case, if that makes sense). Do you know who is taking away the focus from this item?
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1487
http://
Executed test runs:
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
- 1488. By Michael Terry on 2015-02-10
-
Small cleanups
- 1489. By Michael Terry on 2015-02-10
-
Make fake TestView more obviously intentionally-blank
| Michael Terry (mterry) wrote : | # |
> There seems to be a badly resolved merge conflict:
> qml/Components/
Fixed, whoops!
> Please update the copyright year of qml/Components/
Fixed.
> I run "make tryGreeter" and got a black screen on the left side.
> clicking the "show greeter" button has no visible effect. Is that expected?
Yes. tst_Greeter.qml only tests the "controller" side of things -- the glue between the user visible views and AccountsService
If you want to play with a view class, use tryWideView and tryNarrowView. If you want to play with the Greeter + a view, use tryShell, tryShellWithPin, or tryTabletShell.
> This looks like a desperate hack. Setting "focus: true" should suffice
Yeah... You got me. It didn't suffice, and I couldn't tell why focus was being stolen. All I could tell was that activeFocus was moving to the greeter's loader itself. But not in a situation that seemingly would require it to move (e.g. it wasn't being reloaded nor was a widget disabled as far as I could tell).
| Michael Terry (mterry) wrote : | # |
(Well, I guess it's not surprising that the loader got activeFocus, I think that was just the side effect of the entry's focus being false. What was surprising was that the entry object's focus property was being set to false in the first place. Wasn't sure why.)
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1489
http://
Executed test runs:
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
- 1490. By Michael Terry on 2015-02-11
-
Restore behavior animating LoginList height
- 1491. By Michael Terry on 2015-02-11
-
Merge from tutorial-
new-screens
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1490
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1490
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1491
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| Daniel d'Andrada (dandrader) wrote : | # |
"""
Connections {
target: ApplicationManager
}
}
}
}
"""
All those greeter.
A focus request, as it name says, it's just a request. It will be processed by the window manager part of unity8 (eg PhoneStage or TabletStage) which will finally change the app that is focused, causing ApplicationMana
The same goes for the onApplicationAdded case.
Can't we have greeter.
| Daniel d'Andrada (dandrader) wrote : | # |
>
> A focus request, as it name says, it's just a request. It will be processed by
> the window manager part of unity8 (eg PhoneStage or TabletStage) which will
> finally change the app that is focused, causing
> ApplicationMana
> request you will be calling greeter.
> you're assuming that a request will always be successful and are telling
> greeter that a given app now has focus before it actually happens.
Unless you wanna do something also when ApplicationMana
| Daniel d'Andrada (dandrader) wrote : | # |
In Shell.qml:
"""
"""
This line is way too long.
- 1492. By Michael Terry on 2015-02-12
-
Shorten a couple long lines
- 1493. By Michael Terry on 2015-02-12
-
Consolidate app-switching logic
- 1494. By Michael Terry on 2015-02-12
-
Add test and comment for the relied-upon behavior of emitting a focus id changed signal even when we focus the same app
| Daniel d'Andrada (dandrader) wrote : | # |
run "make tryShell"
Start a left edge drag, up to 1/3 of the display width (to that you have the greeter move), then release it.
Expected outcome:
Greeter slides back into place, in an animated fashion
Actual outcome:
Greeter jumps immediately back into place. There's not animation at all.
| Michael Terry (mterry) wrote : | # |
> This line is way too long.
Fixed, plus another similar line.
> All those greeter.
Well, you are right. Back when I originally added "emergency dialer" support, I tested and the focusChanged signal was not emitted in all cases (like if it was already focused) and not everything went through the requestFocus path (some things were just focused without a request, by the shell). So I had redundant bits in each signal handler.
But not 100% redundant. Each behaved slightly different. In this branch, I've consolidated all that down to one function call per signal handler, and I felt pretty good about that. But you're right, the whole thing looks silly from someone that isn't in the weeds of it.
So stepping back, I retested. And nowadays, we seem to always properly requestFocus, not to mention that a focusChanged signal is emitted in all cases now. So all those signal handlers can consolidate down to one, when focusChanged is received.
So I've done that. Thanks for the kick in the pants! :) I've also added a test to cover the specific case of a re-focus on an already focused app from the greeter. We didn't test that precise case before, but since that one depends on special behavior of re-emitting a changed signal even when nothing changed, a test & comment seemed prudent.
| Daniel d'Andrada (dandrader) wrote : | # |
> run "make tryShell"
>
> Start a left edge drag, up to 1/3 of the display width (to that you have the
> greeter move), then release it.
>
> Expected outcome:
> Greeter slides back into place, in an animated fashion
>
> Actual outcome:
> Greeter jumps immediately back into place. There's not animation at all.
Wonder if we could have a qml regression test for that, that checks that the greeter.x is changed to a couple of intermediate values before finally reaching zero.
- 1495. By Michael Terry on 2015-02-12
-
Animate letting go of the coverPage
| Daniel d'Andrada (dandrader) wrote : | # |
1- make tryShellWithPin
2- swipe away the cover page
3- press "Show greeter" button
You get those warnings:
"""
qml/Components/
qml/Components/
"""
| Michael Terry (mterry) wrote : | # |
The animation when letting go of the coverPage while making a left drag is fixed too.
| Michael Terry (mterry) wrote : | # |
Oh, let me see about a test...
| Daniel d'Andrada (dandrader) wrote : | # |
> 1- make tryShellWithPin
> 2- swipe away the cover page
> 3- press "Show greeter" button
>
> You get those warnings:
> """
> qml/Components/
> null
> qml/Components/
> 'horizontalCenter' of null
> """
It also happens in trunk, but it would be good to have it fixed here
| Daniel d'Andrada (dandrader) wrote : | # |
1- run make tryShell
A bunch of new warnings show up:
"""
qml/Greeter/
qml/Greeter/
qml/Greeter/
qml/Greeter/
qml/Greeter/
qml/Greeter/
"""
then when you swipe away the greeter and press the "show greeter" button, you get all the warnings above plus this one:
"""
qml/Components/
"""
- 1496. By Michael Terry on 2015-02-12
-
Stop some warnings from being printed
| Michael Terry (mterry) wrote : | # |
OK, warnings fixed.
- 1497. By Michael Terry on 2015-02-12
-
Add tiny test to confirm that we don't just jump to launcherOffset = 0
| Michael Terry (mterry) wrote : | # |
And a test added for the animation of the coverPage being let go.
| Albert Astals Cid (aacid) wrote : | # |
Text conflict in qml/Greeter/
1 conflicts encountered.
| Daniel d'Andrada (dandrader) wrote : | # |
This launcherOffsetProxy thing in Greeter.qml is rather messy. Have you tried using a SmoothedAnimation, like that? http://
Seems to work fine.
| Daniel d'Andrada (dandrader) wrote : | # |
On 10/02/15 18:16, Michael Terry wrote:
>> This looks like a desperate hack. Setting "focus: true" should suffice
> Yeah... You got me. It didn't suffice, and I couldn't tell why focus was being stolen. All I could tell was that activeFocus was moving to the greeter's loader itself. But not in a situation that seemingly would require it to move (e.g. it wasn't being reloaded nor was a widget disabled as far as I could tell).
The latest unity8 now has a tool to help you find out who's stealing
your focus. See tests/uqmlscene
You can use it to debug focus with "make tryFoo" by changing "#define
UQMLSCENE_
If you can only reproduce the issue on the device then you will have to
use ActiveFocusLogger in src/main.cpp. Just see how it's done in
tests/uqmlscene
This gotta be clarified and fixed.
| Daniel d'Andrada (dandrader) wrote : | # |
> This launcherOffsetProxy thing in Greeter.qml is rather messy. Have you tried
> using a SmoothedAnimation, like that? http://
>
> Seems to work fine.
This seems perfect: http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1494
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
- 1498. By Michael Terry on 2015-02-12
-
Merge from trunk
| Michael Terry (mterry) wrote : | # |
> This seems perfect: http://
As I said on IRC:
"""
We don't want [the Behavior animation] when the user is driving the abrupt changes
Then we want to be immediately responsive
It makes the phone look laggy if we trail their finger
[Your latest patch is] still a noticable delay when jittering the mouse/finger. It's better for sure. But still noticable.
It feels clear to me that rather than speeding up a behavior so fast as to not be noticable in that case, we just want to disable it...
I understand it's more code, but it feels more correct
"""
So I'm still pushing back on this request. I'm happy to bow to more pressure, if we want a third opinion.
I am looking into the focus issue.
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1497
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 1499. By Michael Terry on 2015-02-12
-
Add unused tst_ShellWithPa
ssphrase. qml file, to allow tryShellWithPas sphrase - 1500. By Michael Terry on 2015-02-12
-
Remove (unneeded?) focus hack
| Michael Terry (mterry) wrote : | # |
Uh, so I guess the focus issue just doesn't exist anymore? Removing that code seems to have no effect. I can't reproduce the bug I was trying to fix (which occurred when entering a bad passphrase).
So I've taken the hack out entirely.
I've also added a bare-bones tst_ShellWithPa
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1498
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1500
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| Daniel d'Andrada (dandrader) wrote : | # |
> I've also added a bare-bones tst_ShellWithPa
> passphrase shell, which I just realized is hard to do without the benefit of
> "./run.sh -k" now.
Now that the lightdm mock libs are unified we no longer need separate test files for different lightdm mock modes.
We can have them all under tst_Shell, like this:
http://
| Daniel d'Andrada (dandrader) wrote : | # |
I'm getting some test failures:
FAIL! : qmltestrunner:
Actual ():
Expected (): visible
Loc: [/home/
FAIL! : qmltestrunner:
Actual ():
Expected (): visible
Loc: [/home/
FAIL! : qmltestrunner:
Actual ():
Expected (): visible
Loc: [/home/
FAIL! : qmltestrunner:
Actual (): -64
Expected (): 0
Loc: [/home/
| Daniel d'Andrada (dandrader) wrote : | # |
In Greeter.qml:
"""
loader.
"""
Please name it like a function, instead of like a boolean property.
I would suggest:
onAuthenticatio
eg:
"""
function authenticated(
if (success) {
} else {
}
}
"""
Would be:
"""
function onAuthenticatio
function onAuthenticatio
"""
| Daniel d'Andrada (dandrader) wrote : | # |
You have this both in Greeter.qml and CoverPage.qml:
"""
* Copyright (C) 2013 Canonical, Ltd.
"""
Please update.
| Daniel d'Andrada (dandrader) wrote : | # |
In Greeter.qml
"""
d.startUnlock(
"""
This forces the reader to jump to the function definition to figure out what the heck that booelan means, hurting code readability.
Please at least add an inline comment saying what this boolean is about, like:
"""
d.startUnlock(false /* toTheRight */);
"""
| Daniel d'Andrada (dandrader) wrote : | # |
Both in NarrowView.qml and in WideView.qml\
"""
QtObject {
id: d
}
"""
The intention is good, but right now it's just dead code.
| Daniel d'Andrada (dandrader) wrote : | # |
In CoverPager.qml:
"""
property bool ready: greeterBackgrou
"""
This line is too long.
| Daniel d'Andrada (dandrader) wrote : | # |
In tst_WideView.qml
"""
Binding {
target: LightDM.Users
property: "mockMode"
value: "full"
}
"""
Shouldn't you also set LightDM.
| Daniel d'Andrada (dandrader) wrote : | # |
> In tst_WideView.qml
>
> """
> Binding {
> target: LightDM.Users
> property: "mockMode"
> value: "full"
> }
> """
>
> Shouldn't you also set LightDM.
> seing it being done anywhere in this file.
Hmm, maybe it doesn't matter as LightDM.Greeter doesn't seem to be used by WideView anyway.
| Daniel d'Andrada (dandrader) wrote : | # |
In tst_Greeter.qml
"""
* Copyright 2013 Canonical Ltd.
"""
| Daniel d'Andrada (dandrader) wrote : | # |
tst_Greeter.
Suggestion:
http://
| Daniel d'Andrada (dandrader) wrote : | # |
In tests/plugins/
"""
* Copyright (C) 2013 Canonical, Ltd.
"""
| Daniel d'Andrada (dandrader) wrote : | # |
I think that would be all. Tested manually on N4 and N10 and didn't spot any obvious regressions.
- 1501. By Michael Terry on 2015-02-17
-
Merge from trunk
- 1502. By Michael Terry on 2015-02-17
-
Fix some review nits
- 1503. By Michael Terry on 2015-02-17
-
More nits
- 1504. By Michael Terry on 2015-02-17
-
More nits
- 1505. By Michael Terry on 2015-02-17
-
Fix shell tests, by reverting a small cleanup I tried to make
| Michael Terry (mterry) wrote : | # |
> """
> QtObject {
> id: d
> }
> """
>
> The intention is good, but right now it's just dead code.
I tend to use QtObject 'd' blocks like that as barriers between the "public" code and the implementation code. So they are useful as a visual separator, even if empty. But alright, removed.
> In tst_Greeter.qml [and usersmodel.cpp, Greeter.qml, and CoverPage.qml]
>
> """
> * Copyright 2013 Canonical Ltd.
> """
Fixed.
> """
> property bool ready: greeterBackgrou
> """
>
> This line is too long.
Fixed by removing it. It's not actually used anywhere now with this refactor.
> tst_Greeter.
Fair enough, used your version. Thanks!
> Now that the lightdm mock libs are unified we no longer need separate test files for different lightdm mock modes.
Fair enough, used your version. And added a line for "single-pin", though I didn't take the further step of consolidating tst_Shell.qml and tst_ShellWithPi
> Shouldn't you also set LightDM.
> seing it being done anywhere in this file.
>
> Hmm, maybe it doesn't matter as LightDM.Greeter doesn't seem to be used by WideView anyway.
That's why I didn't have it. The views should never need the LightDM.Greeter object, they should get everything from the Greeter.qml class.
> Please at least add an inline comment saying what this boolean is about, like:
>
> """
> d.startUnlock(false /* toTheRight */);
> """
Done.
> """
> loader.
> """
>
> Please name it like a function, instead of like a boolean property.
Fair, especially since LightDM.Greeter is already a property that exists in and around this code.
I've changed it to notifyAuthentic
> I'm getting some test failures:
> [snip]
Fixed. I got overzealous in my consolidation of app-switching code in r1493.
=================
OK, that should be all your comments addressed.
| Michael Terry (mterry) wrote : | # |
"Fair, especially since LightDM.
is what I meant to say.
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1505
http://
Executed test runs:
UNSTABLE: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1505
http://
Executed test runs:
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| Daniel d'Andrada (dandrader) wrote : | # |
Have to remove this line from tests/qmltests/
"""
add_qml_test(. ShellWithPassph
"""
- 1506. By Michael Terry on 2015-02-18
-
Whoops, remove reference to ShellWithPassphrase
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:1506
http://
Executed test runs:
SUCCESS: http://
UNSTABLE: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
Click here to trigger a rebuild:
http://
| Michael Terry (mterry) wrote : | # |
Yup, thanks. :P Fixed
- 1507. By Michael Terry on 2015-02-18
-
Don't enable backspace pin button when not supposed to
| Daniel d'Andrada (dandrader) wrote : | # |
* Did you perform an exploratory manual test run of the code change and any related functionality?
Yes.
* Did CI run pass? If not, please explain why.
Unrelated, known, failures due to the move to qt 5.4 (I think)
* Did you make sure that the branch does not contain spurious tags?
Yes
- 1508. By Michael Terry on 2015-02-23
-
Simplify behavior launcher/
greeter/ dash when doing a long-left-drag; now we never show dash while locked
| Michael Zanetti (mzanetti) wrote : | # |
Approving changed behavior in the last commit. Works fine in my opinion now. Also had a discussion with design about it and we're good.
* Did you perform an exploratory manual test run of the code change and any related functionality?
Yes.
* Did CI run pass? If not, please explain why.
Unrelated, known, failures due to the move to qt 5.4 (I think)
* Did you make sure that the branch does not contain spurious tags?
Yes
| Vesa Rautiainen (vesar) wrote : | # |
> Approving changed behavior in the last commit. Works fine in my opinion now.
> Also had a discussion with design about it and we're good.
>
>
> * Did you perform an exploratory manual test run of the code change and any
> related functionality?
> Yes.
>
> * Did CI run pass? If not, please explain why.
> Unrelated, known, failures due to the move to qt 5.4 (I think)
>
> * Did you make sure that the branch does not contain spurious tags?
> Yes
Just to confirm here that Michael and I we had a chat about lockscreen blocking the long left edge swipe behaviour and that's all fine for design.

I'm going to submit for review, but there is a tiny issue still with the OSK and the NarrowView passphrase interface. The OSK doesn't come back up automatically after an invalid passphrase, and the OSK stays up after a suspend.
So there is some focus issue there I'll look into. But it's good enough to review.