After reading mritter's topic "Cx locks WB" I wondered if any system programs block WB screenmode changes and here is what I found:
System programs that prevent a Workbench screenmode change until their windows are closed:
SYS:System/Format
SYS:System/Media ToolBox
SYS:System/Mounter
SYS:Prefs/Picasso96Mode
SYS:Prefs/ScreenBlanker
SYS:Prefs/Updates
SYS:Internet/Edit Connection
SYS:Internet/New Connection
Sys:Utilities/PlayCD
Sys:Utilities/SGrab/Sgrab
System programs that prevent a Workbench screenmode change and cause the Workbench "close windows" requester to continuously close and reopen at least several times. In some cases a screenmode change isn't possible after the window is closed and occasionally made my system unstable:
SYS:Utilities/FileCompare
SYS:Utilities/KeyShow
SYS:Utilities/USBInspector
Can someone confirm the above problems and report them in the OS4 bugzilla??
System progs preventing WB screenmode change.
System progs preventing WB screenmode change.
AmigaOne X1000 with 2GB memory - OS4.1 FE
Re: System progs preventing WB screenmode change.
I can confirm your findings. But I'm no beta tester and can't submit a buzzkill a.
- tonyw
- AmigaOS Core Developer
- Posts: 1479
- Joined: Wed Mar 09, 2011 1:36 pm
- Location: Sydney, Australia
Re: System progs preventing WB screenmode change.
To fix the problem, the program must be updated to support iconification and un-iconification. Workbench sends an "Iconify" command to each open window, then, after redrawing the screen, sends an "un-iconify" command to each window again to reopen it.
Some of those programs are really old and from a time when iconify was not heard of. It's not a trivial matter to modify them. A case in point: I took a look at PlayCD some years ago when I added the ability to play through AHI. The GUI code is so old that I'm not prepared to touch it.
Some of those programs are really old and from a time when iconify was not heard of. It's not a trivial matter to modify them. A case in point: I took a look at PlayCD some years ago when I added the ability to play through AHI. The GUI code is so old that I'm not prepared to touch it.
cheers
tony
tony
Re: System progs preventing WB screenmode change.
I searched the Workbench autodoc and includes for a command, tag or define related to an "iconify" or "uniconify" command and was unable to identify anything related to such commands. Could you be more specific about those commands (mesage type, flags etc.) so other programmers can react to them in their programs??tonyw wrote:To fix the problem, the program must be updated to support iconification and un-iconification. Workbench sends an "Iconify" command to each open window, then, after redrawing the screen, sends an "un-iconify" command to each window again to reopen it.
I don't think SYS:Utilities/FileCompare, SYS:Utilities/USBInspector or SYS:Prefs/Updates are old programs.Some of those programs are really old and from a time when iconify was not heard of. It's not a trivial matter to modify them. A case in point: I took a look at PlayCD some years ago when I added the ability to play through AHI. The GUI code is so old that I'm not prepared to touch it.
AmigaOne X1000 with 2GB memory - OS4.1 FE
- thomasrapp
- Posts: 310
- Joined: Sat Jun 18, 2011 11:22 pm
Re: System progs preventing WB screenmode change.
A program has to register with Intiution's StartScreenNotify function before it receives any such message.
- tonyw
- AmigaOS Core Developer
- Posts: 1479
- Joined: Wed Mar 09, 2011 1:36 pm
- Location: Sydney, Australia
Re: System progs preventing WB screenmode change.
Wrong place. The window class sends WMHI_ICONIFY and WMHI_UNICONIFY messages to the program through the window's message port. In your program, you have to listen for WMHI_xxx messages. See include/include_h/classes/window.h.I searched the Workbench autodoc and includes for a command, tag or define related to an "iconify" or "uniconify" command and was unable to identify anything related to such commands.
No, but they support Iconify properly. There is something else wrong there.I don't think SYS:Utilities/FileCompare, SYS:Utilities/USBInspector or SYS:Prefs/Updates are old programs.
BTW, I have never had a problem iconifying FileCompare. I do it frequently when chasing bugs. I don't use the others very often.
cheers
tony
tony
Re: System progs preventing WB screenmode change.
O.K. Window class simplifies program iconification in response to WorkBench close/reopen. I work on some older programs (ported from OS3) and thomasrapp's suggestion probably applies better to fixing old programs.tonyw wrote: Wrong place. The window class sends WMHI_ICONIFY and WMHI_UNICONIFY messages to the program through the window's message port. In your program, you have to listen for WMHI_xxx messages. See include/include_h/classes/window.h.
FileCompare will iconify if you click the iconify gadget but it doesn't iconify or close it's window automatically when WorkBench changes screenmodes and needs to close and reopen. Most system programs close their windows automatically when you make a WorkBench screenmode change. FileCompare is worse than programs that do nothing at all when WorkBench needs to close. When the FileCompare window is open when you attempt a WorkBench screenmode change, WorkBench throws up the "close windows" requester and closes it immediately and then does the same repeatedly. On my X1000, I can't even click the cancel gadget in the requester until it finally stops repeating the open/close of the requester.No, but they support Iconify properly. There is something else wrong there.
BTW, I have never had a problem iconifying FileCompare. I do it frequently when chasing bugs. I don't use the others very often.
AmigaOne X1000 with 2GB memory - OS4.1 FE
Re: System progs preventing WB screenmode change.
@all
The maximum value of any excuse is zero. It's extremely discouraging when one reports a real verifiable problem in an effort to get verification that the problem is added to the OS4 bugzilla but fail.
The maximum value of any excuse is zero. It's extremely discouraging when one reports a real verifiable problem in an effort to get verification that the problem is added to the OS4 bugzilla but fail.
AmigaOne X1000 with 2GB memory - OS4.1 FE
Re: System progs preventing WB screenmode change.
WB doesn't send iconify and uniconify messages. It sends SNOTIFY_BEFORE_CLOSEWB and SNOTIFY_AFTER_OPENWB through IIntuition->StartScreenNotifyTags() system.
Workbench Explorer - A better way to browse drawers