One-Click Searches popup lags behind position changes

RESOLVED WORKSFORME

Status

()

Firefox
Search
RESOLVED WORKSFORME
4 years ago
3 years ago

People

(Reporter: jrmuizel, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

When the size of the search popup changes the One-Click Searches popup doesn't move until a second or so later. This lag makes Firefox feel janky and bad.
(In reply to Jeff Muizelaar [:jrmuizel] from comment #0)
> When the size of the search popup changes the One-Click Searches popup
> doesn't move until a second or so later. This lag makes Firefox feel janky
> and bad.

By "One-Click Searches popup" do you mean the thing that looks like attachment 8525415 [details] and only appears until you dismiss it once?

What is causing the search popup to change size in this case?

We're unlikely to fix edge cases around this feature since it's only meant to appear once.
Flags: needinfo?(jmuizelaar)
OS: Mac OS X → All
Hardware: x86 → All
(In reply to :Gavin Sharp [email: gavin@gavinsharp.com] from comment #1)
> (In reply to Jeff Muizelaar [:jrmuizel] from comment #0)
> > When the size of the search popup changes the One-Click Searches popup
> > doesn't move until a second or so later. This lag makes Firefox feel janky
> > and bad.
> 
> By "One-Click Searches popup" do you mean the thing that looks like
> attachment 8525415 [details] and only appears until you dismiss it once?

Yes

> What is causing the search popup to change size in this case?

A different number of search suggestions.

> We're unlikely to fix edge cases around this feature since it's only meant
> to appear once.

For my curiosity, how is it implemented such that the pop only finds out about the size changes later?
Flags: needinfo?(jmuizelaar)
(In reply to Jeff Muizelaar [:jrmuizel] from comment #2)
> (In reply to :Gavin Sharp [email: gavin@gavinsharp.com] from comment #1)
> > (In reply to Jeff Muizelaar [:jrmuizel] from comment #0)
> > We're unlikely to fix edge cases around this feature since it's only meant
> > to appear once.
> 
> For my curiosity, how is it implemented such that the pop only finds out
> about the size changes later?

I got lost trying to track exactly what does this. From the frontend side we just open the panel anchored to the search buttons, that ends us up in nsMenuPopupFrame and either that or nsXULPopupManager is what moves the popup when necessary.
Neil might have some ideas why this is happening and whether it's worth trying to fix the general problem.
Flags: needinfo?(enndeakin)

Comment 5

4 years ago
There isn't any mechanism which updates popups if their anchor position changes, nor when any other aspect of the anchor changes. But since the popup's position is determined during layout, it will adjust when a layout occurs.

There's some other UITour bugs also caused by this, such as 969370.

This isn't a simple fix as it requires the anchor to keep track of or notify any popups that might be anchored on it. One possibility is to create a special anchor type of element which is able to do this.
Flags: needinfo?(enndeakin)
No longer relevant due to bug 1123620.
Status: NEW → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.