Added updateGeometry() for the titlebar when initialixing the decoration.
Seems to fix the initial titlebar size calculation. svn path=/trunk/kdebase/kwin/; revision=325507
This commit is contained in:
parent
89eff51153
commit
2be6b89379
1 changed files with 6 additions and 4 deletions
|
@ -381,7 +381,7 @@ void B2Client::init()
|
||||||
g->addRowSpacing(0, buttonSize + 4);
|
g->addRowSpacing(0, buttonSize + 4);
|
||||||
|
|
||||||
titlebar = new B2Titlebar(this);
|
titlebar = new B2Titlebar(this);
|
||||||
titlebar->setMinimumWidth(16);
|
titlebar->setMinimumWidth(buttonSize + 4);
|
||||||
titlebar->setFixedHeight(buttonSize + 4);
|
titlebar->setFixedHeight(buttonSize + 4);
|
||||||
|
|
||||||
QBoxLayout *titleLayout = new QBoxLayout(titlebar,
|
QBoxLayout *titleLayout = new QBoxLayout(titlebar,
|
||||||
|
@ -403,10 +403,12 @@ void B2Client::init()
|
||||||
QColor c = options()->colorGroup(KDecoration::ColorTitleBar, isActive()).
|
QColor c = options()->colorGroup(KDecoration::ColorTitleBar, isActive()).
|
||||||
color(QColorGroup::Button);
|
color(QColorGroup::Button);
|
||||||
|
|
||||||
for (int i = 0; i < BtnCount; i++)
|
for (int i = 0; i < BtnCount; i++) {
|
||||||
if (button[i])
|
if (button[i])
|
||||||
button[i]->setBg(c);
|
button[i]->setBg(c);
|
||||||
|
}
|
||||||
|
|
||||||
|
titlebar->updateGeometry();
|
||||||
positionButtons();
|
positionButtons();
|
||||||
titlebar->recalcBuffer();
|
titlebar->recalcBuffer();
|
||||||
titlebar->installEventFilter(this);
|
titlebar->installEventFilter(this);
|
||||||
|
@ -702,6 +704,7 @@ void B2Client::doShape()
|
||||||
void B2Client::showEvent(QShowEvent *)
|
void B2Client::showEvent(QShowEvent *)
|
||||||
{
|
{
|
||||||
calcHiddenButtons();
|
calcHiddenButtons();
|
||||||
|
positionButtons();
|
||||||
doShape();
|
doShape();
|
||||||
widget()->repaint();
|
widget()->repaint();
|
||||||
titlebar->repaint(false);
|
titlebar->repaint(false);
|
||||||
|
@ -1253,7 +1256,7 @@ B2Titlebar::B2Titlebar(B2Client *parent)
|
||||||
set_x11mask(false), isfullyobscured(false), shift_move(false)
|
set_x11mask(false), isfullyobscured(false), shift_move(false)
|
||||||
{
|
{
|
||||||
setBackgroundMode(NoBackground);
|
setBackgroundMode(NoBackground);
|
||||||
captionSpacer = new QSpacerItem(10, buttonSize + 4,
|
captionSpacer = new QSpacerItem(buttonSize, buttonSize + 4,
|
||||||
QSizePolicy::Expanding, QSizePolicy::Fixed);
|
QSizePolicy::Expanding, QSizePolicy::Fixed);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1315,7 +1318,6 @@ void B2Titlebar::drawTitlebar(QPainter &p, bool state)
|
||||||
|
|
||||||
void B2Titlebar::recalcBuffer()
|
void B2Titlebar::recalcBuffer()
|
||||||
{
|
{
|
||||||
QFontMetrics fm(options()->font(true));
|
|
||||||
titleBuffer.resize(width(), height());
|
titleBuffer.resize(width(), height());
|
||||||
|
|
||||||
QPainter p(&titleBuffer);
|
QPainter p(&titleBuffer);
|
||||||
|
|
Loading…
Reference in a new issue