[PD] Pd-extended 0.43 and Openbox

Hans-Christoph Steiner hans at at.or.at
Sat Oct 6 00:00:08 CEST 2012


On 10/04/2012 08:11 AM, Nicola Pandini wrote:
> Il 04/10/2012 02:08, Simon Wise ha scritto:
>> On 04/10/12 04:07, Hans-Christoph Steiner wrote:
>>
>>> Sounds like this should actually be:
>>>
>>> set x [ expr max($x % $screenwidth - $::windowframex, 0)]
>>> set y [ expr max($y % $screenheight - $::windowframey, 0)]
>>>
>>> That would ensure that x and y are always>= 0. Does changing that in
>>> pdtk_canvas.tcl solve your issue?
>>>
>>> The tricky part here is that this would then break how Pd strictly sets
>>> the position of existing patches based on the values on the first line
>>> of the patch file.
>>
>> wouldn't that make it difficult to put the window outside the screen
>> deliberately ... for example to hide the window decorations off-screen?
>>
>> I have needed to use this a few times (when making the window properly
>> fullscreen was not possible or appropriate), and it is sometimes a lot
>> easier than trying to work out how to tell a particular window manager
>> not to put decorations on a particular window.
>>
>> Simon
>>
>> _______________________________________________
>> Pd-list at iem.at mailing list
>> UNSUBSCRIBE and account-management ->
>> http://lists.puredata.info/listinfo/pd-list
> 
> Hi Simon, with this:
> 
> if {$geometry == "+0+0"} {
>         set x 0
>         set y 0
>     } else {
>         set x [ expr $x % $screenwidth - $::windowframex]
>         set y [ expr $y % $screenheight - $::windowframey]
>     }
> 
> You'll keep the standard behaviour of Pd for all the saved patches, only
> the new ones are forced to be placed to coords 0,0.
> 

Before this kind of change is included in Pd-extended or Pd, it'll need
to be tested a lot on all platforms.  That's why I never really tackled
the issue of all the different WMs.  I think a workable approach would
be to isolate the bits that need to be changed for the different VMs and
stick that into its own Tcl proc (function) while keeping the current logic.

Then it'll be easy to customize this logic without having to come up
with the One True Way that will require lots and lots of testing and
tweaking.  If the above is really all that needs to change, then that
can be put into its own proc.

.hc




More information about the Pd-list mailing list