*add* strut_policy = none

git-svn-id: http://tint2.googlecode.com/svn/trunk@395 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
This commit is contained in:
Andreas.Fink85
2010-02-20 10:08:56 +00:00
parent 2126b2e47d
commit a58a4d1830
4 changed files with 12 additions and 2 deletions

View File

@@ -596,6 +596,8 @@ void add_entry (char *key, char *value)
else if (strcmp(key, "strut_policy") == 0) { else if (strcmp(key, "strut_policy") == 0) {
if (strcmp(value, "follow_size") == 0) if (strcmp(value, "follow_size") == 0)
panel_strut_policy = STRUT_FOLLOW_SIZE; panel_strut_policy = STRUT_FOLLOW_SIZE;
else if (strcmp(value, "none") == 0)
panel_strut_policy = STRUT_NONE;
else else
panel_strut_policy = STRUT_MINIMUM; panel_strut_policy = STRUT_MINIMUM;
} }

View File

@@ -433,6 +433,12 @@ void visible_object()
void update_strut(Panel* p) void update_strut(Panel* p)
{ {
if (panel_strut_policy == STRUT_NONE) {
XDeleteProperty(server.dsp, p->main_win, server.atom._NET_WM_STRUT);
XDeleteProperty(server.dsp, p->main_win, server.atom._NET_WM_STRUT_PARTIAL);
return;
}
// Reserved space // Reserved space
unsigned int d1, screen_width, screen_height; unsigned int d1, screen_width, screen_height;
Window d2; Window d2;

View File

@@ -52,7 +52,7 @@ extern int panel_refresh;
extern int task_dragged; extern int task_dragged;
//panel autohide //panel autohide
enum { STRUT_MINIMUM, STRUT_FOLLOW_SIZE }; enum { STRUT_MINIMUM, STRUT_FOLLOW_SIZE, STRUT_NONE };
extern int panel_autohide; extern int panel_autohide;
extern int panel_autohide_show_timeout; extern int panel_autohide_show_timeout;
extern int panel_autohide_hide_timeout; extern int panel_autohide_hide_timeout;

View File

@@ -352,6 +352,7 @@ gboolean add_icon(Window id)
XGetWindowAttributes(server.dsp, id, &attr); XGetWindowAttributes(server.dsp, id, &attr);
unsigned long mask = 0; unsigned long mask = 0;
XSetWindowAttributes set_attr; XSetWindowAttributes set_attr;
// printf("icon with depth: %d\n", attr.depth);
if (attr.depth != server.depth || systray.alpha != 100 || systray.brightness != 0 || systray.saturation != 0 ) { if (attr.depth != server.depth || systray.alpha != 100 || systray.brightness != 0 || systray.saturation != 0 ) {
set_attr.colormap = attr.colormap; set_attr.colormap = attr.colormap;
set_attr.background_pixel = 0; set_attr.background_pixel = 0;
@@ -508,6 +509,7 @@ void net_message(XClientMessageEvent *e)
void systray_render_icon_now(void* t) void systray_render_icon_now(void* t)
{ {
// we end up in this function only in real transparency mode or if systray_task_asb != 100 0 0
TrayWindow* traywin = t; TrayWindow* traywin = t;
traywin->render_timeout = 0; traywin->render_timeout = 0;
@@ -526,7 +528,7 @@ void systray_render_icon_now(void* t)
else if (traywin->depth == 32) else if (traywin->depth == 32)
f = XRenderFindStandardFormat(server.dsp, PictStandardARGB32); f = XRenderFindStandardFormat(server.dsp, PictStandardARGB32);
else { else {
printf("Strange tray icon found...\n"); printf("Strange tray icon found with depth: %d\n", traywin->depth);
return; return;
} }
Picture pict_image = XRenderCreatePicture(server.dsp, traywin->tray_id, f, 0, 0); Picture pict_image = XRenderCreatePicture(server.dsp, traywin->tray_id, f, 0, 0);