Maxime Bellengé wrote:
Maxime Bellengé wrote:
trace:rebar:REBAR_DumpBand hwnd=0x1003a: color=ffffffff/ffffffff, bands=1, rows=1, cSize=1280,112Hello
This patch is causing a regression in emule, the rebar simply does not
display.
trace:rebar:REBAR_DumpBand hwnd=0x1003a: flags=00000000, dragStart=0,0, dragNow=0,0, iGrabbedBand=-1
trace:rebar:REBAR_DumpBand hwnd=0x1003a: style=56002441, I'm Unicode=TRUE, notify in Unicode=TRUE, redraw=TRUE
trace:rebar:REBAR_DumpBand band # 0: ID=0 child=0x10038
trace:rebar:REBAR_DumpBand band # 0: mask=0x000003f1 (RBBIM_STYLE | RBBIM_CHILD | RBBIM_CHILDSIZE | RBBIM_SIZE | RBBIM_BACKGROUND | RBBIM_ID | RBBIM_IDEALSIZE)
trace:rebar:REBAR_DumpBand band # 0: style=0x00000301 (RBBS_BREAK | RBBS_NOGRIPPER)
trace:rebar:REBAR_DumpBand band # 0: uMinH=55 xHeader=0 cx=856 xIdeal=856
trace:rebar:REBAR_DumpBand band # 0: xMin=55, yMin=55, yChild=0, yMax=0, yIntgl=0
trace:rebar:REBAR_DumpBand band # 0: lcx=55, ccx=856, hcx=856, lcy=55, ccy=55, hcy=0, offChild=0,0
trace:rebar:REBAR_DumpBand band # 0: fStatus=00000000, fDraw=00000320, Band=(0,57)-(1280,112), Grip=(0,57)-(0,112)
trace:rebar:REBAR_DumpBand band # 0: Img=(0,57)-(0,112), Txt=(0,58)-(0,111), Child=(0,57)-(1280,112)
According to the log, it should be being displayed. The band covers the area of (0, 57)-(1280,112) and further down in the log it shows that it is getting hittest messages so the control should have some height.
Are you sure it was my patch to rebar that broke the displaying of it? Can you send a screenshot?
I saw one issue when looking through the code again, so you can try the attached patch but I doubt it will make much difference.
Rob
Index: dlls/comctl32/rebar.c =================================================================== RCS file: /home/wine/wine/dlls/comctl32/rebar.c,v retrieving revision 1.103 diff -u -p -r1.103 rebar.c --- dlls/comctl32/rebar.c 1 Mar 2005 10:44:15 -0000 1.103 +++ dlls/comctl32/rebar.c 1 Mar 2005 19:35:59 -0000 @@ -1595,7 +1595,7 @@ REBAR_Layout (REBAR_INFO *infoPtr, LPREC /* now adjust all rectangles by using the height found above */ xy = 0; - row = 1; + row = 0; for (i=0; i<infoPtr->uNumBands; i++) { lpBand = &infoPtr->bands[i]; if (HIDDENBAND(lpBand)) continue; @@ -1771,6 +1771,7 @@ REBAR_Layout (REBAR_INFO *infoPtr, LPREC if( !(lpBand->fDraw&DRAW_LAST_IN_ROW) ) continue; + /* FIXME: this next line is wrong, but fixing it to be inverted causes IE's sidebars to be the wrong size */ if (lpBand->fMask & RBBS_VARIABLEHEIGHT) continue; if (((INT)lpBand->cyMaxChild < 1) || ((INT)lpBand->cyIntegral < 1)) {