freenode/#clim - IRC Chatlog
Search
19:50:29
jackdaniel
do you have any clues why scrolling things like bordering pane or other "normal" panes works fine, but putting there clim-stream-pane makes sheet-native-transformation skewed while scrolling? (this is not related to your yesterday cleanup, maybe related to your earlier changes
4:26:28
beach
I have given the new computer back to the supplier for tests, and I am using the old one that hasn't crashed for a few days now. Now, because both of them crash in similar ways, I have bought a power conditioner, suspecting power spikes.
4:53:19
jackdaniel
I didn't mean that I think you are the cause, I've asked you because I know you were working on that parts lately
4:54:04
loke
One of them update sheet-native-transform, and the other applies some different transformation
4:54:53
loke
Scollable panes move the underlying X window object, while an application pane just changes transformation
4:56:13
jackdaniel
well, scrollable panes are in fact: scroller + viewport + pane (same for application pane which is scrollable)
4:57:24
loke
jackdaniel: I don't know the correct terminology. I keep getting it wrong and you keep having to correct me,
5:06:35
loke
What I'm saying is that if I open the coordinate swizzle test and scroll down a bit, and then set a brakpoint inside the MEDIUM-DRAW-TEXT implementation for CLX, then the line that is drawn on top of the pane is actually getting a Y coordinate of some positive value. Like, I scroll down 100 pixels, and the top lone is drawn at coordinate 100.
5:07:43
loke
If I draw a bunch of lines in a plain application pane, and scroll down 100 lines and set the same brakpoint, what is see is that the text is draw on coordinate 100 BUT with a translation transform of -100
5:09:16
loke
I'm not sure what the difference between these two methods are called. I called is "mirrored sheet" but apparently that is wrong. Beach told me what it was called, and he said that he didn't like the former method, because it requires the use of coordinate swizzling.
5:10:18
jackdaniel
the difference comes from the fact, that if we draw directly on a pane inside the viewport, its native transformation may happen to transform 0,0 to negative values
5:10:42
jackdaniel
medium-context and design-context have some code to mitigate that (I think where the problem lies)
5:11:20
jackdaniel
if pane on which drawing is performed is wrapped in a border pane (or something else) - default for application panes, then you scroll border pane and it has native transformation changed
5:11:46
jackdaniel
but this border pane's child (application pane) has native transformation intact at 0,0 (relative to border pane, and both are mirrors)