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

Issue 811478 link

Starred by 3 users

Issue metadata

Status: Fixed
Merged: issue 811181
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 1
Type: Bug-Regression



Sign in to add a comment

[Media Router UI] Dialog keeps on resizing and does not show contents properly

Project Member Reported by taku...@chromium.org, Feb 12 2018

Issue description

Observed in M66 Canary and TOT.

The dialog keeps on flickering between two different heights, and does not show the contents properly (e.g. shows the sink list view when it should show route details view). This may be a C++ side bug, since what the dialog shows and dialog DOM says it shows are different.
 
Dialog_Resize_Bug.mp4
199 KB View Download

Comment 1 by amp@chromium.org, Feb 12 2018

Mergedinto: 811181
Status: Duplicate (was: Assigned)
Dupe of  issue 811181  (I think).
Status: Assigned (was: Duplicate)
 Issue 811181  is in M65 and this bug is in M66, so I'm deduping this.

Components: UI>Browser>WebUI
Owner: skobes@chromium.org
Bisected to get the CL causing this:
http://crrev.com/c/857902

skobes@, could you disable the feature until there is a fix for this? The Cast dialog is currently unusable and this makes development difficult. Thanks!

Comment 4 by wfh@chromium.org, Feb 13 2018

Labels: ReleaseBlock-Dev
I cannot cast at all on Canary 66.0.3345.0 (Official Build) canary (64-bit) (cohort: Clang-64) on Win10. Can this CL please be reverted ASAP?

Comment 5 by skobes@chromium.org, Feb 13 2018

Status: Started (was: Assigned)
Yes, we will revert this.

Comment 6 by dpa...@chromium.org, Feb 13 2018

@wfh: If this CL is causing major functionality issues and blocking development, I don't think you need permission to revert. Just spawn a revert from the UI and fill in the "reason for revert" as needed. The original author would be notified automatically.
Cc: nyerramilli@chromium.org skobes@chromium.org rbasuvula@chromium.org
 Issue 811201  has been merged into this issue.

Comment 8 by skobes@chromium.org, Feb 13 2018

Labels: -ReleaseBlock-Dev
This is reverted at http://crrev.com/536321.

Leaving bug open to track the fix.

Comment 9 by bokan@chromium.org, Feb 13 2018

Owner: bokan@chromium.org

Comment 10 by bokan@chromium.org, Feb 13 2018

Cast folks: a vanilla ToT build doesn't have a cast icon. How do I repro this in a Chromium build? Or do I have to build an official Chrome?
The dialog can be opened through the "Cast..." option in the page context menu or the hotdog menu. An official build is not necessary.

I've been able to repro without actually Casting on Windows, but I had to Cast to repro on Linux. If you need to Cast, you have a few options:

If you have a Chromecast device:
Enable 'load-media-router' in chrome://flags, and your device should appear in the dialog.

If your workstation has multiple monitors (and is not a Mac):
Use the --enable-features=LocalScreenCasting runtime flag. You can Cast this site [1] to one of your displays (click on the presentationRequest.start() button to open the dialog)

[1] https://googlechrome.github.io/samples/presentation-api/

Comment 12 by bokan@chromium.org, Feb 13 2018

Thanks takumif@, I hadn't noticed the cast option in either context menu (I normally see the button beside the omnibox).

I managed to repro on Linux without having to cast.
Cc: manoranj...@chromium.org pbomm...@chromium.org
 Issue 812173  has been merged into this issue.
Project Member

Comment 14 by bugdroid1@chromium.org, Feb 14 2018

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

commit d4c85df550eb5e06fd15e29e2b9f3ffbebc7ceaf
Author: David Bokan <bokan@chromium.org>
Date: Wed Feb 14 20:02:57 2018

Refactor scrollbars existence in AutoSize mode

AutoSize is a mode in which the frame is sized to match the size of the
content, rather than the other way around. This is used for extension
popups, for example.

When we're in this mode, FrameViewAutoSizeInfo is responsible for
resizing the FrameView. This object wants to prevent layout from
deciding whether scrollbars should be shown or not. The way it does this
is by setting the ScrollbarMode itself to either AlwaysOn or AlwaysOff.
To prevent layout or other parts of the system from overwriting this
setting, FVASI also sets a "scrollbar lock". When this lock is set,
writes to the scrollbar mode are ignored.

