void FadeOut(int fade_mask)
{
// update screen if areas covered by "fade_mask" and "redraw_mask" differ
- if (!equalRedrawMasks(fade_mask, redraw_mask))
+ if (!equalRedrawMasks(fade_mask, redraw_mask) &&
+ fade_type_skip != FADE_MODE_SKIP_FADE_OUT)
BackToFront();
SetScreenStates_BeforeFadingOut();
AnimateEnvelope(envelope_nr, main_anim_mode, ACTION_OPENING);
if (tape.playing)
- Delay(wait_delay_value);
+ Delay_WithScreenUpdates(wait_delay_value);
else
WaitForEventToContinue();
button_status = MB_RELEASED;
}
+ if (HandleGlobalAnimClicks(mx, my, button_status, FALSE))
+ {
+ // do not handle this button event anymore
+ continue; // force mouse event not to be handled at all
+ }
+
// this sets 'request_gadget_id'
HandleGadgets(mx, my, button_status);