pub fn with_mixed_handlers<T: From<Event> + Send + 'static>(
        event_loop: &ActiveEventLoop,
        window: &Window,
        activation_handler: impl 'static + ActivationHandler + Send,
        proxy: EventLoopProxy<T>,
    ) -> Self {
        let window_id = window.id();
        let action_handler = WinitActionHandler {
            window_id,
            proxy: proxy.clone(),
        };
        let deactivation_handler = WinitDeactivationHandler { window_id, proxy };
        Self::with_direct_handlers(
            event_loop,
            window,
            activation_handler,
            action_handler,
            deactivation_handler,
        )
    }
Creates a new AccessKit adapter for a winit window. This must be done
before the window is shown for the first time. This means that you must
use [`winit::window::WindowAttributes::with_visible`] to make the window
initially invisible, then create the adapter, then show the window.

This constructor provides a mix of the approaches used by
[`Adapter::with_event_loop_proxy`] and [`Adapter::with_direct_handlers`].
It uses the event loop proxy for the action request and deactivation
events, which can be handled asynchronously with no drawback,
while using a direct, caller-provided activation handler that can
return the initial tree synchronously. Remember that the thread on which
the activation handler is called is platform-dependent.

# Panics

Panics if the window is already visible.
platforms/winit/src/lib.rs