Closed
Bug 344238
Opened 18 years ago
Closed 18 years ago
<marquee> tag causes context menu highlight to flicker
Categories
(Core :: General, defect)
Tracking
()
VERIFIED
FIXED
People
(Reporter: beltzner, Assigned: mark)
References
()
Details
(Keywords: regression, verified1.8.1)
Attachments
(2 files)
347 bytes,
text/html
|
Details | |
6.43 KB,
patch
|
jaas
:
review+
bryner
:
superreview+
mconnor
:
approval1.8.1+
|
Details | Diff | Splinter Review |
Using: Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1b1) Gecko/20060710 BonEcho/2.0b1 STR: 1. Go to URL or any cracked.com blog 2. Right click in the page, watch the statusbar and the menuhighlight on the context menu Expected: clean highlight Actual : flickers and never fully highlights This seems to be related to the use of the <marquee> tag, and seems to be Mac only.
Updated•18 years ago
|
Product: Firefox → Core
QA Contact: general → general
Version: 2.0 Branch → 1.8 Branch
Assignee | ||
Comment 1•18 years ago
|
||
Regression on trunk and 1.8[.1] branch, works properly in 1.8.0
Keywords: regression
Assignee | ||
Comment 2•18 years ago
|
||
Assignee | ||
Comment 5•18 years ago
|
||
The root of the problem was that widgets in the top-level window weren't being sent NS_MOUSE_EXIT events when the mouse moved over the popup. Because popups and their top-level windows are both "active" simulatenously, it makes sense for a popup to share an nsEventDispatchHandler with its top-level window. The nsEventDispatchHandler keeps track of the last-pointed widget and it was a global object until bug 340592 made it one per native window. Being native windows, popups got their own nsEventDispatchHandler objects and thus were unable to send NS_MOUSE_EXIT events to a last-pointed widget in a top-level window because they had no idea that there was a last-pointed widget. This change keeps the per-window nsEventDispatchHandler with the exception that popups don't get their own. They get the top-level window's, so we're able to track enters and exits properly during mouse moves between a popup and the top-level it's attached to.
Attachment #228988 -
Flags: review?(joshmoz)
Comment on attachment 228988 [details] [diff] [review] Make popups use the same EventDispatchHandler as their top-level windows + while (widget && (widget = widget->GetParent())) + topWidget = widget; + + nsCOMPtr<nsPIWidgetMac_MOZILLA_1_8_BRANCH> parentMacWindow = + do_QueryInterface(topWidget); Should probably put a null check after the loop in case it gets 0 iterations for some reason.
Attachment #228988 -
Flags: review?(joshmoz) → review+
Assignee | ||
Updated•18 years ago
|
Attachment #228988 -
Flags: superreview?(bryner)
Updated•18 years ago
|
Attachment #228988 -
Flags: superreview?(bryner) → superreview+
Assignee | ||
Comment 7•18 years ago
|
||
Comment on attachment 228988 [details] [diff] [review] Make popups use the same EventDispatchHandler as their top-level windows Checked in on the trunk.
Attachment #228988 -
Flags: approval1.8.1?
Assignee | ||
Updated•18 years ago
|
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
Comment 8•18 years ago
|
||
Comment on attachment 228988 [details] [diff] [review] Make popups use the same EventDispatchHandler as their top-level windows a=mconnor on behalf of drivers for checkin by Wednesday, July 19th
Attachment #228988 -
Flags: approval1.8.1? → approval1.8.1+
Updated•18 years ago
|
Status: RESOLVED → VERIFIED
Keywords: fixed1.8.1 → verified1.8.1
Comment 10•18 years ago
|
||
Looks like the patch for this might have caused bug 346318. Any ideas Mark?
You need to log in
before you can comment on or make changes to this bug.
Description
•