_visible = true;
if (_parent) _parent->calcDefaultSizes();
else {
- resize(_min_size);
+ resize(_area.size());
}
XMapWindow(**display, _window);
update();
}
}
if (_direction == Horizontal) {
- _min_size = otk::Size(min_sum, min_biggest + (_bevel + _borderwidth) * 2);
+ _min_size = otk::Size(min_sum + (_bevel + _borderwidth) * 2,
+ min_biggest + (_bevel + _borderwidth) * 2);
_max_size = otk::Size((fullmax ? INT_MAX :
max_sum + (_bevel + _borderwidth) * 2),
max_biggest);
} else {
- _min_size = otk::Size(min_biggest, min_sum + (_bevel + _borderwidth) * 2);
+ _min_size = otk::Size(min_biggest + (_bevel + _borderwidth) * 2,
+ min_sum + (_bevel + _borderwidth) * 2);
_max_size = otk::Size(max_biggest, (fullmax ? INT_MAX : max_sum +
(_bevel + _borderwidth) * 2));
}
// delete the old surface *after* its pixmap isn't in use anymore
if (_surface) delete _surface;
+ s->freePixelData(); // done rendering with this surface
_surface = s;
_dirty = false;