[PD-dev] More canvas position woes

Hans-Christoph Steiner hans at at.or.at
Sat Feb 2 01:31:20 CET 2013

For more on this topic, check out the comments in pdtk_canvas.tcl and this link:

Tk X11 returns the size of the window without the framing, and the framing
varies widely depending on the WM.

For your plugin, you'll want to override pdtk_canvas_place_window using
'rename' and write one that works for your WM.


On 02/01/2013 05:34 PM, Roman Haefeli wrote:
> Hi all
> The assumed window border sizes are hard-coded in tcl/pd-gui.tcl:
> set ::windowframex 3
> set ::windowframey 53
> However, those values might not be correct on some systems. On my system
> (with fluxbox as a window manager) those values actually are 0 and 44.
> This leads to moving canvas: Whenever I save a patch, close and open it
> again, it shifts 9px up and 3px to the left. This shift even happens on
> each 'vis 0, vis 1' cycle sent to [s pd-canvasname]. 
> This is actually not a Pd question: Is there a way to know the actual
> windowframe sizes in tcl/tk? Detecting the actual sizes would be the
> only real solution to this problem, I suppose.
> Alternatively, is there a way to write a GUI plugin to put my
> adjustments into, so that I don't have to modify tcl/pd-gui.tcl after
> every Pd update? I - naively - tried to simply put this:
> set ::windowframex 0
> set ::windowframey 44
> into ~/pd-externals/correct_windowframe-plugin.tcl. It seems to work so
> far, if I load patches from the file->open menu. When loading a patch
> from the command line, the wrong values still are used for the main
> patch. For all sub-sequent canvases (a.k.a subpatches of the main patch,
> abstractions of the main patch or sub-sequently opened patches), the
> correct values from the plugin are taken.
> Another issue is the wrapping of the menu in narrow canvases. When I
> work in a patch that shows the menu in two lines, the offset increases
> by another 28px. This means that on each save/reload cycle (or 'vis 0,
> vis 1' cycle, for that matter) the canvas shifts up by 28px. Of course,
> it's not a really urgent problem, but still slightly annoying.
> Roman
> _______________________________________________
> Pd-dev mailing list
> Pd-dev at iem.at
> http://lists.puredata.info/listinfo/pd-dev

More information about the Pd-dev mailing list