// Position the tooltip in the center of the area
x = area->posx + area->width / 2 + e->xmotion.x_root - e->xmotion.x;
y = area->posy + area->height / 2 + e->xmotion.y_root - e->xmotion.y;
+ if (!panel_horizontal)
+ y -= height/2;
g_tooltip.panel = p;
if (g_tooltip.mapped && g_tooltip.area != area) {
tooltip_copy_text(area);
Panel* panel = g_tooltip.panel;
int screen_width = server.monitor[panel->monitor].x + server.monitor[panel->monitor].width;
int screen_height = server.monitor[panel->monitor].y + server.monitor[panel->monitor].height;
- if ( x+width <= screen_width && y+height <= screen_height && x>=0 && y>=0)
+ if ( x+width <= screen_width && y+height <= screen_height && x>=server.monitor[panel->monitor].x && y>=server.monitor[panel->monitor].y )
return; // no adjustment needed
if (panel_horizontal) {
min_x=0;
- max_width=screen_width;
- max_height=screen_height-panel->area.height;
+ max_width=server.monitor[panel->monitor].width;
+ max_height=server.monitor[panel->monitor].height-panel->area.height;
if (panel_position & BOTTOM)
min_y=0;
else
min_y=panel->area.height;
}
else {
- max_width=screen_width-panel->area.width;
+ max_width=server.monitor[panel->monitor].width-panel->area.width;
min_y=0;
- max_height=screen_height;
+ max_height=server.monitor[panel->monitor].height;
if (panel_position & LEFT)
min_x=panel->area.width;
else