New issue
Advanced search Search tips

Issue 651573 link

Starred by 3 users

Issue metadata

Status: Untriaged
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 3
Type: Bug



Sign in to add a comment

MD settings: type-to-find flashes the full settings page when match is inside a collapsed Advanced part

Reported by woxxom@gmail.com, Sep 29 2016

Issue description

UserAgent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2873.0 Safari/537.36

Steps to reproduce the problem:
1. go to Settings - chrome://settings
2. click the search field on the top
3. type "back" without quotes quickly or just paste it from clipboard

What is the expected behavior?
The matching parts are displayed without flickering

What went wrong?
The full expanded settings are shown for a fraction of a second as though "Advanced" button was clicked, then the matched parts are displayed.

Did this work before? Yes before MD

Chrome version: 55.0.2875.0  Channel: canary
OS Version: 6.1 (Windows 7, Windows Server 2008 R2)
Flash Version: Shockwave Flash 23.0 r0
 

Comment 1 by woxxom@gmail.com, Sep 29 2016

To reproduce in case MD settings aren't enabled by default use chrome://md-settings.

Comment 2 by ajha@chromium.org, Oct 3 2016

Components: -UI UI>Settings
Labels: Proj-MaterialDesign-WebUI
Moving this to MD-settings team queue for further triaging and inspection as per update in  Issue 628065  , C#4.


Comment 3 by dpa...@chromium.org, Oct 13 2016

Cc: dpa...@chromium.org
Labels: Hotlist-MD-Settings-SearchBox
Owner: dpa...@chromium.org
Status: Assigned (was: Unconfirmed)
@dpapd, can you look at this? I'm not sure what is exactly happening in terms of showing Advanced / hiding non-matches, but I do see a few sections flicker at the top before the results stabilize.

Comment 5 by dpa...@chromium.org, Oct 19 2016

What happens is expected. It matches how the results showing was initially designed. Explaining below:

When a search query occurs, we
1) Start searching already rendered parts of the DOM
2) Force-render subpages. When those get rendered, search in those too.

For example, when you search for the word "back" the first hit comes from the already rendered "System" section (see screenshot). Then, sometime later the subpages under "Customize fonts" and "Content settings" also have search hits, so they appear in the search results (with search bubbles instead of yellow rectangles), pushing the first hit (the one in the "System" page) downwards.

The original design was to not block showing results until the entire DOM has been rendered and searched, but to display results as they come in. It is a tradeoff between showing results as they become available VS waiting until everything is searched before showing them.
results_order.png
85.5 KB View Download

Comment 6 by dpa...@chromium.org, Oct 19 2016

BTW, as I am reading my previous comment, I start doubting whether what I am observing is exactly what the original reporter is observing

> "The full expanded settings are shown for a fraction of a second as though "Advanced" button was clicked"
I certainly don't see the advanced page fully expanded flashing, I just observe results appearing as they get discovered.

Perhaps this is only repro-able on Windows?

Comment 7 by woxxom@gmail.com, Oct 19 2016

>What happens is expected

What happens internally is of no concern for the user. We should not see the flashing of full content (100ms or so), it's essentially the same as FOUC or the problem of ancient GUIs without doublebuffered display when users could see how parts of the final UI are painted.

Comment 8 by dpa...@chromium.org, Oct 19 2016

@woxxom: Can you attach a screencast of what actually happens. What I described at comment#5 is expected, but per my realization at comment#6, it is not exactly what you describe at #1. So #1 is not expected, but I am not able to reproduce. #5 is expected AFAIU.

Comment 9 by woxxom@gmail.com, Oct 19 2016

>I certainly don't see the advanced page fully expanded flashing, I just observe results appearing as they get discovered.

Make sure you type fast or paste the text (for example, "back" without quotes) on a freshly opened MD-Settings page.

In addition to the possibility of the bug being Windows-only (it'd be quite strange though), maybe it's observable only on fast computers, mine has i7 3770k 3.5GHz CPU and nVidia GeForce 750 Ti - old stuff but still faster than the average.

Comment 11 by woxxom@gmail.com, Oct 19 2016

I won't be surprised if this can't be fixed though without fixing the Polymer framework itself: judging by the timeline, about 100 or 1000 times more code is executed than needed to perform such a trivial operation as toggling visibility of elements based on substring matching.
I am confident it can be fixed. We simply need to hide all the sections before we actually render the advanced page. Currently we make the advanced page visible first and shortly after we hide all sections until search hits are found in them.
Cc: dbeam@chromium.org
 Issue 666646  has been merged into this issue.
Labels: OS-Linux
Labels: OS-Chrome OS-Mac
Debugging tip from my report: I slowed down search by adding a conditional breakpoint at the beginning of revealParentSection_:
    for (var i = 0; i < 2500; i++) console.log(i);
It never triggers, but evaluating it takes a long time ;-)

My analysis:

1. chrome://md-settings - only Basic is visible
2. enter "setting" in search box
3. BUG: the Advanced sections render *visibly* below the Basic sections
4. BUG: the Basic sections disappear but Advanced sections remain
5. as search progresses, sections in Basic with a match are shown, and
   sections in Advanced without a match are *eventually* hidden.

And some keywords to make this show up next time I search for it:
highlight bubble
Labels: -Pri-2 Pri-3
not seeing this, and not that much of a tragedy if we do

Comment 17 Deleted

Comment 18 by dbeam@chromium.org, Feb 13 2017

Cc: -dpa...@chromium.org
woxxom@: your feedback is helpful, but please follow the code of conduct when posting on these bugs

https://www.chromium.org/conduct

Comment 19 by woxxom@gmail.com, Feb 13 2017

I do follow it 99% of time, I believe. It's just the attitude expressed in #16 got me. I'll be more careful.
Owner: ----
Status: Available (was: Assigned)
Marking bugs (mostly lower priority ones) that I am unlikely to get to soon as Available.
Project Member

Comment 21 by sheriffbot@chromium.org, Oct 25

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Sign in to add a comment