freenode/#clim - IRC Chatlog
Search
17:45:57
slyrus
well, I've been working on a minimal test case of my clim app that crashes the window manager
17:51:15
jackdaniel
I think sbcl compiler needs big chunks of it. Given you had clean cache and you were loading McCLIM with dependencies, it could reach 1G default limit during compilation
17:52:26
jackdaniel
I'm not saying it's good, but I'd say it's something expected. ECL takes less impressive path by signalling condition (it has pre-reserved memory for signalling it), which offers restarts to grow the heap
17:57:56
jackdaniel
I've linked yesterday chapter from unix haters handbook about x-windows being disaster
18:02:04
slyrus
my first job at Apple was to find bugs in MacOS and related HW. Some days it feels like I still think I'll get paid more if I break things. Unfortunately, that's not the case.
18:31:38
jackdaniel
!notice slyrus works fine for me and looks just fine (not-used clim-crasher-pane class confused me a little, but it's not used at all)
18:31:47
Colleen
Unknown command. Possible matches: 8, mop, time, tell, help, deny, say, reload, hello, roll,
18:31:57
jackdaniel
!tell slyrus works fine for me and looks just fine (not-used clim-crasher-pane class confused me a little, but it's not used at all)
18:32:06
Colleen
See 'help about' for general information. Try 'help X' to search for or retrieve information about a command.
18:32:48
jackdaniel
works fine for me and looks just fine (not-used clim-crasher-pane class confused me a little, but it's not
18:34:38
jackdaniel
right, the code you have there doesn't crash here. I've left some more information as issue in your repository
18:38:47
jackdaniel
I think beach had similar problem at some point of time, but wasn't able to reproduce it later
18:39:51
jackdaniel
we may fix it of course to not try to render empty strings (what makes sense), even better, we could do that thing after making clx simply skip over empty strings when requested to render them
4:15:22
fiddlerwoaroof
I've been trying to think of a bunch of really simple clim applications that would make a good series of things to write to learn clim
4:22:37
fiddlerwoaroof
Hmm, if I wanted to center text in an application frame, is there a way to do that?
4:23:27
beach
The thing is that centering depends on the width of the pane you are displaying it in.
4:25:45
beach
You can say that the width of a pane is the rightmost edge of any object displayed in it.
4:26:42
beach
For most panes, that value is indicated by the space requirement, so that the surrounding scroller pane can adjust the scroll bars.
4:27:16
beach
But if you use the space requirement, it won't necessarily be centered in the window that you see, because the window is the viewport.
4:31:24
beach
Typically, in a CLIM application, application data is drawn in the redisplay function.
4:33:05
beach
The other option is to draw the text during the repaint phase, but that is not typical, and may require quite some work.
4:33:54
fiddlerwoaroof
I suppose you could also somehow trigger the redisplay function during repaint?
4:35:02
beach
I think loke did something like that, because he wanted "reflow", i.e. that the text be rearranged when the window was resized.
4:36:42
beach
Redisplay can be a costly operation, and resizing the window may trigger frequent redisplays.
4:37:23
fiddlerwoaroof
e.g. wait until there hasn't been a new resize events in the last half second or so
4:37:38
beach
Yes, performance, but also that the application may not be prepared to redisplay unless the application data has been altered.
4:38:45
beach
Anyway, if you want to do it that way, it should be reserved for applications that are "aware" that their redisplay function may be triggered frequently and for no apparent reason.
4:39:44
fiddlerwoaroof
Yeah, although reflowing text is pretty fundamental for most text-related applications
4:40:41
beach
The good way of doing that is to have a new pane type or a new output-history type that is designed for reflow.
4:41:42
beach
That way, redisplay would not be triggered. There would be a particular reflow output record that would be repainted currectly.
4:42:41
beach
So, I don't think it is a good idea to mess with redisplay. And, since reflow is fundamental, we should have such an output-history type.
4:43:09
beach
But, I am swamped with work on my projects and my research, so I really haven't had time to do it.