all repos — tint2 @ e0a80ef5a2bc204d0809fec2003a135ed2c4b0ff

fork of the tint2 desktop panel for my custom setup - only minimized windows across all desktops for the taskbar

src/taskbar/task.h (raw)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/**************************************************************************
* task : 
* - 
*
**************************************************************************/

#ifndef TASK_H
#define TASK_H

#include <X11/Xlib.h>
#include <pango/pangocairo.h>
#include "common.h"


// --------------------------------------------------
// global task parameter
typedef struct {
   Area area;
   Area area_active;
   Area area_inactive;
   
   int text;
   int icon;
   int icon_size1;
   int centered;
   int maximum_width;
   int font_shadow;
   // icon position
   int icon_posy;
   // starting position for text ~ task_padding + task_border + icon_size
   double text_posx, text_posy;
   PangoFontDescription *font_desc;
   config_color font;
   config_color font_active;
} Global_task;



// --------------------------------------------------
// task parameter
typedef struct {
   // always start with area
   Area area;
   Area area_active;
   Area area_inactive;

   // TODO: group task with list of windows here
   Window win;
   long *icon_data;
   int icon_width;
   int icon_height;
   char *title;
} Task;


Global_task g_task;


void add_task (Window win);
void remove_task (Task *tsk);

void draw_foreground_task (void *obj, cairo_t *c);

void get_icon (Task *tsk);
void get_title(Task *tsk);

#endif