I have made the following changes intended for :
  CE:UX:MTF / meegotouch-compositor

Please review and accept or decline.
BOSS has already run some checks on this request.
See the "Messages from BOSS" section below.

https://build.pub.meego.com//request/show/6510

Thank You,
Marko Saukko

[This message was auto-generated]

---

Request # 6510:

Messages from BOSS:
     Applying the actions required to automate this process has failed, because 
the bossbot user was not authorized to do so. Please add bossbot as a 
maintainer in the target projet CE:UX:MTF
     Applying the actions required to automate this process has failed, because 
the bossbot user was not authorized to do so. Please add bossbot as a 
maintainer in the target projet CE:UX:MTF

State: revoked at 2012-08-31T11:50:02 by sage

Reviews:
       new for bossbot : Under automated review

Changes:
  submit: Project:MTF:UX / meegotouch-compositor -> CE:UX:MTF / 
meegotouch-compositor
  
changes files:
--------------
--- meegotouch-compositor.changes
+++ meegotouch-compositor.changes
@@ -0,0 +1,8 @@
+* Thu Aug 30 2012 Robin Burchell <[email protected]> - 1.1.31-1
+- Remove no_mce.patch. Breaks lipstick homescreen, wastes battery, not useful.
+- Add 0001-remove-lockscreen_painted-waiting-logic.patch, waiting for 
lockscreen
+  paints is no longer necessary.
+- Add  0001-sort-lockscreens-before-checking-desktops.patch, lockscreen should
+  always be sorted above everything. Required now the desktop can also be a
+  lockscreen.
+

old:
----
  no_mce.patch

new:
----
  0001-remove-lockscreen_painted-waiting-logic.patch
  0001-sort-lockscreens-before-checking-desktops.patch

spec files:
-----------
--- meegotouch-compositor.spec
+++ meegotouch-compositor.spec
@@ -1,11 +1,13 @@
 # 
 # Do NOT Edit the Auto-generated Part!
-# Generated by: spectacle version 0.23
+# Generated by: spectacle version 0.24.1
 # 
+
+Name:       meegotouch-compositor
+
 # >> macros
 # << macros
 
-Name:       meegotouch-compositor
 Summary:    MeeGo UI Compositing Window Manager
 Version:    1.1.31
 Release:    1
@@ -17,16 +19,17 @@
 Source2:    X-MEEGO-HS.desktop
 Source100:  meegotouch-compositor.yaml
 Patch0:     BMC_14207_double_xterm_thumbnail.patch
-Patch1:     no_mce.patch
-Patch2:     XSync-after-un-redirecting-windows-in-EGL-MTexturePi.patch
-Patch3:     Use-QTransform-rather-than-the-deprecated-matrix-cla.patch
-Patch4:     fix_windowctl_test_linkage.patch
-Patch5:     new_test_definitions.patch
-Patch6:     BMC_18554_xTerm_is_improperly_redrawn_after_maximization.patch
-Patch7:     BMC_22845_move-var-run-to-home.patch
-Patch8:     fix_animations_for_gestures_plugin.patch
-Patch9:     fix_tfp_on_lenovo.patch
-Patch10:     meegotouch-compositor-1.1.31-1-add-missing-libs-for-linking.patch
+Patch1:     XSync-after-un-redirecting-windows-in-EGL-MTexturePi.patch
+Patch2:     Use-QTransform-rather-than-the-deprecated-matrix-cla.patch
+Patch3:     fix_windowctl_test_linkage.patch
+Patch4:     new_test_definitions.patch
+Patch5:     BMC_18554_xTerm_is_improperly_redrawn_after_maximization.patch
+Patch6:     BMC_22845_move-var-run-to-home.patch
+Patch7:     fix_animations_for_gestures_plugin.patch
+Patch8:     fix_tfp_on_lenovo.patch
+Patch9:     meegotouch-compositor-1.1.31-1-add-missing-libs-for-linking.patch
+Patch10:     0001-sort-lockscreens-before-checking-desktops.patch
+Patch11:     0001-remove-lockscreen_painted-waiting-logic.patch
 Requires(post): /sbin/ldconfig
 Requires(postun): /sbin/ldconfig
 BuildRequires:  pkgconfig(QtDBus)
