wlmaker
|
#include "task_list.h"
#include <cairo.h>
#include <inttypes.h>
#include <libbase/libbase.h>
#include <limits.h>
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <wayland-server-core.h>
#include <wayland-util.h>
#include <wlr/util/edges.h>
#include <wlr/interfaces/wlr_buffer.h>
#include "config.h"
#include "toolkit/toolkit.h"
Classes | |
struct | _wlmaker_task_list_t |
Macros | |
#define | _POSIX_C_SOURCE 1 |
for PATH_MAX. | |
#define | WLR_USE_UNSTABLE |
Include unstable interfaces of wlroots. | |
Functions | |
static void | _wlmaker_task_list_refresh (wlmaker_task_list_t *task_list_ptr) |
static struct wlr_buffer * | create_wlr_buffer (wlmtk_workspace_t *workspace_ptr, wlmaker_config_task_list_style_t *style_ptr) |
static void | _wlmaker_task_list_draw_into_cairo (cairo_t *cairo_ptr, wlmaker_config_task_list_style_t *style_ptr, wlmtk_workspace_t *workspace_ptr) |
static void | _wlmaker_task_list_draw_window_into_cairo (cairo_t *cairo_ptr, wlmtk_style_font_t *font_style_ptr, uint32_t color, wlmtk_window_t *window_ptr, bool active, int pos_y) |
static const char * | _wlmaker_task_list_window_name (wlmtk_window_t *window_ptr) |
static uint32_t | _wlmaker_task_list_request_size (wlmtk_panel_t *panel_ptr, int width, int height) |
static void | _wlmaker_task_list_handle_task_list_enabled (struct wl_listener *listener_ptr, void *data_ptr) |
static void | _wlmaker_task_list_handle_task_list_disabled (struct wl_listener *listener_ptr, void *data_ptr) |
static void | _wlmaker_task_list_handle_window_mapped (struct wl_listener *listener_ptr, void *data_ptr) |
static void | _wlmaker_task_list_handle_window_unmapped (struct wl_listener *listener_ptr, void *data_ptr) |
wlmaker_task_list_t * | wlmaker_task_list_create (wlmaker_server_t *server_ptr, const wlmaker_config_style_t *style_ptr) |
void | wlmaker_task_list_destroy (wlmaker_task_list_t *task_list_ptr) |
Variables | |
static const wlmtk_panel_positioning_t | _wlmaker_task_list_positioning |
static const wlmtk_panel_vmt_t | _wlmaker_task_list_vmt |
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
|
static |
Draws all tasks of workspace_ptr
into cairo_ptr
.
cairo_ptr | |
style_ptr | |
workspace_ptr |
|
static |
Draws one window (task) into cairo_ptr
.
cairo_ptr | |
font_style_ptr | |
color | |
window_ptr | |
active | Whether this window is currently active. |
pos_y | Y position within the cairo_ptr . |
|
static |
Handler for the task_list_disabled_listener
: Hides the list.
listener_ptr | |
data_ptr |
|
static |
Handler for the task_list_enabled_listener
.
Enables the task listener: Creates the task list for the currently-active workspace and enables the task list on that workspace.
listener_ptr | |
data_ptr |
|
static |
Handler for the window_mapped_listener
: Refreshes the list (if enabled).
listener_ptr | |
data_ptr |
|
static |
Handler for the window_unmapped_listener
: Refreshes the list (if enabled).
listener_ptr | |
data_ptr |
|
static |
Refreshes the task list. Should be done whenever a list is mapped/unmapped.
task_list_ptr |
|
static |
|
static |
Constructs a comprehensive name for the window.
window_ptr |
|
static |
Creates a struct wlr_buffer
with windows of workspace_ptr
drawn into.
workspace_ptr | |
style_ptr |
struct wlr_buffer
with the list of windows (tasks), or NULL on error. wlmaker_task_list_t * wlmaker_task_list_create | ( | wlmaker_server_t * | server_ptr, |
const wlmaker_config_style_t * | style_ptr | ||
) |
Creates a task list for the server.
Will allocate the task list handle, and register signal handlers so the task list reacts to task_list_enabled_event
and task_list_disabled_event
of the wlmaker_server_t
.
server_ptr | |
style_ptr |
void wlmaker_task_list_destroy | ( | wlmaker_task_list_t * | task_list_ptr | ) |
Destroys the task list, as created by wlmaker_task_list_create.
task_list_ptr |
|
static |
Task list positioning: Fixed dimensions, at center of layer.
|
static |
Virtual method table for the task list.