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

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/4199

Thank You,
Marko Saukko

[This message was auto-generated]

---

Request # 4199:

Messages from BOSS:

State: review at 2012-01-26T14:17:53 by bossbot

Reviews:
       accepted by bossbot : Prechecks succeeded.
       new for CE-maintainers : Please replace this text with a review and 
approve/reject the review (not the SR). BOSS will take care of the rest

Changes:
  submit: Project:MTF:UX / meegotouch-systemui -> CE:UX:MTF / 
meegotouch-systemui
  
changes files:
--------------
--- meegotouch-systemui.changes
+++ meegotouch-systemui.changes
@@ -0,0 +1,4 @@
+* Thu Jan 26 2012 Marko Saukko <[email protected]> - 1.2.24-2
+- Updated to 1.2.24-2.
+- Improved mutex handling in BMC_9319_pulseaudio-client.patch
+

old:
----
  meegotouch-meegotouch-systemui-1.2.20-1.tar.gz

new:
----
  meegotouch-meegotouch-systemui-1.2.24-2.tar.gz

spec files:
-----------
--- meegotouch-systemui.spec
+++ meegotouch-systemui.spec
@@ -7,12 +7,12 @@
 
 Name:       meegotouch-systemui
 Summary:    System UI daemon
-Version:    1.2.20
+Version:    1.2.24
 Release:    1
 Group:      System/Desktop
 License:    LGPLv2.1
 URL:        http://meego.gitorious.org/meegotouch/meegotouch-systemui
-Source0:    meegotouch-%{name}-%{version}-1.tar.gz
+Source0:    meegotouch-%{name}-%{version}-2.tar.gz
 Source1:    boss.conf
 Source2:    meegotouch-systemui.desktop
 Source3:    lock.desktop

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

++++++ BMC_9319_pulseaudio-client.patch
--- BMC_9319_pulseaudio-client.patch
+++ BMC_9319_pulseaudio-client.patch
@@ -1,98 +1,82 @@
-From bdef87de5e17cc5c31dd6a84af8519f79cfb4b8f Mon Sep 17 00:00:00 2001
-From: Miroslav Safr <[email protected]>
-Date: Thu, 11 Aug 2011 16:59:30 +0300
-Subject: [PATCH] Pusle audio client
+From 21959c00d3c8a6773fc67117fbf50b311c71041e Mon Sep 17 00:00:00 2001
+From: Marko Saukko <[email protected]>
+Date: Thu, 26 Jan 2012 14:22:21 +0200
+Subject: [PATCH] Pulseaudio client for volume control.
 
----
- src/extensions/volume/keysniffer.cpp          |   80 +++++++
- src/extensions/volume/keysniffer.h            |   36 +++
- src/extensions/volume/pulseaudio_thread.cpp   |  131 +++++++++++
- src/extensions/volume/pulseaudio_thread.h     |   44 ++++
- src/extensions/volume/volume.pro              |    8 +-
- src/extensions/volume/volumebar.cpp           |    4 +-
- src/extensions/volume/volumebarlogic.cpp      |  309 ++++---------------------
- src/extensions/volume/volumebarlogic.h        |   70 +++---
- src/extensions/volume/volumebarwindow.cpp     |    4 +-
- tests/stubs/volumebarlogic_stub.h             |   76 ++-----
- tests/ut_volumebarlogic/ut_volumebarlogic.cpp |  212 +----------------
- tests/ut_volumebarlogic/ut_volumebarlogic.h   |   10 -
- tests/ut_volumebarlogic/ut_volumebarlogic.pro |    6 +-
- 13 files changed, 402 insertions(+), 588 deletions(-)
- create mode 100644 src/extensions/volume/keysniffer.cpp
- create mode 100644 src/extensions/volume/keysniffer.h
- create mode 100644 src/extensions/volume/pulseaudio_thread.cpp
- create mode 100644 src/extensions/volume/pulseaudio_thread.h
+Original author Jouni Peltonen <[email protected]>
+Rebased by Miroslav Safr <[email protected]>
+Mutex handling improved by Marko Saukko <[email protected]>
 
 diff --git a/src/extensions/volume/keysniffer.cpp 
b/src/extensions/volume/keysniffer.cpp
 new file mode 100644
-index 0000000..c25b662
+index 0000000..fbf8655
 --- /dev/null
 +++ b/src/extensions/volume/keysniffer.cpp
-@@ -0,0 +1,80 @@
+@@ -0,0 +1,79 @@
 +#include "keysniffer.h"
++#include <unistd.h>
 +
 +keySniffer::keySniffer() 
 +: mThreadValid(TRUE),
