New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Remove usage of iron-flex-layout.html in ChromeOS Login UI, which will be no longer supported in M60

Project Member Reported by hayato@chromium.org, May 8 2017

Issue description

Remove usage of iron-flex-layout.html in ChromeOS Login UI, which will be no longer supported in M60.

I am going to land the CL [1] which disables /deep/ (and removes ::shadow) for M60.
Now, it looks all tests pass with the WIP CL. See [2] for details.

However, according to the comment  http://crbug.com/715034#c7 , ChromeOS Login UI still uses iron-flex-layout.html, where /deep/ is being used.

+achuith, alemate
Could you have a chance to update ChromeOS Login UI?
dpapad@ have landed a similar CL [4] recently, so I hope that might be helpful.

You can also use the WIP CL [1] to test whether the CL regresses ChromeOS Login UI or not.

I appreciate if you could have a chance to share ETA so that we can know whether we can land the removal CL for M60 or not, as we planned.

[1] WIP CL: https://codereview.chromium.org/2778983006
[2] https://bugs.chromium.org/p/chromium/issues/detail?id=715034
[3] https://bugs.chromium.org/p/chromium/issues/detail?id=715034#c7
[4] https://codereview.chromium.org/2848443002

 
Cc: dbeam@chromium.org
Description: Show this description

Comment 3 by hayato@chromium.org, May 11 2017

I am going to land the patch https://codereview.chromium.org/2778983006 in a few days.

I appreciate that if you could confirm that CL really regress the ChromeOS Login UI or not before (or maybe after?) landing. I need a help because I can't judge the impact on ChromeOS Login UI.


Comment 4 by hayato@chromium.org, May 11 2017

FYI, dbeam@ kindly reminded me that there would be flicker issue if we remove /deep/.

See:
- https://cs.chromium.org/chromium/src/ui/webui/resources/css/i18n_process.css?q=i18n_process.css&sq=package:chromium&dr&l=9
- https://bugs.chromium.org/p/chromium/issues/detail?id=489954#c43

> This would not be a horrible break (and would have an easy solution), I think you should go ahead and change /deep/ if you can because on the scale of "breakage" this is minimal and degrades gracefully.

I hope that the breakage is minimal.

Comment 5 by dpa...@chromium.org, May 15 2017

@hayato: Yes the login UI gets really broken see example screenshot. If you want to verify this yourself, build ChromeOS for Linux and then launch as follows

./out/<out_folder>/chrome --user-data-dir=/tmp/debug_chromeos --login-manager --login-profile=user --remote-debugging-port=9999


As I said earlier it relies on /deep/ to apply CSS rules so turning off /deep/ makes all the styles to be ignored.

@alemate: Friendly ping.
login_ui_broken.png
57.8 KB View Download

Comment 6 Deleted

Comment 7 by hayato@chromium.org, May 16 2017

Thanks. This looks a serious issue which can't be ignored.

It would be really great for ChromeOS Login UI owners to fix this issue in a timely manner.