FVASI is the only user of scrollbar lock. This CL removes the scrollbar
lock and adds autosize_scrollbar_vertical|horizontal_mode to
ScrollableArea. Instead of preventing writes to the scrollbar mode in
FrameView, we now check these autosize modes *on read* and return them
instead of FrameView's ScrollbarModes if they're non-auto. In other
words, the autosize scrollbar modes override the normal scrollbar mode.

Bug:  811478 
Change-Id: I8cd5462e7e309249365bd4fe556b09f175511bda
Reviewed-on: https://chromium-review.googlesource.com/917653
Commit-Queue: David Bokan <bokan@chromium.org>
Reviewed-by: David Bokan <bokan@chromium.org>
Reviewed-by: Steve Kobes <skobes@chromium.org>
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536788}
[modify] https://crrev.com/d4c85df550eb5e06fd15e29e2b9f3ffbebc7ceaf/third_party/WebKit/Source/core/frame/FrameViewAutoSizeInfo.cpp
[modify] https://crrev.com/d4c85df550eb5e06fd15e29e2b9f3ffbebc7ceaf/third_party/WebKit/Source/core/frame/LocalFrame.cpp
[modify] https://crrev.com/d4c85df550eb5e06fd15e29e2b9f3ffbebc7ceaf/third_party/WebKit/Source/core/frame/LocalFrame.h
[modify] https://crrev.com/d4c85df550eb5e06fd15e29e2b9f3ffbebc7ceaf/third_party/WebKit/Source/core/frame/LocalFrameView.cpp
[modify] https://crrev.com/d4c85df550eb5e06fd15e29e2b9f3ffbebc7ceaf/third_party/WebKit/Source/core/frame/LocalFrameView.h
[modify] https://crrev.com/d4c85df550eb5e06fd15e29e2b9f3ffbebc7ceaf/third_party/WebKit/Source/core/layout/LayoutMedia.cpp
[modify] https://crrev.com/d4c85df550eb5e06fd15e29e2b9f3ffbebc7ceaf/third_party/WebKit/Source/platform/scroll/ScrollableArea.cpp
[modify] https://crrev.com/d4c85df550eb5e06fd15e29e2b9f3ffbebc7ceaf/third_party/WebKit/Source/platform/scroll/ScrollableArea.h

Project Member

Comment 15 by bugdroid1@chromium.org, Feb 14 2018

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

commit 6c7c44f02cdbfa98ebd15580e87993da01d975f2
Author: David Bokan <bokan@chromium.org>
Date: Wed Feb 14 23:32:37 2018

[root layer scrolls] Fix AutoSize scrollbars

The frame AutoSizer (FrameViewAutoSizeInfo) takes over manual control of
scrollbar appearance in the frame it's autosizing, rather than letting
layout do it.

This override uses mechanisms that exist only on LocalFrameView but not
on PaintLayerScrollableArea, which is a problem when
--root-layer-scrolls is enabled. This CL generalizes the mechanism to
PLSA and updates the AutoSizer to use the LayoutViewport for scrolblars
rather than FrameView.

Bug:  811478 
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Iad2df081b46ea77b92c416d0eeafa8b91a074597
Reviewed-on: https://chromium-review.googlesource.com/917665
Commit-Queue: David Bokan <bokan@chromium.org>
Reviewed-by: Jeremy Roman <jbroman@chromium.org>
Reviewed-by: Steve Kobes <skobes@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536880}
[modify] https://crrev.com/6c7c44f02cdbfa98ebd15580e87993da01d975f2/third_party/WebKit/Source/core/frame/FrameViewAutoSizeInfo.cpp
[modify] https://crrev.com/6c7c44f02cdbfa98ebd15580e87993da01d975f2/third_party/WebKit/Source/core/frame/LocalFrameView.h
[modify] https://crrev.com/6c7c44f02cdbfa98ebd15580e87993da01d975f2/third_party/WebKit/Source/core/layout/ScrollbarsTest.cpp
[modify] https://crrev.com/6c7c44f02cdbfa98ebd15580e87993da01d975f2/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
[modify] https://crrev.com/6c7c44f02cdbfa98ebd15580e87993da01d975f2/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h
[modify] https://crrev.com/6c7c44f02cdbfa98ebd15580e87993da01d975f2/third_party/WebKit/Source/platform/scroll/ScrollableArea.h

Comment 16 by bokan@chromium.org, Feb 14 2018

Status: Fixed (was: Started)

Sign in to add a comment