awesome

Welcome to awesome bug tracking system.
Tasklist

FS#892 - Wibox does not position properly on differently-sized monitors

Attached to Project: awesome
Opened by Dani Church (dchurch) - Tuesday, 19 April 2011, 22:54 GMT
Last edited by Uli Schlachter (psychon) - Saturday, 30 April 2011, 15:18 GMT
Task Type Bug Report
Category Wibox
Status Closed
Assigned To No-one
Operating System All
Severity Critical
Priority Normal
Reported Version git/master
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

A regression was introduced in commit f5a5af4001723bdacd58474445424a745f343ec8 which causes wiboxes to position themselves incorrectly on Xinerama screens besides the first one. In lib/awful/wibox.lua.in line 49, function set_position(), the screen number used to use wibox.screen but now just defaults to 1. Since the screen parameter is never actually passed to set_position(), that means that wiboxes will always use screen 1's geometry when determining the proper position. So, if a different screen is larger or smaller or isn't aligned with the primary screen, the wibox will either be offscreen or not on the edge.

Currently using v3.4-547-g14504de.
This task depends upon

Closed by  Uli Schlachter (psychon)
Saturday, 30 April 2011, 15:18 GMT
Reason for closing:  Fixed
Additional comments about closing:  Sorry for the slow reply, I was away (and lazy)


commit 82921ef57b2cc2aa2f86a936f5bc4152069aa6fb
Author: Uli Schlachter <psychon@znc.in>
Date: Sat Apr 30 17:13:56 2011 +0200

Correctly position wiboxes ( FS#892 )

Let's just quote the bug report:

A regression was introduced in commit f5a5af4001723bdacd58474445424a745f343ec8
which causes wiboxes to position themselves incorrectly on Xinerama screens
besides the first one. In lib/awful/wibox.lua.in line 49, function
set_position(), the screen number used to use wibox.screen but now just defaults
to 1. Since the screen parameter is never actually passed to set_position(),
that means that wiboxes will always use screen 1's geometry when determining the
proper position. So, if a different screen is larger or smaller or isn't aligned
with the primary screen, the wibox will either be offscreen or not on the edge.

This should be fixed by explicitly passing the right screen argument to all
functions which need it.

Signed-off-by: Uli Schlachter <psychon@znc.in>
Comment by Uli Schlachter (psychon) - Wednesday, 20 April 2011, 06:38 GMT
Here's my screen geometry:

$ xdpyinfo -ext XINERAMA | tail -n 3
XINERAMA version 1.1 opcode: 151
head #0: 1024x768 @ 0,0
head #1: 1680x1050 @ 1024,0

I have two wiboxes attached to the top of either monitor. Works fine here.

How exactly should I change this to hit the bug?
Comment by Dani Church (dchurch) - Wednesday, 20 April 2011, 06:48 GMT
Either (a) set your wibox position to bottom, or (b) Change head #1 to have a vertical offset, for example 1680x1050 @ 1024,30, as you would if the second monitor were physically lower than the first.

Loading...