i3
|
#include "all.h"
#include <time.h>
#include <math.h>
#include <xcb/xcb_icccm.h>
#include <X11/XKBlib.h>
Go to the source code of this file.
Macros | |
#define | I3__FILE__ "click.c" |
Enumerations | |
enum | click_destination_t { CLICK_BORDER = 0, CLICK_DECORATION = 1, CLICK_INSIDE = 2 } |
Functions | |
static bool | tiling_resize_for_border (Con *con, border_t border, xcb_button_press_event_t *event) |
static bool | floating_mod_on_tiled_client (Con *con, xcb_button_press_event_t *event) |
static bool | tiling_resize (Con *con, xcb_button_press_event_t *event, const click_destination_t dest) |
static int | route_click (Con *con, xcb_button_press_event_t *event, const bool mod_pressed, const click_destination_t dest) |
int | handle_button_press (xcb_button_press_event_t *event) |
The button press X callback. More... | |
enum click_destination_t |
|
static |
Definition at line 87 of file click.c.
References BORDER_BOTTOM, BORDER_LEFT, BORDER_RIGHT, BORDER_TOP, DLOG, Rect::height, Con::rect, tiling_resize_for_border(), and Rect::width.
Referenced by route_click().
int handle_button_press | ( | xcb_button_press_event_t * | event | ) |
The button press X callback.
This function determines whether the floating modifier is pressed and where the user clicked (decoration, border, inside the window).
Then, route_click is called on the appropriate con.
Definition at line 311 of file click.c.
References CLICK_BORDER, CLICK_DECORATION, CLICK_INSIDE, con_by_frame_id(), con_by_window_id(), con_get_workspace(), con_is_internal(), config, conn, croot, Con::deco_rect, DLOG, ELOG, Config::floating_modifier, focused, last_timestamp, output_get_content(), Con::rect, rect_contains(), root, route_click(), TAILQ_FIRST, TAILQ_FOREACH, tree_render(), and workspace_show().
Referenced by handle_event().
|
static |
Definition at line 174 of file click.c.
References BIND_SHIFT, CLICK_BORDER, CLICK_DECORATION, CLICK_INSIDE, con_focus(), con_get_fullscreen_con(), con_get_output(), con_get_workspace(), con_inside_floating(), conn, DLOG, floating_drag_window(), floating_mod_on_tiled_client(), floating_raise_con(), floating_resize_window(), focused, focused_id, HORIZ, L_STACKED, L_TABBED, Con::layout, Con::name, output_get_content(), Con::parent, TAILQ_FIRST, TAILQ_NEXT, TAILQ_PREV, tiling_resize(), tree_next(), tree_render(), Con::type, VERT, and workspace_show().
Referenced by handle_button_press().
|
static |
Definition at line 126 of file click.c.
References BORDER_BOTTOM, BORDER_LEFT, BORDER_RIGHT, BORDER_TOP, CLICK_DECORATION, con_border_style_rect(), con_is_leaf(), con_num_children(), con_orientation(), DLOG, Rect::height, HORIZ, L_STACKED, L_TABBED, Con::layout, Con::parent, Con::rect, tiling_resize_for_border(), Con::type, Rect::width, Con::window_rect, Rect::x, and Rect::y.
Referenced by route_click().
|
static |
Definition at line 29 of file click.c.
References BORDER_BOTTOM, BORDER_LEFT, BORDER_RIGHT, BORDER_TOP, D_DOWN, D_LEFT, D_RIGHT, D_UP, DLOG, HORIZ, LOG, Con::parent, Con::rect, resize_find_tiling_participants(), resize_graphical_handler(), tree_render(), VERT, Rect::x, and Rect::y.
Referenced by floating_mod_on_tiled_client(), and tiling_resize().