[kde-artists] Re: Oxygen Tab Widgets.
Hugo Pereira Da Costa <[email protected]>
| Newsgroups | gmane.comp.kde.artists |
|---|---|
| Message-ID | <[email protected]> |
On Monday 18 April 2011 12:04:21 Hugo Pereira Da Costa wrote: > On Monday 18 April 2011 11:49:52 Hugo Pereira Da Costa wrote: > > Hello Alexis, > > > > So I did some digging, and well, I'm not sure I have the skills to fix > > myself either. > > > > This "overlap" thing, corresponds to what QStyle::pixelMetrics( > > PM_TabBarBaseOverlap ) should return (so Qt knows about it). > > > > it is used in these two methods > > > > Oxygen::Style::tabWidgetTabPaneRect > > Oxygen::Style::tabWidgetTabContentsRect > > > > which are what's called (by Qt) via > > > > QStyle::subElementRect( SE_TabWidgetTabContents ) > > QStyle::subElementRect( SE_TabWidgetTabPane ) > > > > Looking at QCommonStyle implementation for the two above, well, they > > don't differ 'much' in terms of metrics handling. (in fact I remember > > copying them, and "tuning" them with +/-1 pixels here and there to fix > > some bugs when dealing with corner cases of QTabWidget/KTabWidget > > handling). > > > > QTabWidget is (by far) the most painful widget to deal with in styling > > land and I've already spend hours (tenth's of hours) on it. (notably, > > there is no existing Qt Style that does not have one bug or another with > > it, in one possible or the other). > > > > I'm ok to revisit it in view of the problem you raise, but this will take > > time (and my hand are pretty full at the moment). > > > > Feel free to file an actual bug report to oxygen (style) with as much > > detail as you can so that it does not get lost in translation. > > > > Cheers, > > > > Hugo > > PS: I don't have (yet) a Debug build of Qt. > Could you check if the bug persist if you comment the two lines: > > case SE_TabWidgetTabContents: return tabWidgetTabContentsRect( > option, widget ); > case SE_TabWidgetTabPane: return tabWidgetTabPaneRect( option, > widget ); > > in oxygenstyle.cpp ? > this should fallback to QCommonStyle implementation, will raise more bugs > in some applications, but might give me more clue about what's going > wrong. > > (note: maybe you can also try just commenting the first) argh. Sorry. I meant: just the second, namely case SE_TabWidgetTabPane: return tabWidgetTabPaneRect( option, widget ); They should be around line 880 and 881 ______________________________________________________________________________ [email protected] | https://mail.kde.org/mailman/listinfo/kde-artists