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.
--------------------------------- Blab-away for as little as 1¢/min. Make PC-to-Phone Calls using Yahoo! Messenger with Voice.
qingdoa daoo wrote:
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
Sure, we like patches. Please send them to wine-patches@winehq.org. You might also consider doing the diff in the wine directory:
cd wine diff -urp dlls/comctl32/rebar.c.cvs dlls/comctl32/rebar.c > attach.diff
That makes it easier to apply the patch, because whoever applies it doesn't have to figure out that it's against a file in dlls/comctl32.
Then attach it to your mail as you have, with a ChangeLog line, something like:
ChangeLog: Let apps remember rebar layout across runs.
Mike (who especially likes Qingdao pijiu)