Hi
Can i suggest a patch to wine's rebar src
The patch is made against current cvs source.
[root@localhost comctl32]# diff -u rebar.c.cvs rebar.c > attach.diff
--- rebar.c.cvs 2006-03-24 09:53:28.000000000 +0800
+++ rebar.c 2006-03-24 09:38:29.000000000 +0800
@@ -2820,7 +2820,7 @@
}
if (lprbbi->fMask & RBBIM_SIZE)
- lprbbi->cx = lpBand->cx;
+ lprbbi->cx = lpBand->ccx;
if (lprbbi->fMask & RBBIM_BACKGROUND)
lprbbi->hbmBack = lpBand->hbmBack;
@@ -2902,7 +2902,7 @@
}
if (lprbbi->fMask & RBBIM_SIZE)
- lprbbi->cx = lpBand->cx;
+ lprbbi->cx = lpBand->ccx;
if (lprbbi->fMask & RBBIM_BACKGROUND)
lprbbi->hbmBack = lpBand->hbmBack;
It's a fix to the problem that apps can't remember rebar layout across runs.
When apps exit, they often ask the rebar for current band info so that the next
time they run, they can tell the rebar how to layout the bands.
When they ask about the size of a band, current code passes them lpBand->cx, which is a value passed by apps at band creation time,
validated and stored by rebar, and then never gets updated. So apps alway get the old size value, while lpBand->ccx as the name suggests is the current rebar size.
Tested with some apps, and no regression observed. Source Insight works
better, so is Internet Explorer.
I have actually made more changes to rebar.c. Wondering if some could
review this patch and submit it. So that I can suggest subsequent patches
against the updated source.