IE Compatibility Mode

This forum is for all Flare issues related to the HTML5, WebHelp, WebHelp Plus, and Adobe Air Targets
Post Reply
straygoat
Sr. Propeller Head
Posts: 153
Joined: Wed Apr 04, 2012 3:39 am
Location: The Midlands, UK.
Contact:

IE Compatibility Mode

Post by straygoat »

Hi all,

We were experiencing some problems with HTML5 output to IE: flickering TOC scrollbar with a slider that wouldn't move, context sensitive help links causing the TOC to vanish completely. After some searching around on the forums and asking support, we found out that the issue was to do with IE compatibility. There was a solution for this which involved adding a line of code to the default.htm topic after the build process, but as our build is automated this was impractical. Luckily, one of our developers found a better solution - to change a registry setting.

The registry setting in question is:

HKEY_CURRENT_USER > Software > Microsoft >Internet Explorer >Main > FEATURE_BROWSER_EMULATION: <your application>.exe REG_DWORD 0x00001f40 (8000)

Where <your application> is the name of the software product that is used to launch the context sensitive help. The (80000) is for IE 8 compatibility, something we need to support due to contractual obligations. I think it is (9000) for IE9.

Flare itself has this registry setting, but support told me they were unaware of it - hence this post. I'm not sure if it will help anyone else, but it worked for us.
Craig Wright
Freelance Technical Author and SEO Copywriter
Midlands, UK
http://www.straygoat-technicalauthor.co.uk
LTinker68
Master Propellus Maximus
Posts: 7247
Joined: Thu Feb 16, 2006 9:38 pm

Re: IE Compatibility Mode

Post by LTinker68 »

I don't think that's a solution you're going to want your end users to have to do, though. The line of code in the default topic is better. I'd create a copy of the default.htm file, add your line of code, then after you run your automated build process, have it either launch another automated process to copy your modified default.htm to the output folder to override the just-generated file, or manually copy your default file after the automated process.
Image

Lisa
Eagles may soar, but weasels aren't sucked into jet engines.
Warning! Loose nut behind the keyboard.
sfoley
Propeller Head
Posts: 92
Joined: Mon May 05, 2008 5:00 pm

Re: IE Compatibility Mode

Post by sfoley »

LTinker68 wrote:I don't think that's a solution you're going to want your end users to have to do, though. The line of code in the default topic is better. I'd create a copy of the default.htm file, add your line of code, then after you run your automated build process, have it either launch another automated process to copy your modified default.htm to the output folder to override the just-generated file, or manually copy your default file after the automated process.
If you always build your Flare projects on the same machine, you can make modifications to the default skins. That way, you don't have to make the fixes manually after every build. You will need to reapply these changes each time you install a new version of Flare, though.

Disclaimers:
- Make a backup copy of the original skin files.
- Keep a list of each change you make, so you can make them again after a Flare upgrade, or on a new machine.
- This is entirely at your own risk. Don't expect MadCap--or anyone else--to support any changes you make to the default skins.

That said, making small changes (like adding a conditional comment for an IE8-only stylesheet on the HTML5 skin to fix the search bar, *ahem*) isn't likely to break anything.

Default WebHelp skin:
C:\Program Files (x86)\MadCap Software\MadCap Flare V8\Flare.app\Resources\WebHelp
Default HTML5 skin:
C:\Program Files (x86)\MadCap Software\MadCap Flare V8\Flare.app\Resources\WebHelp2\
straygoat
Sr. Propeller Head
Posts: 153
Joined: Wed Apr 04, 2012 3:39 am
Location: The Midlands, UK.
Contact:

Re: IE Compatibility Mode

Post by straygoat »

I don't think our customers have to change the registry setting - it can be programmed to happen automatically during install I think. I will ask the developer what he has done and try and post the answer tomorrow (UK time). We wouldn't want customers messing about in the registry settings.
Craig Wright
Freelance Technical Author and SEO Copywriter
Midlands, UK
http://www.straygoat-technicalauthor.co.uk
NorthEast
Master Propellus Maximus
Posts: 6426
Joined: Mon Mar 05, 2007 8:33 am

Re: IE Compatibility Mode

Post by NorthEast »

For the sake of completeness; if you can't change the registry, what is the change that you need to make to default.htm?
straygoat
Sr. Propeller Head
Posts: 153
Joined: Wed Apr 04, 2012 3:39 am
Location: The Midlands, UK.
Contact:

Re: IE Compatibility Mode

Post by straygoat »

If you can't change the registry, you need to add the following to the default.htm:

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

This might need to be added to every file...we're not 100% sure about that as the registry setting solution seemed a better way (when our help viewer starts, it finds the program that ran it and adds a suitable entry for the program to the registry).

Our developer has already added info about the registry setting on the forums (good man!). You can find it here:

http://forums.madcapsoftware.com/viewto ... 953#p85372
Craig Wright
Freelance Technical Author and SEO Copywriter
Midlands, UK
http://www.straygoat-technicalauthor.co.uk
LTinker68
Master Propellus Maximus
Posts: 7247
Joined: Thu Feb 16, 2006 9:38 pm

Re: IE Compatibility Mode

Post by LTinker68 »

straygoat wrote:This might need to be added to every file...we're not 100% sure about that as the registry setting solution seemed a better way (when our help viewer starts, it finds the program that ran it and adds a suitable entry for the program to the registry).
If you add it to the masterpage, then it'll be added to every topic when you generate the output.

If you make a change to the registry when your software is installed, then that may be acceptable, although I still wouldn't recommend it from a legal standing and possibly is practicality standpoint. The legal standpoint is that you're modifying an OS-based registry key for IE, so if modifying that key leaves the system vulnerable and something happens, could you be held responsible and sued? Your EULA probably says something about you're not responsible for what happens to the system, but that might only be to the extent of registry keys you create.

From a practical standpoint, will that registry key setting persist if there is a Windows update or if the user upgrades IE (unless the compatibility problem is with the version of IE, in which case an upgrade might resolve the issue)? If it doesn't persist, then the end user's help could suddenly stop working. When that happens, do you walk them through modifying the registry key? I highly recommend against that.
Image

Lisa
Eagles may soar, but weasels aren't sucked into jet engines.
Warning! Loose nut behind the keyboard.
straygoat
Sr. Propeller Head
Posts: 153
Joined: Wed Apr 04, 2012 3:39 am
Location: The Midlands, UK.
Contact:

Re: IE Compatibility Mode

Post by straygoat »

I'm told that Windows updates shouldn't cause a problem. Security shouldn't be an issue either. For what it is worth, MadCap make the registry setting change themselves for Flare.exe!

We'd never explain to customers how to change registry settings in this way...that's why we do it automatically.
Craig Wright
Freelance Technical Author and SEO Copywriter
Midlands, UK
http://www.straygoat-technicalauthor.co.uk
Post Reply