Skip to main content

cef_window_delegate_t

Type Alias cef_window_delegate_t 

Source
pub type cef_window_delegate_t = _cef_window_delegate_t;
Expand description

Implement this structure to handle window events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.

Aliased Type§

#[repr(C)]
pub struct cef_window_delegate_t {
Show 20 fields pub base: _cef_panel_delegate_t, pub on_window_created: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t)>, pub on_window_closing: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t)>, pub on_window_destroyed: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t)>, pub on_window_activation_changed: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, i32)>, pub on_window_bounds_changed: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, *const _cef_rect_t)>, pub on_window_fullscreen_transition: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, i32)>, pub get_parent_window: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, *mut i32, *mut i32) -> *mut _cef_window_t>, pub is_window_modal_dialog: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>, pub get_initial_bounds: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> _cef_rect_t>, pub get_initial_show_state: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> cef_show_state_t>, pub is_frameless: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>, pub with_standard_window_buttons: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>, pub get_titlebar_height: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, *mut f32) -> i32>, pub can_resize: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>, pub can_maximize: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>, pub can_minimize: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>, pub can_close: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>, pub on_accelerator: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, i32) -> i32>, pub on_key_event: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, *const _cef_key_event_t) -> i32>,
}

Fields§

§base: _cef_panel_delegate_t

Base structure.

§on_window_created: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t)>

Called when |window| is created.

§on_window_closing: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t)>

Called when |window| is closing.

§on_window_destroyed: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t)>

Called when |window| is destroyed. Release all references to |window| and do not attempt to execute any functions on |window| after this callback returns.

§on_window_activation_changed: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, i32)>

Called when |window| is activated or deactivated.

§on_window_bounds_changed: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, *const _cef_rect_t)>

Called when |window| bounds have changed. |new_bounds| will be in DIP screen coordinates.

§on_window_fullscreen_transition: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, i32)>

Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With the Alloy runtime you must also implement cef_display_handler_t::OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

§get_parent_window: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, *mut i32, *mut i32) -> *mut _cef_window_t>

Return the parent for |window| or NULL if the |window| does not have a parent. Windows with parents will not get a taskbar button. Set |is_menu| to true (1) if |window| will be displayed as a menu, in which case it will not be clipped to the parent window bounds. Set |can_activate_menu| to false (0) if |is_menu| is true (1) and |window| should not be activated (given keyboard focus) when displayed.

§is_window_modal_dialog: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>

Return true (1) if |window| should be created as a window modal dialog. Only called when a Window is returned via get_parent_window() with |is_menu| set to false (0). All controls in the parent Window will be disabled while |window| is visible. This functionality is not supported by all Linux window managers. Alternately, use cef_window_t::show_as_browser_modal_dialog() for a browser modal dialog that works on all platforms.

§get_initial_bounds: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> _cef_rect_t>

Return the initial bounds for |window| in density independent pixel (DIP) coordinates. If this function returns an NULL CefRect then get_preferred_size() will be called to retrieve the size, and the window will be placed on the screen with origin (0,0). This function can be used in combination with cef_view_t::get_bounds_in_screen() to restore the previous window bounds.

§get_initial_show_state: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> cef_show_state_t>

Return the initial show state for |window|.

§is_frameless: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>

Return true (1) if |window| should be created without a frame or title bar. The window will be resizable if can_resize() returns true (1). Use cef_window_t::set_draggable_regions() to specify draggable regions.

§with_standard_window_buttons: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>

Return true (1) if |window| should be created with standard window buttons like close, minimize and zoom. This function is only supported on macOS.

§get_titlebar_height: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, *mut f32) -> i32>

Return whether the titlebar height should be overridden, and sets the height of the titlebar in |titlebar_height|. On macOS, it can also be used to adjust the vertical position of the traffic light buttons in frameless windows. The buttons will be positioned halfway down the titlebar at a height of |titlebar_height| / 2.

§can_resize: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>

Return true (1) if |window| can be resized.

§can_maximize: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>

Return true (1) if |window| can be maximized.

§can_minimize: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>

Return true (1) if |window| can be minimized.

§can_close: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t) -> i32>

Return true (1) if |window| can be closed. This will be called for user- initiated window close actions and when cef_window_t::close() is called.

§on_accelerator: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, i32) -> i32>

Called when a keyboard accelerator registered with cef_window_t::SetAccelerator is triggered. Return true (1) if the accelerator was handled or false (0) otherwise.

§on_key_event: Option<unsafe extern "C" fn(*mut _cef_window_delegate_t, *mut _cef_window_t, *const _cef_key_event_t) -> i32>

Called after all other controls in the window have had a chance to handle the event. |event| contains information about the keyboard event. Return true (1) if the keyboard event was handled or false (0) otherwise.