As the worst scenario, we would revert the CL (https://codereview.chromium.org/2778983006), and extend the removal timeline from M60 to M61. However, no one wants to see this would happen because that might *undermine* our "Intent to Remove" process. Extending might not solve an issue, I am afraid.

Comment 8 by hayato@chromium.org, May 16 2017

I chatted with alemate@. alemate@ would try to look at this tomorrow.

Comment 9 by hayato@chromium.org, May 16 2017

Cc: wzang@chromium.org r...@chromium.org hayato@chromium.org
 Issue 722729  has been merged into this issue.

Comment 10 by r...@chromium.org, May 16 2017

Cc: zalcorn@chromium.org abodenha@chromium.org jdufault@chromium.org
alemate@, jdufault@, is there any kind of test that we can add so something that breaks the login UI so horribly doesn't still just pass the CQ and land anyway?

Comment 11 by wzang@chromium.org, May 16 2017

Cc: mmanchala@chromium.org
 Issue 722650  has been merged into this issue.
As per duped  issue 722729 , we are unable to proceed with testing on latest Tot # 60.0.3101.0/9557.0.0 

Repro steps:
1.Recover build via USB >> After successful installation observe OOBE screen unable to proceed further.

Comment 13 by ajha@chromium.org, May 16 2017

Cc: pucchakayala@chromium.org
Labels: -Type-Bug M-60 ReleaseBlock-Dev OS-Chrome Type-Bug-Regression
Adding the Dev blocker as per C#12.
> alemate@, jdufault@, is there any kind of test that we can add so something that breaks the login UI so horribly doesn't still just pass the CQ and land anyway?

Probably some layout tests where we verify sizing of elements. Currently we test via fetching element ids which will not catch this kind of thing.
Cc: sdantul...@chromium.org abod...@chromium.org dhadd...@chromium.org helenzhang@chromium.org
Cc: krishna...@chromium.org
Song has tested this and seeing the following behavior:

1. AU to 60.0.3101.0 and able to see the sign in screen to create a user account.

2. Powerwash/installing via USB --> No sign in screen is shown to create a user account and proceed further.

Comment 18 by r...@chromium.org, May 16 2017

We can't have a CL land that completely breaks the login screen. I am reverting the CL, please re-land it when the issue is fixed.

Comment 19 by r...@chromium.org, May 17 2017

Cc: derat@chromium.org xiy...@chromium.org
 Issue 722953  has been merged into this issue.
Blocking: 723259
rkc@: Okay. Revering the CL might make sense because the CL looks a dev blocker for ChromeOS.

I have filed a separated release blocking issue ( https://crbug.com/723259 ) so that we don't forget to re-land the CL for M60 after the Login UI's issue is fixed.

rkc@: We might want to revert this CL too: https://codereview.chromium.org/2881023002, which updated the deprecation warning message. Unless that, the current ToT has a kind of *inconsistency*.

I am feeling that we don't need to revert that CL, assuming that ChromeOS can fix the Login UI's issue promptly, and re-land the reverted CL soon.



Comment 23 by r...@chromium.org, May 17 2017

@hayato: Alexander is currently actively working on fixing the issue. We hope to have it fixed within a few days.

Cc: josa...@chromium.org
 Issue 723416  has been merged into this issue.
Cc: afakhry@chromium.org davidri...@chromium.org
+sheriff +gardener
ToT and canaries are broken (can't get past OOBE). Is the revert included in the current PFQ run?
Cc: michae...@chromium.org
Tested on latest ToT 60.0.3102.0/9565.0.0 dev channel Kip,Paine,Blaze and following are the observations:

1.Still OOBE screen is seen all broken on all three devices mentioned above.
2.But could able to proceed to login screen using below steps:
     i.Recover build via USB >> Try to connect network through Uber Tray.
     ii.Scroll down in OOBE screen, Click on next link in Connect to Network 
        screen 
     iii.Click on Accept and Continue and sign in to user.

Note: Very slow response and weird traces are observed in Blaze device.
OOBE screen looks good on 9581.0.0, 60.0.3107.0
Status: Fixed (was: Assigned)
Marking as fixed based on c#29
Status: Assigned (was: Fixed)
I still see Chrome OS OOBE code using deprecated iron-flex-layout.html, see [1], which internally relies on /deep/ CSS selector to work.

Did someone migrate the code to use the correct iron-flex-layout-classes.html similar to what I did for MD Settings at https://codereview.chromium.org/2848443002?

I might be confused, but I don't see how this bug is fixed. My understanding is that the original change that made /deep/ be a no-op in Chromium was reverted, and this is why the OOBE UI still looks OK, but the root cause has not been addressed yet. Am I missing something?

[1] https://cs.chromium.org/search/?q=iron-flex-layout.html+file:%5Esrc/chrome/browser/resources/+package:%5Echromium$&type=cs

Comment 32 by r...@chromium.org, May 24 2017

Status: Started (was: Assigned)
alemate@ is actively working on this issue. I believe he estimated about a week or so more to get this done?

I am currently looking into this.
Labels: -ReleaseBlock-Dev ReleaseBlock-Beta
Any update on this issue?
Labels: -ReleaseBlock-Beta ReleaseBlock-Stable
Any updates? M60 goes stable in 3 weeks.
Project Member

Comment 38 by bugdroid1@chromium.org, Jul 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a

commit a2d5abfa566b775c9c5a23acc5a7fbf63b54751a
Author: Alexander Alekseev <alemate@chromium.org>
Date: Fri Jul 14 09:02:57 2017

ChromeOS: Remove usage of iron-flex-layout.html in OOBE / Login UI

This Cl removes references to iron-flex-layout in OOBE/Login UI.

Bug:  719331 
Change-Id: Iedde72b6e5db6c44820394cf44f4d876d43ff07e
Reviewed-on: https://chromium-review.googlesource.com/566538
Commit-Queue: Alexander Alekseev <alemate@chromium.org>
Reviewed-by: Alexander Alekseev <alemate@chromium.org>
Reviewed-by: Michael Giuffrida <michaelpg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#486710}
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/active_directory_password_change.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/arc_terms_of_service.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/controller-pairing-screen.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/encryption_migration.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/gaia_card.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/gaia_header.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/gaia_input.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/gaia_input_form.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/gaia_password_changed.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/header_bar.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/host-pairing-screen.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/md_header_bar.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/navigation_bar.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/notification_card.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/offline_ad_login.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/offline_gaia.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_a11y_option.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_buttons.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_dialog.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_eula.html
[add] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_flex_layout.css
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_hid_detection.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_reset.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_reset_confirmation_overlay.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_screen_oauth_enrollment.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_screen_user_image.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_update.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_voice_interaction_value_prop.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_wait_for_container_ready.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_welcome.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/oobe_welcome_dialog.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/saml_confirm_password.html
[modify] https://crrev.com/a2d5abfa566b775c9c5a23acc5a7fbf63b54751a/chrome/browser/resources/chromeos/login/unrecoverable_cryptohome_error_card.html

Status: Fixed (was: Started)
Labels: Merge-TBD
[Auto-generated comment by a script] We noticed that this issue is targeted for M-60; it appears the fix may have landed after branch point, meaning a merge might be required. Please confirm if a merge is required here - if so add Merge-Request-60 label, otherwise remove Merge-TBD label. Thanks.

Comment 41 by r...@chromium.org, Jul 17 2017

Labels: -M-60 M-61
Since we don't have a forcing function to merge this; moving to 61.

Comment 42 by asaha@google.com, Jul 17 2017

Does this mean /deep/ deprecation is also moved to M61? 
Note that I still see 4 references to iron-flex-layout.html, see [1]. Will file a separate bug for these.

[1] https://cs.chromium.org/search/?q=iron-flex-layout.html+file:%5Esrc/chrome/+package:%5Echromium$&type=cs
Labels: -Merge-TBD
Removing merge-request as this is already in M61.

Comment 45 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Sign in to add a comment