Lockup on Windows 10 using Office 2010 theme
Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Command Bars
Forum Description: Topics Related to Codejock Command Bars
URL: http://forum.codejock.com/forum_posts.asp?TID=22695
Printed Date: 28 November 2024 at 5:25am Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com
Topic: Lockup on Windows 10 using Office 2010 theme
Posted By: rdhd
Subject: Lockup on Windows 10 using Office 2010 theme
Date Posted: 21 August 2015 at 12:27pm
I had posted this in a forum on Windows 10 experience ...
We are locking up on Windows 10 when the user maximizes the app and has an MDI window maximized. The user moves over the application close icon and the MDI icons below overlap that icon. CJ goes in to an infinite loop processing the non client hit test event. The code is in XTPFramehook.cpp in OnHookMessage. There the code checks the "point.y < GetCaptionHeight()" and returns true. This code just keeps getting executed until we kill the process using task manager.
I can easily duplicate this in 16.4 with the Codejock RibbonMDI sample. Build the sample with VS 2012 (unicode, 64 bit) and run it. Maximize the application. Then maximize the MDI document. Go to the "options" drop down on the right side of the frame and pick, e.g., Office2010 Aqua. Make sure frame transparency is on (it should be on by default). Notice you can barely see the document MDI icons, restore, close etc. with the Office2010 color themes. That is an issue we have filed a bug report on when a user has Aero turned on (which uses Windows DWM and that can't be turned off in WIn 8 or Win 10). Move over one of the icons. Notice the height extends into the frame's big red close "X" icon. This overlap is the key to the lockup. Now start moving the mouse around so it goes over the MDI and App close icons. The sample quickly locks up.
Debugging I found that this appears to be related to the "allow DWM" capabiltiy. In our app I have added this code to avoid the problem (and the impossible to see MDI icon issue):
CXTPCommandBarsFrameHook::m_bAllowDwm = FALSE;
We have the beta for 17 and I'll be testing it shortly to see if the issue (and the impossible to see icon issue) is fixed there. But a fix for 16 is needed.
|
Replies:
Posted By: rdhd
Date Posted: 21 August 2015 at 12:49pm
Well that didn't take long. The same issue exists with version 17. Only its worse. I don't have to maximize the sample, only the MDI document.
And to top it off, when running with the Office2010 color themes, the icons are completely invisible (they appear to be completely transparent). Nonetheless, the lockup is easy to duplicate.
|
Posted By: rdhd
Date Posted: 24 August 2015 at 5:27pm
Now we see another issue with frame transparency turned off. If the user has the task bar at the left or top of the monitor and maximizes our app with the white theme, a thin translucent strip of white appears under the task bar. This isn't part of the app frame as the frame isn't clipped by the task bar. The appearance looks the same as if I move the app frame (unmaximized) just under the task bar a bit if it wasn't for the fact that doing so causes the frame to actually go under the bar (where you can see, e.g., the QAT and app button being clipped and hence part of the translucent merging that occurs).
|
Posted By: astoyan
Date Posted: 24 August 2015 at 11:16pm
Are you trying version 17? If so, beta 1 or 2? I can see the problem with some icons being invisible, it's because their foreground color is white and Win10 introduced same white color for window background and does not allow DWM. But I was not able to reproduce a problem with maximizing windows, I tried RibbonMDISample.
|
Posted By: rdhd
Date Posted: 25 August 2015 at 8:01am
Posted By: rdhd
Date Posted: 26 August 2015 at 8:07am
Did you try 16.4? 17 is too far off for us to put in the product and users are moving to Win 10 now so a fix for 16.4, even if code we need to integrate into 16.4, would be really appreciated.
|
|