wlmaker
|
Public Attributes | |
wlmaker_server_t * | server_ptr |
wlmaker_cursor_t * | cursor_ptr |
struct wl_listener | output_layout_changed_listener |
struct wl_listener | cursor_position_updated_listener |
struct wlr_box | extents |
int | pointer_x |
int | pointer_y |
struct wl_event_source * | timer_event_source_ptr |
unsigned | current_corner |
bool | corner_triggered |
uint64_t | trigger_delay_msec |
wlmaker_action_t | top_left_enter_action |
wlmaker_action_t | top_left_leave_action |
wlmaker_action_t | top_right_enter_action |
wlmaker_action_t | top_right_leave_action |
wlmaker_action_t | bottom_left_enter_action |
wlmaker_action_t | bottom_left_leave_action |
wlmaker_action_t | bottom_right_enter_action |
wlmaker_action_t | bottom_right_leave_action |
State of the hot-corner handler.
The hot corner compoment tracks output layout and pointer position. When the pointer enters any of the 4 corners of the output's bounding rectangle, a timer with a 'cooldown' period is armed. If the pointer is moved before the cooldown expires, the timer is disarmed, and nothing happens.
If the pointer stays in the corner until the timer fires, we do consider the corner as 'activated'.
wlmaker_action_t _wlmaker_corner_t::bottom_left_enter_action |
Action when entering the bottom-left corner.
wlmaker_action_t _wlmaker_corner_t::bottom_left_leave_action |
Action when leaving the bottom-left corner.
wlmaker_action_t _wlmaker_corner_t::bottom_right_enter_action |
Action when entering the bottom-right corner.
wlmaker_action_t _wlmaker_corner_t::bottom_right_leave_action |
Action when leaving the bottom-right corner.
bool _wlmaker_corner_t::corner_triggered |
Tracks whether the corner was occoppied and the timer had fired.
Required to trigger 'leave' actions when the corner is cleared.
unsigned _wlmaker_corner_t::current_corner |
The cursor's current corner. 0 if not currently in a corner.
struct wl_listener _wlmaker_corner_t::cursor_position_updated_listener |
Listener for when the cursor position was updated.
wlmaker_cursor_t* _wlmaker_corner_t::cursor_ptr |
Cursor that is tracked here.
struct wlr_box _wlmaker_corner_t::extents |
Current extents of the output, cached for convience.
struct wl_listener _wlmaker_corner_t::output_layout_changed_listener |
Listener for wlr_output_layout::events::change.
int _wlmaker_corner_t::pointer_x |
Pointer X coordinate, rounded to pixel position.
int _wlmaker_corner_t::pointer_y |
Pointer Y coordinate, rounded to pixel position.
wlmaker_server_t* _wlmaker_corner_t::server_ptr |
Back-link to server. Required to execute actions.
struct wl_event_source* _wlmaker_corner_t::timer_event_source_ptr |
Timer: Armed when the corner is occupied, triggers action.
wlmaker_action_t _wlmaker_corner_t::top_left_enter_action |
Action when entering the top-left corner.
wlmaker_action_t _wlmaker_corner_t::top_left_leave_action |
Action when leaving the top-left corner.
wlmaker_action_t _wlmaker_corner_t::top_right_enter_action |
Action when entering the top-right corner.
wlmaker_action_t _wlmaker_corner_t::top_right_leave_action |
Action when leaving the top-right corner.
uint64_t _wlmaker_corner_t::trigger_delay_msec |
Configuration: Wait time before triggering 'Enter',.