Re: [dev] [dwm] fix status bar cropping on screen resize

From: Szabolcs Nagy <nsz_AT_port70.net>
Date: Sun, 27 Feb 2011 12:15:49 +0100

* Mark Williams <markrwilliams_AT_gmail.com> [2011-02-24 17:22:03 -0800]:
> Definitely an edge case, but it's happened to me enough times that
> three possible fixes came to mind (listed in ascending preference):
>
> 1) Put a note in the BUGS section of the man page that mentions that
i think this can be fixed

> 2) The bar gets cut off because configurenotify() expects updategeom()
> to return true only if the ConfigureEvent reports a change to the root
> window's dimensions. While updategeom() does this correctly when
i don't quite understand why the reported width is not the
full display width there

> 3) Interestingly, the current code and the previous solution create a
> dc.drawable pixmap that's as wide as the aggregate horizontal
> resolution across all monitors. That makes sense for the non-Xinerama
> code, where the bar stretches from monitor to monitor, but it doesn't
> when each has its own bar. In the latter case the pixmap only has to
> be as wide as the largest monitor's horizontal resolution. The second
this seems reasonable

i'd use a max-monitor-width global instead of dc.dw
(like sw and sh it's a display geometry related var,
not a dc internal)
imho updategeom shouldn't modify dc or if it does
then do all the work there (createpixmap, updatebars)

> Even though this happens because of other people's weak code, I think
> 3 (or 2) is the best solution since dwm itself seems to be making some
> incorrect assumptions; however, if the BUGS entry is the right
> solution I'll be happy to write the explanation.
thanks for looking into this
Received on Sun Feb 27 2011 - 12:15:49 CET

This archive was generated by hypermail 2.2.0 : Sun Feb 27 2011 - 12:24:02 CET