@@ -45,6 +48,7 @@
 BuildRequires:  pkgconfig(xrender)
 BuildRequires:  pkgconfig(xrandr)
 BuildRequires:  pkgconfig(xi)
+BuildRequires:  pkgconfig(mce)
 BuildRequires:  test-definition
 BuildRequires:  doxygen
 Provides:   duicompositor >= 0.3.9
@@ -52,12 +56,10 @@
 Obsoletes:   duicompositor < 0.3.9
 Obsoletes:   mcompositor < 0.4.6
 
-
 %description
 This package contains the Direct UI compositing window manager.
 
 
-
 %package devel
 Summary:    Development files for building mcompositor decorators
 Group:      Development/Libraries
@@ -84,26 +86,28 @@
 
 # BMC_14207_double_xterm_thumbnail.patch
 %patch0 -p1
-# no_mce.patch
-%patch1 -p1
 # XSync-after-un-redirecting-windows-in-EGL-MTexturePi.patch
-%patch2 -p1
+%patch1 -p1
 # Use-QTransform-rather-than-the-deprecated-matrix-cla.patch
-%patch3 -p1
+%patch2 -p1
 # fix_windowctl_test_linkage.patch
-%patch4 -p1
+%patch3 -p1
 # new_test_definitions.patch
-%patch5 -p1
+%patch4 -p1
 # BMC_18554_xTerm_is_improperly_redrawn_after_maximization.patch
-%patch6 -p1
+%patch5 -p1
 # BMC_22845_move-var-run-to-home.patch
-%patch7 -p1
+%patch6 -p1
 # fix_animations_for_gestures_plugin.patch
-%patch8 -p1
+%patch7 -p1
 # fix_tfp_on_lenovo.patch
-%patch9 -p1
+%patch8 -p1
 # meegotouch-compositor-1.1.31-1-add-missing-libs-for-linking.patch
+%patch9 -p1
+# 0001-sort-lockscreens-before-checking-desktops.patch
 %patch10 -p1
+# 0001-remove-lockscreen_painted-waiting-logic.patch
+%patch11 -p1
 # >> setup
 # << setup
 
@@ -117,6 +121,7 @@
 
 # >> build post
 # << build post
+
 %install
 rm -rf %{buildroot}
 # >> install pre
@@ -132,18 +137,10 @@
 # << install post
 
 
-
 %post -p /sbin/ldconfig
 
 %postun -p /sbin/ldconfig
 
-
-
-
-
-
-
-
 %files
 %defattr(-,root,root,-)
 # >> files
@@ -157,7 +154,6 @@
 %{_datadir}/xsessions/X-MEEGO-HS.desktop
 # << files
 
-
 %files devel
 %defattr(-,root,root,-)
 # >> files devel
@@ -205,4 +201,3 @@
 %{_datadir}/meegotouch/testscripts/mcompositor-functional-tests/test*.py
 %{_datadir}/meegotouch/testscripts/mcompositor-functional-tests/test*.sh
 # << files tests
-

other changes:
--------------

