|Anonymous | Login||01-23-2020 21:20 UTC|
|Main | My View | View Issues | Change Log | Docs|
|Viewing Issue Advanced Details [ Jump to Notes ]||[ View Simple ] [ Issue History ] [ Print ]|
|ID||Category||Severity||Reproducibility||Date Submitted||Last Update|
|0006536||[Squeak] Morphic||minor||always||06-12-07 00:58||04-18-10 21:51|
|ETA||none||Fixed in Version||trunk||Product Version||3.10|
|Summary||0006536: In 7105 Supplies Flaptab leaves glitches in wake when moved to left.|
For this own open a fresh Squeak 7105
Drag the Supplies flaptab to the left. Note that blue vertical lines are being left behind. It will be more apparent if you set the desktop color to something light.
This will sometimes happen with outer flaps and sometimes not. It just so happens that conditions are right in this image for it to happen with the Supplies flap.
|Steps To Reproduce|
This is another example of clipping box off by one errors.
I found it after working on 0006429 and thought I had introduced it with my fix until I found this example of the bug in a fresh image.
In my fixed version the bug cropped up with the Objects flap (and then after playing for a while went away.) So the bug actually has a "sometimes" quality about it.
SYSTEM WARNING: Creating default object from empty value
(0010815 - 1660 - 1858 - 1858 - 1858 - 1858 - 1858)
This is an elusive bug.
It happen in 7105 with the supplies flap but not the widgets flap.
It stops happening with the supplies flap if you duplicate the flap.
The supplies flap originally has an x extent that is a hair larger than 82.0.
An interesting way to examine the phenomenom is to create a script
that essentially says
supplies x := supplies x - 1 (movement to the left).
the flap will leave a solid trail of glitches as it moves right.
changing the parameter from x -1 to x -2 changes the glitch pattern.
The interesting thing is changing x-1 to x-1.05 creates an alternating bar of glitches and gaps. I got 12 glitches and 8 gaps. The gaps corresponded to positions from nn.00 downTo: nn.60 and the glitches from nn.55 to nn.05.
Duplicating the supplies flap changed the extent of both the duplicate and the original. The extra hair disappeared and the glitching behavior with it.
I could write the same kind of scripts for other flaps but no glitch pattern appeared.
I could crate a rectangle with the same initial bounds as the flap and create a script for it. No glitch pattern.
So my knowledge, so far, Is the glitches have something to do with the flap drawing routines. And the unusual extent of the supplies flap.
The nature of the glitch implies that the clipping box is noticably off by one somehow when the target moves left and has a postion with a fraction of less than about half a pixel.
So far I have come across no obvious suspects from code reading.
The bug itself is not very important or interesting. The reason for it being there is what I am curious about.
(0013640 - 107 - 119 - 119 - 119 - 119 - 119)
I can't reproduce this in the latest trunk image.
Do you still see this problem?
Can we close this issue?
(0013682 - 349 - 487 - 487 - 487 - 487 - 487)
edited on: 04-11-10 01:28
Ha. Current release candidate does seem to have SOLVED this problem.
In fresh sq 9926
Open and pin flaps menu
Using halos get viewer for supply flap
flap right increase by 1
flap right decrease by 1
flap moves leaves no gribbles.
AFAICT from this problem is gone. (for now)
(0013683 - 336 - 364 - 364 - 364 - 364 - 364)
After resizing the SqueakWindow several times and resizing a FlapTab several times I had it, that the FlapTab had bounds <> fullBounds and left "gribbles" on the screen.
I think an easy way to fix this, is to prevent FlapTabs to have Floats as bounds after a change of the SqueakWindow.
Could you see if this solves the issue for you?
(0013684 - 63 - 63 - 63 - 63 - 63 - 63)
|BTW, this will only work with FlapTabs created after the update|
(0013685 - 571 - 637 - 637 - 776 - 776 - 776)
Hi laza, please note I corrected my earlier comment. I thought the image solved this.
If you were able to recreate the problem you've been cleverer than I.
IIRCC The original problem was a layout recursion based on a comparison of a raw and rounded position of the tab.
Remember 0006486 resolved laza In 7097 Resizing the objects flaptab can result in a infinite loop (i.e. squeak freezes)
There are change sets there that should be a basis for fixing this problem also?
I don't recall now what I did then. I do remember I thought well of it.
(0013690 - 783 - 851 - 851 - 851 - 851 - 851)
I believe. that the problems of infinite recursion and leaving "gribbles" on the screen were because of morphs (flaptabs) had floats as bounds.
Comparing floats to be equal is a problem and there was a slight chance that the recursion would not stop (see the testcase). I replaced the check for equality with a closeTo: check and removed my half-ass attempt to fix this with rounded.
There was also a chance that FlapTabs left "gribbles" (1 pixel width) on the screen. This happend when they had floats as bounds and bounds was slightly larger than fullbounds. Now hopefully this will not happen anymore, because FlapTabs have integer bounds after the SqueakScreen changes.
I'm sure there is room for optimization or improvement, but that should do it for 4.1.
(0013691 - 103 - 109 - 109 - 109 - 109 - 109)
Now with the heavy testing in progress, no complaints about this bug.
So I dare to resolve this issue.
|06-12-07 00:58||wiz||New Issue|
|06-12-07 00:59||wiz||Relationship added||child of 0006511|
|06-16-07 03:56||wiz||Note Added: 0010815|
|10-13-08 03:00||wiz||Relationship added||child of 0007212|
|04-08-10 09:56||laza||Note Added: 0013640|
|04-08-10 09:56||laza||Status||new => feedback|
|04-09-10 22:23||wiz||Note Added: 0013682|
|04-10-10 08:16||laza||Note Added: 0013683|
|04-10-10 08:16||laza||Assigned To||=> laza|
|04-10-10 08:16||laza||Status||feedback => testing|
|04-10-10 08:22||laza||Note Added: 0013684|
|04-11-10 01:28||wiz||Note Edited: 0013682|
|04-11-10 01:38||wiz||Note Added: 0013685|
|04-13-10 11:39||laza||Note Added: 0013690|
|04-13-10 11:40||laza||Status||testing => resolved|
|04-13-10 11:40||laza||Fixed in Version||=> trunk|
|04-13-10 11:40||laza||Resolution||open => fixed|
|04-13-10 11:40||laza||Note Added: 0013691|
|04-18-10 21:51||andreas||Status||resolved => closed|
| Mantis 1.0.8[^]
Copyright © 2000 - 2007 Mantis Group
82 total queries executed.|
52 unique queries executed.