wlmaker
Loading...
Searching...
No Matches
task_list.h
Go to the documentation of this file.
1/* ========================================================================= */
21#ifndef __TASK_LIST_H__
22#define __TASK_LIST_H__
23
24#include <stdint.h>
25#include <libbase/plist.h>
26
31
32#include "toolkit/toolkit.h"
33
43
44#ifdef __cplusplus
45extern "C" {
46#endif // __cplusplus
47
48// TODO(kaeser@gubbe.ch): Move this to wlmaker_keyboard.
49// Taskswitch:
50// modifer = ALT, and PRESSED is TAB enables it, and will switch focus
51// to the next-open View.
52//
53// - TAB will switch focus one further
54// - Shift-TAB will switch focus one back
55// (- Cursor left/right will also switch focus further/one back)
56// - Esc will restore focus of the view that has it before switcher.
57//
58// will remain active until:
59// - ALT is released
60// - any key outside the handled keys are pressed
61// - mouse is presset outside the task switch window
62// - workspace is switched.
63//
64// Means: It needs a means of...
65// - grabbing keyboard focus and holding it until release.
66// - grabbing mouse focus and holding it until release.
67// - not losing focus and top-of-stack until release.
68// => Should be atop each layer -> have it's own layer? or OVERLAY ?
69// (likely go with overlay)
70//
71// => means, this is like a "layer view" except the extra focus constraints.
72
87 wlmaker_server_t *server_ptr,
88 const struct wlmaker_task_list_style *style_ptr);
89
96 wlmaker_task_list_t *task_list_ptr);
97
99extern const bspl_desc_t wlmaker_task_list_style_desc[];
100
101#ifdef __cplusplus
102} // extern "C"
103#endif // __cplusplus
104
105#endif /* __TASK_LIST_H__ */
106/* == End of task_list.h =================================================== */
Definition server.h:76
Definition task_list.c:50
Definition task_list.h:35
wlmtk_style_fill_t fill
Definition task_list.h:37
uint32_t text_color
Definition task_list.h:41
wlmtk_style_font_t font
Definition task_list.h:39
Definition style.h:77
Definition style.h:105
wlmaker_task_list_t * wlmaker_task_list_create(wlmaker_server_t *server_ptr, const struct wlmaker_task_list_style *style_ptr)
Definition task_list.c:150
void wlmaker_task_list_destroy(wlmaker_task_list_t *task_list_ptr)
Definition task_list.c:206
const bspl_desc_t wlmaker_task_list_style_desc[]
Definition task_list.c:122