++++++ 0001-remove-lockscreen_painted-waiting-logic.patch (new)
--- 0001-remove-lockscreen_painted-waiting-logic.patch
+++ 0001-remove-lockscreen_painted-waiting-logic.patch
@@ -0,0 +1,231 @@
+From 271410c9f4c870c615010884de12221f4d09c449 Mon Sep 17 00:00:00 2001
+From: Robin Burchell <[email protected]>
+Date: Sat, 25 Aug 2012 11:34:31 +0200
+Subject: [PATCH] remove lockscreen_painted waiting/logic
+
+with the lockscreen now part of the homescreen, it should always be painted.
+---
+ src/mcompositemanager.cpp                  |   76 +++++++--------------------
+ src/mcompositemanager.h                    |    1 -
+ src/mcompositemanager_p.h                  |    2 -
+ src/mcompositewindow.cpp                   |    1 -
+ tests/unit/ut_lockscreen/ut_lockscreen.cpp |    2 -
+ 5 files changed, 20 insertions(+), 62 deletions(-)
+
+diff --git a/src/mcompositemanager.cpp b/src/mcompositemanager.cpp
+index 1e58520..92fcb57 100644
+--- a/src/mcompositemanager.cpp
++++ b/src/mcompositemanager.cpp
+@@ -429,8 +429,7 @@ 
MCompositeManagerPrivate::MCompositeManagerPrivate(MCompositeManager *p)
+       defaultGraphicsAlpha(MAXIMUM_GLOBAL_ALPHA),
+       defaultVideoAlpha(MAXIMUM_GLOBAL_ALPHA),
+       globalAlphaOverridden(false),
+-      disable_redrawing_due_to_damage(false),
+-      lockscreen_painted(false)
++      disable_redrawing_due_to_damage(false)
+ {
+     xcb_conn = XGetXCBConnection(QX11Info::display());
+     MWindowPropertyCache::set_xcb_connection(xcb_conn);
+@@ -447,11 +446,6 @@ 
MCompositeManagerPrivate::MCompositeManagerPrivate(MCompositeManager *p)
+             this, SLOT(callOngoing(bool)));
+     stacking_timer.setSingleShot(true);
+     connect(&stacking_timer, SIGNAL(timeout()), this, 
SLOT(stackingTimeout()));
+-    lockscreen_map_timer.setSingleShot(true);
+-    lockscreen_map_timer.setInterval(qobject_cast<MCompositeManager*>(p)->
+-                                     configInt("lockscreen-map-timeout-ms"));
+-    connect(&lockscreen_map_timer, SIGNAL(timeout()), p,
+-            SLOT(lockScreenPainted()));
+ }
+ 
+ MCompositeManagerPrivate::~MCompositeManagerPrivate()
+@@ -621,6 +615,7 @@ void 
MCompositeManagerPrivate::damageEvent(XDamageNotifyEvent *e)
+     MCompositeWindow *item = COMPOSITE_WINDOW(e->drawable);
+     if (item) {
+         item->propertyCache()->damageReceived();
++
+         /* partial updates disabled for now, does not always work, unless we
+          * check for EGL_BUFFER_PRESERVED or GLX_SWAP_COPY_OML first, see
+          * http://www.khronos.org/registry/egl/specs/EGLTechNote0001.html and
+@@ -1085,8 +1080,6 @@ void MCompositeManagerPrivate::unmapEvent(XUnmapEvent *e)
+             XRemoveFromSaveSet(QX11Info::display(), e->window);
+         if (wpc->isDecorator())
+             MDecoratorFrame::instance()->setDecoratorItem(0);
+-        if (wpc->isLockScreen())
+-            lockscreen_painted = false;
+     }
+ 
+     // do not keep unmapped windows in windows_as_mapped list
+@@ -2145,14 +2138,6 @@ void MCompositeManagerPrivate::mapEvent(XMapEvent *e, 
bool startup)
+ 
+     pc->setBeingMapped(false);
+     pc->setIsMapped(true);
+-    if (pc->isLockScreen()) {
+-        lockscreen_map_timer.stop();
+-        if (e->send_event == False)
+-            lockscreen_painted = false;
+-        else
+-            // we just started -> don't expect any damage
+-            lockscreen_painted = true;
+-    }
+ 
+ #ifdef ENABLE_BROKEN_SIMPLEWINDOWFRAME
+     FrameData fd = framed_windows.value(win);
+@@ -2737,14 +2722,6 @@ void MCompositeManagerPrivate::activateWindow(Window w, 
Time timestamp,
+         dirtyStacking(false);
+ }
+ 
+-void MCompositeManager::lockScreenPainted()
+-{
+-    d->lockscreen_painted = true;
+-    if (!d->device_state->displayOff())
+-        d->displayOff(false);
+-    d->watch->keep_black = false;
+-}
+-
+ MWindowPropertyCache *MCompositeManagerPrivate::findLockScreen() const
+ {
+     for (QHash<Window, MWindowPropertyCache*>::const_iterator
+@@ -2759,36 +2736,32 @@ void MCompositeManagerPrivate::displayOff(bool 
display_off)
+     if (display_off) {
+         if (splash)
+             splashTimeout();
+-        lockscreen_map_timer.stop();
+         if (!haveMappedWindow())
+             enableCompositing();
+         MWindowPropertyCache *pc;
+         MCompositeWindow *cw;
+-        if (!(pc = findLockScreen()) || !(cw = COMPOSITE_WINDOW(pc->winId()))
+-            || !pc->isMapped() || !cw->paintedAfterMapping())
+-            lockscreen_painted = false;
++
+         // check whether there is a low-power mode window visible -- when the
+         // lockscreen is visible we trust it to become the low-power mode 
window
+         // even if the flag is not yet set
+-        bool lpm_window = lockscreen_painted;
+-        if (!lpm_window) {
+-            int covering_i = indexOfLastVisibleWindow();
+-            for (int i = stacking_list.size() - 1; i >= covering_i; --i) {
+-                Window w = stacking_list[i];
+-                MWindowPropertyCache *pc = prop_caches.value(w, 0);
+-                if (pc && pc->isMapped() && pc->lowPowerMode() > 0) {
+-                    lpm_window = true;
+-                    break;
+-                }
+-            }
+-            if (!lpm_window) {
+-                watch->keep_black = true;
+-                if (!compositing)
+-                    enableCompositing();
+-                else
+-                    glwidget->update();
++        int covering_i = indexOfLastVisibleWindow();
++        bool lpm_window = false;
++        for (int i = stacking_list.size() - 1; i >= covering_i; --i) {
++            Window w = stacking_list[i];
++            MWindowPropertyCache *pc = prop_caches.value(w, 0);
++            if (pc && pc->isMapped() && pc->lowPowerMode() > 0) {
++                lpm_window = true;
++                break;
+             }
+         }
++        if (!lpm_window) {
++            watch->keep_black = true;
++            if (!compositing)
++                enableCompositing();
++            else
++                glwidget->update();
++        }
++
+         /* stop pinging to save some battery */
+         for (QHash<Window, MCompositeWindow *>::iterator it = windows.begin();
+              it != windows.end(); ++it) {
+@@ -2805,15 +2778,6 @@ void MCompositeManagerPrivate::displayOff(bool 
display_off)
+                  i->propertyCache()->damageTracking(false);
+         }
+     } else {
+-        MWindowPropertyCache *pc;
+-        if (device_state->touchScreenLock() == "locked" &&
+-            !lockscreen_painted && (pc = findLockScreen())) {
+-            // lockscreen not painted yet: wait for painting or timeout
+-            if (!pc->isMapped())
+-                // give it little time to map but not for ever
+-                lockscreen_map_timer.start();
+-            return;
+-        }
+         watch->keep_black = false;
+         glwidget->update();
+         if (!possiblyUnredirectTopmostWindow() && !compositing)
+@@ -4600,7 +4564,7 @@ void MCompositeManager::ensureSettingsFile()
+     config("damage-timeout-ms",                 500);
+     config("expect-resize-timeout-ms",          800);
+     config("splash-timeout-ms",               30000);
+-    config("lockscreen-map-timeout-ms",        1000);
++    config("lockscreen-map-timeout-ms",        1000); // TODO: unused now?
+     config("default-statusbar-height",           36);
+     config("default-desktop-angle",             270);
+     config("close-timeout-ms",                 5000);
+diff --git a/src/mcompositemanager.h b/src/mcompositemanager.h
+index 91a96e2..b7e7136 100644
+--- a/src/mcompositemanager.h
++++ b/src/mcompositemanager.h
+@@ -296,7 +296,6 @@ public slots:
+     void windowBound(MCompositeWindow* window);
+ 
+ private slots:
+-    void lockScreenPainted();
+     void handleSigHup();
+ 
+ private:
+diff --git a/src/mcompositemanager_p.h b/src/mcompositemanager_p.h
+index b14057f..65aba29 100644
+--- a/src/mcompositemanager_p.h
++++ b/src/mcompositemanager_p.h
+@@ -210,7 +210,6 @@ public:
+     void pingTopmost();
+     MSplashScreen *splash;
+     QPointer<MCompositeWindow> waiting_damage;
+-    QTimer lockscreen_map_timer;
+     QSocketNotifier *sighupNotifier;
+ 
+     struct DismissedSplash {
+@@ -251,7 +250,6 @@ public:
+     int defaultVideoAlpha;
+     bool globalAlphaOverridden;
+     bool disable_redrawing_due_to_damage;
+-    bool lockscreen_painted;
+ 
+ signals:
+     void currentAppChanged(Window w);
+diff --git a/src/mcompositewindow.cpp b/src/mcompositewindow.cpp
(32 more lines skipped)

++++++ 0001-sort-lockscreens-before-checking-desktops.patch (new)
--- 0001-sort-lockscreens-before-checking-desktops.patch
+++ 0001-sort-lockscreens-before-checking-desktops.patch
@@ -0,0 +1,35 @@
+From 67c378b2feee1d50b54311af3e59dd6521fbecf5 Mon Sep 17 00:00:00 2001
+From: Robin Burchell <[email protected]>
+Date: Thu, 23 Aug 2012 20:03:05 +0200
+Subject: [PATCH] sort lockscreens before checking desktops
+
+allows lipstick to also act as a lockscreen if needed
+---
+ src/mcompositemanager.cpp |   11 +++++++++++
+ 1 files changed, 11 insertions(+), 0 deletions(-)
+
+diff --git a/src/mcompositemanager.cpp b/src/mcompositemanager.cpp
+index 93dffa0..1e58520 100644
+--- a/src/mcompositemanager.cpp
++++ b/src/mcompositemanager.cpp
+@@ -3338,6 +3338,17 @@ static bool compareWindows(Window w_a, Window w_b)
+         goto use_old_order;
+     }
+ 
++    if (pc_a->isLockScreen()) {
++        // if a is a lockscreen, and b isn't, then don't sort a below b
++        if (!pc_b->isLockScreen())
++            SORTING(false, "A LOCKSCREEN");
++        // otherwise fallthrough, they're both lockscreens, more comparison
++        // needed
++    } else if (pc_b->isLockScreen()) {
++        // b is a lockscreen, and a isn't, then sort a below b
++        SORTING(true, "B LOCKSCREEN");
++    }
++
+     // Both @pc_a and @pc_b are in NormalState.
+     // Sort the desktop below all NormalState windows.
+     // (Quiz: why do we check @pc_b before @pc_a?
+-- 
+1.7.7.5 (Apple Git-26)
+

++++++ meegotouch-compositor.yaml
--- meegotouch-compositor.yaml
+++ meegotouch-compositor.yaml
@@ -12,7 +12,6 @@
     - X-MEEGO-HS.desktop;%{_datadir}/xsessions/
 Patches:
     - BMC_14207_double_xterm_thumbnail.patch
-    - no_mce.patch
     - XSync-after-un-redirecting-windows-in-EGL-MTexturePi.patch
     - Use-QTransform-rather-than-the-deprecated-matrix-cla.patch
     - fix_windowctl_test_linkage.patch
@@ -22,6 +21,8 @@
     - fix_animations_for_gestures_plugin.patch
     - fix_tfp_on_lenovo.patch
     - meegotouch-compositor-1.1.31-1-add-missing-libs-for-linking.patch
+    - 0001-sort-lockscreens-before-checking-desktops.patch
+    - 0001-remove-lockscreen_painted-waiting-logic.patch
 Description: |
     This package contains the Direct UI compositing window manager.
 PkgConfigBR:
@@ -41,7 +42,7 @@
     - xrender
     - xrandr
     - xi
-#    - mce
+    - mce
 PkgBR:
     - test-definition
     - doxygen

++++++ deleted files:
--- no_mce.patch



Reply via email to