@taazz
I can understand what you meant. But I got weird behavior if I hide the form when the form is minimizing. That issue can be solved using a Timer to delay the process. But then I got another issue, it visually looked ugly:
the form is minimizing > force it to wsNormal > delay > hide the form
The process follows the order above. Because I 'force' it to unminimize when the form is minimizing, I can saw noticable flicker. That's why I used form's transparency (alpha) to solve this problem.
As I mentioned early, we should not hide the form when the form is minimizing. The workaround I suggested may not give the same behavior on different widgetset/OS, although it works correctly on my Linux Gtk + Compiz (window manager).