wlmaker
Loading...
Searching...
No Matches
Public Attributes | List of all members
_wlmaker_corner_t Struct Reference
Collaboration diagram for _wlmaker_corner_t:
Collaboration graph
[legend]

Public Attributes

wlmaker_server_tserver_ptr
 
wlmaker_cursor_tcursor_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
 

Detailed Description

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'.

Member Data Documentation

◆ bottom_left_enter_action

wlmaker_action_t _wlmaker_corner_t::bottom_left_enter_action

Action when entering the bottom-left corner.

◆ bottom_left_leave_action

wlmaker_action_t _wlmaker_corner_t::bottom_left_leave_action

Action when leaving the bottom-left corner.

◆ bottom_right_enter_action

wlmaker_action_t _wlmaker_corner_t::bottom_right_enter_action

Action when entering the bottom-right corner.

◆ bottom_right_leave_action

wlmaker_action_t _wlmaker_corner_t::bottom_right_leave_action

Action when leaving the bottom-right corner.

◆ corner_triggered

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.

◆ current_corner

unsigned _wlmaker_corner_t::current_corner

The cursor's current corner. 0 if not currently in a corner.

◆ cursor_position_updated_listener

struct wl_listener _wlmaker_corner_t::cursor_position_updated_listener

Listener for when the cursor position was updated.

◆ cursor_ptr

wlmaker_cursor_t* _wlmaker_corner_t::cursor_ptr

Cursor that is tracked here.

◆ extents

struct wlr_box _wlmaker_corner_t::extents

Current extents of the output, cached for convience.

◆ output_layout_changed_listener

struct wl_listener _wlmaker_corner_t::output_layout_changed_listener

Listener for wlr_output_layout::events::change.

◆ pointer_x

int _wlmaker_corner_t::pointer_x

Pointer X coordinate, rounded to pixel position.

◆ pointer_y

int _wlmaker_corner_t::pointer_y

Pointer Y coordinate, rounded to pixel position.

◆ server_ptr

wlmaker_server_t* _wlmaker_corner_t::server_ptr

Back-link to server. Required to execute actions.

◆ timer_event_source_ptr

struct wl_event_source* _wlmaker_corner_t::timer_event_source_ptr

Timer: Armed when the corner is occupied, triggers action.

◆ top_left_enter_action

wlmaker_action_t _wlmaker_corner_t::top_left_enter_action

Action when entering the top-left corner.

◆ top_left_leave_action

wlmaker_action_t _wlmaker_corner_t::top_left_leave_action

Action when leaving the top-left corner.

◆ top_right_enter_action

wlmaker_action_t _wlmaker_corner_t::top_right_enter_action

Action when entering the top-right corner.

◆ top_right_leave_action

wlmaker_action_t _wlmaker_corner_t::top_right_leave_action

Action when leaving the top-right corner.

◆ trigger_delay_msec

uint64_t _wlmaker_corner_t::trigger_delay_msec

Configuration: Wait time before triggering 'Enter',.


The documentation for this struct was generated from the following file: