summaryrefslogtreecommitdiffstats
path: root/src/gui/styles
diff options
context:
space:
mode:
authorSami Merila <sami.merila@nokia.com>2011-01-26 07:05:19 (GMT)
committerJason McDonald <jason.mcdonald@nokia.com>2011-01-28 09:46:00 (GMT)
commit55f760f36b945af4e3f2009ecee3d234d421d2ce (patch)
tree99d6b80b5994f85fe76752558c5ade0407f8445e /src/gui/styles
parent374aa39abf0fc14eadb59346c5fb9d6dd763e592 (diff)
downloadQt-55f760f36b945af4e3f2009ecee3d234d421d2ce.zip
Qt-55f760f36b945af4e3f2009ecee3d234d421d2ce.tar.gz
Qt-55f760f36b945af4e3f2009ecee3d234d421d2ce.tar.bz2
Application background is incorrect if app locked to landscape.
If application orientation has been locked to landscape and application is started out while device orientation is portrait, QS60Style draws the QPalette::background like device would be in landscape. Style is incorrectly following device orientation, when it should follow application orientation. As a fix, style follows now application orientation. As a bonus, unnecessary fullscreen QPixmap creation is avoided when rotating the device. Task-number: QTBUG-16816 Reviewed-by: Jani Hautakangas (cherry picked from commit 54313b3ba81c276cf06c40c2420b1ff1f30e64c3)
Diffstat (limited to 'src/gui/styles')
-rw-r--r--src/gui/styles/qs60style_s60.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/gui/styles/qs60style_s60.cpp b/src/gui/styles/qs60style_s60.cpp
index 04c40aa..605872e 100644
--- a/src/gui/styles/qs60style_s60.cpp
+++ b/src/gui/styles/qs60style_s60.cpp
@@ -1378,12 +1378,13 @@ QPixmap QS60StylePrivate::frame(SkinFrameElements frame, const QSize &size, Skin
QPixmap QS60StylePrivate::backgroundTexture()
{
bool createNewBackground = false;
+ TRect applicationRect = (static_cast<CEikAppUi*>(S60->appUi())->ApplicationRect());
if (!m_background) {
createNewBackground = true;
} else {
//if background brush does not match screensize, re-create it
- if (m_background->width() != S60->screenWidthInPixels ||
- m_background->height() != S60->screenHeightInPixels) {
+ if (m_background->width() != applicationRect.Width() ||
+ m_background->height() != applicationRect.Height()) {
delete m_background;
createNewBackground = true;
}
@@ -1391,7 +1392,7 @@ QPixmap QS60StylePrivate::backgroundTexture()
if (createNewBackground) {
QPixmap background = part(QS60StyleEnums::SP_QsnBgScreen,
- QSize(S60->screenWidthInPixels, S60->screenHeightInPixels), 0, SkinElementFlags());
+ QSize(applicationRect.Width(), applicationRect.Height()), 0, SkinElementFlags());
m_background = new QPixmap(background);
}
return *m_background;
@@ -1411,7 +1412,6 @@ QS60Style::QS60Style()
void QS60StylePrivate::handleDynamicLayoutVariantSwitch()
{
clearCaches(QS60StylePrivate::CC_LayoutChange);
- setBackgroundTexture(qApp);
setActiveLayout();
refreshUI();
foreach (QWidget *widget, QApplication::allWidgets())