Dear Tim,
Thanks for the clear report. We investigated how F1 + CHM context help works in FWH.
What was going on
There is no separate “open full CHM window” switch. F1 behaviour depends on where the help id is set and its type:
F1 / CHM behaviour in FWH
| Situation | What FWH does |
| Control with numeric nHelpId | HelpPopup() → small popup (not H&M main window size) |
| Control with character topic name | HelpTopic() → full CHM viewer |
| Window/dialog nHelpId, or control with empty id (after fix) | HelpTopic() on parent → full CHM viewer |
| Explicit HelpTopic( nId ) / HelpTopic( "topic" ) | Always full CHM viewer |
So Help & Manual “Main Help Window” size does not affect the F1 popup path — that is by design of HelpPopup() / HH_DISPLAY_TEXT_POPUP.
Also: HelpSetPos() only applies to classic .hlp (WinHelp), not CHM.
What we fixed in FWH
TControl:__HelpTopic() (source/classes/control.prg)
When the focused control had an empty nHelpId, F1 did nothing (the comment said help would go to the parent, but it was never forwarded).
Now it calls ::oWnd:HelpTopic() so oWnd:nHelpId / oDlg:nHelpId is used and the full CHM opens.
Sample samples/test/testchmhlp.prg (+ popups.txt) to compare:
• numeric control id → popup (needs SetHelpPopup("popups.txt") for text popups)
• character topic → full CHM
• empty control id → bubbles to dialog → full CHM
What you should do in your app
To get the full resizable CHM viewer on F1 (recommended for your case):
// Prefer explicit full help:
HelpTopic( nTopicID )
// Or assign a topic name (must match a real .htm inside the CHM):
oGet:nHelpId := "MyTopic" // not only a numeric map id on the control
// Window-level is fine for full help:
oWnd:nHelpId := nTopicID // or "MyTopic"
// and leave control nHelpId empty so it uses the window (with the new FWH build)
If you keep numeric ids on controls, F1 will stay on the popup path unless you change that. For popups you also need:
SetHelpPopup( "popups.txt" ) // or your popup source
otherwise you get “No Help popup file available”.
CHM topic names must match real HTML files inside the CHM (e.g. Orders.htm / "Orders"). A wrong name opens the CHM shell with an IE “page not found” style error.
What you need from us / to verify
- Rebuild/relink against a FWH build that includes the control.prg empty-nHelpId bubble fix.
- Prefer HelpTopic( id ) or string nHelpId for full viewer.
- Confirm your H&M map ids / topic filenames.
- Optional: try samples\test\testchmhlp.exe pattern in your tree.
Please try with the new FWH build and let us know if full CHM on F1 matches what you need.
Best regards