* Mark Williams <[email protected]> [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
