Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Systems programmers are the high priests of a low cult. -- R. S. Barton


devel / comp.lang.tcl / Re: Why does geometry take a while?

SubjectAuthor
* Why does geometry take a while?Luc
`* Why does geometry take a while?Robert Heller
 `* Why does geometry take a while?Luc
  +* Why does geometry take a while?Robert Heller
  |`* Why does geometry take a while?Luc
  | `- Why does geometry take a while?Robert Heller
  `- Why does geometry take a while?Harald Oehlmann

1
Why does geometry take a while?

<20231215135853.55e2fa4c@lud1.home>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=12581&group=comp.lang.tcl#12581

  copy link   Newsgroups: comp.lang.tcl
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: luc...@sep.invalid (Luc)
Newsgroups: comp.lang.tcl
Subject: Why does geometry take a while?
Date: Fri, 15 Dec 2023 13:58:53 -0300
Organization: A noiseless patient Spider
Lines: 56
Message-ID: <20231215135853.55e2fa4c@lud1.home>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Injection-Info: dont-email.me; posting-host="b37b0e8e5fa117ae6ba5cb341cffae02";
logging-data="2087094"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/zK7G/YqSg8fJTJxfwxw2+wUeCpcyoXbM="
Cancel-Lock: sha1:y7inrNz2GklBw74jbipfK8ynDe0=
 by: Luc - Fri, 15 Dec 2023 16:58 UTC

I have two versions of an application. One is old, I'm working on the
newer version.

Both begin more or less the same way:

proc p.createwindow {args} {
package require Tk
wm withdraw .
eval destroy [winfo children .]
catch {destroy .NAME errorsgui}
set ::w [toplevel .topw -background #c0c0c0]
wm resizable $::w 1 1
....
}

Then later on, this:

regexp {([0-9]+)x.+} [winfo geometry $::w] -> ::WholeAppWidth
w.debug $::WholeAppWidth

The older one says my whole app width is 1920. Makes sense. It is in fact
my screen's resolution.

The new one says it's 968.

The old one positions a pop-up menu exactly where it's supposed to be.
The new one positions the menu very wrong.

Both applications run maximized.

I spent a long time looking over and over and over and couldn't find
any hint of explanation for this discrepancy.

Then I had an idea:

after 1000 {
regexp {([0-9]+)x.+} [winfo geometry $::w] -> ::WholeAppWidth
w.debug $::WholeAppWidth
}

A-ha! Now the new version gets the correct measurement.

But why? I moved that around multiple points of the code and got multiple
results (even 1), and the number tends to grow the closer the debugging
statement is to the end of the script.

But still, at the end of the script, it's not ready. I had to add the after
statement to get it right. But what if 1000 is not enough?

So why does that happen and how am I supposed to know how long
my code has to wait around to get the correct reading?

--
Luc
>>

Re: Why does geometry take a while?

<eJednUpphI1kD-H4nZ2dnZfqn_idnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=12582&group=comp.lang.tcl#12582

  copy link   Newsgroups: comp.lang.tcl
Path: i2pn2.org!rocksolid2!news.neodome.net!feeder1.feed.usenet.farm!feed.usenet.farm!peer01.ams4!peer.am4.highwinds-media.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!Xl.tags.giganews.com!local-1.nntp.ord.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Fri, 15 Dec 2023 17:55:05 +0000
MIME-Version: 1.0
From: hel...@deepsoft.com (Robert Heller)
Organization: Deepwoods Software
X-Newsreader: TkNews 3.0 (1.2.16)
Subject: Re: Why does geometry take a while?
In-Reply-To: <20231215135853.55e2fa4c@lud1.home>
References: <20231215135853.55e2fa4c@lud1.home>
Newsgroups: comp.lang.tcl
Content-Type: text/plain;
charset="us-ascii"
Originator: heller@sharky4.deepsoft.com
Message-ID: <eJednUpphI1kD-H4nZ2dnZfqn_idnZ2d@giganews.com>
Date: Fri, 15 Dec 2023 17:55:05 +0000
Lines: 88
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-T9vhMM6IcFo2WQGkt9QI0pGKW4Whk6NY4Wmgc8pHQj62wDl6A3f5YNT/hGTm+EURNABI5ZFOv2tRiyh!dB+aTfOl1NG0Gbw2vjWb9t2g0B+t6XE30Wl139wdW83SdS+B2ke5rUNJJrDcyjPmpFYsAcgU4y7U!csE=
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Received-Bytes: 4460
 by: Robert Heller - Fri, 15 Dec 2023 17:55 UTC

At Fri, 15 Dec 2023 13:58:53 -0300 Luc <luc@sep.invalid> wrote:

>
> I have two versions of an application. One is old, I'm working on the
> newer version.
>
> Both begin more or less the same way:
>
> proc p.createwindow {args} {
> package require Tk
> wm withdraw .
> eval destroy [winfo children .]
> catch {destroy .NAME errorsgui}
> set ::w [toplevel .topw -background #c0c0c0]
> wm resizable $::w 1 1
> ...
> }
>
> Then later on, this:
>
> regexp {([0-9]+)x.+} [winfo geometry $::w] -> ::WholeAppWidth
> w.debug $::WholeAppWidth
>
> The older one says my whole app width is 1920. Makes sense. It is in fact
> my screen's resolution.
>
> The new one says it's 968.
>
> The old one positions a pop-up menu exactly where it's supposed to be.
> The new one positions the menu very wrong.
>
> Both applications run maximized.
>
> I spent a long time looking over and over and over and couldn't find
> any hint of explanation for this discrepancy.
>
> Then I had an idea:
>
> after 1000 {
> regexp {([0-9]+)x.+} [winfo geometry $::w] -> ::WholeAppWidth
> w.debug $::WholeAppWidth
> }
>
> A-ha! Now the new version gets the correct measurement.
>
> But why? I moved that around multiple points of the code and got multiple
> results (even 1), and the number tends to grow the closer the debugging
> statement is to the end of the script.
>
> But still, at the end of the script, it's not ready. I had to add the after
> statement to get it right. But what if 1000 is not enough?
>
> So why does that happen and how am I supposed to know how long
> my code has to wait around to get the correct reading?

Instead of the after command you should use

update idle
regexp {([0-9]+)x.+} [winfo geometry $::w] -> ::WholeAppWidth
w.debug $::WholeAppWidth

What is happening is the Tk is "lazy" (specificly it uses the "lazy eval"
principal). Nothing gets "realized" or drawn in the screen, until it needs to
be. Functions like toplevel return "right away" and don't wait for the
toplevel to be "realized" or drawn -- these functions are defered and go into
the event queue as an "idle" task (I'm probably not explaining this in a
technically correct way, but for your purposes, that does not matter).

So, after you have built your UI (eg the toplevel(s) and all of their children
and menus and such) and you want to finalize the geometry, you use the "update
idle" command to get eveything "realized" and then you can get the final
geometry of the toplevel(s) and then get eventhing placed on the screen
properly. You would also do this if you create popups or dialog boxes
on-the-fly.

"update idle" will run through all of the idle tasks in the event queue and
complete them. It will take just exactly as long as that takes, depending
on the complexity of the toplevels, the speed of the graphics system, etc.

>

--
Robert Heller -- Cell: 413-658-7953 GV: 978-633-5364
Deepwoods Software -- Custom Software Services
http://www.deepsoft.com/ -- Linux Administration Services
heller@deepsoft.com -- Webhosting Services

Re: Why does geometry take a while?

<20231215154409.250225e7@lud1.home>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=12584&group=comp.lang.tcl#12584

  copy link   Newsgroups: comp.lang.tcl
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: luc...@sep.invalid (Luc)
Newsgroups: comp.lang.tcl
Subject: Re: Why does geometry take a while?
Date: Fri, 15 Dec 2023 15:44:09 -0300
Organization: A noiseless patient Spider
Lines: 48
Message-ID: <20231215154409.250225e7@lud1.home>
References: <20231215135853.55e2fa4c@lud1.home>
<eJednUpphI1kD-H4nZ2dnZfqn_idnZ2d@giganews.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Injection-Info: dont-email.me; posting-host="b37b0e8e5fa117ae6ba5cb341cffae02";
logging-data="2128011"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19UJiCHvWK+5IjVIROVD9eKgbimogAL7vQ="
Cancel-Lock: sha1:d/TtHUJURhB2j30cV9Rse3oDlFg=
 by: Luc - Fri, 15 Dec 2023 18:44 UTC

On Fri, 15 Dec 2023 17:55:05 +0000, Robert Heller wrote:

>Instead of the after command you should use
>
>update idle
>regexp {([0-9]+)x.+} [winfo geometry $::w] -> ::WholeAppWidth
>w.debug $::WholeAppWidth

No. That doesn't work.

>"update idle" will run through all of the idle tasks in the event queue
>and complete them. It will take just exactly as long as that takes,
>depending on the complexity of the toplevels, the speed of the graphics
>system, etc.

Therein lies the problem.

The 'update' man page has this example:

set x 1000
set done 0
after 1000 set done 1
while {!$done} {
# A very silly example!
set x [expr {log($x) ** 2.8}]
# Test to see if our time-limit has been hit. This would
# also give a chance for serving network sockets and, if
# the Tk package is loaded, updating a user interface.
update
}

Yeah well, but that still uses after. And the question remains: "after"
how long exactly? How do I know?

Ideally, I should have some way to know that all idle tasks have been
completed. In pseudo code,

if {[llength [idletasks pending]] == 0} {p.getResolution}

--
Luc
>>

Re: Why does geometry take a while?

<OJ6dnUl2FezPMeH4nZ2dnZfqnPudnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=12585&group=comp.lang.tcl#12585

  copy link   Newsgroups: comp.lang.tcl
Path: i2pn2.org!i2pn.org!news.samoylyk.net!2.eu.feeder.erje.net!feeder.erje.net!feeder1.feed.usenet.farm!feed.usenet.farm!tr3.eu1.usenetexpress.com!feeder.usenetexpress.com!tr2.iad1.usenetexpress.com!69.80.99.26.MISMATCH!Xl.tags.giganews.com!local-2.nntp.ord.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Fri, 15 Dec 2023 19:43:14 +0000
MIME-Version: 1.0
From: hel...@deepsoft.com (Robert Heller)
Organization: Deepwoods Software
X-Newsreader: TkNews 3.0 (1.2.16)
Subject: Re: Why does geometry take a while?
In-Reply-To: <20231215154409.250225e7@lud1.home>
References: <20231215135853.55e2fa4c@lud1.home>??<eJednUpphI1kD-H4nZ2dnZfqn_idnZ2d@giganews.com> <20231215154409.250225e7@lud1.home>
Newsgroups: comp.lang.tcl
Content-Type: text/plain; charset="us-ascii"
Originator: heller@sharky4.deepsoft.com
Message-ID: <OJ6dnUl2FezPMeH4nZ2dnZfqnPudnZ2d@giganews.com>
Date: Fri, 15 Dec 2023 19:43:14 +0000
Lines: 84
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-Xt17WTv+aG/bCm9KcsiZIag3zXcXd7G72M0fS72xHfxKAoRH9zAhCkJBWnXCLbNQknD7JW8boH2usuJ!yoWzNWDN/XT/uv8bZhJMEAL7UKuLd9l7+G4OPBbxbY+pCQ2nxJHdZ5VSsMuTbHduzBv+GGUBHwV0!kJ0=
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
 by: Robert Heller - Fri, 15 Dec 2023 19:43 UTC

At Fri, 15 Dec 2023 15:44:09 -0300 Luc <luc@sep.invalid> wrote:

>
> On Fri, 15 Dec 2023 17:55:05 +0000, Robert Heller wrote:
>
> >Instead of the after command you should use
> >
> >update idle
> >regexp {([0-9]+)x.+} [winfo geometry $::w] -> ::WholeAppWidth
> >w.debug $::WholeAppWidth
>
>
> No. That doesn't work.

Are sure you are doing things right?

Here is code *I* use (this is the pattern that works and is lifted from the Tk
Dialog code):

wm withdraw .
update idle
set x [expr {[winfo screenwidth .]/2 - [winfo reqwidth .]/2 \
- [winfo vrootx .]}]
set y [expr {[winfo screenheight .]/2 - [winfo reqheight .]/2 \
- [winfo vrooty .]}]
wm geom . +$x+$y
wm deiconify .

And this works perfectly everytime.

This code positions the main window (.) exactly in the center of the screen.

winfo reqwidth and winfo reqheight return the correct main window size, once
it has been realized. update idle completes the main window realization and
updates the required size after all of the children widgets have been built
and have had their geometry managed (eg with pack, place, or grid).

>
>
> >"update idle" will run through all of the idle tasks in the event queue
> >and complete them. It will take just exactly as long as that takes,
> >depending on the complexity of the toplevels, the speed of the graphics
> >system, etc.
>
> Therein lies the problem.
>
> The 'update' man page has this example:
>
>
> set x 1000
> set done 0
> after 1000 set done 1
> while {!$done} {
> # A very silly example!
> set x [expr {log($x) ** 2.8}]
> # Test to see if our time-limit has been hit. This would
> # also give a chance for serving network sockets and, if
> # the Tk package is loaded, updating a user interface.
> update
> }
>

This is a completely unrelated code fragment.

>
> Yeah well, but that still uses after. And the question remains: "after"
> how long exactly? How do I know?
>
> Ideally, I should have some way to know that all idle tasks have been
> completed. In pseudo code,
>
> if {[llength [idletasks pending]] == 0} {p.getResolution}
>

update idle runs through *all pending* idletasks.

Can you post your *complete* code? Something else is going on.

--
Robert Heller -- Cell: 413-658-7953 GV: 978-633-5364
Deepwoods Software -- Custom Software Services
http://www.deepsoft.com/ -- Linux Administration Services
heller@deepsoft.com -- Webhosting Services

Re: Why does geometry take a while?

<uliacj$21ej6$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=12586&group=comp.lang.tcl#12586

  copy link   Newsgroups: comp.lang.tcl
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: wortka...@yahoo.com (Harald Oehlmann)
Newsgroups: comp.lang.tcl
Subject: Re: Why does geometry take a while?
Date: Fri, 15 Dec 2023 20:45:24 +0100
Organization: A noiseless patient Spider
Lines: 68
Message-ID: <uliacj$21ej6$1@dont-email.me>
References: <20231215135853.55e2fa4c@lud1.home>
<eJednUpphI1kD-H4nZ2dnZfqn_idnZ2d@giganews.com>
<20231215154409.250225e7@lud1.home>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Fri, 15 Dec 2023 19:45:23 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="4d49d1fb8e771a937d224e0ff3422864";
logging-data="2144870"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+Od1Q7+9YDGcnpcJYdILMX"
User-Agent: Mozilla Thunderbird
Cancel-Lock: sha1:tS3sm/EkvH5kNIArFRHVpDBJvpc=
In-Reply-To: <20231215154409.250225e7@lud1.home>
Content-Language: en-GB
 by: Harald Oehlmann - Fri, 15 Dec 2023 19:45 UTC

Am 15.12.2023 um 19:44 schrieb Luc:
> On Fri, 15 Dec 2023 17:55:05 +0000, Robert Heller wrote:
>
>> Instead of the after command you should use
>>
>> update idle
>> regexp {([0-9]+)x.+} [winfo geometry $::w] -> ::WholeAppWidth
>> w.debug $::WholeAppWidth
>
>
> No. That doesn't work.
>
>
>> "update idle" will run through all of the idle tasks in the event queue
>> and complete them. It will take just exactly as long as that takes,
>> depending on the complexity of the toplevels, the speed of the graphics
>> system, etc.
>
> Therein lies the problem.
>
> The 'update' man page has this example:
>
>
> set x 1000
> set done 0
> after 1000 set done 1
> while {!$done} {
> # A very silly example!
> set x [expr {log($x) ** 2.8}]
> # Test to see if our time-limit has been hit. This would
> # also give a chance for serving network sockets and, if
> # the Tk package is loaded, updating a user interface.
> update
> }
>
>
> Yeah well, but that still uses after. And the question remains: "after"
> how long exactly? How do I know?
>
> Ideally, I should have some way to know that all idle tasks have been
> completed. In pseudo code,
>
> if {[llength [idletasks pending]] == 0} {p.getResolution}
>

Luc,
thanks for the post.
There are calculations on widgets, which need multiple rounds.
And they are not all idle tasks.
Advanced widgets may use an "after idle" or "after 1" to delay eventual
geometry adjustments after the first round passed.

TCL 9 gives you more control on the update command.

On the practical side:
Does just one "update" help ?

If you don't have to many highly complex widgets (tablelist for
example), than this should be enough.

Ohterwise, do:
update
update

But that should be enough.

Take care,
Harald

Re: Why does geometry take a while?

<20231215172730.5774431e@lud1.home>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=12587&group=comp.lang.tcl#12587

  copy link   Newsgroups: comp.lang.tcl
Path: i2pn2.org!i2pn.org!news.niel.me!news.gegeweb.eu!gegeweb.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: luc...@sep.invalid (Luc)
Newsgroups: comp.lang.tcl
Subject: Re: Why does geometry take a while?
Date: Fri, 15 Dec 2023 17:27:30 -0300
Organization: A noiseless patient Spider
Lines: 43
Message-ID: <20231215172730.5774431e@lud1.home>
References: <20231215135853.55e2fa4c@lud1.home>
<eJednUpphI1kD-H4nZ2dnZfqn_idnZ2d@giganews.com>
<20231215154409.250225e7@lud1.home>
<OJ6dnUl2FezPMeH4nZ2dnZfqnPudnZ2d@giganews.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Injection-Info: dont-email.me; posting-host="b37b0e8e5fa117ae6ba5cb341cffae02";
logging-data="2158027"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+1LtAaLmwcxnx5GGfCGnXrQzTsZPQsroo="
Cancel-Lock: sha1:SO7q3VnXram5VHfw6D+SgxJJdRg=
 by: Luc - Fri, 15 Dec 2023 20:27 UTC

On Fri, 15 Dec 2023 19:43:14 +0000, Robert Heller wrote:

>Are sure you are doing things right?

I wasn't, as usual. I've solved the mystery.

Harald Oehlmann wrote:

>On the practical side:
>Does just one "update" help ?
>If you don't have to many highly complex widgets (tablelist for
>example), than this should be enough.
>Ohterwise, do:
>update
>update
>But that should be enough.

That didn't work either. I tried a lot of updates. I made a for loop
to fire update 10 thousand times. It still didn't work.

"It never updates," I thought.

That was the spark I needed.

I realized that the two versions had the maximization command stated
at different points, later in the newer version.

So I brought it higher up:

wm attributes $::w -zoomed 1
update

And now it works.

Yay. Back to happy camping.

Thank you again.

--
Luc
>>

Re: Why does geometry take a while?

<b2GdnWnTvoKkXuH4nZ2dnZfqnPWdnZ2d@giganews.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=12588&group=comp.lang.tcl#12588

  copy link   Newsgroups: comp.lang.tcl
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!border-2.nntp.ord.giganews.com!nntp.giganews.com!Xl.tags.giganews.com!local-1.nntp.ord.giganews.com!news.giganews.com.POSTED!not-for-mail
NNTP-Posting-Date: Fri, 15 Dec 2023 21:20:57 +0000
MIME-Version: 1.0
From: hel...@deepsoft.com (Robert Heller)
Organization: Deepwoods Software
X-Newsreader: TkNews 3.0 (1.2.16)
Subject: Re: Why does geometry take a while?
In-Reply-To: <20231215172730.5774431e@lud1.home>
References: <20231215135853.55e2fa4c@lud1.home>??<eJednUpphI1kD-H4nZ2dnZfqn_idnZ2d@giganews.com>??<20231215154409.250225e7@lud1.home>??<OJ6dnUl2FezPMeH4nZ2dnZfqnPudnZ2d@giganews.com>
<20231215172730.5774431e@lud1.home>
Newsgroups: comp.lang.tcl
Content-Type: text/plain;
charset="us-ascii"
Originator: heller@sharky4.deepsoft.com
Message-ID: <b2GdnWnTvoKkXuH4nZ2dnZfqnPWdnZ2d@giganews.com>
Date: Fri, 15 Dec 2023 21:20:57 +0000
Lines: 55
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-1RiLkkFHa8SYmovImehCZg8Fp1gkTjN7VnJQmJ1is3ykaa+R7tX0evq7ABQG83p7GrV2lI7f0AlZi+F!OHD55MX35YHqu6rtAL1Zn76/es2lmIANJzFS+qP4f8kb2ReNLVYZBiBg6EA3dFLSMbrfai0LNq+V!WZg=
X-Complaints-To: abuse@giganews.com
X-DMCA-Notifications: http://www.giganews.com/info/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
 by: Robert Heller - Fri, 15 Dec 2023 21:20 UTC

At Fri, 15 Dec 2023 17:27:30 -0300 Luc <luc@sep.invalid> wrote:

>
> On Fri, 15 Dec 2023 19:43:14 +0000, Robert Heller wrote:
>
> >Are sure you are doing things right?
>
> I wasn't, as usual. I've solved the mystery.
>
>
> Harald Oehlmann wrote:
>
> >On the practical side:
> >Does just one "update" help ?
> >If you don't have to many highly complex widgets (tablelist for
> >example), than this should be enough.
> >Ohterwise, do:
> >update
> >update
> >But that should be enough.
>
> That didn't work either. I tried a lot of updates. I made a for loop
> to fire update 10 thousand times. It still didn't work.
>
> "It never updates," I thought.
>
> That was the spark I needed.
>
> I realized that the two versions had the maximization command stated
> at different points, later in the newer version.
>
> So I brought it higher up:
>
> wm attributes $::w -zoomed 1
> update

And the above really should be

update idle

>
> And now it works.
>
> Yay. Back to happy camping.
>
> Thank you again.
>

--
Robert Heller -- Cell: 413-658-7953 GV: 978-633-5364
Deepwoods Software -- Custom Software Services
http://www.deepsoft.com/ -- Linux Administration Services
heller@deepsoft.com -- Webhosting Services

1
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor