Closed
Bug 603793
Opened 14 years ago
Closed 13 years ago
Popup menu disappears on Submenu mouse over when using Aero basic on a secondary monitor
Categories
(Core :: Graphics, defect)
Tracking
()
RESOLVED
FIXED
Tracking | Status | |
---|---|---|
blocking2.0 | --- | final+ |
People
(Reporter: Geeknz, Assigned: bas.schouten)
References
Details
(Whiteboard: [hardblocker][has patch])
Attachments
(10 files, 4 obsolete files)
216.35 KB,
image/jpeg
|
Details | |
22.81 KB,
image/png
|
Details | |
804.27 KB,
image/jpeg
|
Details | |
798.99 KB,
image/jpeg
|
Details | |
58.50 KB,
application/octet-stream
|
Details | |
27.49 KB,
application/octet-stream
|
Details | |
3.23 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
4.97 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
4.79 KB,
patch
|
bas.schouten
:
review+
roc
:
approval2.0+
|
Details | Diff | Splinter Review |
4.56 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:2.0b8pre) Gecko/20101012 Firefox/4.0b8pre Build Identifier: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:2.0b8pre) Gecko/20101012 Firefox/4.0b8pre When using mouse over on a menu item that causes a submenu to pop up, the previous menu disappears. The border shadow of the previous menu still shows. Moving the mouse back to the previous menu causes any items on that menu moused over to reappear, but any other menus open to disappear. Moving the mouse over any items in the newly popped up submenu causes the previous menu to reappear. Moving the mouse outside any currently showing menus causes the previous menu to reappear. Reproducible: Always Steps to Reproduce: 1. Open a Menu that contains a submenu item. 2. Mouse over the submenu item. 3. Pause for mouse over delay (approximately 0.5 seconds). Actual Results: Submenu pops up. Previous menu now disappears, leaving only its border shadow. Expected Results: Submenu pops up. Previous menu should still be visible. Does not occur if submenu item is clicked on instead of waiting for mouse over delay.
Updated•14 years ago
|
Blocks: FirefoxButton
Comment 2•14 years ago
|
||
Does disabling Hardware Acceleration under Options/Advanced/General and/or setting "layers.accelerate-none" to "true" in about:config help? If yes, please post the Graphics Info from about:support.
Disabling Hardware Acceleration under Options/Advanced/General appears to resolve the issue. Graphic Info from about:support : Adapter Description: ATI Radeon HD 3600 Series Vendor ID: 1002 Device ID: 9598 Adapter RAM: 512 Adapter Drivers: aticfx64 aticfx64 aticfx32 aticfx32 atiumd64 atidxx64 atiumdag atidxx32 atiumdva atiumd6a atitmm64 Driver Version: 8.753.0.0 Driver Date: 7-6-2010 Direct2D Enabled: false DirectWrite Enabled: false GPU Accelerated Windows: 0/1
Updated•14 years ago
|
Severity: minor → normal
Component: Menus → Graphics
Product: Firefox → Core
QA Contact: menus → thebes
Version: unspecified → Trunk
Confirmed issue still occurs with updated driver: Driver Version: 8.771.0.0 Driver Date: 8-25-2010
Comment 5•14 years ago
|
||
Multiple reports and as given disabling hardware acceleration helps lets confirm this bug. So far it's Windows 7 only.
Status: UNCONFIRMED → NEW
blocking2.0: --- → ?
Ever confirmed: true
Comment 7•14 years ago
|
||
I hope this is easily reproducible for Bas!
Assignee: nobody → bas.schouten
blocking2.0: ? → final+
Comment 8•14 years ago
|
||
I have similar problems to this, since I posted in bug 607846 after it was marked duplicate, I'll add the information I added there to here: My problem is not the exact same same problem. In this bug, the menus only disappear after continuing to the next submenu. Then reappear. For me the menus never appear in the first place. I have the same issue shown here: http://pedromoraes.co.cc/linked/bugminefield.png but not the second one(mentioned in bug 607846). The menus which show up wrong are always the same for me though. I've tried resetting all my settings to default "Minefield" settings and the issue still appears. The problem is fixed when changing gfx.direct2d.disabled to true Example of the issue, in the View menu, the menus show up properly in Toolbars and Character Encoding. But only show the outline of the menu and the top-left corner of it for Sidebars, Zoom, and Page Style. Here are some screenshots for clarification: Select Box examples: https://bugzilla.mozilla.org/attachment.cgi?id=490418 https://bugzilla.mozilla.org/attachment.cgi?id=490419 View > Sidebar example https://bugzilla.mozilla.org/attachment.cgi?id=490420 I continue to have these issues in today's trunk build as well as in Firefox 4 beta 7. Here's my about:config from November 13, 2010. Here is my about:support Application Basics Name Firefox Version 4.0b8pre User Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0b8pre) Gecko/20101113 Firefox/4.0b8pre Profile Directory Open Containing Folder Enabled Plugins about:plugins Build Configuration about:buildconfig Extensions Name Version Enabled ID Firebug 1.5.4 false firebug@software.joehewitt.com Rikaichan Japanese-English Dictionary File 2.01.101002 false rikaichan-jpen@polarcloud.com Rikaichan Japanese Names Dictionary File 2.01.101002 false rikaichan-jpnames@polarcloud.com Screengrab 0.96.3 false {02450954-cdd9-410f-b1da-db804e18c671} Rikaichan 2.01 false {0AA9101C-D3C1-4129-A9B7-D778C6A17F82} Web Developer 1.1.8 false {c45c406e-ab73-11d8-be73-000a95be3b12} BetterPrivacy 1.48.3 false {d40f5e7b-d2cf-4856-b441-cc613eeffbe3} User Agent Switcher 0.7.2 false {e968fc70-8f95-4ab9-9e79-304de2a71ee1} Live HTTP headers 0.16 false {8f8fe09b-0bd3-4470-bc1b-8cad42b8203a} Adblock Plus 1.3.1 false {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d} Modified Preferences Name Value accessibility.typeaheadfind.flashBar 0 browser.places.smartBookmarksVersion 2 browser.startup.homepage_override.buildID 20101113031620 browser.startup.homepage_override.mstone rv:2.0b8pre extensions.lastAppVersion 4.0b8pre network.cookie.prefsMigrated true places.history.expiration.transient_current_max_pages 128828 privacy.sanitize.migrateFx3Prefs true Graphics Adapter Description NVIDIA GeForce GT 220M Vendor ID 10de Device ID 0654 Adapter RAM 1024 Adapter Drivers nvd3dumx,nvwgf2umx,nvwgf2umx nvd3dum,nvwgf2um,nvwgf2um Driver Version 8.17.12.5721 Driver Date 6-7-2010 Direct2D Enabled true DirectWrite Enabled true GPU Accelerated Windows 2/2 Direct3D 10
Assignee | ||
Comment 10•14 years ago
|
||
Can someone confirm this was fixed by the other context menu drawing fixes?
Comment 11•14 years ago
|
||
I don't know what other context menu drawing fixes you're referring to, but this is fixed for me in the 4.0b9 2010-12-17 build. Great job guys. My system info is in comment #8.
Assignee | ||
Comment 12•14 years ago
|
||
Great, this was a dupe of bug 613790 then.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → DUPLICATE
Comment 13•14 years ago
|
||
As given by Truth, the fix on bug 613790 hasn't fixed the problem for ATI cards.
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---
Reporter | ||
Comment 14•14 years ago
|
||
As per <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=613790#c32">Comment #32 on bug 613790</a> this is not resolved for my configuration. With latest driver: Adapter Description: ATI Radeon HD 3600 Series Vendor ID: 1002 Device ID: 9598 Adapter RAM: 512 Adapter Drivers: aticfx64 aticfx64 aticfx32 aticfx32 atiumd64 atidxx64 atiumdag atidxx32 atiumdva atiumd6a atitmm64 Driver Version: 8.801.0.0 Driver Date: Direct2D Enabled: false DirectWrite Enabled: false WebGL Renderer: ATI Technologies Inc. -- ATI Radeon HD 3600 Series -- 3.3.10362 Compatibility Profile Context GPU Accelerated Windows: 0/1
Comment 15•14 years ago
|
||
Unfortunately, this is still an issue for me as well (NVIDIA DX9 graphics card). Thanks! Application Basics Name Firefox Version 4.0b9pre User Agent Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:2.0b9pre) Gecko/20101220 Firefox/4.0b9pre Profile Directory Open Containing Folder Enabled Plugins about:plugins Build Configuration about:buildconfig Extensions Name Version Enabled ID Status-4-Evar 2010.11.20.19 false status4evar@caligonstudios.com Nightly Tester Tools 3.0 false {8620c15f-30dc-4dba-a131-7c5d20cf4a29} Flagfox 4.1a4 true {1018e4d6-728f-4b20-ad56-37578a4de76b} ColorfulTabs 4.8.1.2 true {0545b830-f0aa-4d7e-8820-50a4629a56fe} Adblock Plus 1.3.2 true {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d} Modified Preferences Name Value browser.places.importBookmarksHTML false browser.places.smartBookmarksVersion 2 browser.startup.homepage_override.buildID 20101220031727 browser.startup.homepage_override.mstone rv:2.0b9pre extensions.lastAppVersion 4.0b9pre gfx.font_rendering.directwrite.enabled true network.cookie.prefsMigrated true places.history.expiration.transient_current_max_pages 128827 privacy.sanitize.migrateFx3Prefs true Graphics Adapter Description NVIDIA GeForce 8700M GT Vendor ID 10de Device ID 0409 Adapter RAM 512 Adapter Drivers nvd3dumx,nvwgf2umx,nvwgf2umx nvd3dum,nvwgf2um,nvwgf2um Driver Version 8.17.12.5896 Driver Date 7-9-2010 Direct2D Enabled true DirectWrite Enabled true WebGL Renderer NVIDIA Corporation -- GeForce 8700M GT/PCI/SSE2 -- 3.3.0 GPU Accelerated Windows 1/1 Direct3D 10
Assignee | ||
Comment 16•14 years ago
|
||
Hrm, we could consider blacklisting the HD3600 since it's ancient. But the fact it occurs on a random GeForce 8700M is worrying. Could you try updating the driver just to see if it makes a difference?
Assignee | ||
Comment 17•14 years ago
|
||
(In reply to comment #14) > As per <a > href="https://bugzilla.mozilla.org/show_bug.cgi?id=613790#c32">Comment #32 on > bug 613790</a> this is not resolved for my configuration. With latest driver: > > Adapter Description: ATI Radeon HD 3600 Series > Vendor ID: 1002 > Device ID: 9598 > Adapter RAM: 512 > Adapter Drivers: aticfx64 aticfx64 aticfx32 aticfx32 atiumd64 atidxx64 atiumdag > atidxx32 atiumdva atiumd6a atitmm64 > Driver Version: 8.801.0.0 > Driver Date: > Direct2D Enabled: false > DirectWrite Enabled: false > WebGL Renderer: ATI Technologies Inc. -- ATI Radeon HD 3600 Series -- > 3.3.10362 Compatibility Profile Context > GPU Accelerated Windows: 0/1 I'm assuming this is when you preffed off hardware acceleration and the issue no longer occurred? When this info was captured Hardware Acceleration wasn't enabled.
Reporter | ||
Comment 18•14 years ago
|
||
(In reply to comment #17) > I'm assuming this is when you preffed off hardware acceleration and the issue > no longer occurred? When this info was captured Hardware Acceleration wasn't > enabled. Correct, it was captured with Hardware Acceleration off. Turning it back on again changes the following: Direct2D Enabled: true DirectWrite Enabled: true GPU Accelerated Windows: 1/1 Direct3D 10
Assignee | ||
Comment 19•14 years ago
|
||
Is everyone who's experiencing this bug at the moment using Aero Basic?
Comment 20•14 years ago
|
||
I'm not using Basic Windows 7 theme. I use Aero.
Assignee | ||
Comment 21•14 years ago
|
||
Hrm, shame, so much for that idea.
Updated•14 years ago
|
Whiteboard: [hard blocker]
Updated•14 years ago
|
Whiteboard: [hard blocker] → [hardblocker]
Assignee | ||
Comment 22•13 years ago
|
||
Anyone on this bug who could talk on IRC for a remote debugging session for this bug?
Updated•13 years ago
|
Status: REOPENED → NEW
Comment 23•13 years ago
|
||
Comment 24•13 years ago
|
||
Comment 25•13 years ago
|
||
I'm seeing the similar behavior on Win7 64 bit. If h/w accel is pref'd off no problem. Also I'm seeing the same behavior on context menu's. Screen caps have been attached. Application Basics Name Firefox Version 4.0b10pre User Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0b10pre) Gecko/20110118 Firefox/4.0b10pre Profile Directory Open Containing Folder Enabled Plugins about:plugins Build Configuration about:buildconfig Extensions Name Version Enabled ID Mass Password Reset 1.04 true masspasswordreset@johnathan.nightingale Update Channel Selector 1.5 true updatechannel@blueprintit.co.uk Pastebin.com Quick Paster 1.0.4 true upload_text@Pastebin.com Microsoft .NET Framework Assistant 1.2.1 true {20a82645-c095-46ed-80e3-08825760534b} Tamper Data 11.0.1 true {9c51bd27-6ed8-4000-a2bf-36cb95c0c947} Bugzilla Tweaks 1.6 true jid0-qBnIpLfDFa4LpdrjhAC6vBqN20Q@jetpack Zend Studio Toolbar 2.1 true {3c9761ad-a43d-4447-b924-f5d83cb48063} AVG Safe Search 10.0.0.1178 true {1E73965B-8B48-48be-9C8D-68B920ABC1C4} Modified Preferences Name Value accessibility.typeaheadfind.flashBar 0 browser.history_expire_days.mirror 180 browser.places.importBookmarksHTML false browser.places.smartBookmarksVersion 2 browser.startup.homepage https://intranet.mozilla.org/Main_Page browser.startup.homepage_override.buildID 20110118030327 browser.startup.homepage_override.mstone rv:2.0b10pre browser.tabs.loadInBackground false extensions.checkCompatibility false extensions.checkCompatibility.4.0 false extensions.checkCompatibility.4.0b false extensions.lastAppVersion 4.0b10pre general.useragent.extra.microsoftdotnet ( .NET CLR 3.5.30729; .NET4.0E) network.cookie.prefsMigrated true network.protocol-handler.warn-external.dnupdate false places.history.expiration.transient_current_max_pages 125515 places.last_vacuum 1292878519 print.print_printer Ricoh MP C4000 PS print.printer_HP_Color_LaserJet_3800_PS.print_bgcolor false print.printer_HP_Color_LaserJet_3800_PS.print_bgimages false print.printer_HP_Color_LaserJet_3800_PS.print_command print.printer_HP_Color_LaserJet_3800_PS.print_downloadfonts false print.printer_HP_Color_LaserJet_3800_PS.print_edge_bottom 0 print.printer_HP_Color_LaserJet_3800_PS.print_edge_left 0 print.printer_HP_Color_LaserJet_3800_PS.print_edge_right 0 print.printer_HP_Color_LaserJet_3800_PS.print_edge_top 0 print.printer_HP_Color_LaserJet_3800_PS.print_evenpages true print.printer_HP_Color_LaserJet_3800_PS.print_footercenter print.printer_HP_Color_LaserJet_3800_PS.print_footerleft &PT print.printer_HP_Color_LaserJet_3800_PS.print_footerright &D print.printer_HP_Color_LaserJet_3800_PS.print_headercenter print.printer_HP_Color_LaserJet_3800_PS.print_headerleft &T print.printer_HP_Color_LaserJet_3800_PS.print_headerright &U print.printer_HP_Color_LaserJet_3800_PS.print_in_color true print.printer_HP_Color_LaserJet_3800_PS.print_margin_bottom 0.5 print.printer_HP_Color_LaserJet_3800_PS.print_margin_left 0.5 print.printer_HP_Color_LaserJet_3800_PS.print_margin_right 0.5 print.printer_HP_Color_LaserJet_3800_PS.print_margin_top 0.5 print.printer_HP_Color_LaserJet_3800_PS.print_oddpages true print.printer_HP_Color_LaserJet_3800_PS.print_orientation 0 print.printer_HP_Color_LaserJet_3800_PS.print_pagedelay 500 print.printer_HP_Color_LaserJet_3800_PS.print_paper_data 1 print.printer_HP_Color_LaserJet_3800_PS.print_paper_height 11.00 print.printer_HP_Color_LaserJet_3800_PS.print_paper_size_type 0 print.printer_HP_Color_LaserJet_3800_PS.print_paper_size_unit 0 print.printer_HP_Color_LaserJet_3800_PS.print_paper_width 8.50 print.printer_HP_Color_LaserJet_3800_PS.print_reversed false print.printer_HP_Color_LaserJet_3800_PS.print_scaling 1.00 print.printer_HP_Color_LaserJet_3800_PS.print_shrink_to_fit true print.printer_HP_Color_LaserJet_3800_PS.print_to_file false print.printer_HP_Color_LaserJet_3800_PS.print_unwriteable_margin_bottom 0 print.printer_HP_Color_LaserJet_3800_PS.print_unwriteable_margin_left 0 print.printer_HP_Color_LaserJet_3800_PS.print_unwriteable_margin_right 0 print.printer_HP_Color_LaserJet_3800_PS.print_unwriteable_margin_top 0 print.printer_Ricoh_MP_C4000_PS.print_bgcolor true print.printer_Ricoh_MP_C4000_PS.print_bgimages true print.printer_Ricoh_MP_C4000_PS.print_command print.printer_Ricoh_MP_C4000_PS.print_downloadfonts false print.printer_Ricoh_MP_C4000_PS.print_edge_bottom 0 print.printer_Ricoh_MP_C4000_PS.print_edge_left 0 print.printer_Ricoh_MP_C4000_PS.print_edge_right 0 print.printer_Ricoh_MP_C4000_PS.print_edge_top 0 print.printer_Ricoh_MP_C4000_PS.print_evenpages true print.printer_Ricoh_MP_C4000_PS.print_footercenter print.printer_Ricoh_MP_C4000_PS.print_footerleft &PT print.printer_Ricoh_MP_C4000_PS.print_footerright &D print.printer_Ricoh_MP_C4000_PS.print_headercenter print.printer_Ricoh_MP_C4000_PS.print_headerleft &T print.printer_Ricoh_MP_C4000_PS.print_headerright &U print.printer_Ricoh_MP_C4000_PS.print_in_color true print.printer_Ricoh_MP_C4000_PS.print_margin_bottom 0.5 print.printer_Ricoh_MP_C4000_PS.print_margin_left 0.5 print.printer_Ricoh_MP_C4000_PS.print_margin_right 0.5 print.printer_Ricoh_MP_C4000_PS.print_margin_top 0.5 print.printer_Ricoh_MP_C4000_PS.print_oddpages true print.printer_Ricoh_MP_C4000_PS.print_orientation 0 print.printer_Ricoh_MP_C4000_PS.print_page_delay 50 print.printer_Ricoh_MP_C4000_PS.print_pagedelay 500 print.printer_Ricoh_MP_C4000_PS.print_paper_data 1 print.printer_Ricoh_MP_C4000_PS.print_paper_height 11.00 print.printer_Ricoh_MP_C4000_PS.print_paper_size_type 0 print.printer_Ricoh_MP_C4000_PS.print_paper_size_unit 0 print.printer_Ricoh_MP_C4000_PS.print_paper_width 8.50 print.printer_Ricoh_MP_C4000_PS.print_reversed false print.printer_Ricoh_MP_C4000_PS.print_scaling 1.00 print.printer_Ricoh_MP_C4000_PS.print_shrink_to_fit true print.printer_Ricoh_MP_C4000_PS.print_to_file false print.printer_Ricoh_MP_C4000_PS.print_unwriteable_margin_bottom 0 print.printer_Ricoh_MP_C4000_PS.print_unwriteable_margin_left 0 print.printer_Ricoh_MP_C4000_PS.print_unwriteable_margin_right 0 print.printer_Ricoh_MP_C4000_PS.print_unwriteable_margin_top 0 privacy.sanitize.migrateFx3Prefs true privacy.sanitize.timeSpan 2 security.warn_viewing_mixed false Graphics Adapter Description ATI Mobility FireGL V5700 Vendor ID 1002 Device ID 9591 Adapter RAM 512 Adapter Drivers atiumd64 atidxx64 atiumdag atidxx32 atiumdva atiumd6a atitmm64 Driver Version 8.641.1.1000 Driver Date 8-24-2009 Direct2D Enabled true DirectWrite Enabled true (6.1.7600.20830) WebGL Renderer ATI Technologies Inc. -- ATI Mobility FireGL V5700 -- 2.1.8874 FireGL GPU Accelerated Windows 1/1 Direct3D 10
Comment 26•13 years ago
|
||
Bob, Bas told me updating you're drivers fixed the problem. It would be great if you could bisect the range of drivers to find out which revision actually fixed the problem. We could then talk with ATI to try to figure out what changed, which could give us a hint about what's going on here.
Comment 27•13 years ago
|
||
Jeff, There weren't any drivers from Lenovo between what I had and what I now have. Here's a link to the driver matrix. http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-73641 Not much driver bisecting to do here.
Comment 28•13 years ago
|
||
(In reply to comment #27) > Jeff, > > There weren't any drivers from Lenovo between what I had and what I now have. > Here's a link to the driver matrix. > > http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-73641 > > Not much driver bisecting to do here. Do the stock drivers work on your system? This site has a decent archive of drivers: http://www.filehippo.com/download_ati_catalyst_xp/tech/8748/ and you might be able to get them from ati too.
Comment 29•13 years ago
|
||
I don't know if they would work or not. The AMD site (ATI is now AMD) is http://support.amd.com/us/kbarticles/Pages/737-28041SupportforATIMobility.aspx . The stock drivers are for the desktop cards, I don't really know how much different their mobile solutions are from the desktop ones. But there seem to only be a few releases in the time between my drivers. 8.593.100.8 01/28/10 <- maybe a typo on the year ??? 8.663.3 11/19/09 8.773.1 12/30/10 So maybe someone with a desktop card can do the bisection.
Comment 30•13 years ago
|
||
I just started getting this on Bugzilla using Windows 7 x86_64 using the latest 32-bit build of Minefield.
Comment 31•13 years ago
|
||
Actually, retracting that.
Updated•13 years ago
|
No longer blocks: FirefoxButton
Assignee | ||
Comment 32•13 years ago
|
||
We've found the conditions that seem to trigger this: 1) NVidia 2) Aero Basic 3) Window on the -secondary- monitor When all 3 are met it appears this bug occurs, investigating now that we know how to reproduce.
Status: NEW → ASSIGNED
Reporter | ||
Comment 33•13 years ago
|
||
Conditions that appear to trigger it on my PC: 1) ATI 2) Windows Basic Theme 3) Window on the secondary monitor. Switching to Aero, or using it on the primary monitor and the problem no longer occurs. Haven't updated drivers since last check (Comment #14).
Comment 34•13 years ago
|
||
I was looking at this problem on my system. Here are some observations: 1. It seems like the problem is related to clipping not working properly. For example, if I load a popup window and force the window behind it to repaint only the part of the popup that obscures the repainted window disappears 2. Scrolling a window underneath a popup makes the popup disappear, but the content underneath where the popup first popped remains visible.
Updated•13 years ago
|
Keywords: regressionwindow-wanted
Summary: Menu disappears on Submenu mouse over → Popup menu disappears on Submenu mouse over when using Aero basic on a secondary monitor
Comment 35•13 years ago
|
||
I tried this out on nightly from October 1 and the problem is still there, but it doesn't show itself as easily. Scrolling under a popup doesn't make it invisible in the October build.
Assignee | ||
Comment 36•13 years ago
|
||
So, having further investigated this now it seems that this is a bug (most likely in Windows) seemingly triggered by the CS_XP_DROPSHADOW window class flag. Changing CS_XP_DROPSHADOW to 0 at http://mxr.mozilla.org/mozilla-central/source/widget/src/windows/nsWindow.cpp#848 makes the problem go away (and the drop shadows disappear, obviously)
Comment 37•13 years ago
|
||
I can reproduce easily with Win7 basic theme, nVidia 7900GS and drivers 266.58. I've tried other common windows apps with shadowed submenus but I've been unable to reproduce with the same steps. Also, I tried with beta5, and it doesn't seem to suffer this bug. I'll try to find a regression range.
Comment 38•13 years ago
|
||
(In reply to comment #36) > So, having further investigated this now it seems that this is a bug (most > likely in Windows) seemingly triggered by the CS_XP_DROPSHADOW window class > flag. > > Changing CS_XP_DROPSHADOW to 0 at > http://mxr.mozilla.org/mozilla-central/source/widget/src/windows/nsWindow.cpp#848 > makes the problem go away (and the drop shadows disappear, obviously) So, our old code used to OR this style with CS_DBLCLKS, Does adding that fix the problem? (Not that this suggestion makes any sense, but the old code didn't trigger this...
Comment 39•13 years ago
|
||
Nevermind, RegisterWindowClass does that OR...
Comment 40•13 years ago
|
||
This is the regression window according to my testing through nightlies: http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=bd474ff6f86c&tochange=67aef7ffb282 Unfortunately this just tells me that the bug is caused by enabling layers. I'll try to further go back with layers enabled.
Comment 41•13 years ago
|
||
This article has a very intriguing example on how CS_DROPSHADOWS breaks the background theme for dialogs, and how to fix it: <http://xenon.arcticus.com/why-cs-dropshadow-class-style-and-how-do-you-use-it-dialog-dlgproc>
Assignee | ||
Comment 42•13 years ago
|
||
This reduced test case displays the issue. It displays a window with a popup window on top of it. GDI-wise this popup window is black with a little gray box drawn with GDI. This should normally not be shown as every paint and every 2.5 seconds I present a fully red backbuffer with D3D10 to that window. In the window behind it we present with D3D10 two alternating shades of gray, alternating every second. Notice how the application behaves as expected with DWM on primary or secondary display, and with non-DWM on the primary display. On the secondary display with non-DWM notice how occasionally the red present shows (if it doesn't occur too close to an alternation), but as soon as the background alternates again it displays the GDI content. You can press the space-bar to switch between with/without dropshadow to see how everything works fine without a drop-shadow.
Comment 43•13 years ago
|
||
Also interesting would be to see if using WS_POPUP would solve the problem...
Comment 44•13 years ago
|
||
new regression range with layers-accelerate-all=true http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=e1d55bbd1d1d&tochange=6e3f6d18c124
Comment 45•13 years ago
|
||
That range includes "Bug 590599 - Change the names of layers acceleration prefs, and how they work." So you'd have to change a different pref starting there. Although as Bas' test program demonstrates, you'll probably just find that it is broken whenever acceleration is first available.
Comment 46•13 years ago
|
||
(In reply to comment #45) > That range includes "Bug 590599 - Change the names of layers acceleration > prefs, and how they work." So you'd have to change a different pref starting > there. do we have a likely date for when acceleration was usable on trunk? just as a confirmation.
Assignee | ||
Comment 47•13 years ago
|
||
Comment 48•13 years ago
|
||
Ok, I tried a build from Feb 2010 with the old prefs, the problem appears differently but definately menupopups are disappearing when moving across them. I guess we don't need anymore a regression-window :)
Keywords: regressionwindow-wanted
Comment 50•13 years ago
|
||
Bas, can you put together a patch that disables acceleration when using Aero basic?
Comment 51•13 years ago
|
||
How about something like this patch - just disable drop shadows on Aero Basic?
Comment 52•13 years ago
|
||
Patch attached. Could someone who can reproduce this bug try it out? I'll make some try builds.
Attachment #512552 -
Attachment is obsolete: true
Reporter | ||
Comment 53•13 years ago
|
||
You tell me which build to try, and I'll give it a shot.
Comment 54•13 years ago
|
||
I made a custom build with Patrick's patch, it works fine afaict, menus are not disappearing (mostly a confirmation of comment 36, but at least I can confirm there is a safe fallback patch).
Assignee | ||
Comment 55•13 years ago
|
||
(In reply to comment #52) > Created attachment 512617 [details] [diff] [review] > Proposed patch. > > Patch attached. Could someone who can reproduce this bug try it out? I'll make > some try builds. This was one of the solutions proposed. It was decided to only remove drop shadows when using multiple monitors though, so we'll need some more code, also to recreate windows when a monitor is connected and such.
Updated•13 years ago
|
Whiteboard: [hardblocker] → [hardblocker][needs new patch]
Assignee | ||
Comment 56•13 years ago
|
||
This patch switches off drop shadows when 2 monitors are connected, we're rendering with D3D10, and the DWM is disabled. It checks this and sets this style every time we call ::Show on a pop-up window. This is of course a bit of a waste but I don't think the cost will be significant on the cost of opening a window. To make sure I'll fire this at Try for a Talos run and check Twinopen. This is the easiest way, not storing any state which can get messed up. This solves the problem in my tests.
Attachment #512617 -
Attachment is obsolete: true
Attachment #513038 -
Flags: review?(roc)
Comment on attachment 513038 [details] [diff] [review] Switch off drop shadows under some conditions madness!
Attachment #513038 -
Flags: review?(roc) → review+
Updated•13 years ago
|
Whiteboard: [hardblocker][needs new patch] → [hardblocker]has patch]
Comment 58•13 years ago
|
||
(In reply to comment #56) > Created attachment 513038 [details] [diff] [review] > Switch off drop shadows under some conditions > > This patch switches off drop shadows when 2 monitors are connected, we're > rendering with D3D10, and the DWM is disabled. I reproduce this bug with D3D9, does your patch cover that?
Assignee | ||
Comment 59•13 years ago
|
||
It seems there was a Twinopen Talos regression from SetClassLong anyway on try. I'm caching the dropshadow state in this patch, I've pushed some more stuff to Try to verify this as it would surprise me if we're using Popup windows for Twinopen! Which is the only case in which this caching should make a difference.
Attachment #513388 -
Flags: review?(roc)
Comment 60•13 years ago
|
||
Hm. I have a problem w/ popup menus vanishing in bug #631518 too. Not monitor related, but here's hoping your fixes fix my problem too :)
Assignee | ||
Comment 61•13 years ago
|
||
(In reply to comment #60) > Hm. I have a problem w/ popup menus vanishing in bug #631518 too. Not monitor > related, but here's hoping your fixes fix my problem too :) Sadly this is windows, it will not help you.
Attachment #513388 -
Flags: review?(roc) → review+
Assignee | ||
Comment 62•13 years ago
|
||
http://hg.mozilla.org/mozilla-central/rev/7a99ba70cd63
Status: ASSIGNED → RESOLVED
Closed: 14 years ago → 13 years ago
Resolution: --- → FIXED
Comment 63•13 years ago
|
||
Bas you didn't answer my question in comment 58. Btw, I'll discover that in next nightly!
Comment 64•13 years ago
|
||
Not fixed for me. Do you prefer if I file a separate bug for D3D9 or reopen this bug?
Assignee | ||
Comment 65•13 years ago
|
||
(In reply to comment #64) > Not fixed for me. > Do you prefer if I file a separate bug for D3D9 or reopen this bug? Oh, it was unclear to me you were having this with D3D9 too! Could you confirm you're talking about D3D9? Because indeed, then we need to add another line to the if statement.
Comment 66•13 years ago
|
||
Yes, I have a nVidia 7900GS GPU Accelerated Windows1/1 Direct3D 9
Comment 68•13 years ago
|
||
Not sure if this is the right way, the only problem I see is that if D2D is not enabled I end up calling GetLayerManager() and I don't know how much that's expensive. I've noticed that mLayerManager is nullified whem moving from fullscreen to normal mode.
Attachment #514550 -
Flags: review?
Updated•13 years ago
|
Attachment #514550 -
Flags: review? → review?(bas.schouten)
Comment 69•13 years ago
|
||
s/fullscreen/maximized/ in comment 68
Assignee | ||
Comment 70•13 years ago
|
||
Comment on attachment 514550 [details] [diff] [review] D3D9 patch v1.0 This is not the right check to make. Since it's possible that there's some windows with, and some without a D3D9 layer manager. directxEnabled should probably look for direct2d || layers.accelerated.disabled not being set, and the hardware not being blacklisted as per gfxInfo. Much like the checks in GetLayermanager.
Attachment #514550 -
Flags: review?(bas.schouten) → review-
Comment 71•13 years ago
|
||
ok thanks for information, I'll see what GetLayerManager does internally and try to come up with something better.
Comment 72•13 years ago
|
||
Probably this is not yet satisfying, but wanted to post it to evaluate a couple things. since I never touched this code, I guess I could be missing something that would make this really easy. It's an interesting experience though. I think reading the prefs and checking the blocklist everytime we open a popup is a bit of an overkill. At the same time, checking only once would still be wrong, since I can change Windows theme and the pref. The idea here is to do that only when the LayerManager is invalidated, also since GetLayerManager has already all the logic, I wanted to reuse it. So Ianticipated dx layers creation, made it setup a local property, and later, if the layer can be used, I just swap the new one with the stored one. Alternatively, could be possible to repeat the prefs and layer init (or just the blocklist part) code in the helper, and use a tri-state bool to invalidate it when the manager is recreated, but then there would be duped code to maintain.
Attachment #514550 -
Attachment is obsolete: true
Attachment #514707 -
Flags: review?(bas.schouten)
Assignee | ||
Comment 73•13 years ago
|
||
Checking only once is fine! Since the pref is not live, turning it on requires a restart. My apologies for not being clear on this. The blocklist also only needs to be evaluated once.
Comment 74•13 years ago
|
||
OK, I'm almost there! I preferred using a more specific name for the check (maybe it's a bit verbose though), since directxEnabled could have been confusing and this doesn't do all the checks that layers initialization do, plus ideally if the underlying bug is fixed this code can be removed easier.
Attachment #514707 -
Attachment is obsolete: true
Attachment #515056 -
Flags: review?(bas.schouten)
Attachment #514707 -
Flags: review?(bas.schouten)
Assignee | ||
Comment 75•13 years ago
|
||
Comment on attachment 515056 [details] [diff] [review] D3D9 patch v3.0 I can live with this although the name could maybe be a -little- more verbose. I think this will work correctly but asking additional review from roc since I'm not a widget peer.
Attachment #515056 -
Flags: review?(roc)
Attachment #515056 -
Flags: review?(bas.schouten)
Attachment #515056 -
Flags: review+
Why are we checking prefs here? Can't we just ask the widget what kind of layer manager we have?
Comment 77•13 years ago
|
||
see comment 70, Bas said that some windows could be accelerated and others not, transparent windows for example seem to not be accelerated even if D3D9 is active.
+ if (!sHasBogusPopupsDropShadowOnMultiMonitor) { + // Otherwise check if Direct3D 9 may be used. + LayerManagerPrefs prefs; + GetLayerManagerPrefs(&prefs); + if (!prefs.mDisableAcceleration && !prefs.mPreferOpenGL) { + nsCOMPtr<nsIGfxInfo> gfxInfo = do_GetService("@mozilla.org/gfx/info;1"); + if (gfxInfo) { + PRInt32 status; + if (NS_SUCCEEDED(gfxInfo->GetFeatureStatus(nsIGfxInfo::FEATURE_DIRECT3D_9_LAYERS, &status))) { + if (status == nsIGfxInfo::FEATURE_NO_INFO || prefs.mForceAcceleration) + { + sHasBogusPopupsDropShadowOnMultiMonitor = TRI_TRUE; + } Can we just return true if !mDisableAcceleration and !mPreferOpenGL?
Comment 79•13 years ago
|
||
(In reply to comment #78) > Can we just return true if !mDisableAcceleration and !mPreferOpenGL? So, don't check the blocklist? it could be possible. Doing so we would lose the shadows on popups on blacklisted gpus/drivers even if that's unneeded (since acceleration is disabled and we won't hit this bug).
Yeah. But I think that doesn't matter much, and it's simpler.
Comment 81•13 years ago
|
||
Simplify the D3D9 check skipping the blacklist check.
Attachment #515056 -
Attachment is obsolete: true
Attachment #515991 -
Flags: review?(roc)
Attachment #515056 -
Flags: review?(roc)
Attachment #515991 -
Flags: review?(roc) → review+
Comment on attachment 515056 [details] [diff] [review] D3D9 patch v3.0 Actually, I think we should go with this version instead. With default prefs v3.1 would turn off shadows on all multi-monitor setups which probably is too much.
Attachment #515056 -
Attachment is obsolete: false
Attachment #515056 -
Flags: approval2.0+
Comment 83•13 years ago
|
||
Landed version 3.0 http://hg.mozilla.org/mozilla-central/rev/b2d9d4028d67
Whiteboard: [hardblocker]has patch] → [hardblocker][has patch]
You need to log in
before you can comment on or make changes to this bug.
Description
•