I think I’ve got to the bottom of this.
The problem only occurs when the “Style hints override user settings” option is ticked in Windows Gluxe. You wouldn’t notice anything wrong if you your user settings were white text on black background.
There are two problematic parts of Version 15/200828 of Flexible Windows (for Glulx only) by Jon Ingold, both of which use stylehints as Gargoyle hacks, which take effect when the game is restarted.
My temporary solution is to add the following to my story file:
The Gargoyle cursor color rule is not listed in any rulebook.
The Gargoyle window padding rule is not listed in any rulebook.
For completeness, the first part is:
[ Gargoyle sets the cursor color to whatever the last text-buffer color hint was. We will reset it using a variable the story author can change.
This is apparently by design, but seems unuseful and buggy to me. I raised the issue at https://groups.google.com/forum/#!topic/garglk-dev/DdqG0Ppt2lY ]
The Gargoyle cursor color is initially "#000000".
After constructing a textual g-window (this is the Gargoyle cursor color rule):
set the color of wintype 3 for normal-style to the Gargoyle cursor color;
And the second part is:
[ As explained by Ben Cressey (http://groups.google.com/group/rec.arts.int-fiction/msg/b88316e2dcf1bb6b)
Gargoyle sets the colour of its window padding based on the last background colour style hint given to the normal style. So after clearing all the background colours and styles, we set it based on the background color of the main window, or just set white if it isn't set. ]
[ This phrase is made available in case you want to set the colour at some other time (such as when opening a pop-over window) ]
To set the Gargoyle window padding to (T - a text):
set the background color of wintype 3 for normal-style to T;
To set the Gargoyle background color to the color (T - a text) (deprecated):
set the background color of wintype 3 for normal-style to T;
After constructing a textual g-window (this is the Gargoyle window padding rule):
let T be the background color of the acting main window;
if T is empty:
let T be "#ffffff";
set the Gargoyle window padding to T;