-+  mPollTimer(new QTimer()),
-+  mKeyTimer(new QTimer())
++  mPollTimer(new QTimer())
 +{
-+  mKeyTimer->setSingleShot(TRUE);
 +  mD = XOpenDisplay(":0");
 +  if (mD == NULL)
-+   {
-+     //fprintf(stderr, "Cannot open display...\n");
-+     exit(10);
-+   }
-+  //mMutex.lock();
-+  sniff_all_windows(DefaultRootWindow(mD), KeyPressMask);
-+  //mMutex.unlock();
++  {
++    //fprintf(stderr, "Cannot open display...\n");
++    exit(10);
++  }
 +  connect(mPollTimer, SIGNAL(timeout()), this, SLOT(update()));
 +  mPollTimer->start(POLLINGTIME);  
 +}
 +
 +void keySniffer::run()
 +{
-+  XEvent  xev;
-+  while(mThreadValid) {   
-+      XNextEvent(mD, &xev);
-+      if(mMutex.tryLock(500)){
-+        if (&xev)
-+        {
-+          if(xev.type == KeyPress && !mKeyTimer->isActive()){
-+            mKeyTimer->start(500);
-+            // Scancode to keycode thus -8
-+            if (xev.xkey.keycode >= 8){
-+              emit keyPress(xev.xkey.keycode-8, xev.type);
-+            }
-+          }
-+        }
-+      mMutex.unlock();
-+     }
++  XEvent xev;
++  bool event_found = false;
++  while(mThreadValid) 
++  {
++    mMutex.lock();
++    event_found = XCheckMaskEvent(mD, KeyPressMask, &xev);
++    mMutex.unlock();
++    
++    if (!event_found)
++    {
++        // Ensure that we are not too busy :)
++        usleep(100000);
++        continue;
++    }
++    
++    if(xev.type == KeyPress){
++      // Scancode to keycode thus -8
++      if (xev.xkey.keycode >= 8){
++        emit keyPress(xev.xkey.keycode-8, xev.type);
++      }
++    }
 +  }
 +}
 +
-+void keySniffer::sniff_all_windows(Window root, ulong type)
++void keySniffer::sniff_all_windows(Window root, long type)
 +{
-+  Window parent, *children, *child2;
++  Window parent, *children;
 +  uint nchildren;
-+  int stat, i,j,k;
 +
-+  stat = XQueryTree(mD, root, &root, &parent, &children, &nchildren);
-+  if (stat == FALSE)
-+   {
-+     return;
-+   }
++  // http://linux.die.net/man/3/xquerytreek
++  if (XQueryTree(mD, root, &root, &parent, &children, &nchildren) == 0)
++    return;
 +
++  // Window has no children to check.
 +  if (nchildren == 0)
 +    return;
 +
++  // Check the window itself
 +  XSelectInput(mD, root, type);
 +
-+  for(i=0; i < nchildren; i++)
-+   {
++  for(int i=0; i < nchildren; i++)
++  {
 +     XSelectInput(mD, children[i], type);
 +     sniff_all_windows(children[i], type);
-+   }
++  }
 +
 +  XFree((char *)children);
 +}
@@ -104,17 +88,16 @@
 +
 +void keySniffer::update()
 +{
-+  if(mMutex.tryLock(500)){
-+    sniff_all_windows(DefaultRootWindow(mD), KeyPressMask);
-+    mMutex.unlock();
-+  }  
++  mMutex.lock();
++  sniff_all_windows(DefaultRootWindow(mD), KeyPressMask);
++  mMutex.unlock();
 +}
 diff --git a/src/extensions/volume/keysniffer.h 
b/src/extensions/volume/keysniffer.h
 new file mode 100644
-index 0000000..9396daf
+index 0000000..1ccff7b
 --- /dev/null
 +++ b/src/extensions/volume/keysniffer.h
-@@ -0,0 +1,36 @@
+@@ -0,0 +1,37 @@
 +#ifndef KEYSNIFFER_H
 +#define KEYSNIFFER_H
 +
@@ -126,7 +109,8 @@
 +#include <X11/X.h>
 +#include <X11/Xlib.h>
 +
-+#define POLLINGTIME 3000
++// Polling time for keysniffer in ms.
++#define POLLINGTIME 2000
 +
 +class keySniffer : public QThread
 +{
@@ -141,12 +125,12 @@
 +private Q_SLOTS:
 +    void update();
 +private:
-+    void sniff_all_windows(Window root, ulong type);
++    void sniff_all_windows(Window root, long type);
++    
 +    Display *mD;
 +    bool    mThreadValid;
 +    QMutex  mMutex;
-+    QPointer<QTimer>              mPollTimer;
-+    QPointer<QTimer>              mKeyTimer;
++    QPointer<QTimer> mPollTimer;
 +};
 +
 +#endif // KEYSNIFFER_H
@@ -1402,5 +1386,5 @@
      $$STUBSDIR/stubbase.cpp
  
 -- 
-1.7.4.1
+1.7.6.5
(1 more lines skipped)

++++++ meegotouch-meegotouch-systemui-1.2.20-1.tar.gz -> 
meegotouch-meegotouch-systemui-1.2.24-2.tar.gz
--- debian/changelog
+++ debian/changelog
@@ -1,3 +1,28 @@
+system-ui (1.2.24-2) unstable; urgency=low
+
+  * Fixes: NB#295751 - Device shows OS update message after SSU from PR1 40-4 
to PR2 50-5
+
+ -- Vesa Halttunen <[email protected]>  Wed, 18 Jan 2012 11:38:05 +0200
+
+system-ui (1.2.23-1) unstable; urgency=low
+
+  * Fixes: NB#289939 - [TASK] Different icons shown on status area for 
"ad-hoc" wlan
+
+ -- Vesa Halttunen <[email protected]>  Thu, 05 Jan 2012 15:07:30 +0200
+
+system-ui (1.2.22-1) unstable; urgency=low
+
+  * Fixes: NB#290848 - sysuid needs to share X drawables in a secure manner
+
+ -- Vesa Halttunen <[email protected]>  Thu, 05 Jan 2012 11:24:17 +0200
+
+system-ui (1.2.21-1) unstable; urgency=low
+
+  * Fixes: NB#293261 - private mode applet's help button appears delayed
+  * Fixes: NB#290848 - sysuid needs to share X drawables in a secure manner
+
+ -- Vesa Halttunen <[email protected]>  Thu, 22 Dec 2011 12:39:08 +0200
+
 system-ui (1.2.20-1) unstable; urgency=low
 
   * Fixes: NB#292581 - Audible alert should not be played when exiting Power 
Save mode
--- debian/control
+++ debian/control
@@ -2,7 +2,7 @@
 Section: devel
 Priority: optional
 Maintainer: Vesa Halttunen <[email protected]>
-Build-Depends: debhelper (>= 5), doxygen (>=1.5.9), libmeegotouch-dev (>= 
0.20.37),
+Build-Depends: debhelper (>= 5), doxygen (>=1.5.9), libmeegotouch-dev (>= 
0.24.7),
                libqmsystem2-dev (>= 1.2.0), libresourceqt-dev, 
libcontextsubscriber-dev,
                libngf-dev, libxcomposite-dev, libxfixes-dev, libxext-dev,
                libdbus-1-dev, libdbus-glib-1-dev, libglib2.0-dev,
@@ -16,7 +16,7 @@
 Replaces: duistatusindicatormenu, cellular-ui
 Architecture: any
 Recommends: pulseaudio-module-meego-mainvolume
-Depends: ${shlibs:Depends}, ${misc:Depends}, 
systemui-l10n-engineering-english, duicontrolpanel-privatemodeapplet, ui-fonts 
(>=5.6),
+Depends: ${shlibs:Depends}, ${misc:Depends}, libmeegotouchcore0 (>= 0.24.7), 
systemui-l10n-engineering-english, duicontrolpanel-privatemodeapplet, ui-fonts 
(>=5.6),
          usb-moded [armel]
 Description: Various system user interfaces.
   System user interface package contains various user interfaces, e.g:
--- debian/system-ui.aegis
+++ debian/system-ui.aegis
@@ -3,6 +3,8 @@
     <credential name="UID::user" />
     <credential name="GID::users" />
     <credential name="usb-moded::USBControl" />
+    <credential match="xserver-security-policy::capture-drawables" />
+    <credential match="xserver-security-policy::record-input" />
     <for path="/usr/bin/sysuid" />
   </request>
 </aegis>
--- debian/system-ui.postinst
+++ debian/system-ui.postinst
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+if [ -n "`initctl status xsession/sysuid | grep running`" ]
+then
+  initctl restart xsession/sysuid
+fi
--- src/privatemodeapplet/privatemode.desktop
+++ src/privatemodeapplet/privatemode.desktop
@@ -17,4 +17,4 @@
 Category=qtn_noti_settings_title
 Order=0
 WidgetType=Toggle
-
+HelpId=CTX_IDUG_MEEGO_PRIVACY.html
--- src/systemui/statusarea/statusarearenderer.cpp
+++ src/systemui/statusarea/statusarearenderer.cpp
@@ -69,9 +69,12 @@
     setSceneRender(state);
 #endif
 
-    statusBarVisibleAtom = X11Wrapper::XInternAtom(QX11Info::display(), 
"_MEEGOTOUCH_STATUSBAR_VISIBLE", False);
-    windowManagerWindowAtom = X11Wrapper::XInternAtom(QX11Info::display(), 
"_NET_SUPPORTING_WM_CHECK", False);
-    netSupportedAtom = X11Wrapper::XInternAtom(QX11Info::display(), 
"_NET_SUPPORTED", False);
+    // Get the required X atoms
+    Display *display = QX11Info::display();
+    statusBarVisibleAtom = X11Wrapper::XInternAtom(display, 
"_MEEGOTOUCH_STATUSBAR_VISIBLE", False);
+    windowManagerWindowAtom = X11Wrapper::XInternAtom(display, 
"_NET_SUPPORTING_WM_CHECK", False);
+    netSupportedAtom = X11Wrapper::XInternAtom(display, "_NET_SUPPORTED", 
False);
+    shareDrawableAtom = X11Wrapper::XInternAtom(display, 
"XSERVER_SECURITY_POLICY_SHARE_DRAWABLE", True);
 
     setSizeFromStyle();
     if(!createSharedPixmapHandle() || !createBackPixmap()) {
@@ -111,10 +114,22 @@
 
 bool StatusAreaRenderer::createSharedPixmapHandle()
 {
-    Pixmap pixmap = X11Wrapper::XCreatePixmap(QX11Info::display(), 
QX11Info::appRootWindow(), statusAreaWidth, statusAreaHeight, 
QX11Info::appDepth());
+    Display *display = QX11Info::display();
+    Pixmap pixmap = X11Wrapper::XCreatePixmap(display, 
QX11Info::appRootWindow(), statusAreaWidth, statusAreaHeight, 
QX11Info::appDepth());
     statusAreaPixmap = QPixmap::fromX11Pixmap(pixmap, 
QPixmap::ExplicitlyShared);
 
     if (!statusAreaPixmap.isNull()) {
+        if (shareDrawableAtom != None) {
+            // Allow sharing the pixmap even if the X security module is loaded
+            XClientMessageEvent event;
+            memset(&event, 0, sizeof(XClientMessageEvent));
+            event.type = ClientMessage;
+            event.window = statusAreaPixmap.handle();
+            event.message_type = shareDrawableAtom;
+            event.format = 8;
+            event.data.b[0] = True;
+            X11Wrapper::XSendEvent(display, DefaultRootWindow(display), False, 
0, (XEvent *)&event);
+        }
         return true;
     } else {
         return false;
--- src/systemui/statusarea/statusarearenderer.h
+++ src/systemui/statusarea/statusarearenderer.h
@@ -185,6 +185,8 @@
     Atom windowManagerWindowAtom;
     //! _NET_SUPPORTED atom
     Atom netSupportedAtom;
+    //! XSERVER_SECURITY_POLICY_SHARE_DRAWABLE atom
+    Atom shareDrawableAtom;
 
     //! Root window property mask that was set before XSelectInput
     long previousRootWindowEventMask;
--- src/systemui/statusarea/statusindicator.cpp
+++ src/systemui/statusarea/statusindicator.cpp
@@ -193,6 +193,9 @@
     connectionState = createContextItem(context, "Internet.NetworkState");
     connect(connectionState, SIGNAL(contentsChanged()), this, 
SLOT(setNetworkType()));
 
+    connectionAdhoc = createContextItem(context, "Internet.NetworkWlanAdhoc");
+    connect(connectionAdhoc, SIGNAL(contentsChanged()), this, 
SLOT(setNetworkType()));
+
     packetData = createContextItem(context, "Cellular.PacketData");
     connect(packetData, SIGNAL(contentsChanged()), this, 
SLOT(setNetworkType()));
 
@@ -221,6 +224,7 @@
     QString dataTechnology = cellularDataTechnology->value().toString(); // 
gprs egprs umts hspa
     QString state = connectionState->value().toString(); // disconnected 
connecting connected
     QString connection = connectionType->value().toString(); // GPRS WLAN
+    bool adhoc = connectionAdhoc->value().toBool();
     bool data = packetData->value().toBool();
     bool wlanOn = wlanEnabled->value().toBool();
 
@@ -235,7 +239,7 @@
     QString postFixPacketData;
 
     if ((connection == "WLAN") && (state != "disconnected") && wlanOn) {
-        postFix = "WLAN";
+        postFix = adhoc ? "WLANAdhoc" : "WLAN";
     }
     if (dataTechnology == "gprs") {
         postFixPacketData = "2G";
--- src/systemui/statusarea/statusindicator.h
+++ src/systemui/statusarea/statusindicator.h
@@ -210,6 +210,7 @@
     ContextItem *cellularDataTechnology;
     ContextItem *connectionType;
     ContextItem *connectionState;
+    ContextItem *connectionAdhoc;
     ContextItem *packetData;
     ContextItem *wlanEnabled;
 
--- tests/ut_notificationareasink/ut_notificationareasink.cpp
+++ tests/ut_notificationareasink/ut_notificationareasink.cpp
@@ -29,10 +29,13 @@
 #include "notificationgroup_stub.h"
 #include "notificationmanager_stub.h"
 
+
+static char *gAppName = (char *)"./ut_notificationareasink";
+
 // QCoreApplication stubs to avoid crashing in processEvents()
 QStringList QCoreApplication::arguments()
 {
-    return QStringList();
+    return QStringList(gAppName);
 }
 
 // MGConfItem stubs
@@ -147,8 +150,7 @@
 {
     // Create a MAapplication
     static int argc = 1;
-    static char *app_name = (char *)"./ut_notificationareasink";
-    app = new MApplication(argc, &app_name);
+    app = new MApplication(argc, &gAppName);
 }
 
 void Ut_NotificationAreaSink::cleanupTestCase()
--- 
tests/ut_notificationstatusindicatorsink/ut_notificationstatusindicatorsink.cpp
+++ 
tests/ut_notificationstatusindicatorsink/ut_notificationstatusindicatorsink.cpp
@@ -32,10 +32,12 @@
     }
 }
 
+static char *gAppName = (char *)"./ut_notificationstatusindicatorsink";
+
 // QCoreApplication stubs to avoid crashing in processEvents()
 QStringList QCoreApplication::arguments()
 {
-    return QStringList();
+    return QStringList(gAppName);
 }
 
 // Tests
@@ -43,8 +45,7 @@
 {
     // Create a MAapplication
     static int argc = 1;
-    static char *app_name = (char *)"./ut_notificationstatusindicatorsink";
-    app = new MApplication(argc, &app_name);
+    app = new MApplication(argc, &gAppName);
 }
 
 void Ut_NotificationStatusIndicatorSink::cleanupTestCase()
--- tests/ut_statusarearenderer/ut_statusarearenderer.cpp
+++ tests/ut_statusarearenderer/ut_statusarearenderer.cpp
@@ -625,14 +625,16 @@
 
 void Ut_StatusAreaRenderer::testStatusBarPixmapPropertiesAreSetCorrectly()
 {
+    QCOMPARE(gX11WrapperStub->stubCallCount("XInternAtom"), 6);
     QCOMPARE(gX11WrapperStub->stubCallCount("XChangeProperty"), 2);
+
     // Verify setting pixmap property
-    
QCOMPARE(gX11WrapperStub->stubCallsTo("XInternAtom").at(3)->parameter<const 
char*>(1), "_MEEGOTOUCH_STATUSBAR_PIXMAP");
+    
QCOMPARE(gX11WrapperStub->stubCallsTo("XInternAtom").at(4)->parameter<const 
char*>(1), "_MEEGOTOUCH_STATUSBAR_PIXMAP");
     
QCOMPARE(gX11WrapperStub->stubCallsTo("XChangeProperty").at(0)->parameter<Window>(1),
 MEEGOTOUCH_STATUSBAR_WINDOW_ID);
     
QCOMPARE((ulong)gX11WrapperStub->stubCallsTo("XChangeProperty").at(0)->parameter<Atom>(3),
 XA_PIXMAP);
 
     // Verify setting property window property
-    
QCOMPARE(gX11WrapperStub->stubCallsTo("XInternAtom").at(4)->parameter<const 
char*>(1), "_MEEGOTOUCH_STATUSBAR_PROPERTY_WINDOW");
+    
QCOMPARE(gX11WrapperStub->stubCallsTo("XInternAtom").at(5)->parameter<const 
char*>(1), "_MEEGOTOUCH_STATUSBAR_PROPERTY_WINDOW");
     
QCOMPARE(gX11WrapperStub->stubCallsTo("XChangeProperty").at(1)->parameter<Window>(1),
 ROOT_WINDOW_ID);
     
QCOMPARE((ulong)gX11WrapperStub->stubCallsTo("XChangeProperty").at(1)->parameter<Atom>(3),
 XA_WINDOW);
 }
@@ -650,6 +652,23 @@
     
QCOMPARE(gX11WrapperStub->stubCallsTo("XInternAtom").at(1)->parameter<const 
char*>(1), "_MEEGOTOUCH_STATUSBAR_PIXMAP");
 }
 
+void Ut_StatusAreaRenderer::testStatusBarPixmapSharingIsAllowed()
+{
+    QCOMPARE(gX11WrapperStub->stubCallCount("XSendEvent"), 1);
+    QCOMPARE(gX11WrapperStub->stubLastCallTo("XSendEvent").parameter<Display 
*>(0), QX11Info::display());
+    
QCOMPARE(gX11WrapperStub->stubLastCallTo("XSendEvent").parameter<Window>(1), 
DefaultRootWindow(QX11Info::display()));
+    QCOMPARE(gX11WrapperStub->stubLastCallTo("XSendEvent").parameter<Bool>(2), 
False);
+    QCOMPARE(gX11WrapperStub->stubLastCallTo("XSendEvent").parameter<long>(3), 
(long)0);
+
+    XEvent event = 
gX11WrapperStub->stubLastCallTo("XSendEvent").parameter<XEvent>(4);
+    XClientMessageEvent *clientMessageEvent = (XClientMessageEvent *)&event;
+    QCOMPARE(clientMessageEvent->type, ClientMessage);
+    QCOMPARE(clientMessageEvent->window, (unsigned 
long)statusAreaRenderer->sharedPixmapHandle());
+    QCOMPARE(clientMessageEvent->message_type, 
X11Wrapper::XInternAtom(QX11Info::display(), 
"XSERVER_SECURITY_POLICY_SHARE_DRAWABLE", False));
+    QCOMPARE(clientMessageEvent->format, 8);
+    QCOMPARE(clientMessageEvent->data.b[0], (char)True);
+}
+
 void Ut_StatusAreaRenderer::testWMWindowUnavailableInStartUp()
 {
     delete statusAreaRenderer;
--- tests/ut_statusarearenderer/ut_statusarearenderer.h
+++ tests/ut_statusarearenderer/ut_statusarearenderer.h
@@ -73,6 +73,7 @@
     void testStatusBarPropertyWindowCreation();
     void testStatusBarPixmapPropertiesAreSetCorrectly();
     void testStatusBarPixmapPropertiesAreDeletedInDestructor();
+    void testStatusBarPixmapSharingIsAllowed();
 
     void testWMWindowUnavailableInStartUp();
     void testWMWindowBecomingUnavailable();
--- tests/ut_statusindicator/ut_statusindicator.cpp
+++ tests/ut_statusindicator/ut_statusindicator.cpp
@@ -153,7 +153,7 @@
     // When the application becomes not visible, the context item updates
     // should be unsubscribed from
     m_subject->exitDisplayEvent();
-    QCOMPARE(gContextItemStub->stubCallCount("unsubscribe"), 5);
+    QCOMPARE(gContextItemStub->stubCallCount("unsubscribe"), 6);
 
     testContextItems["Internet.NetworkType"]->setValue("WLAN");
     testContextItems["System.WlanEnabled"]->setValue(true);
@@ -161,7 +161,7 @@
     // When the application becomes not visible, the context item updates
     // should be subscribed to
     m_subject->enterDisplayEvent();
-    QCOMPARE(gContextItemStub->stubCallCount("subscribe"), 5);
+    QCOMPARE(gContextItemStub->stubCallCount("subscribe"), 6);
     QCOMPARE(spy.count(), 1);
     QCOMPARE(m_subject->styleName().contains("WLAN"), QBool(true));
 }
@@ -173,14 +173,14 @@
 
     // There should be a total of four items constructed using the
     // StatusIndicator::createContextItem() call
-    QCOMPARE(gContextItemStub->stubCallCount("ContextItemConstructor"), 5);
+    QCOMPARE(gContextItemStub->stubCallCount("ContextItemConstructor"), 6);
 
     delete m_subject;
     m_subject = NULL;
 
     // There should be a total of four items deleted by the
     // StatusIndicator destructor
-    QCOMPARE(gContextItemStub->stubCallCount("ContextItemDestructor"), 5);
+    QCOMPARE(gContextItemStub->stubCallCount("ContextItemDestructor"), 6);
 }
 
 void Ut_StatusIndicator::testPhoneNetworkSignalStrength()
@@ -260,69 +260,80 @@
     QTest::addColumn<QString>("CellularDataTechnology");
     QTest::addColumn<QString>("InternetConnectionType");
     QTest::addColumn<QString>("InternetConnectionState");
+    QTest::addColumn<bool>("InternetConnectionAdhoc");
     QTest::addColumn<QString>("ExpectedObjectNamePostfix");
 
-    QTest::newRow("gprs connection type and 2g tech not active, wlan 
disabled") << false << false << QString("gprs") << QString("GPRS") << 
QString("connected") << QString("2G");
-    QTest::newRow("gprs connection type and 2g tech connecting, wlan 
disabled") << false << false << QString("gprs") << QString("GPRS") << 
QString("connecting") << QString("2GConnecting");
-    QTest::newRow("gprs connection type and 2g tech active, wlan disabled") << 
true << false << QString("gprs") << QString("GPRS") << QString("connected") << 
QString("2GActive");
-    QTest::newRow("gprs connection type and 2g tech active, internet 
disconnected, wlan disabled") << true << false << QString("gprs") << 
QString("GPRS") << QString("disconnected") << QString("2GActive");
-    QTest::newRow("gprs connection type and 2g tech not active, internet 
disconnected, wlan disabled") << false << false << QString("gprs") << 
QString("GPRS") << QString("disconnected") << QString("");
-    QTest::newRow("gprs connection type and 2g tech active, internet 
connecting, wlan disabled") << true << false << QString("gprs") << 
QString("GPRS") << QString("connecting") << QString("2GConnecting");
-    QTest::newRow("gprs connection type and 25g tech not active, wlan 
disabled") << false << false << QString("egprs") << QString("GPRS") << 
QString("connected") << QString("25G");
-    QTest::newRow("gprs connection type and 25g tech connecting, wlan 
disabled") << false << false << QString("egprs") << QString("GPRS") << 
QString("connecting") << QString("25GConnecting");
-    QTest::newRow("gprs connection type and 25g tech active, wlan disabled") 
<< true << false << QString("egprs") << QString("GPRS") << QString("connected") 
<< QString("25GActive");
-    QTest::newRow("gprs connection type and 25g tech active, internet 
disconnected, wlan disabled") << true << false << QString("egprs") << 
QString("GPRS") << QString("disconnected") << QString("25GActive");
-    QTest::newRow("gprs connection type and 25g tech not active, internet 
disconnected, wlan disabled") << false << false << QString("egprs") << 
QString("GPRS") << QString("disconnected") << QString("");
-    QTest::newRow("gprs connection type and 25g tech active, internet 
connecting, wlan disabled") << true << false << QString("egprs") << 
QString("GPRS") << QString("connecting") << QString("25GConnecting");
-    QTest::newRow("gprs connection type and 3g tech not active, wlan 
disabled") << false << false << QString("umts") << QString("GPRS") << 
QString("connected") << QString("3G");
-    QTest::newRow("gprs connection type and 3g tech connecting, wlan 
disabled") << false << false << QString("umts") << QString("GPRS") << 
QString("connecting") << QString("3GConnecting");
-    QTest::newRow("gprs connection type and 3g tech active, wlan disabled") << 
true << false << QString("umts") << QString("GPRS") << QString("connected") << 
QString("3GActive");
-    QTest::newRow("gprs connection type and 3g tech active, internet 
disconnected, wlan disabled") << true << false << QString("umts") << 
QString("GPRS") << QString("disconnected") << QString("3GActive");
-    QTest::newRow("gprs connection type and 3g tech not active, internet 
disconnected, wlan disabled") << false << false << QString("umts") << 
QString("GPRS") << QString("disconnected") << QString("");
-    QTest::newRow("gprs connection type and 3g tech active, internet 
connecting, wlan disabled") << true << false << QString("umts") << 
QString("GPRS") << QString("connecting") << QString("3GConnecting");
-    QTest::newRow("gprs connection type and 35g tech not active, wlan 
disabled") << false << false << QString("hspa") << QString("GPRS") << 
QString("connected") << QString("35G");
-    QTest::newRow("gprs connection type and 35g tech connecting, wlan 
disabled") << false << false << QString("hspa") << QString("GPRS") << 
QString("connecting") << QString("35GConnecting");
-    QTest::newRow("gprs connection type and 35g tech active, wlan disabled") 
<< true << false << QString("hspa") << QString("GPRS") << QString("connected") 
<< QString("35GActive");
-    QTest::newRow("gprs connection type and 35g tech active, internet 
disconnected, wlan disabled") << true << false << QString("hspa") << 
QString("GPRS") << QString("disconnected") << QString("35GActive");
-    QTest::newRow("gprs connection type and 35g tech not active, internet 
disconnected, wlan disabled") << false << false << QString("hspa") << 
QString("GPRS") << QString("disconnected") << QString("");
-    QTest::newRow("gprs connection type and 35g tech active, internet 
connecting, wlan disabled") << true << false << QString("hspa") << 
QString("GPRS") << QString("connecting") << QString("35GConnecting");
-    QTest::newRow("wlan connection type and wlan tech not active, wlan 
disabled") << false << false << QString("") << QString("WLAN") << 
QString("connected") << QString("");
-    QTest::newRow("wlan connection type and wlan tech connecting, wlan 
disabled") << false << false << QString("") << QString("WLAN") << 
QString("connecting") << QString("");
-    QTest::newRow("wlan connected and 2g packet data active, wlan disabled") 
<< true << false << QString("gprs") << QString("WLAN") << QString("connected") 
<< QString("2GActive");
-    QTest::newRow("wlan connected and 25g packet data active, wlan disabled") 
<< true << false << QString("egprs") << QString("WLAN") << QString("connected") 
<< QString("25GActive");
-    QTest::newRow("wlan connected and 3g packet data active, wlan disabled") 
<< true << false << QString("umts") << QString("WLAN") << QString("connected") 
<< QString("3GActive");
-    QTest::newRow("wlan connected and 35g packet data active, wlan disabled") 
<< true << false << QString("hspa") << QString("WLAN") << QString("connected") 
<< QString("35GActive");
-
-    QTest::newRow("gprs connection type and 2g tech not active, wlan enabled") 
<< false << true << QString("gprs") << QString("GPRS") << QString("connected") 
<< QString("2G");
-    QTest::newRow("gprs connection type and 2g tech connecting, wlan enabled") 
<< false << true << QString("gprs") << QString("GPRS") << QString("connecting") 
<< QString("2GConnecting");
-    QTest::newRow("gprs connection type and 2g tech active, wlan enabled") << 
true << true << QString("gprs") << QString("GPRS") << QString("connected") << 
QString("2GActive");
-    QTest::newRow("gprs connection type and 2g tech active, internet 
disconnected, wlan enabled") << true << true << QString("gprs") << 
QString("GPRS") << QString("disconnected") << QString("2GActive");
-    QTest::newRow("gprs connection type and 2g tech not active, internet 
disconnected, wlan enabled") << false << true << QString("gprs") << 
QString("GPRS") << QString("disconnected") << QString("");
-    QTest::newRow("gprs connection type and 25g tech not active, wlan 
enabled") << false << true << QString("egprs") << QString("GPRS") << 
QString("connected") << QString("25G");
-    QTest::newRow("gprs connection type and 25g tech connecting, wlan 
enabled") << false << true << QString("egprs") << QString("GPRS") << 
QString("connecting") << QString("25GConnecting");
-    QTest::newRow("gprs connection type and 25g tech active, wlan enabled") << 
true << true << QString("egprs") << QString("GPRS") << QString("connected") << 
QString("25GActive");
-    QTest::newRow("gprs connection type and 25g tech active, internet 
disconnected, wlan enabled") << true << true << QString("egprs") << 
QString("GPRS") << QString("disconnected") << QString("25GActive");
-    QTest::newRow("gprs connection type and 25g tech not active, internet 
disconnected, wlan enabled") << false << true << QString("egprs") << 
QString("GPRS") << QString("disconnected") << QString("");
-    QTest::newRow("gprs connection type and 3g tech not active, wlan enabled") 
<< false << true << QString("umts") << QString("GPRS") << QString("connected") 
<< QString("3G");
-    QTest::newRow("gprs connection type and 3g tech connecting, wlan enabled") 
<< false << true << QString("umts") << QString("GPRS") << QString("connecting") 
<< QString("3GConnecting");
-    QTest::newRow("gprs connection type and 3g tech active, wlan enabled") << 
true << true << QString("umts") << QString("GPRS") << QString("connected") << 
QString("3GActive");
-    QTest::newRow("gprs connection type and 3g tech active, internet 
disconnected, wlan enabled") << true << true << QString("umts") << 
QString("GPRS") << QString("disconnected") << QString("3GActive");
-    QTest::newRow("gprs connection type and 3g tech not active, internet 
disconnected, wlan enabled") << false << true << QString("umts") << 
QString("GPRS") << QString("disconnected") << QString("");
-    QTest::newRow("gprs connection type and 35g tech not active, wlan 
enabled") << false << true << QString("hspa") << QString("GPRS") << 
QString("connected") << QString("35G");
-    QTest::newRow("gprs connection type and 35g tech connecting, wlan 
enabled") << false << true << QString("hspa") << QString("GPRS") << 
QString("connecting") << QString("35GConnecting");
-    QTest::newRow("gprs connection type and 35g tech active, wlan enabled") << 
true << true << QString("hspa") << QString("GPRS") << QString("connected") << 
QString("35GActive");
-    QTest::newRow("gprs connection type and 35g tech active, internet 
disconnected, wlan enabled") << true << true << QString("hspa") << 
QString("GPRS") << QString("disconnected") << QString("35GActive");
-    QTest::newRow("gprs connection type and 35g tech not active, internet 
disconnected, wlan enabled") << false << true << QString("hspa") << 
QString("GPRS") << QString("disconnected") << QString("");
-    QTest::newRow("wlan connection type and wlan tech not active, wlan 
enabled") << false << true << QString("") << QString("WLAN") << 
QString("connected") << QString("WLAN");
-    QTest::newRow("wlan connection type and wlan tech connecting, wlan 
enabled") << false << true << QString("") << QString("WLAN") << 
QString("connecting") << QString("WLANConnecting");
-    QTest::newRow("wlan connected and 2g packet data active, wlan enabled") << 
true << true << QString("gprs") << QString("WLAN") << QString("connected") << 
QString("WLAN2GActive");
-    QTest::newRow("wlan connected and 25g packet data active, wlan enabled") 
<< true << true << QString("egprs") << QString("WLAN") << QString("connected") 
<< QString("WLAN25GActive");
-    QTest::newRow("wlan connected and 3g packet data active, wlan enabled") << 
true << true << QString("umts") << QString("WLAN") << QString("connected") << 
QString("WLAN3GActive");
-    QTest::newRow("wlan connected and 35g packet data active, wlan enabled") 
<< true << true << QString("hspa") << QString("WLAN") << QString("connected") 
<< QString("WLAN35GActive");
-    QTest::newRow("wlan connecting and 2g packet data active, wlan enabled") 
<< true << true << QString("gprs") << QString("WLAN") << QString("connecting") 
<< QString("WLAN2GActive");
-    QTest::newRow("wlan connecting and 25g packet data active, wlan enabled") 
<< true << true << QString("egprs") << QString("WLAN") << QString("connecting") 
<< QString("WLAN25GActive");
-    QTest::newRow("wlan connecting and 3g packet data active, wlan enabled") 
<< true << true << QString("umts") << QString("WLAN") << QString("connecting") 
<< QString("WLAN3GActive");
-    QTest::newRow("wlan connecting and 35g packet data active, wlan enabled") 
<< true << true << QString("hspa") << QString("WLAN") << QString("connecting") 
<< QString("WLAN35GActive");
+    QTest::newRow("gprs connection type and 2g tech not active, wlan 
disabled") << false << false << QString("gprs") << QString("GPRS") << 
QString("connected") << true << QString("2G");
+    QTest::newRow("gprs connection type and 2g tech connecting, wlan 
disabled") << false << false << QString("gprs") << QString("GPRS") << 
QString("connecting") << true << QString("2GConnecting");
+    QTest::newRow("gprs connection type and 2g tech active, wlan disabled") << 
true << false << QString("gprs") << QString("GPRS") << QString("connected") << 
true << QString("2GActive");
+    QTest::newRow("gprs connection type and 2g tech active, internet 
disconnected, wlan disabled") << true << false << QString("gprs") << 
QString("GPRS") << QString("disconnected") << true << QString("2GActive");
+    QTest::newRow("gprs connection type and 2g tech not active, internet 
disconnected, wlan disabled") << false << false << QString("gprs") << 
QString("GPRS") << QString("disconnected") << true << QString("");
+    QTest::newRow("gprs connection type and 2g tech active, internet 
connecting, wlan disabled") << true << false << QString("gprs") << 
QString("GPRS") << QString("connecting") << true << QString("2GConnecting");
+    QTest::newRow("gprs connection type and 25g tech not active, wlan 
disabled") << false << false << QString("egprs") << QString("GPRS") << 
QString("connected") << true << QString("25G");
+    QTest::newRow("gprs connection type and 25g tech connecting, wlan 
disabled") << false << false << QString("egprs") << QString("GPRS") << 
QString("connecting") << true << QString("25GConnecting");
+    QTest::newRow("gprs connection type and 25g tech active, wlan disabled") 
<< true << false << QString("egprs") << QString("GPRS") << QString("connected") 
<< true << QString("25GActive");
+    QTest::newRow("gprs connection type and 25g tech active, internet 
disconnected, wlan disabled") << true << false << QString("egprs") << 
QString("GPRS") << QString("disconnected") << true << QString("25GActive");
+    QTest::newRow("gprs connection type and 25g tech not active, internet 
disconnected, wlan disabled") << false << false << QString("egprs") << 
QString("GPRS") << QString("disconnected") << true << QString("");
+    QTest::newRow("gprs connection type and 25g tech active, internet 
connecting, wlan disabled") << true << false << QString("egprs") << 
QString("GPRS") << QString("connecting") << true << QString("25GConnecting");
+    QTest::newRow("gprs connection type and 3g tech not active, wlan 
disabled") << false << false << QString("umts") << QString("GPRS") << 
QString("connected") << true << QString("3G");
+    QTest::newRow("gprs connection type and 3g tech connecting, wlan 
disabled") << false << false << QString("umts") << QString("GPRS") << 
QString("connecting") << true << QString("3GConnecting");
+    QTest::newRow("gprs connection type and 3g tech active, wlan disabled") << 
true << false << QString("umts") << QString("GPRS") << QString("connected") << 
true << QString("3GActive");
+    QTest::newRow("gprs connection type and 3g tech active, internet 
disconnected, wlan disabled") << true << false << QString("umts") << 
QString("GPRS") << QString("disconnected") << true << QString("3GActive");
+    QTest::newRow("gprs connection type and 3g tech not active, internet 
disconnected, wlan disabled") << false << false << QString("umts") << 
QString("GPRS") << QString("disconnected") << true << QString("");
+    QTest::newRow("gprs connection type and 3g tech active, internet 
connecting, wlan disabled") << true << false << QString("umts") << 
QString("GPRS") << QString("connecting") << true << QString("3GConnecting");
+    QTest::newRow("gprs connection type and 35g tech not active, wlan 
disabled") << false << false << QString("hspa") << QString("GPRS") << 
QString("connected") << true << QString("35G");
+    QTest::newRow("gprs connection type and 35g tech connecting, wlan 
disabled") << false << false << QString("hspa") << QString("GPRS") << 
QString("connecting") << true << QString("35GConnecting");
+    QTest::newRow("gprs connection type and 35g tech active, wlan disabled") 
<< true << false << QString("hspa") << QString("GPRS") << QString("connected") 
<< true << QString("35GActive");
+    QTest::newRow("gprs connection type and 35g tech active, internet 
disconnected, wlan disabled") << true << false << QString("hspa") << 
QString("GPRS") << QString("disconnected") << true << QString("35GActive");
+    QTest::newRow("gprs connection type and 35g tech not active, internet 
disconnected, wlan disabled") << false << false << QString("hspa") << 
QString("GPRS") << QString("disconnected") << true << QString("");
+    QTest::newRow("gprs connection type and 35g tech active, internet 
connecting, wlan disabled") << true << false << QString("hspa") << 
QString("GPRS") << QString("connecting") << true << QString("35GConnecting");
+    QTest::newRow("wlan connection type and wlan tech not active, wlan 
disabled") << false << false << QString("") << QString("WLAN") << 
QString("connected") << true << QString("");
+    QTest::newRow("wlan connection type and wlan tech connecting, wlan 
disabled") << false << false << QString("") << QString("WLAN") << 
QString("connecting") << true << QString("");
+    QTest::newRow("wlan connected and 2g packet data active, wlan disabled") 
<< true << false << QString("gprs") << QString("WLAN") << QString("connected") 
<< true << QString("2GActive");
+    QTest::newRow("wlan connected and 25g packet data active, wlan disabled") 
<< true << false << QString("egprs") << QString("WLAN") << QString("connected") 
<< true << QString("25GActive");
+    QTest::newRow("wlan connected and 3g packet data active, wlan disabled") 
<< true << false << QString("umts") << QString("WLAN") << QString("connected") 
<< true << QString("3GActive");
+    QTest::newRow("wlan connected and 35g packet data active, wlan disabled") 
<< true << false << QString("hspa") << QString("WLAN") << QString("connected") 
<< true << QString("35GActive");
+
+    QTest::newRow("gprs connection type and 2g tech not active, wlan enabled") 
<< false << true << QString("gprs") << QString("GPRS") << QString("connected") 
<< true << QString("2G");
+    QTest::newRow("gprs connection type and 2g tech connecting, wlan enabled") 
<< false << true << QString("gprs") << QString("GPRS") << QString("connecting") 
<< true << QString("2GConnecting");
+    QTest::newRow("gprs connection type and 2g tech active, wlan enabled") << 
true << true << QString("gprs") << QString("GPRS") << QString("connected") << 
true << QString("2GActive");
+    QTest::newRow("gprs connection type and 2g tech active, internet 
disconnected, wlan enabled") << true << true << QString("gprs") << 
QString("GPRS") << QString("disconnected") << true << QString("2GActive");
+    QTest::newRow("gprs connection type and 2g tech not active, internet 
disconnected, wlan enabled") << false << true << QString("gprs") << 
QString("GPRS") << QString("disconnected") << true << QString("");
+    QTest::newRow("gprs connection type and 25g tech not active, wlan 
enabled") << false << true << QString("egprs") << QString("GPRS") << 
QString("connected") << true << QString("25G");
+    QTest::newRow("gprs connection type and 25g tech connecting, wlan 
enabled") << false << true << QString("egprs") << QString("GPRS") << 
QString("connecting") << true << QString("25GConnecting");
+    QTest::newRow("gprs connection type and 25g tech active, wlan enabled") << 
true << true << QString("egprs") << QString("GPRS") << QString("connected") << 
true << QString("25GActive");
+    QTest::newRow("gprs connection type and 25g tech active, internet 
disconnected, wlan enabled") << true << true << QString("egprs") << 
QString("GPRS") << QString("disconnected") << true << QString("25GActive");
+    QTest::newRow("gprs connection type and 25g tech not active, internet 
disconnected, wlan enabled") << false << true << QString("egprs") << 
QString("GPRS") << QString("disconnected") << true << QString("");
+    QTest::newRow("gprs connection type and 3g tech not active, wlan enabled") 
<< false << true << QString("umts") << QString("GPRS") << QString("connected") 
<< true << QString("3G");
+    QTest::newRow("gprs connection type and 3g tech connecting, wlan enabled") 
<< false << true << QString("umts") << QString("GPRS") << QString("connecting") 
<< true << QString("3GConnecting");
+    QTest::newRow("gprs connection type and 3g tech active, wlan enabled") << 
true << true << QString("umts") << QString("GPRS") << QString("connected") << 
true << QString("3GActive");
+    QTest::newRow("gprs connection type and 3g tech active, internet 
disconnected, wlan enabled") << true << true << QString("umts") << 
QString("GPRS") << QString("disconnected") << true << QString("3GActive");
+    QTest::newRow("gprs connection type and 3g tech not active, internet 
disconnected, wlan enabled") << false << true << QString("umts") << 
QString("GPRS") << QString("disconnected") << true << QString("");
+    QTest::newRow("gprs connection type and 35g tech not active, wlan 
enabled") << false << true << QString("hspa") << QString("GPRS") << 
QString("connected") << true << QString("35G");
+    QTest::newRow("gprs connection type and 35g tech connecting, wlan 
enabled") << false << true << QString("hspa") << QString("GPRS") << 
QString("connecting") << true << QString("35GConnecting");
+    QTest::newRow("gprs connection type and 35g tech active, wlan enabled") << 
true << true << QString("hspa") << QString("GPRS") << QString("connected") << 
true << QString("35GActive");
+    QTest::newRow("gprs connection type and 35g tech active, internet 
disconnected, wlan enabled") << true << true << QString("hspa") << 
QString("GPRS") << QString("disconnected") << true << QString("35GActive");
+    QTest::newRow("gprs connection type and 35g tech not active, internet 
disconnected, wlan enabled") << false << true << QString("hspa") << 
QString("GPRS") << QString("disconnected") << true << QString("");
+    QTest::newRow("wlan connection type and wlan tech not active, wlan 
enabled, not adhoc") << false << true << QString("") << QString("WLAN") << 
QString("connected") << false << QString("WLAN");
+    QTest::newRow("wlan connection type and wlan tech connecting, wlan 
enabled, not adhoc") << false << true << QString("") << QString("WLAN") << 
QString("connecting") << false << QString("WLANConnecting");
+    QTest::newRow("wlan connected and 2g packet data active, wlan enabled, not 
adhoc") << true << true << QString("gprs") << QString("WLAN") << 
QString("connected") << false << QString("WLAN2GActive");
+    QTest::newRow("wlan connected and 25g packet data active, wlan enabled, 
not adhoc") << true << true << QString("egprs") << QString("WLAN") << 
QString("connected") << false << QString("WLAN25GActive");
+    QTest::newRow("wlan connected and 3g packet data active, wlan enabled, not 
adhoc") << true << true << QString("umts") << QString("WLAN") << 
QString("connected") << false << QString("WLAN3GActive");
+    QTest::newRow("wlan connected and 35g packet data active, wlan enabled, 
not adhoc") << true << true << QString("hspa") << QString("WLAN") << 
QString("connected") << false << QString("WLAN35GActive");
+    QTest::newRow("wlan connecting and 2g packet data active, wlan enabled, 
not adhoc") << true << true << QString("gprs") << QString("WLAN") << 
QString("connecting") << false << QString("WLAN2GActive");
+    QTest::newRow("wlan connecting and 25g packet data active, wlan enabled, 
not adhoc") << true << true << QString("egprs") << QString("WLAN") << 
QString("connecting") << false << QString("WLAN25GActive");
+    QTest::newRow("wlan connecting and 3g packet data active, wlan enabled, 
not adhoc") << true << true << QString("umts") << QString("WLAN") << 
QString("connecting") << false << QString("WLAN3GActive");
+    QTest::newRow("wlan connecting and 35g packet data active, wlan enabled, 
not adhoc") << true << true << QString("hspa") << QString("WLAN") << 
QString("connecting") << false << QString("WLAN35GActive");
+    QTest::newRow("wlan connection type and wlan tech not active, wlan 
enabled, adhoc") << false << true << QString("") << QString("WLAN") << 
QString("connected") << true << QString("WLANAdhoc");
+    QTest::newRow("wlan connection type and wlan tech connecting, wlan 
enabled, adhoc") << false << true << QString("") << QString("WLAN") << 
QString("connecting") << true << QString("WLANAdhocConnecting");
+    QTest::newRow("wlan connected and 2g packet data active, wlan enabled, 
adhoc") << true << true << QString("gprs") << QString("WLAN") << 
QString("connected") << true << QString("WLANAdhoc2GActive");
+    QTest::newRow("wlan connected and 25g packet data active, wlan enabled, 
adhoc") << true << true << QString("egprs") << QString("WLAN") << 
QString("connected") << true << QString("WLANAdhoc25GActive");
+    QTest::newRow("wlan connected and 3g packet data active, wlan enabled, 
adhoc") << true << true << QString("umts") << QString("WLAN") << 
QString("connected") << true << QString("WLANAdhoc3GActive");
+    QTest::newRow("wlan connected and 35g packet data active, wlan enabled, 
adhoc") << true << true << QString("hspa") << QString("WLAN") << 
QString("connected") << true << QString("WLANAdhoc35GActive");
+    QTest::newRow("wlan connecting and 2g packet data active, wlan enabled, 
adhoc") << true << true << QString("gprs") << QString("WLAN") << 
QString("connecting") << true << QString("WLANAdhoc2GActive");
+    QTest::newRow("wlan connecting and 25g packet data active, wlan enabled, 
adhoc") << true << true << QString("egprs") << QString("WLAN") << 
QString("connecting") << true << QString("WLANAdhoc25GActive");
+    QTest::newRow("wlan connecting and 3g packet data active, wlan enabled, 
adhoc") << true << true << QString("umts") << QString("WLAN") << 
QString("connecting") << true << QString("WLANAdhoc3GActive");
+    QTest::newRow("wlan connecting and 35g packet data active, wlan enabled, 
adhoc") << true << true << QString("hspa") << QString("WLAN") << 
QString("connecting") << true << QString("WLANAdhoc35GActive");
 }
 
 void Ut_StatusIndicator::testPhoneNetworkTypeStyleNameWhenSystemOnlineName()
@@ -332,6 +343,7 @@
     QFETCH(QString, CellularDataTechnology);
     QFETCH(QString, InternetConnectionType);
     QFETCH(QString, InternetConnectionState);
+    QFETCH(bool, InternetConnectionAdhoc);
     QFETCH(QString, ExpectedObjectNamePostfix);
 
     m_subject = new PhoneNetworkTypeStatusIndicator(*testContext);
@@ -340,6 +352,7 @@
     
testContextItems["Cellular.DataTechnology"]->setValue(CellularDataTechnology);
     testContextItems["Internet.NetworkType"]->setValue(InternetConnectionType);
     
testContextItems["Internet.NetworkState"]->setValue(InternetConnectionState);
+    
testContextItems["Internet.NetworkWlanAdhoc"]->setValue(InternetConnectionAdhoc);
     testContextItems["System.WlanEnabled"]->setValue(WlanEnabled);
 
     if (!ExpectedObjectNamePostfix.isEmpty()) {
--- themes/style/statusarea.css
+++ themes/style/statusarea.css
@@ -402,7 +402,6 @@
 }
 
 StatusIndicatorIconStyle#PhoneNetworkTypeStatusIndicatorWLAN {
-    /* The list of IDs of the images to be shown in the status indicator 
separated by spaces */
     image-list: "icon-s-status-wlan";
     preferred-size: -1 -1;
     minimum-size: -1 -1;
@@ -410,7 +409,6 @@
 }
 
 StatusIndicatorIconStyle#PhoneNetworkTypeStatusIndicatorWLANActive {
-    /* The list of IDs of the images to be shown in the status indicator 
separated by spaces */
     image-list: "icon-s-status-wlan-active";
     preferred-size: -1 -1;
     minimum-size: -1 -1;
@@ -418,11 +416,59 @@
 }
 
 StatusIndicatorIconStyle#PhoneNetworkTypeStatusIndicatorWLANConnecting {
-    /* The list of IDs of the images to be shown in the status indicator 
separated by spaces */
     image-list: "icon-s-status-wlan icon-s-status-wlan-active";
     preferred-size: -1 -1;
     minimum-size: -1 -1;
     maximum-size: -1 -1;
+}
+
+StatusIndicatorIconStyle#PhoneNetworkTypeStatusIndicatorWLANAdhoc2GActive {
+    image-list: "icon-s-status-gsm-active icon-s-status-adhoc-wlan";
+    preferred-size: -1 -1;
+    minimum-size: -1 -1;
+    maximum-size: -1 -1;
+}
+
+StatusIndicatorIconStyle#PhoneNetworkTypeStatusIndicatorWLANAdhoc25GActive {
+    image-list: "icon-s-status-25g-active icon-s-status-adhoc-wlan";
+    preferred-size: -1 -1;
+    minimum-size: -1 -1;
+    maximum-size: -1 -1;
+}
+
+StatusIndicatorIconStyle#PhoneNetworkTypeStatusIndicatorWLANAdhoc3GActive {
+    image-list: "icon-s-status-3g-active icon-s-status-adhoc-wlan";
+    preferred-size: -1 -1;
+    minimum-size: -1 -1;
+    maximum-size: -1 -1;
+}
+
+StatusIndicatorIconStyle#PhoneNetworkTypeStatusIndicatorWLANAdhoc35GActive {
+    image-list: "icon-s-status-35g-active icon-s-status-adhoc-wlan";
+    preferred-size: -1 -1;
+    minimum-size: -1 -1;
+    maximum-size: -1 -1;
+}
+
+StatusIndicatorIconStyle#PhoneNetworkTypeStatusIndicatorWLANAdhoc {
+    image-list: "icon-s-status-adhoc-wlan";
+    preferred-size: -1 -1;
+    minimum-size: -1 -1;
+    maximum-size: -1 -1;
+}
+
+StatusIndicatorIconStyle#PhoneNetworkTypeStatusIndicatorWLANAdhocActive {
+    image-list: "icon-s-status-adhoc-wlan-active";
+    preferred-size: -1 -1;
+    minimum-size: -1 -1;
+    maximum-size: -1 -1;
+}
+
+StatusIndicatorIconStyle#PhoneNetworkTypeStatusIndicatorWLANAdhocConnecting {
+    image-list: "icon-s-status-adhoc-wlan icon-s-status-adhoc-wlan-active";
+    preferred-size: -1 -1;
+    minimum-size: -1 -1;
+    maximum-size: -1 -1;
 }
 
 StatusIndicatorIconStyle#BatteryStatusIndicatorLevel {

++++++ meegotouch-systemui.yaml
--- meegotouch-systemui.yaml
+++ meegotouch-systemui.yaml
@@ -1,12 +1,12 @@
 Name: meegotouch-systemui
 Summary: System UI daemon
-Version: 1.2.20
+Version: 1.2.24
 Release: 1
 Group: System/Desktop
 License: LGPLv2.1
 URL: http://meego.gitorious.org/meegotouch/meegotouch-systemui
 Sources:
-    - "meegotouch-%{name}-%{version}-1.tar.gz"
+    - "meegotouch-%{name}-%{version}-2.tar.gz"
     - "boss.conf"
 ExtraSources:
     - meegotouch-systemui.desktop;%{_sysconfdir}/xdg/autostart



Reply via email to