summaryrefslogtreecommitdiff
diff options
-rw-r--r--AUTHORS5
-rw-r--r--CMakeLists.txt4
-rw-r--r--ChangeLog1505
-rw-r--r--launcher/Launcher.cpp5
-rw-r--r--launcher/Launcher.h3
-rw-r--r--launcher/LauncherIcon.cpp17
-rw-r--r--launcher/LauncherIcon.h2
-rw-r--r--launcher/LauncherOptions.cpp2
-rw-r--r--launcher/MockLauncherIcon.h5
-rw-r--r--launcher/SwitcherController.cpp7
-rw-r--r--launcher/SwitcherController.h2
-rw-r--r--manual-tests/Launcher.txt11
-rw-r--r--plugins/unityshell/src/unityshell.cpp6
-rw-r--r--plugins/unityshell/unityshell.xml.in2
-rw-r--r--services/panel-service.c49
-rw-r--r--tests/autopilot/unity/tests/test_quicklist.py38
-rw-r--r--tests/autopilot/unity/tests/test_switcher.py16
-rw-r--r--tests/test_launcher.cpp64
-rw-r--r--unity-shared/PluginAdapter.h40
-rw-r--r--unity-shared/PluginAdapterCompiz.cpp44
-rw-r--r--unity-shared/PluginAdapterStandalone.cpp44
-rw-r--r--unity-shared/WindowManager.cpp40
-rw-r--r--unity-shared/WindowManager.h36
23 files changed, 1814 insertions, 133 deletions
diff --git a/AUTHORS b/AUTHORS
index e2c2fd90a..e7cf1f0f1 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -37,6 +37,7 @@
Didier Roche <didrocks@ubuntu.com>
foxoman <foxoman.u@gmail.com>
Gabor Kelemen <kelemeng@ubuntu.com>
+ Gary Lasker <gary.lasker@canonical.com>
Gordon Allott <gord.allott@canonical.com>
Henri De Veene <henri.deveene@gmail.com>
Jani Monoses <jani.monoses@canonical.com>
@@ -55,6 +56,7 @@
Jay Taoko <jay.taoko@canonical.com>, Mirco Müller <mirco.mueller@ubuntu.com>
Jay Taoko <jay.taoko@canonical.com>, Robert Carr <racarr@canonical.com>
Jeremy Bicha <jbicha@ubuntu.com>
+ jokerdino@bvm128.zdom.org
Kevin DuBois <kevin.dubois@canonical.com>
Koichi Akabe <vbkaisetsu@gmail.com>
Lars Uebernickel <lars.uebernickel@canonical.com>
@@ -75,7 +77,9 @@
Marco Trevisan (Treviño) <mail@3v1n0.net>, Thomi Richards <thomi.richards@canonical.com>
Marius Gedminas <marius@gedmin.as>
Martin Albisetti <argentina@gmail.com>
+ Martin Mrazik <martin.mrazik@canonical.com>
Martin Mrazik <mrazik@gmail.com>
+ MC Return <mc.return@gmx.net>
Michael Rawson <michaelrawson76@gmail.com>
Michael Terry <michael.terry@canonical.com>
Michael Terry <mike@mterry.name>
@@ -91,6 +95,7 @@
Paolo Rotolo <paolorotolo@ubuntu-it.org>
Paul Sladen <sladen@canonical.com>
Paul Sladen <sladen@canonical.com>, Andrea Cimitan <andrea.cimitan@canonical.com>
+ Pawel Stolowski <pawel.stolowski@canonical.com>
Rafał Cieślak <rafalcieslak256@gmail.com>
Ricardo Mendoza <ricardo.mendoza@canonical.com>
Robert Carr <racarr@canonical.com>
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2aefa298f..ef345f187 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -8,7 +8,7 @@ include (cmake/Documentation.cmake)
#
set (PROJECT_NAME "unity")
set (UNITY_MAJOR 6)
-set (UNITY_MINOR 0)
+set (UNITY_MINOR 2)
set (UNITY_MICRO 0)
set (UNITY_VERSION "${UNITY_MAJOR}.${UNITY_MINOR}.${UNITY_MICRO}")
set (UNITY_API_VERSION "6.0")
@@ -134,7 +134,7 @@ endif (DISABLE_MAINTAINER_CFLAGS)
# Compiz Plugins
#
-set (UNITY_PLUGIN_DEPS "compiz;nux-3.0>=3.0.0;libbamf3;dee-1.0;gio-2.0;gio-unix-2.0;dbusmenu-glib-0.4;x11;libstartup-notification-1.0;gthread-2.0;indicator3-0.4>=0.4.90;atk;unity-misc>=0.4.0;gconf-2.0;gtk+-3.0>=3.1;sigc++-2.0;json-glib-1.0;libnotify;xfixes;unity-protocol-private>=5.93.1")
+set (UNITY_PLUGIN_DEPS "compiz;nux-3.0>=3.0.0;libbamf3;dee-1.0;gio-2.0;gio-unix-2.0;dbusmenu-glib-0.4;dbus-glib-1;x11;libstartup-notification-1.0;gthread-2.0;indicator3-0.4>=0.4.90;atk;unity-misc>=0.4.0;gtk+-3.0>=3.1;sigc++-2.0;json-glib-1.0;libnotify;xfixes;unity-protocol-private>=5.93.1;libgeis")
# FIXME: unity-protocol-private shouldn't be there, but building of unityshell is just broken
set (UNITY_PROTOCOL_PRIVATE_DEPS "unity-protocol-private>=5.93.1")
diff --git a/ChangeLog b/ChangeLog
index 59866cb19..3175dde5e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,1508 @@
+2012-08-09 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ Calculator and Mahjongg can only have 1 instances now; this breaks AP tests. Character map is now used when you need more then 1 instance.. Fixes: . Approved by Łukasz Zemczak.
+
+2012-08-09 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Fixs panel test
+
+2012-08-08 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * You cannot have 2 gcalctools open anymore. Switched to Character map
+
+2012-08-09 Thomi Richards <thomi.richards@canonical.com>
+
+ Use the new clipboard emulator in autopilot. Fixes some hanging tests.. Fixes: . Approved by Brandon Schaefer.
+
+2012-08-03 Thomi Richards <thomi.richards@canonical.com>
+
+ Don't use the gtk Clipboard class. Instead, use the new clipboard emulator in autopilot.
+
+2012-08-09 Andrea Azzarone <azzaronea@gmail.com>
+
+ Cherrypick rev 2539 from lp:~3v1n0/unity/launcher-icon-construction-type.. Fixes: . Approved by Łukasz Zemczak.
+
+2012-08-09 Andrea Azzarone <azzaronea@gmail.com>
+
+ Cherrypick rev 2539 from lp:~3v1n0/unity/launcher-icon-construction-type. Thank you Marco.
+
+2012-08-09 Sebastien Bacher <seb128@ubuntu.com>
+
+ Update the POTFILE.in list of sources. Fixes: . Approved by Łukasz Zemczak.
+
+2012-08-09 Sebastien Bacher <seb128@ubuntu.com>
+
+ Update sources in POTFILES.in
+
+2012-08-03 Andrea Azzarone <azzaronea@gmail.com>
+
+ Revert rev 2525. Fixes: . Approved by Michal Hruby.
+
+2012-08-03 Andrea Azzarone <azzaronea@gmail.com>
+
+ Merge trunk.
+
+2012-08-03 Andrea Azzarone <azzaronea@gmail.com>
+
+ Revert rev 2525.
+
+2012-08-03 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ FavoriteStoreGSettings: remove unneeded methods, use glib::Signal, refactor tests to use memory backend. Fixes: . Approved by Brandon Schaefer.
+
+2012-08-01 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ FavoriteStoreGSettings: use constant values for settings name and keys
+
+2012-08-01 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ FavoriteStoreGSettings: remove unneeded methods, use glib::Signal
+
+2012-08-01 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_favorite_store_gsettings: refactored to use gsettings memory backend
+
+ Plus remove unneeded timeouts
+
+2012-08-03 Sebastien Bacher <seb128@ubuntu.com>
+
+ Don't specify a specific destination for the dbus signals. Fixes: https://bugs.launchpad.net/bugs/1014850. Approved by Michal Hruby.
+
+2012-08-02 Sebastien Bacher <seb128@ubuntu.com>
+
+ Don't specify a specific destination for the dbus signals, that
+ creates issues with the new dbus eavedropping behaviour,
+ thanks Neil J. Patel for the fix!
+
+2012-08-03 Łukasz 'sil2100' Zemczak <lukasz.zemczak@canonical.com>
+
+ Add the libunity private directory to unityshell.so and libunity-core-6.0.so RPATHs, so that they can easily find the libunity-protocol-private.so library on load.. Fixes: . Approved by Michal Hruby.
+
+2012-08-03 Łukasz 'sil2100' Zemczak <lukasz.zemczak@canonical.com>
+
+ As proposed by mhr3, we just re-add unity-protocol-private to the main deps
+
+2012-08-03 Łukasz 'sil2100' Zemczak <lukasz.zemczak@canonical.com>
+
+ Fixed some build issues to incomplete merges and invalid thought process
+
+2012-08-03 Łukasz 'sil2100' Zemczak <lukasz.zemczak@canonical.com>
+
+ Merge in latest trunk changes
+
+2012-08-03 Łukasz 'sil2100' Zemczak <lukasz.zemczak@canonical.com>
+
+ Also added the same RPATH for unity-core.
+
+2012-08-02 Łukasz 'sil2100' Zemczak <lukasz.zemczak@canonical.com>
+
+ Add the libunity private directory to unityshell.so RPATH, so that it can easily find the libunity-protocol-private.so library on load.
+
+2012-08-03 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ unityshell: fix the nvidia crash on glDrawArrays disabling/enabling the client state on nuxPrologue/Epilogue (LP: #982626) (LP: #1031554). Fixes: https://bugs.launchpad.net/bugs/982626, https://bugs.launchpad.net/bugs/1031554. Approved by Daniel van Vugt, Sam Spilsbury.
+
+2012-08-01 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ unityshell: fix the nvidia crash on glDrawArrays disabling/enabling the client state on nuxPrologue/Epilogue
+
+2012-08-03 jokerdino@bvm128.zdom.org
+
+ Add keyboard shortcut for the video lens in the shortcut overlay.. Fixes: https://bugs.launchpad.net/bugs/937334. Approved by Łukasz Zemczak.
+
+2012-07-16 jokerdino@bvm128.zdom.org
+
+ Add shortcut for video lens
+
+2012-08-03 MC Return <mc.return@gmx.net>
+
+ Optimized performance and style following suggestions reported by cppcheck:
+
+ 1. Reduced the scope of various variables.
+
+ 2. Used prefix ++ operators for non-primitive types, because those can be more efficient than post-increment. Post-increment usually keeps a copy of the previous value, adds extra code and is slower.. Fixes: . Approved by Brandon Schaefer, Marco Trevisan (Treviño).
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Reduced the scope of the variable 'TextureObjectLocation' in IconRenderer.cpp
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Reduced the scope of the variable 'radius' in DashStyle.cpp
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Reduced the scope of the variable 'closest_diff' in BGHash.cpp
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Reduced the scope of the variable 'useFbo' in unityshell.cpp
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Reduced the scope of the variable 'key_code' in unityshell.cpp
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Reduced the scope of the variables 'hdirection' and 'vdirection' in unitydialog.cpp
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Reduced the scope of the variable 'fading_pixels' in PanelMenuView.cpp
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Reduced the scope of the variable 'text_width' in PanelIndicatorEntryView.cpp
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in PluginAdapterCompiz.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in IconRenderer.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in unityshell.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in unity-switcher-accessible.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in unity-launcher-accessible.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in nux-layout-accessible.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in unitydialog.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in unity-mt-grab-handles.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issues in LauncherModel.cpp by replacement of postfix ++ operators with prefix ones
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in LauncherController.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issues in Launcher.cpp by replacement of postfix ++ operators with prefix ones
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in ResultViewGrid.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issue in ResultView.cpp by replacement of postfix ++ operator with prefix one
+
+2012-07-30 MC Return <mc.return@gmx.net>
+
+ Fixed possible performance issues in HomeLens.cpp by replacement of postfix ++ operators with prefix ones
+
+2012-08-03 Andrea Azzarone <azzaronea@gmail.com>
+
+ Don't set mouse position on mouse leaving.. Fixes: https://bugs.launchpad.net/bugs/980942. Approved by Brandon Schaefer.
+
+2012-08-02 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix bug 980942.
+
+2012-08-03 Andrea Azzarone <azzaronea@gmail.com>
+
+ Remove gconf dep in panel::Style.. Fixes: . Approved by Marco Trevisan (Treviño).
+
+2012-08-01 Andrea Azzarone <azzaronea@gmail.com>
+
+ Use glib::Signal.
+
+2012-08-01 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix indent bug.
+
+2012-08-01 Andrea Azzarone <azzaronea@gmail.com>
+
+ Use g_setenv("GSETTINGS_BACKEND", "memory", TRUE);
+
+2012-08-01 Andrea Azzarone <azzaronea@gmail.com>
+
+ Minor changes.
+
+2012-08-01 Andrea Azzarone <azzaronea@gmail.com>
+
+ Add unit test.
+
+2012-08-01 Andrea Azzarone <azzaronea@gmail.com>
+
+ Remove check. This key is installed on precise too.
+
+2012-08-01 Andrea Azzarone <azzaronea@gmail.com>
+
+ Don't use glib::Signal for "changed" signal.
+
+2012-07-31 Andrea Azzarone <azzaronea@gmail.com>
+
+ Remove gconf dep in panel::Style.
+
+2012-08-03 Daniel d'Andrada <daniel.dandrada@canonical.com>
+
+ use the gestures support from nux instead of talking to libgeis directly.. Fixes: . Approved by .
+
+2012-07-27 Daniel d'Andrada <daniel.dandrada@canonical.com>
+
+ make tests compilation succeed even if compiz lib is at a non-standard dir
+
+2012-07-27 Daniel d'Andrada <daniel.dandrada@canonical.com>
+
+ Use gestures support from Nux and adapt code for regular gesture rules
+
+ Remove GeisAdapter as we are getting gesture events from Nux instead.
+
+ Then modify code to handle geisv2-style gestures. They require
+ acceptance/rejection and enable multiple simultaneous gestures
+
+2012-08-02 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ The switcher causes a crash if the current desktop has zero results. (Can only happen if you disable Show Desktop Icon). Fixes: . Approved by Marco Trevisan (Treviño).
+
+2012-08-01 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * added and fixed test
+
+2012-08-01 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * fixes a crash if zero results are there in a current workspace
+
+2012-07-30 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ Add the option to disable the ShowDesktop icon in the switcher in CCSM.. Fixes: . Approved by Marco Trevisan (Treviño).
+
+2012-07-30 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Adds a unit test
+
+2012-07-27 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Removed extra space
+
+2012-07-27 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ *Merged trunk. Fixed an AP test
+
+2012-07-26 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Fixed AP test, as well as the switcher code
+
+2012-07-26 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Now the switcher ap test will run all test with and with out the Show Desktop icon.
+
+2012-07-26 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Adds the option to disable the ShowDesktop icon in the switcher
+
+2012-07-30 Andrea Azzarone <azzaronea@gmail.com>
+
+ Avoid extra calls to GetGeometry and GetAbsoluteGeometry.. Fixes: . Approved by Marco Trevisan (Treviño).
+
+2012-07-26 Andrea Azzarone <azzaronea@gmail.com>
+
+ Avoid calls to GetGeometry and GetAbsoluteGeometry.
+
+2012-07-29 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix typo in QuicklistView::RecvItemMouseDrag. It was the cause of the bug #1027955.. Fixes: https://bugs.launchpad.net/bugs/1027955. Approved by Marco Trevisan (Treviño).
+
+2012-07-25 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix typo.
+
+2012-07-25 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix bug 1027955.
+
+2012-07-27 Pawel Stolowski <pawel.stolowski@canonical.com>
+
+ Added image_source_uri property to Preview base class. Fixes: . Approved by Michal Hruby.
+
+2012-07-26 Pawel Stolowski <pawel.stolowski@canonical.com>
+
+ Previews: renamed image_source to image_source_uri in unity protocol lib.
+
+2012-07-26 Pawel Stolowski <pawel.stolowski@canonical.com>
+
+ Require unity-protocol-private 5.93.1, not 5.94.0.
+
+2012-07-26 Pawel Stolowski <pawel.stolowski@canonical.com>
+
+ Previews: renamed thumbnail to image in protocol lib.
+
+2012-07-26 Pawel Stolowski <pawel.stolowski@canonical.com>
+
+ Bumped required verison of unity-protocol-private.
+
+2012-07-26 Pawel Stolowski <pawel.stolowski@canonical.com>
+
+ Previews: renamed image_source preview property to image_source_uri.
+
+2012-07-26 Pawel Stolowski <pawel.stolowski@canonical.com>
+
+ Previews - added image_source preview property (wraps thumbnail_source from the libunity protocol).
+
+2012-07-27 Andrea Azzarone <azzaronea@gmail.com>
+
+ Remove "strut hack" in launcher.cpp. Fixes: https://bugs.launchpad.net/bugs/1024113. Approved by Marco Trevisan (Treviño), jenkins.
+
+2012-07-27 Andrea Azzarone <azzaronea@gmail.com>
+
+ Minor change.
+
+2012-07-19 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix typo.
+
+2012-07-19 Andrea Azzarone <azzaronea@gmail.com>
+
+ Add manual test.
+
+2012-07-19 Andrea Azzarone <azzaronea@gmail.com>
+
+ Merge trunk.
+
+2012-07-13 Andrea Azzarone <azzaronea@gmail.com>
+
+ Remove strut hack. It seems to cause bug 1024113.
+
+2012-07-26 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ The switcher in detail mode will now focus the last active window, instead of the current one. If the current focus window activated the switcher.. Fixes: https://bugs.launchpad.net/bugs/1029215. Approved by Christopher Lee.
+
+2012-07-25 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Fixes detail mode not selecting the last active window.
+ * This also fixes the problem with Detail mode swaping icons.
+
+2012-07-26 Martin Mrazik <martin.mrazik@canonical.com>
+
+ Fixed few manual test-cases which were not consistent with the TEST_TEMPLATE.txt and other manual test-cases.. Fixes: . Approved by Thomi Richards.
+
+2012-07-25 Martin Mrazik <martin.mrazik@canonical.com>
+
+ Fixed occurence of Expected Result_s_
+
+2012-07-25 Martin Mrazik <martin.mrazik@canonical.com>
+
+ Changing few manual tests to be consistent with the TEST_TEMPLATE.txt
+
+2012-07-26 Thomi Richards <thomi.richards@canonical.com>
+
+ Make the autopilot unity logging functions more stable when unity crashes & restarts.. Fixes: . Approved by Christopher Lee.
+
+2012-07-27 Thomi Richards <thomi.richards@canonical.com>
+
+ Don't cache the unity debug logging dbus interface, so if unity crashes and comes back we can continue the test run.
+
+2012-07-26 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ LauncherController: Rewritten EnsureLaunchers() added tests, fix a crash caused by invalid barrier subscriptions.. Fixes: https://bugs.launchpad.net/bugs/1020075. Approved by Andrea Azzarone.
+
+2012-07-26 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_launcher_controller: initialize also GeisAdapter
+
+2012-07-26 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: use auto const& for type
+
+2012-07-26 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ Merging with trunk
+
+2012-07-26 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_launcher_controller: more barrier subscriptions tests
+
+2012-07-26 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_launcher_controller: check the barrier controller subscriptions
+
+2012-07-26 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ LauncherController: make TestLauncherController friend of it
+
+2012-07-26 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: make GetSubscriber public
+
+2012-07-25 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ LauncherController: move launcher::Controller::Impl definition in LauncherControllerPrivate
+
+ So that we can test it!
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_edge_barrier_controller: add subscribing tests
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_edge_barrier_controller: Add test for GetSubscriber
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: fix the monitor/size comparisons
+
+ This fixes a crash, plus add GetSubscriber protected member
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_edge_barrier_controller: check the breaking events with invalid monitor values
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_uscreen_mock.h: add MockUscreen and use it in tests
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ LauncherController: use only one cycle to ensure launchers, and correctly unsubscribe barriers
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_launcher_controller: test removal of internal monitors
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_launcher_controller: add switching tests
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_launcher_controller: added multimonitor launchers tests
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: be safer, always resize the barrier list on setup barriers
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ UScreen: make the default screen a static member, so that we can mock it
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_launcher_controller: added basic LauncherController test
+
+2012-07-24 Bilal Akhtar <bilalakhtar@ubuntu.com>
+
+ SoftwareCenterLauncherIcon: avoid the "Waiting to Install" tooltip to stay after installation
+
+ Be consistent with auto-hiding launcher.. Fixes: https://bugs.launchpad.net/bugs/925014. Approved by Brandon Schaefer, Tim Penhey, Marco Trevisan (Treviño).
+
+2012-06-06 Bilal Akhtar <bilalakhtar@ubuntu.com>
+
+ Fix string{,.h} include, thanks Tim
+
+2012-06-05 Bilal Akhtar <bilalakhtar@ubuntu.com>
+
+ If the aptdaemon transaction ID isn't supplied, then don't change tooltip to "Waiting to install" (Bug #925014)
+
+2012-07-24 Bilal Akhtar <bilalakhtar@ubuntu.com>
+
+ The launcher will auto hide when installing a program from the software center now.. Fixes: https://bugs.launchpad.net/bugs/1002440. Approved by Brandon Schaefer, Marco Trevisan (Treviño).
+
+2012-06-17 Bilal Akhtar <bilalakhtar@ubuntu.com>
+
+ Fix string comparison with SC agent, thanks Tim
+
+2012-06-13 Bilal Akhtar <bilalakhtar@ubuntu.com>
+
+ Merge from trunk
+
+2012-06-13 Bilal Akhtar <bilalakhtar@ubuntu.com>
+
+ Semicolon missed, ah well, blame Python.
+
+2012-06-13 Bilal Akhtar <bilalakhtar@ubuntu.com>
+
+ Return early if the desktop file wasn't specified, or is set to SC agent
+
+2012-06-09 Bilal Akhtar <bilalakhtar@ubuntu.com>
+
+ Unhide launcher only when the animation is feasable (with a desktop file and all) LP: #1002440
+
+2012-07-24 Gary Lasker <gary.lasker@canonical.com>
+
+ manual-tests/SoftwareCenter.txt: added tests for Ubuntu Software Center/Unity launcher integration feature. Fixes: . Approved by Brandon Schaefer, jenkins.
+
+2012-07-22 Gary Lasker <gary.lasker@canonical.com>
+
+ fix typo
+
+2012-07-21 Gary Lasker <gary.lasker@canonical.com>
+
+ clarify tests per Brandon Schaefer's recommendations in the corresponding Unity 5.0 branch MR, https://code.launchpad.net/~gary-lasker/unity/software-center-launcher-integration-tests-for-5.0/+merge/114241
+
+2012-07-21 Gary Lasker <gary.lasker@canonical.com>
+
+ merge trunk
+
+2012-06-25 Gary Lasker <gary.lasker@canonical.com>
+
+ more test details
+
+2012-06-25 Gary Lasker <gary.lasker@canonical.com>
+
+ additional tests to round out the suite, these will thoroughly test all of the bug fixes for Unity branch https://code.launchpad.net/~bilalakhtar/unity/5.0series-sru-software-center-integration-fixes/+merge/110214 and the corresponding Software Center branch https://code.launchpad.net/~gary-lasker/software-center/unity-launcher-integration-fixes
+
+2012-06-25 Gary Lasker <gary.lasker@canonical.com>
+
+ start adding a suite of manual tests for the Ubuntu Software Center Unity launcher integration feature
+
+2012-07-24 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ BarrierEdgeController, PointerBarrier: release the sticky edge after that the user has broken it for configurable ms. Fixes: https://bugs.launchpad.net/bugs/1020058. Approved by jenkins, Brandon Schaefer.
+
+2012-07-20 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: disable the lambda based proxy version
+
+ Nux does not support that yet
+
+2012-07-20 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_edge_barrier_controller: add test for sticky edge property
+
+2012-07-20 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: make sticky_edges property a proxy to launcher options
+
+2012-07-20 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ unityshell.xml.in: changed the short name of the setting
+
+2012-07-20 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ merging with trunk
+
+2012-07-20 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_edge_barrier_controller: added tests for temporary released barrier
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_edge_barrier_controller: no need to explictly set an unhandling subscriber
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_edge_barrier_controller: add MakeBarrierEvent function to generate events
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_edge_barrier_controller: add tests to check the event Processing
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: add ProcessBarrierEvent as protected member
+
+ So we can use it for testing
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_edge_barrier_controller: added skeleton test
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: use make_shared, avoid unneeded namespaces
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_pointer_barrier.cpp can be xless
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_pointer_barrier: added tests for PointerBarrier
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ PointerBarrier: make pointer barrier more testable
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ PointerBarrier: use reinterpret cast
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ unityshell: add option to set the launcher sticky edge disabled duration
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: use the launcher option to set the disable timeout duration
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ LauncherOptions: add edge_passed_disabled_time option
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ LauncherOptions: use initializer list
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: use the barrier's released property to disable the sticky edge
+
+2012-07-19 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ PointerBarrier: add released property, if set remove the notify delay
+
+2012-07-18 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: temporary disable the barrier when just passed through
+
+2012-07-18 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ GLibSource: use std::to_string instead of lexical cast
+
+2012-07-18 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ PointerBarrier: use by-value callback data instead of class data in timeout
+
+ Also use initializer list in BarrierEvent
+
+2012-07-18 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ LauncherHideMachine, LauncherHoverMachine: use std::to_string instead of boost
+
+2012-07-17 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: use unsigned integers for monitor
+
+ (remove evil casts)
+
+2012-07-17 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ LauncherHideMachine, EdgeBarrierController: use stack allocated Decaymulator
+
+2012-07-17 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ EdgeBarrierController: use std::unique_ptr for pimpl
+
+ FIXES MEMORY LEAK!
+
+2012-07-17 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ LauncherController: use stack allcoated EdgeBarrierController
+
+2012-07-23 Martin Mrazik <martin.mrazik@canonical.com>
+
+ Adding gtest_output=xml to unit tests to generate Junit XML. Fixes: . Approved by Tim Penhey, jenkins, Sam Spilsbury.
+
+2012-06-13 Martin Mrazik <martin.mrazik@canonical.com>
+
+ Adding gtest_output=xml to unit tests to generate Junit XML
+
+2012-07-23 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ KeyboardUtil: fix possible crash if XkbGetKeyboard returns null
+
+ Also use initializer list. Fixes: https://bugs.launchpad.net/bugs/920258. Approved by Tim Penhey, Andrea Azzarone, jenkins.
+
+2012-07-06 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ KeyboardUtil: fixed typo
+
+2012-07-06 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ KeyboardUtil: oops fix return value.
+
+2012-07-06 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ KeyboardUtil: fix possible crash if XkbGetKeyboard returns null
+
+ Also use initializer list
+
+2012-07-22 Tim Penhey <tim.penhey@canonical.com>
+
+ Remove the -Wno-uninitialized to bring back the compiler warning for uninitialized variables.. Fixes: . Approved by Christopher Lee.
+
+2012-07-23 Tim Penhey <tim.penhey@canonical.com>
+
+ Initialize some colors.
+
+2012-07-23 Tim Penhey <tim.penhey@canonical.com>
+
+ Make sure that weight is always set.
+
+2012-07-23 Tim Penhey <tim.penhey@canonical.com>
+
+ Merge trunk.
+
+2012-07-18 Tim Penhey <tim.penhey@canonical.com>
+
+ Stop turning off the uninitialized check.
+
+2012-07-19 Martin Mrazik <martin.mrazik@canonical.com>
+
+ Making manual test-cases consistent with TEST_TEMPLATE.txt. Fixes: . Approved by Tim Penhey, jenkins.
+
+2012-07-12 Martin Mrazik <martin.mrazik@canonical.com>
+
+ updated README.txt
+
+2012-07-12 Martin Mrazik <martin.mrazik@canonical.com>
+
+ Making manual test-cases consistent with TEST_TEMPLATE.txt
+
+2012-07-19 Didier Roche <didier.roche@canonical.com>
+
+ Migration session from /desktop/unity/ to /com/canonical/unity/ as the dconf
+ documentation recommends. Fixes: . Approved by jenkins, Michal Hruby.
+
+2012-07-19 Didier Roche <didier.roche@canonical.com>
+
+ move schema and value from old /desktop/unity/ location to /com/canonical/unity/ new one as the dconf documentation recommends
+
+2012-07-18 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix duplicated device launcher icons.. Fixes: https://bugs.launchpad.net/bugs/1010714, https://bugs.launchpad.net/bugs/1010858. Approved by Marco Trevisan (Treviño).
+
+2012-07-19 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix build issue on precise.
+
+2012-07-19 Andrea Azzarone <azzaronea@gmail.com>
+
+ Remove _ prefix.
+
+2012-07-18 Andrea Azzarone <azzaronea@gmail.com>
+
+ Minor change.
+
+2012-07-18 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix build issue.
+
+2012-07-18 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix build issue.
+
+2012-07-18 Andrea Azzarone <azzaronea@gmail.com>
+
+ Mock GVolume too.
+
+2012-07-18 Andrea Azzarone <azzaronea@gmail.com>
+
+ Minor changes.
+
+2012-07-17 Andrea Azzarone <azzaronea@gmail.com>
+
+ Minor changes.
+
+2012-07-17 Andrea Azzarone <azzaronea@gmail.com>
+
+ Add unit test.
+
+2012-07-17 Andrea Azzarone <azzaronea@gmail.com>
+
+ Add a wrapper for GVolumeMonitor.
+
+2012-07-17 Andrea Azzarone <azzaronea@gmail.com>
+
+ Don't duplicate device launcher icons.
+
+2012-07-18 Michal Hruby <michal.mhr@gmail.com>
+
+ Updated the Preview API present in UnityCore to match latest protocol used by libunity. Fixes: . Approved by Marco Trevisan (Treviño), Gord Allott.
+
+2012-07-17 Michal Hruby <michal.mhr@gmail.com>
+
+ Get rid of NoReplyCallback usage, as it disappeared
+
+2012-07-17 Michal Hruby <michal.mhr@gmail.com>
+
+ Merge trunk
+
+2012-07-17 Michal Hruby <michal.mhr@gmail.com>
+
+ Use enum for Track play_state, not just a bool
+
+2012-07-10 Michal Hruby <michal.mhr@gmail.com>
+
+ Add missing properties to ApplicationPreview and LayoutHint enum
+
+2012-07-04 Michal Hruby <michal.mhr@gmail.com>
+
+ Merge trunk
+
+2012-07-02 Michal Hruby <michal.mhr@gmail.com>
+
+ Use unique_ptr for pimpl even in Preview subclasses (and it actually works when one uses proper incantations)
+
+2012-07-02 Michal Hruby <michal.mhr@gmail.com>
+
+ Make Marco happy, get rid of g_strdup...
+
+2012-06-29 Michal Hruby <michal.mhr@gmail.com>
+
+ A couple of issues brought up during review
+
+2012-06-29 Michal Hruby <michal.mhr@gmail.com>
+
+ Merge trunk
+
+2012-06-29 Michal Hruby <michal.mhr@gmail.com>
+
+ Add more tests
+
+2012-06-29 Michal Hruby <michal.mhr@gmail.com>
+
+ Propagate preview_lens and uri to child preview
+
+2012-06-29 Michal Hruby <michal.mhr@gmail.com>
+
+ Implement Preview::PerformAction
+
+2012-06-29 Michal Hruby <michal.mhr@gmail.com>
+
+ Added TestPreviewSignal
+
+2012-06-28 Michal Hruby <michal.mhr@gmail.com>
+
+ Enable TestLens.TestPreview
+
+2012-06-28 Michal Hruby <michal.mhr@gmail.com>
+
+ Whoops parent_lens can't be a shared_ptr
+
+2012-06-28 Michal Hruby <michal.mhr@gmail.com>
+
+ Fix segfault caused by TestFilter
+
+2012-06-28 Michal Hruby <michal.mhr@gmail.com>
+
+ Commit the music signals
+
+2012-06-26 Michal Hruby <michal.mhr@gmail.com>
+
+ Signal lens when SeriesPreview::selected_item_index changes
+
+2012-06-26 Michal Hruby <michal.mhr@gmail.com>
+
+ Prepare base Preview methods for interaction with previews
+
+2012-06-21 Michal Hruby <michal.mhr@gmail.com>
+
+ Merge trunk
+
+2012-06-19 Michal Hruby <michal.mhr@gmail.com>
+
+ Implement SeriesPreview
+
+2012-06-19 Michal Hruby <michal.mhr@gmail.com>
+
+ Add test for MusicPreview
+
+2012-06-19 Michal Hruby <michal.mhr@gmail.com>
+
+ Implement MusicPreview
+
+2012-06-19 Michal Hruby <michal.mhr@gmail.com>
+
+ Implement ApplicationPreview
+
+2012-06-19 Michal Hruby <michal.mhr@gmail.com>
+
+ Implement MoviePreview
+
+2012-06-19 Michal Hruby <michal.mhr@gmail.com>
+
+ Hide stuff under pimpl
+
+2012-06-18 Michal Hruby <michal.mhr@gmail.com>
+
+ Hook up the Preview method
+
+2012-06-18 Michal Hruby <michal.mhr@gmail.com>
+
+ Add a few tests
+
+2012-06-18 Michal Hruby <michal.mhr@gmail.com>
+
+ Wrap actions and info hints
+
+2012-06-18 Michal Hruby <michal.mhr@gmail.com>
+
+ Make it link as well
+
+2012-06-15 Michal Hruby <michal.mhr@gmail.com>
+
+ Start new Preview API
+
+2012-07-17 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ GLibDBusProxy: use glib::Variant instead of std::shared_ptr. Fixes: . Approved by Michal Hruby.
+
+2012-07-17 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ GLibDBusProxy: use glib::Variant instead of std::shared_ptr
+
+2012-07-17 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix 'Launcher Edge Stop Overcome Pressure' when the Launcher is set to autohide and 'Sticky edges' are turned off.. Fixes: https://bugs.launchpad.net/bugs/987955. Approved by Marco Trevisan (Treviño), jenkins.
+
+2012-06-29 Andrea Azzarone <azzaronea@gmail.com>
+
+ Minor changes.
+
+2012-06-28 Andrea Azzarone <azzaronea@gmail.com>
+
+ Add AP test.
+
+2012-06-28 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix bug 987955.
+
+2012-07-16 Thomi Richards <thomi.richards@canonical.com>
+
+ Fix an autopilot panel test and add additional logging to other autopilot tests.. Fixes: . Approved by jenkins, Brandon Schaefer.
+
+2012-07-17 Thomi Richards <thomi.richards@canonical.com>
+
+ Made the test much simpler.
+
+2012-07-17 Thomi Richards <thomi.richards@canonical.com>
+
+ Fixed failing test.
+
+2012-07-16 Thomi Richards <thomi.richards@canonical.com>
+
+ Made the panel assertion a bit more verbose, and removed an error about the Try object being missing.
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_bamflaunchericon: don't try to run an application, just test for the icon name. Fixes: . Approved by jenkins, Brandon Schaefer.
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_bamflaunchericon: updated copyright
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_bamflaunchericon: check default icon for empty application
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ PluginAdapterStandalone: remove the unneeded close implementation
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ test_bamflaunchericon: don't try to run an application, just test for the icon name
+
+2012-07-16 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix launcher autoscroll during dnd.. Fixes: https://bugs.launchpad.net/bugs/987223. Approved by Brandon Schaefer, jenkins.
+
+2012-07-11 Andrea Azzarone <azzaronea@gmail.com>
+
+ Add a manual test.
+
+2012-07-11 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix bug 987223.
+
+2012-07-16 Daniel van Vugt <daniel.van.vugt@canonical.com>
+
+ Fix blinking/flickering of the launcher and panel, especially when running
+ LibreOffice or Emacs. (LP: #1024459). Fixes: https://bugs.launchpad.net/bugs/1024459. Approved by jenkins, Łukasz Zemczak.
+
+2012-07-16 Daniel van Vugt <daniel.van.vugt@canonical.com>
+
+ Don't force shell repaint on every fullscreen redraw. That will cause the
+ panel and launcher to appear over the top of fullscreen windows,
+ intermittently. Which is bad.
+
+2012-07-16 Daniel van Vugt <daniel.van.vugt@canonical.com>
+
+ Rebase on latest upstream lp:unity
+
+2012-07-16 Daniel van Vugt <daniel.van.vugt@canonical.com>
+
+ Add test cases.
+
+2012-07-16 Daniel van Vugt <daniel.van.vugt@canonical.com>
+
+ Fix blinking/flickering of the launcher and panel, especially when running
+ LibreOffice or Emacs. (LP: #1024459)
+
+2012-07-16 Daniel van Vugt <daniel.van.vugt@canonical.com>
+
+ Don't bind the FBO if it's possible it won't get painted and unbound. That
+ could lead the the screen freezing while fullscreen windows are open.
+ (LP: #1024911)
+ . Fixes: https://bugs.launchpad.net/bugs/1024911. Approved by Łukasz Zemczak, jenkins.
+
+2012-07-16 Daniel van Vugt <daniel.van.vugt@canonical.com>
+
+ Add test case.
+
+2012-07-16 Daniel van Vugt <daniel.van.vugt@canonical.com>
+
+ Don't bind the FBO if it's possible it won't get painted and unbound. That
+ could lead the the screen freezing while fullscreen windows are open.
+ (LP: #1024911)
+
+2012-07-15 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ Use std::function instead of sigc::slot. Fixes: . Approved by jenkins, Tim Penhey.
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ GLibDBusProxy: always return on error
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ GLibDBusProxy: use std::shared_ptr with deleter to unref the variant
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ ShortcutView: pass values to lambda by value instead of using sigc::bind
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ Fix various code depending on sigc::slot
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ TextureCache: replace sigc::slot with std::function
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ UBusWrapper: replace sigc::slot with std::function
+
+ Also make UBusConnection struct private and remove the unneeded manager field
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ IconLoader: replace sigc::slot with std::function
+
+ Also don't accept requests from invalid slots
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ GLibDBusProxy: replace sigc::slot with std::function
+
+ Also remove the NoReplyCallback and use default nullptr value
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ GLibSignal: replace sigc::slot with std::function
+
+2012-07-16 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ GLibSource: replace sigc::slot with std::function
+
+2012-07-13 Andrea Azzarone <azzaronea@gmail.com>
+
+ Add test for bug 1020891.. Fixes: https://bugs.launchpad.net/bugs/1020891. Approved by Gord Allott, jenkins.
+
+2012-07-12 Andrea Azzarone <azzaronea@gmail.com>
+
+ Add unit test for branch lp:~andyrock/unity/fix-1020891
+
+2012-07-12 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ Scale mode now does not skip the first super to open the dash.. Fixes: https://bugs.launchpad.net/bugs/1023811. Approved by Thomi Richards.
+
+2012-07-12 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Merged trunk, and fixed ap test
+
+2012-07-12 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Dont set scale_just_active if super was not pressed to start scale.
+
+2012-07-12 Thomi Richards <thomi.richards@canonical.com>
+
+ Fix up panel autopilot tests.. Fixes: . Approved by Christopher Lee, jenkins, Brandon Schaefer.
+
+2012-07-13 Thomi Richards <thomi.richards@canonical.com>
+
+ Well behaved checks now use assertProperty, thereby giving us some grace time.
+
+2012-07-13 Thomi Richards <thomi.richards@canonical.com>
+
+ Merged branch that fixes regressions.
+
+2012-07-12 Thomi Richards <thomi.richards@canonical.com>
+
+ Fixed failing show desktop test.
+
+2012-07-12 Thomi Richards <thomi.richards@canonical.com>
+
+ Fixed failing autopilot test.
+
+2012-07-12 Thomi Richards <thomi.richards@canonical.com>
+
+ Converted a hud test that failed to use the Eventually matcher.
+
+2012-07-12 Thomi Richards <thomi.richards@canonical.com>
+
+ Fixed an error waiting for the Bamf model to update.
+
+2012-07-12 Thomi Richards <thomi.richards@canonical.com>
+
+ Hud now closes correctly.
+
+2012-07-12 Thomi Richards <thomi.richards@canonical.com>
+
+ Made the panel menu entry tests more reliable.
+
+2012-07-13 Thomi Richards <thomi.richards@canonical.com>
+
+ Merged parent.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Fixed erroring panel test.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ FIxed an issue in the hud emulator.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Merged trunk.
+
+2012-07-09 Thomi Richards <thomi.richards@canonical.com>
+
+ Merged prerequisite branch.
+
+2012-07-09 Thomi Richards <thomi.richards@canonical.com>
+
+ Undo the workaround for the panel tests that was needed to avoid a bug in Unity.
+
+2012-07-09 Thomi Richards <thomi.richards@canonical.com>
+
+ Change panel tests to use the new assertProperty method available in autopilot.
+
+2012-07-09 Thomi Richards <thomi.richards@canonical.com>
+
+ Changed case of custom assert methods to be camelCase.
+
+2012-07-12 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ Default Icon used if one isn't found by bamf.. Fixes: https://bugs.launchpad.net/bugs/886778. Approved by Tim Penhey, Thomi Richards.
+
+2012-07-11 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * removed debugging
+
+2012-07-11 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Added gtest for blank icon
+
+2012-07-10 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * test was bad...
+
+2012-07-10 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Adds a gtest
+
+2012-07-10 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * If no icon is found, then use a default one.
+
+2012-07-12 smspillaz <sam.spilsbury@canonical.com>
+
+ Scale the generated fbo tex by the screen dimentions as its screen size
+ and ensure nux sets the reference viewport back to output size.
+
+ (LP: #1016789). Fixes: https://bugs.launchpad.net/bugs/1016789. Approved by Daniel van Vugt, jenkins.
+
+2012-06-23 smspillaz <sam.spilsbury@canonical.com>
+
+ Scale the generated fbo tex by the screen dimentions as its screen size
+ and ensure nux sets the reference viewport back to output size.
+
+ (LP: #1016789)
+
+2012-07-11 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ Quicklist closes when opening the Dash.. Fixes: https://bugs.launchpad.net/bugs/913994. Approved by Thomi Richards.
+
+2012-07-11 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * small fixes
+
+2012-07-11 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Merged trunk, fixed conflicts
+
+2012-07-03 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * mistakes in the ap test
+
+2012-07-02 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Quickilist closes when dash is activated
+
+2012-07-11 Thomi Richards <thomi.richards@canonical.com>
+
+ Fix up switcher test suite to use new assert methods available in the latest autopilot.. Fixes: . Approved by jenkins, Brandon Schaefer.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Made new start_applications() method that starts test apps for the switcher tests. Fixed the rest of the switcher tests to not sleep so much, use new style asserts instead.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Fixed more switcher tests.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Converted the switcher window management tests to use the assertProperty method in favour of the lambda-based Eventually matcher.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Several cleanups to the basic switcher tests.
+
+2012-07-11 Andrea Azzarone <azzaronea@gmail.com>
+
+ Tint the launcher icons that are *not* valid drop receptacles.. Fixes: https://bugs.launchpad.net/bugs/1020891. Approved by Andrea Azzarone.
+
+2012-07-11 Andrea Azzarone <azzaronea@gmail.com>
+
+ Merge trunk.
+
+2012-07-04 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix bug 1020891.
+
+2012-07-11 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix padding issues in quicklist view.. Fixes: https://bugs.launchpad.net/bugs/955158. Approved by Andrea Azzarone.
+
+2012-06-27 Andrea Azzarone <azzaronea@gmail.com>
+
+ Minor changes.
+
+2012-06-26 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix padding issues in QuicklistView.cpp
+
+2012-07-11 Thomi Richards <thomi.richards@canonical.com>
+
+ Autopilot launcher model cleanup.. Fixes: . Approved by Christopher Lee.
+
+2012-07-11 Thomi Richards <thomi.richards@canonical.com>
+
+ Merged trunk, fixed conflicts.
+
+2012-07-11 Thomi Richards <thomi.richards@canonical.com>
+
+ Fixed docstring.
+
+2012-07-11 Thomi Richards <thomi.richards@canonical.com>
+
+ Fixed a spot where we were using filter(...) and we didn't need to.
+
+2012-07-11 Thomi Richards <thomi.richards@canonical.com>
+
+ Removed a bunch of methods that weren't being used in the launcher model, and updated lots of places in the code where we were using get_icon_by_desktop_id and replaced it with get_icon(...) calls, as this is safer.
+
+2012-07-11 Thomi Richards <thomi.richards@canonical.com>
+
+ A couple of quicklist test changes, and added the new get_icon method to the launcher mode.
+
+2012-07-11 Thomi Richards <thomi.richards@canonical.com>
+
+ PEP8 fixes in test_shortcut_hint.py
+
+2012-07-11 Christopher Lee <chris.lee@canonical.com>
+
+ Removed references to files that have been removed. Fixes: . Approved by Tim Penhey.
+
+2012-07-11 Christopher Lee <chris.lee@canonical.com>
+
+ Removed references to files that where removed (revno: 2414)
+
+2012-07-10 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ Hud closes when a Quicklist is open.. Fixes: https://bugs.launchpad.net/bugs/1020246. Approved by Thomi Richards.
+
+2012-07-09 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Merged with trunk, fixed conflicts
+
+2012-07-05 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Merged with trunk and fix confict.
+
+2012-07-05 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * Fixed ap test
+
+2012-07-02 Brandon Schaefer <brandontschaefer@gmail.com>
+
+ * The hud will now open if a quicklist is open
+
+2012-07-10 Andrea Azzarone <azzaronea@gmail.com>
+
+ Unfold valid drop icons.. Fixes: https://bugs.launchpad.net/bugs/839717. Approved by jenkins, Marco Trevisan (Treviño).
+
+2012-07-10 Andrea Azzarone <azzaronea@gmail.com>
+
+ Merge trunk.
+
+2012-07-04 Andrea Azzarone <azzaronea@gmail.com>
+
+ Minor changes to the manual test.
+
+2012-07-04 Andrea Azzarone <azzaronea@gmail.com>
+
+ Add manual test.
+
+2012-07-04 Andrea Azzarone <azzaronea@gmail.com>
+
+ Minor changes.
+
+2012-07-04 Andrea Azzarone <azzaronea@gmail.com>
+
+ Don't link QUIRK_DROP_PRELIGHT and QUIRK_PRESENTED.
+
+2012-07-04 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix bug #839717.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Show desktop autopilot tests now use new-style autopilot assertions.. Fixes: . Approved by Christopher Lee.
+
+2012-07-11 Thomi Richards <thomi.richards@canonical.com>
+
+ Merged trunk.
+
+2012-07-11 Thomi Richards <thomi.richards@canonical.com>
+
+ Pushed switcher icon selection code into the switcher emulator.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Fixed errors.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ No commit message
+2012-07-10 Andrea Azzarone <azzaronea@gmail.com>
+
+ Revert revision 2398.. Fixes: . Approved by Tim Penhey.
+
+2012-07-04 Andrea Azzarone <azzaronea@gmail.com>
+
+ Revert revision 2398.
+
+2012-07-10 Michal Hruby <michal.mhr@gmail.com>
+
+ Added Object::IsType method. Fixes: . Approved by Marco Trevisan (Treviño).
+
+2012-07-04 Michal Hruby <michal.mhr@gmail.com>
+
+ Added Object::IsType method
+
+2012-07-10 Tim Penhey <tim.penhey@canonical.com>
+
+ Reduce the amount of logging spam from bamf by checking for null first.. Fixes: . Approved by Thomi Richards.
+
+2012-07-05 Tim Penhey <tim.penhey@canonical.com>
+
+ Bamf logging changes.
+
+2012-07-10 Christopher Lee <chris.lee@canonical.com>
+
+ Removed 2 fast-switching tests, made them manual tests instead.. Fixes: . Approved by Thomi Richards.
+
+2012-07-09 Christopher Lee <chris.lee@canonical.com>
+
+ Made instructions a little more explicit
+
+2012-07-09 Christopher Lee <chris.lee@canonical.com>
+
+ Removed fast-switching tests, made them manual tests
+
+2012-07-10 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ GLibSource, SourceManager: add utility functions to add timeouts and idles
+
+ Update the code to use them.. Fixes: . Approved by Marco Trevisan (Treviño).
+
+2012-07-09 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ LauncherController: use AddIdle
+
+2012-07-09 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ Merge with trunk
+
+2012-06-09 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ tests, glib::SourceManager: added tests for adding timeouts and idles
+
+2012-06-09 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ Use glib::SourceManager Add utility functions to add Idles and Timeouts
+
+2012-06-09 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ GLibSource, SourceManager: add utility functions to add timeouts and idles
+
+2012-06-09 Marco Trevisan (Treviño) <mail@3v1n0.net>
+
+ glib::Source, rename Source::SourceCallback to Source::Callback
+
+2012-07-10 Andrea Azzarone <azzaronea@gmail.com>
+
+ Fix freezes during dnd.. Fixes: https://bugs.launchpad.net/bugs/772445. Approved by Gord Allott.
+
+2012-07-09 Andrea Azzarone <azzaronea@gmail.com>
+
+ Add manual test.
+
+2012-07-09 Andrea Azzarone <azzaronea@gmail.com>
+
+ Replace g_file_info_get_content_type with g_content_type_guess.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Dash and hud now close on Alt+F4 even when the caps lock or num lock keys are active.. Fixes: https://bugs.launchpad.net/bugs/1022801. Approved by Tim Penhey.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Dash test passes now too.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Hud test passes.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Have failing dash test too.
+
+2012-07-10 Thomi Richards <thomi.richards@canonical.com>
+
+ Have failing test.
+
+2012-07-09 Łukasz 'sil2100' Zemczak <lukasz.zemczak@canonical.com>
+
+ Release\ 6.0.0
+
2012-07-09 Thomi Richards <thomi.richards@canonical.com>
Fix several intermittently failing tests.. Fixes: . Approved by Tim Penhey.
diff --git a/launcher/Launcher.cpp b/launcher/Launcher.cpp
index 137afcadb..901d7247f 100644
--- a/launcher/Launcher.cpp
+++ b/launcher/Launcher.cpp
@@ -1473,11 +1473,14 @@ void Launcher::SetHideMode(LauncherHideMode hidemode)
}
else
{
+ static bool first_time = true;
+
_parent->EnableInputWindow(true, launcher::window_title, false, false);
- if (!sources_.GetSource(STRUT_HACK_TIMEOUT))
+ if (first_time && !sources_.GetSource(STRUT_HACK_TIMEOUT))
{
sources_.AddTimeout(1000, sigc::mem_fun(this, &Launcher::StrutHack), STRUT_HACK_TIMEOUT);
+ first_time = false;
}
_parent->InputWindowEnableStruts(true);
diff --git a/launcher/Launcher.h b/launcher/Launcher.h
index a44671a3d..5c469cb54 100644
--- a/launcher/Launcher.h
+++ b/launcher/Launcher.h
@@ -24,6 +24,7 @@
#include <Nux/View.h>
#include <Nux/BaseWindow.h>
#include <Nux/TimerProc.h>
+#include <NuxGraphics/GestureEvent.h>
#include <NuxGraphics/IOpenGLAsmShader.h>
#include "PointerBarrier.h"
@@ -389,6 +390,8 @@ private:
UBusManager ubus_;
glib::SourceManager sources_;
+
+ friend class TestLauncher;
};
}
diff --git a/launcher/LauncherIcon.cpp b/launcher/LauncherIcon.cpp
index 9a3fa023b..6dcbff56f 100644
--- a/launcher/LauncherIcon.cpp
+++ b/launcher/LauncherIcon.cpp
@@ -87,6 +87,7 @@ LauncherIcon::LauncherIcon(IconType type)
, _last_stable(max_num_monitors)
, _parent_geo(max_num_monitors)
, _saved_center(max_num_monitors)
+ , _allow_quicklist_to_show(true)
{
for (unsigned i = 0; i < unsigned(Quirk::LAST); i++)
{
@@ -153,6 +154,11 @@ void LauncherIcon::LoadQuicklist()
_quicklist = new QuicklistView();
AddChild(_quicklist.GetPointer());
+ _quicklist->mouse_down_outside_pointer_grab_area.connect([&] (int x, int y, unsigned long button_flags, unsigned long key_flags)
+ {
+ _allow_quicklist_to_show = false;
+ });
+
QuicklistManager::Default()->RegisterQuicklist(_quicklist.GetPointer());
}
@@ -532,6 +538,7 @@ LauncherIcon::RecvMouseEnter(int monitor)
void LauncherIcon::RecvMouseLeave(int monitor)
{
_last_monitor = -1;
+ _allow_quicklist_to_show = true;
if (_tooltip)
_tooltip->ShowWindow(false);
@@ -624,16 +631,24 @@ bool LauncherIcon::OpenQuicklist(bool select_first_item, int monitor)
void LauncherIcon::RecvMouseDown(int button, int monitor, unsigned long key_flags)
{
if (button == 3)
- OpenQuicklist();
+ OpenQuicklist(false, monitor);
}
void LauncherIcon::RecvMouseUp(int button, int monitor, unsigned long key_flags)
{
if (button == 3)
{
+ if (_allow_quicklist_to_show)
+ {
+ OpenQuicklist(false, monitor);
+ }
+
if (_quicklist && _quicklist->IsVisible())
+ {
_quicklist->CaptureMouseDownAnyWhereElse(true);
+ }
}
+ _allow_quicklist_to_show = true;
}
void LauncherIcon::RecvMouseClick(int button, int monitor, unsigned long key_flags)
diff --git a/launcher/LauncherIcon.h b/launcher/LauncherIcon.h
index 150479d9e..88fd229ef 100644
--- a/launcher/LauncherIcon.h
+++ b/launcher/LauncherIcon.h
@@ -337,6 +337,8 @@ private:
bool _quirks[unsigned(Quirk::LAST)];
struct timespec _quirk_times[unsigned(Quirk::LAST)];
+ bool _allow_quicklist_to_show;
+
std::list<LauncherEntryRemote::Ptr> _entry_list;
protected:
diff --git a/launcher/LauncherOptions.cpp b/launcher/LauncherOptions.cpp
index 58b29d36d..bee2f0dfa 100644
--- a/launcher/LauncherOptions.cpp
+++ b/launcher/LauncherOptions.cpp
@@ -31,7 +31,7 @@ Options::Options()
, launch_animation(LAUNCH_ANIMATION_PULSE)
, urgent_animation(URGENT_ANIMATION_WIGGLE)
, auto_hide_animation(FADE_AND_SLIDE)
- , backlight_mode(BACKLIGHT_ALWAYS_ON)
+ , backlight_mode(BACKLIGHT_NORMAL)
, reveal_trigger(RevealTrigger::EDGE)
, icon_size(48)
, tile_size(54)
diff --git a/launcher/MockLauncherIcon.h b/launcher/MockLauncherIcon.h
index 8ea98851b..5fa49873c 100644
--- a/launcher/MockLauncherIcon.h
+++ b/launcher/MockLauncherIcon.h
@@ -212,14 +212,14 @@ public:
void SetQuirk(Quirk quirk, bool value)
{
quirks_[unsigned(quirk)] = value;
+ clock_gettime(CLOCK_MONOTONIC, &(quirk_times_[unsigned(quirk)]));
}
void ResetQuirkTime(Quirk quirk) {};
struct timespec GetQuirkTime(Quirk quirk)
{
- timespec tv;
- return tv;
+ return quirk_times_[unsigned(quirk)];
}
IconType GetIconType() const
@@ -345,6 +345,7 @@ private:
int sort_priority_;
IconType type_;
bool quirks_[unsigned(Quirk::LAST)];
+ timespec quirk_times_[unsigned(Quirk::LAST)];
};
}
diff --git a/launcher/SwitcherController.cpp b/launcher/SwitcherController.cpp
index 84b1fe095..d10e120e0 100644
--- a/launcher/SwitcherController.cpp
+++ b/launcher/SwitcherController.cpp
@@ -70,6 +70,13 @@ void Controller::OnBackgroundUpdate(GVariant* data)
view_->background_color = bg_color_;
}
+bool Controller::CanShowSwitcher(const std::vector<AbstractLauncherIcon::Ptr>& results) const
+{
+ bool empty = (show_desktop_disabled_ ? results.empty() : results.size() == 1);
+
+ return (!empty && !WindowManager::Default()->IsWallActive());
+}
+
void Controller::Show(ShowMode show, SortMode sort, bool reverse,
std::vector<AbstractLauncherIcon::Ptr> results)
{
diff --git a/launcher/SwitcherController.h b/launcher/SwitcherController.h
index 9083adb49..9f7bf81ce 100644
--- a/launcher/SwitcherController.h
+++ b/launcher/SwitcherController.h
@@ -70,6 +70,8 @@ public:
void Show(ShowMode show, SortMode sort, bool reverse, std::vector<launcher::AbstractLauncherIcon::Ptr> results);
void Hide(bool accept_state=true);
+ bool CanShowSwitcher(const std::vector<launcher::AbstractLauncherIcon::Ptr>& resutls) const;
+
bool Visible();
void Next();
diff --git a/manual-tests/Launcher.txt b/manual-tests/Launcher.txt
index 4f1ba8f82..407f6ed14 100644
--- a/manual-tests/Launcher.txt
+++ b/manual-tests/Launcher.txt
@@ -679,3 +679,14 @@ Expected Result:
* No icon flickers near the top panel.
* See https://bugs.launchpad.net/unity/+bug/980942/+attachment/3059914/+files/launcher-accordion-effect-tooltip-bug.ogv.
+
+No flickering when resizing the launcher
+-----------------------------------------
+Actions:
+* Open gedit.
+* Maximize it. Make sure it remains maximized during the test.
+* Open Appearance panel in System Settings.
+* Change Launcher Icon Size.
+
+Expected Results:
+* The gedit window must not flicker behind the launcher.
diff --git a/plugins/unityshell/src/unityshell.cpp b/plugins/unityshell/src/unityshell.cpp
index 99871940a..d483ed2dd 100644
--- a/plugins/unityshell/src/unityshell.cpp
+++ b/plugins/unityshell/src/unityshell.cpp
@@ -1895,7 +1895,7 @@ bool UnityScreen::altTabInitiateCommon(CompAction* action, switcher::ShowMode sh
auto results = launcher_controller_->GetAltTabIcons(show_mode == switcher::ShowMode::CURRENT_VIEWPORT,
switcher_controller_->IsShowDesktopDisabled());
- if (!(results.size() == 1 && results[0]->GetIconType() == AbstractLauncherIcon::IconType::DESKTOP) && !results.empty())
+ if (switcher_controller_->CanShowSwitcher(results))
switcher_controller_->Show(show_mode, switcher::SortMode::FOCUS_ORDER, false, results);
return true;
@@ -1949,7 +1949,9 @@ bool UnityScreen::altTabForwardAllInitiate(CompAction* action,
CompAction::State state,
CompOption::Vector& options)
{
- if (switcher_controller_->Visible())
+ if (WindowManager::Default()->IsWallActive())
+ return false;
+ else if (switcher_controller_->Visible())
switcher_controller_->Next();
else
altTabInitiateCommon(action, switcher::ShowMode::ALL);
diff --git a/plugins/unityshell/unityshell.xml.in b/plugins/unityshell/unityshell.xml.in
index 5b89d6543..1f0dab978 100644
--- a/plugins/unityshell/unityshell.xml.in
+++ b/plugins/unityshell/unityshell.xml.in
@@ -205,7 +205,7 @@
<_long>Change how the icons are backlit</_long>
<min>0</min>
<max>4</max>
- <default>0</default>
+ <default>1</default>
<desc>
<value>0</value>
<_name>Backlight Always On</_name>
diff --git a/services/panel-service.c b/services/panel-service.c
index b9d77704a..1b9bf6b25 100644
--- a/services/panel-service.c
+++ b/services/panel-service.c
@@ -30,7 +30,6 @@
#include <string.h>
#include <gtk/gtk.h>
#include <gdk/gdkx.h>
-#include <gconf/gconf-client.h>
#include <X11/extensions/XInput2.h>
#include <X11/XKBlib.h>
@@ -46,8 +45,9 @@ G_DEFINE_TYPE (PanelService, panel_service, G_TYPE_OBJECT);
#define N_TIMEOUT_SLOTS 50
#define MAX_INDICATOR_ENTRIES 50
-#define COMPIZ_OPTIONS_PATH "/apps/compiz-1/plugins/unityshell/screen0/options"
-#define MENU_TOGGLE_KEYBINDING_PATH COMPIZ_OPTIONS_PATH"/panel_first_menu"
+#define COMPIZ_OPTION_SCHEMA "org.compiz.unityshell"
+#define COMPIZ_OPTION_PATH "/org/compiz/profiles/unity/plugins/"
+#define MENU_TOGGLE_KEYBINDING_KEY "panel-first-menu"
static PanelService *static_service = NULL;
@@ -76,7 +76,7 @@ struct _PanelServicePrivate
KeyCode toggle_key;
guint32 toggle_modifiers;
- guint32 key_monitor_id;
+ GSettings *gsettings;
IndicatorObjectEntry *pressed_entry;
gboolean use_event;
@@ -135,20 +135,24 @@ static GdkFilterReturn event_filter (GdkXEvent *ev,
GdkEvent *gev,
PanelService *self);
+static void on_keybinding_changed (GSettings *settings,
+ gchar *key,
+ gpointer data);
+
/*
* GObject stuff
*/
static void
-panel_service_class_dispose (GObject *object)
+panel_service_class_dispose (GObject *self)
{
- PanelServicePrivate *priv = PANEL_SERVICE (object)->priv;
+ PanelServicePrivate *priv = PANEL_SERVICE (self)->priv;
gint i;
g_hash_table_destroy (priv->id2entry_hash);
g_hash_table_destroy (priv->panel2entries_hash);
- gdk_window_remove_filter (NULL, (GdkFilterFunc)event_filter, object);
+ gdk_window_remove_filter (NULL, (GdkFilterFunc)event_filter, self);
if (GTK_IS_WIDGET (priv->menubar) &&
gtk_widget_get_realized (GTK_WIDGET (priv->menubar)))
@@ -186,13 +190,10 @@ panel_service_class_dispose (GObject *object)
}
}
- if (priv->key_monitor_id)
- {
- gconf_client_notify_remove (gconf_client_get_default(), priv->key_monitor_id);
- priv->key_monitor_id = 0;
- }
+ g_signal_handlers_disconnect_by_func (priv->gsettings, on_keybinding_changed, self);
+ g_object_unref (priv->gsettings);
- G_OBJECT_CLASS (panel_service_parent_class)->dispose (object);
+ G_OBJECT_CLASS (panel_service_parent_class)->dispose (self);
}
static void
@@ -479,8 +480,7 @@ initial_resync (PanelService *self)
static void
panel_service_update_menu_keybinding (PanelService *self)
{
- GConfClient *client = gconf_client_get_default ();
- gchar *binding = gconf_client_get_string (client, MENU_TOGGLE_KEYBINDING_PATH, NULL);
+ gchar *binding = g_settings_get_string (self->priv->gsettings, MENU_TOGGLE_KEYBINDING_KEY);
KeyCode keycode = 0;
KeySym keysym = NoSymbol;
@@ -535,8 +535,10 @@ panel_service_update_menu_keybinding (PanelService *self)
g_free (binding);
}
-void
-on_keybinding_changed (GConfClient* client, guint id, GConfEntry* entry, gpointer data)
+static void
+on_keybinding_changed (GSettings *settings,
+ gchar *key,
+ gpointer data)
{
PanelService *self = data;
g_return_if_fail (PANEL_IS_SERVICE (data));
@@ -566,13 +568,10 @@ panel_service_init (PanelService *self)
sort_indicators (self);
suppress_signals = FALSE;
- panel_service_update_menu_keybinding (self);
+ priv->gsettings = g_settings_new_with_path (COMPIZ_OPTION_SCHEMA, COMPIZ_OPTION_PATH);
+ g_signal_connect (priv->gsettings, "changed::"MENU_TOGGLE_KEYBINDING_KEY, G_CALLBACK(on_keybinding_changed), self);
- GConfClient *client = gconf_client_get_default ();
- gconf_client_add_dir (client, COMPIZ_OPTIONS_PATH, GCONF_CLIENT_PRELOAD_NONE, NULL);
- priv->key_monitor_id = gconf_client_notify_add (client, MENU_TOGGLE_KEYBINDING_PATH,
- on_keybinding_changed, self,
- NULL, NULL);
+ panel_service_update_menu_keybinding (self);
priv->initial_sync_id = g_idle_add ((GSourceFunc)initial_resync, self);
}
@@ -904,7 +903,7 @@ on_indicator_menu_show (IndicatorObject *object,
PanelService *self)
{
gchar *entry_id;
-
+
g_return_if_fail (PANEL_IS_SERVICE (self));
if (entry == NULL)
{
@@ -924,7 +923,7 @@ on_indicator_menu_show_now_changed (IndicatorObject *object,
PanelService *self)
{
gchar *entry_id;
-
+
g_return_if_fail (PANEL_IS_SERVICE (self));
if (entry == NULL)
{
diff --git a/tests/autopilot/unity/tests/test_quicklist.py b/tests/autopilot/unity/tests/test_quicklist.py
index 37b354fa2..b253fa071 100644
--- a/tests/autopilot/unity/tests/test_quicklist.py
+++ b/tests/autopilot/unity/tests/test_quicklist.py
@@ -155,6 +155,44 @@ class QuicklistActionTests(UnityTestCase):
self.addCleanup(self.dash.ensure_hidden)
self.assertThat(self.dash.visible, Eventually(Equals(True)))
+ def test_right_click_opens_quicklist_if_already_open(self):
+ """A right click to another icon in the launcher must
+ close the current open quicklist and open the other
+ icons quicklist.
+ lp:890991
+ """
+
+ calc_win = self.start_app_window("Calculator")
+ mahj_win = self.start_app_window("Mahjongg")
+
+ calc_icon = self.launcher.model.get_icon(
+ desktop_id=calc_win.application.desktop_file)
+ mahj_icon = self.launcher.model.get_icon(
+ desktop_id=mahj_win.application.desktop_file)
+
+ calc_ql = self.open_quicklist_for_icon(calc_icon)
+ self.assertThat(calc_ql.active, Eventually(Equals(True)))
+
+ mahj_ql = self.open_quicklist_for_icon(mahj_icon)
+ self.assertThat(mahj_ql.active, Eventually(Equals(True)))
+ self.assertThat(calc_ql.active, Eventually(Equals(False)))
+
+ def test_right_clicking_same_icon_doesnt_reopen_ql(self):
+ """A right click to the same icon in the launcher must
+ not re-open the quicklist if already open. It must hide.
+ """
+
+ calc_win = self.start_app_window("Calculator")
+
+ calc_icon = self.launcher.model.get_icon(
+ desktop_id=calc_win.application.desktop_file)
+
+ calc_ql = self.open_quicklist_for_icon(calc_icon)
+ self.assertThat(calc_ql.active, Eventually(Equals(True)))
+
+ calc_ql = self.open_quicklist_for_icon(calc_icon)
+ self.assertThat(calc_ql.active, Eventually(Equals(False)))
+
class QuicklistKeyNavigationTests(UnityTestCase):
"""Tests for the quicklist key navigation."""
diff --git a/tests/autopilot/unity/tests/test_switcher.py b/tests/autopilot/unity/tests/test_switcher.py
index 8e7704e91..9e7639b8e 100644
--- a/tests/autopilot/unity/tests/test_switcher.py
+++ b/tests/autopilot/unity/tests/test_switcher.py
@@ -417,3 +417,19 @@ class SwitcherWorkspaceTests(SwitcherTestCase):
self.switcher.select()
self.assertProperty(char_win2, is_hidden=False)
+
+ def test_switcher_is_disabled_when_wall_plugin_active(self):
+ """The switcher must not open when the wall plugin is active using ctrl+alt+<direction>."""
+
+ initial_workspace = self.workspace.current_workspace
+ self.addCleanup(self.workspace.switch_to, initial_workspace)
+
+ self.workspace.switch_to(0)
+ sleep(1)
+ self.keyboard.press("Ctrl+Alt+Right")
+ self.addCleanup(self.keyboard.release, "Ctrl+Alt+Right")
+ sleep(1)
+ self.keybinding_hold_part_then_tap("switcher/reveal_normal")
+ self.addCleanup(self.switcher.terminate)
+
+ self.assertThat(self.switcher.visible, Eventually(Equals(False)))
diff --git a/tests/test_launcher.cpp b/tests/test_launcher.cpp
index 634a97ea4..d5f0bb318 100644
--- a/tests/test_launcher.cpp
+++ b/tests/test_launcher.cpp
@@ -24,15 +24,23 @@ using namespace testing;
#include <Nux/Nux.h>
#include <Nux/BaseWindow.h>
-#include "DNDCollectionWindow.h"
-#include "MockLauncherIcon.h"
-#include "Launcher.h"
+#include "launcher/DNDCollectionWindow.h"
+#include "launcher/MockLauncherIcon.h"
+#include "launcher/Launcher.h"
+#include "unity-shared/PanelStyle.h"
+#include "unity-shared/UnitySettings.h"
#include "test_utils.h"
using namespace unity;
+namespace unity
+{
+namespace launcher
+{
namespace
{
+const int STARTING_ANIMATION_DURATION = 150;
+
class MockMockLauncherIcon : public launcher::MockLauncherIcon
{
public:
@@ -41,22 +49,34 @@ public:
MOCK_METHOD1(ShouldHighlightOnDrag, bool(DndData const&));
};
+}
+
class TestLauncher : public Test
{
public:
TestLauncher()
: parent_window_(new nux::BaseWindow("TestLauncherWindow"))
, dnd_collection_window_(new DNDCollectionWindow)
- , model_(new launcher::LauncherModel)
- , launcher_(new launcher::Launcher(parent_window_, dnd_collection_window_))
+ , model_(new LauncherModel)
+ , options_(new Options)
+ , launcher_(new Launcher(parent_window_, dnd_collection_window_))
{
+ launcher_->options = options_;
launcher_->SetModel(model_);
}
+ float IconBackgroundIntensity(AbstractLauncherIcon::Ptr icon, timespec const& current) const
+ {
+ return launcher_->IconBackgroundIntensity(icon, current);
+ }
+
nux::BaseWindow* parent_window_;
nux::ObjectPtr<DNDCollectionWindow> dnd_collection_window_;
- launcher::LauncherModel::Ptr model_;
- nux::ObjectPtr<launcher::Launcher> launcher_;
+ Settings settings;
+ panel::Style panel_style;
+ LauncherModel::Ptr model_;
+ Options::Ptr options_;
+ nux::ObjectPtr<Launcher> launcher_;
};
TEST_F(TestLauncher, TestQuirksDuringDnd)
@@ -89,4 +109,34 @@ TEST_F(TestLauncher, TestQuirksDuringDnd)
EXPECT_TRUE(third->GetQuirk(launcher::AbstractLauncherIcon::Quirk::DESAT));
}
+
+TEST_F(TestLauncher, TestIconBackgroundIntensity)
+{
+ MockMockLauncherIcon::Ptr first(new MockMockLauncherIcon);
+ model_->AddIcon(first);
+
+ MockMockLauncherIcon::Ptr second(new MockMockLauncherIcon);
+ model_->AddIcon(second);
+
+ MockMockLauncherIcon::Ptr third(new MockMockLauncherIcon);
+ model_->AddIcon(third);
+
+ options_->backlight_mode = BACKLIGHT_NORMAL;
+ options_->launch_animation = LAUNCH_ANIMATION_PULSE;
+
+ first->SetQuirk(AbstractLauncherIcon::Quirk::RUNNING, true);
+ second->SetQuirk(AbstractLauncherIcon::Quirk::RUNNING, true);
+ third->SetQuirk(AbstractLauncherIcon::Quirk::RUNNING, false);
+
+ Utils::WaitForTimeoutMSec(STARTING_ANIMATION_DURATION);
+ timespec current;
+ clock_gettime(CLOCK_MONOTONIC, &current);
+
+ EXPECT_THAT(IconBackgroundIntensity(first, current), Gt(0.0f));
+ EXPECT_THAT(IconBackgroundIntensity(second, current), Gt(0.0f));
+ EXPECT_EQ(IconBackgroundIntensity(third, current), 0.0f);
+}
+
+}
}
+
diff --git a/unity-shared/PluginAdapter.h b/unity-shared/PluginAdapter.h
index 70d5e433c..8c9882bd1 100644
--- a/unity-shared/PluginAdapter.h
+++ b/unity-shared/PluginAdapter.h
@@ -92,11 +92,13 @@ public:
void OnLeaveDesktop ();
void TerminateScale();
- bool IsScaleActive();
- bool IsScaleActiveForGroup();
+ bool IsScaleActive() const;
+ bool IsScaleActiveForGroup() const;
void InitiateExpo();
- bool IsExpoActive();
+ bool IsExpoActive() const;
+
+ bool IsWallActive() const;
void ShowGrabHandles(CompWindow* window, bool use_timer);
void HideGrabHandles(CompWindow* window);
@@ -109,22 +111,22 @@ public:
void NotifyCompizEvent(const char* plugin, const char* event, CompOption::Vector& option);
void NotifyNewDecorationState(guint32 xid);
- guint32 GetActiveWindow();
+ guint32 GetActiveWindow() const;
void Decorate(guint32 xid);
void Undecorate(guint32 xid);
// WindowManager implementation
- bool IsWindowMaximized(guint xid);
+ bool IsWindowMaximized(guint xid) const;
bool IsWindowDecorated(guint xid);
- bool IsWindowOnCurrentDesktop(guint xid);
- bool IsWindowObscured(guint xid);
- bool IsWindowMapped(guint xid);
- bool IsWindowVisible(guint32 xid);
- bool IsWindowOnTop(guint32 xid);
- bool IsWindowClosable(guint32 xid);
- bool IsWindowMinimizable(guint32 xid);
- bool IsWindowMaximizable(guint32 xid);
+ bool IsWindowOnCurrentDesktop(guint xid) const;
+ bool IsWindowObscured(guint xid) const;
+ bool IsWindowMapped(guint xid) const;
+ bool IsWindowVisible(guint32 xid) const;
+ bool IsWindowOnTop(guint32 xid) const;
+ bool IsWindowClosable(guint32 xid) const;
+ bool IsWindowMinimizable(guint32 xid) const;
+ bool IsWindowMaximizable(guint32 xid) const;
void Restore(guint32 xid);
void RestoreAt(guint32 xid, int x, int y);
@@ -140,12 +142,12 @@ public:
void FocusWindowGroup(std::vector<Window> windows, FocusVisibility, int monitor = -1, bool only_top_win = true);
bool ScaleWindowGroup(std::vector<Window> windows, int state, bool force);
- bool IsScreenGrabbed();
- bool IsViewPortSwitchStarted();
+ bool IsScreenGrabbed() const;
+ bool IsViewPortSwitchStarted() const;
- unsigned long long GetWindowActiveNumber (guint32 xid);
+ unsigned long long GetWindowActiveNumber (guint32 xid) const;
- bool MaximizeIfBigEnough(CompWindow* window);
+ bool MaximizeIfBigEnough(CompWindow* window) const;
int GetWindowMonitor(guint32 xid) const;
nux::Geometry GetWindowGeometry(guint32 xid) const;
@@ -155,7 +157,7 @@ public:
void CheckWindowIntersections(nux::Geometry const& region, bool &active, bool &any);
- int WorkspaceCount();
+ int WorkspaceCount() const;
void SetCoverageAreaBeforeAutomaximize(float area);
@@ -172,7 +174,7 @@ private:
std::string MatchStringForXids(std::vector<Window> *windows);
void InitiateScale(std::string const& match, int state = 0);
- bool CheckWindowIntersection(nux::Geometry const& region, CompWindow* window);
+ bool CheckWindowIntersection(nux::Geometry const& region, CompWindow* window) const;
void SetMwmWindowHints(Window xid, MotifWmHints* new_hints);
CompScreen* m_Screen;
diff --git a/unity-shared/PluginAdapterCompiz.cpp b/unity-shared/PluginAdapterCompiz.cpp
index 057ccea0c..92ad4cea3 100644
--- a/unity-shared/PluginAdapterCompiz.cpp
+++ b/unity-shared/PluginAdapterCompiz.cpp
@@ -298,7 +298,7 @@ MultiActionList::TerminateAll(CompOption::Vector& extraArgs)
}
unsigned long long
-PluginAdapter::GetWindowActiveNumber (guint32 xid)
+PluginAdapter::GetWindowActiveNumber (guint32 xid) const
{
Window win = xid;
CompWindow* window;
@@ -368,23 +368,29 @@ PluginAdapter::TerminateScale()
}
bool
-PluginAdapter::IsScaleActive()
+PluginAdapter::IsScaleActive() const
{
return m_Screen->grabExist("scale");
}
bool
-PluginAdapter::IsScaleActiveForGroup()
+PluginAdapter::IsScaleActiveForGroup() const
{
return _spread_windows_state && m_Screen->grabExist("scale");
}
bool
-PluginAdapter::IsExpoActive()
+PluginAdapter::IsExpoActive() const
{
return m_Screen->grabExist("expo");
}
+bool
+PluginAdapter::IsWallActive() const
+{
+ return m_Screen->grabExist("wall");
+}
+
void
PluginAdapter::InitiateExpo()
{
@@ -395,13 +401,13 @@ PluginAdapter::InitiateExpo()
// WindowManager implementation
guint32
-PluginAdapter::GetActiveWindow()
+PluginAdapter::GetActiveWindow() const
{
return m_Screen->activeWindow();
}
bool
-PluginAdapter::IsWindowMaximized(guint xid)
+PluginAdapter::IsWindowMaximized(guint xid) const
{
Window win = xid;
CompWindow* window;
@@ -456,7 +462,7 @@ PluginAdapter::IsWindowDecorated(guint32 xid)
}
bool
-PluginAdapter::IsWindowOnCurrentDesktop(guint32 xid)
+PluginAdapter::IsWindowOnCurrentDesktop(guint32 xid) const
{
Window win = xid;
CompWindow* window;
@@ -472,7 +478,7 @@ PluginAdapter::IsWindowOnCurrentDesktop(guint32 xid)
}
bool
-PluginAdapter::IsWindowObscured(guint32 xid)
+PluginAdapter::IsWindowObscured(guint32 xid) const
{
Window win = xid;
CompWindow* window;
@@ -505,7 +511,7 @@ PluginAdapter::IsWindowObscured(guint32 xid)
}
bool
-PluginAdapter::IsWindowMapped(guint32 xid)
+PluginAdapter::IsWindowMapped(guint32 xid) const
{
Window win = xid;
CompWindow* window;
@@ -517,7 +523,7 @@ PluginAdapter::IsWindowMapped(guint32 xid)
}
bool
-PluginAdapter::IsWindowVisible(guint32 xid)
+PluginAdapter::IsWindowVisible(guint32 xid) const
{
Window win = xid;
CompWindow* window;
@@ -530,7 +536,7 @@ PluginAdapter::IsWindowVisible(guint32 xid)
}
bool
-PluginAdapter::IsWindowOnTop(guint32 xid)
+PluginAdapter::IsWindowOnTop(guint32 xid) const
{
Window win = xid;
CompWindow* window = m_Screen->findWindow(win);
@@ -569,7 +575,7 @@ PluginAdapter::IsWindowOnTop(guint32 xid)
}
bool
-PluginAdapter::IsWindowClosable(guint32 xid)
+PluginAdapter::IsWindowClosable(guint32 xid) const
{
Window win = xid;
CompWindow* window;
@@ -582,7 +588,7 @@ PluginAdapter::IsWindowClosable(guint32 xid)
}
bool
-PluginAdapter::IsWindowMinimizable(guint32 xid)
+PluginAdapter::IsWindowMinimizable(guint32 xid) const
{
Window win = xid;
CompWindow* window;
@@ -595,7 +601,7 @@ PluginAdapter::IsWindowMinimizable(guint32 xid)
}
bool
-PluginAdapter::IsWindowMaximizable(guint32 xid)
+PluginAdapter::IsWindowMaximizable(guint32 xid) const
{
Window win = xid;
CompWindow* window;
@@ -965,7 +971,7 @@ PluginAdapter::GetWorkAreaGeometry(guint32 xid) const
}
bool
-PluginAdapter::CheckWindowIntersection(nux::Geometry const& region, CompWindow* window)
+PluginAdapter::CheckWindowIntersection(nux::Geometry const& region, CompWindow* window) const
{
int intersect_types = CompWindowTypeNormalMask | CompWindowTypeDialogMask |
CompWindowTypeModalDialogMask | CompWindowTypeUtilMask;
@@ -1022,7 +1028,7 @@ PluginAdapter::CheckWindowIntersections (nux::Geometry const& region, bool &acti
}
int
-PluginAdapter::WorkspaceCount()
+PluginAdapter::WorkspaceCount() const
{
return m_Screen->vpSize().width() * m_Screen->vpSize().height();
}
@@ -1105,19 +1111,19 @@ PluginAdapter::Undecorate(guint32 xid)
}
bool
-PluginAdapter::IsScreenGrabbed()
+PluginAdapter::IsScreenGrabbed() const
{
return m_Screen->grabbed();
}
bool
-PluginAdapter::IsViewPortSwitchStarted()
+PluginAdapter::IsViewPortSwitchStarted() const
{
return _vp_switch_started;
}
/* Returns true if the window was maximized */
-bool PluginAdapter::MaximizeIfBigEnough(CompWindow* window)
+bool PluginAdapter::MaximizeIfBigEnough(CompWindow* window) const
{
XClassHint classHint;
Status status;
diff --git a/unity-shared/PluginAdapterStandalone.cpp b/unity-shared/PluginAdapterStandalone.cpp
index 45d0d5723..9ba893021 100644
--- a/unity-shared/PluginAdapterStandalone.cpp
+++ b/unity-shared/PluginAdapterStandalone.cpp
@@ -125,7 +125,7 @@ MultiActionList::TerminateAll(CompOption::Vector& extraArgs)
}
unsigned long long
-PluginAdapter::GetWindowActiveNumber (guint32 xid)
+PluginAdapter::GetWindowActiveNumber (guint32 xid) const
{
return 0;
}
@@ -157,19 +157,19 @@ PluginAdapter::TerminateScale()
}
bool
-PluginAdapter::IsScaleActive()
+PluginAdapter::IsScaleActive() const
{
return false;
}
bool
-PluginAdapter::IsScaleActiveForGroup()
+PluginAdapter::IsScaleActiveForGroup() const
{
return false;
}
bool
-PluginAdapter::IsExpoActive()
+PluginAdapter::IsExpoActive() const
{
return false;
}
@@ -179,15 +179,21 @@ PluginAdapter::InitiateExpo()
{
}
+bool
+PluginAdapter::IsWallActive() const
+{
+ return false;
+}
+
// WindowManager implementation
guint32
-PluginAdapter::GetActiveWindow()
+PluginAdapter::GetActiveWindow() const
{
return 0;
}
bool
-PluginAdapter::IsWindowMaximized(guint xid)
+PluginAdapter::IsWindowMaximized(guint xid) const
{
return false;
}
@@ -199,49 +205,49 @@ PluginAdapter::IsWindowDecorated(guint32 xid)
}
bool
-PluginAdapter::IsWindowOnCurrentDesktop(guint32 xid)
+PluginAdapter::IsWindowOnCurrentDesktop(guint32 xid) const
{
return false;
}
bool
-PluginAdapter::IsWindowObscured(guint32 xid)
+PluginAdapter::IsWindowObscured(guint32 xid) const
{
return false;
}
bool
-PluginAdapter::IsWindowMapped(guint32 xid)
+PluginAdapter::IsWindowMapped(guint32 xid) const
{
return false;
}
bool
-PluginAdapter::IsWindowVisible(guint32 xid)
+PluginAdapter::IsWindowVisible(guint32 xid) const
{
return false;
}
bool
-PluginAdapter::IsWindowOnTop(guint32 xid)
+PluginAdapter::IsWindowOnTop(guint32 xid) const
{
return false;
}
bool
-PluginAdapter::IsWindowClosable(guint32 xid)
+PluginAdapter::IsWindowClosable(guint32 xid) const
{
return false;
}
bool
-PluginAdapter::IsWindowMinimizable(guint32 xid)
+PluginAdapter::IsWindowMinimizable(guint32 xid) const
{
return false;
}
bool
-PluginAdapter::IsWindowMaximizable(guint32 xid)
+PluginAdapter::IsWindowMaximizable(guint32 xid) const
{
return false;
}
@@ -347,7 +353,7 @@ PluginAdapter::GetWorkAreaGeometry(guint32 xid) const
}
bool
-PluginAdapter::CheckWindowIntersection(nux::Geometry const& region, CompWindow* window)
+PluginAdapter::CheckWindowIntersection(nux::Geometry const& region, CompWindow* window) const
{
return false;
}
@@ -358,7 +364,7 @@ PluginAdapter::CheckWindowIntersections (nux::Geometry const& region, bool &acti
}
int
-PluginAdapter::WorkspaceCount()
+PluginAdapter::WorkspaceCount() const
{
return 4;
}
@@ -379,19 +385,19 @@ PluginAdapter::Undecorate(guint32 xid)
}
bool
-PluginAdapter::IsScreenGrabbed()
+PluginAdapter::IsScreenGrabbed() const
{
return false;
}
bool
-PluginAdapter::IsViewPortSwitchStarted()
+PluginAdapter::IsViewPortSwitchStarted() const
{
return false;
}
/* Returns true if the window was maximized */
-bool PluginAdapter::MaximizeIfBigEnough(CompWindow* window)
+bool PluginAdapter::MaximizeIfBigEnough(CompWindow* window) const
{
return true;
}
diff --git a/unity-shared/WindowManager.cpp b/unity-shared/WindowManager.cpp
index 87d714477..5f5cd6519 100644
--- a/unity-shared/WindowManager.cpp
+++ b/unity-shared/WindowManager.cpp
@@ -23,22 +23,22 @@ static WindowManager* window_manager = NULL;
class WindowManagerDummy : public WindowManager
{
- guint32 GetActiveWindow()
+ guint32 GetActiveWindow() const
{
return 0;
}
- unsigned long long GetWindowActiveNumber (guint32 xid)
+ unsigned long long GetWindowActiveNumber (guint32 xid) const
{
return 0;
}
- bool IsScreenGrabbed()
+ bool IsScreenGrabbed() const
{
return false;
}
- bool IsViewPortSwitchStarted()
+ bool IsViewPortSwitchStarted() const
{
return false;
}
@@ -48,7 +48,7 @@ class WindowManagerDummy : public WindowManager
g_debug("%s", G_STRFUNC);
}
- bool IsWindowMaximized(guint32 xid)
+ bool IsWindowMaximized(guint32 xid) const
{
return false;
}
@@ -58,42 +58,42 @@ class WindowManagerDummy : public WindowManager
return true;
}
- bool IsWindowOnCurrentDesktop(guint32 xid)
+ bool IsWindowOnCurrentDesktop(guint32 xid) const
{
return true;
}
- bool IsWindowObscured(guint32 xid)
+ bool IsWindowObscured(guint32 xid) const
{
return false;
}
- bool IsWindowMapped(guint32 xid)
+ bool IsWindowMapped(guint32 xid) const
{
return true;
}
- bool IsWindowVisible(guint32 xid)
+ bool IsWindowVisible(guint32 xid) const
{
return true;
}
- bool IsWindowOnTop(guint32 xid)
+ bool IsWindowOnTop(guint32 xid) const
{
return false;
}
- bool IsWindowClosable(guint32 xid)
+ bool IsWindowClosable(guint32 xid) const
{
return true;
}
- bool IsWindowMinimizable(guint32 xid)
+ bool IsWindowMinimizable(guint32 xid) const
{
return true;
}
- bool IsWindowMaximizable(guint32 xid)
+ bool IsWindowMaximizable(guint32 xid) const
{
return true;
}
@@ -182,7 +182,7 @@ class WindowManagerDummy : public WindowManager
any = false;
}
- int WorkspaceCount ()
+ int WorkspaceCount () const
{
return 1;
}
@@ -192,13 +192,13 @@ class WindowManagerDummy : public WindowManager
g_debug("%s", G_STRFUNC);
}
- bool IsScaleActive()
+ bool IsScaleActive() const
{
g_debug("%s", G_STRFUNC);
return false;
}
- bool IsScaleActiveForGroup()
+ bool IsScaleActiveForGroup() const
{
g_debug("%s", G_STRFUNC);
return false;
@@ -209,7 +209,13 @@ class WindowManagerDummy : public WindowManager
g_debug("%s", G_STRFUNC);
}
- bool IsExpoActive()
+ bool IsExpoActive() const
+ {
+ g_debug("%s", G_STRFUNC);
+ return false;
+ }
+
+ bool IsWallActive() const
{
g_debug("%s", G_STRFUNC);
return false;
diff --git a/unity-shared/WindowManager.h b/unity-shared/WindowManager.h
index 1f828b45a..84ae82485 100644
--- a/unity-shared/WindowManager.h
+++ b/unity-shared/WindowManager.h
@@ -49,18 +49,18 @@ public:
static WindowManager* Default();
static void SetDefault(WindowManager* manager);
- virtual guint32 GetActiveWindow() = 0;
+ virtual guint32 GetActiveWindow() const = 0;
- virtual bool IsWindowMaximized(guint32 xid) = 0;
+ virtual bool IsWindowMaximized(guint32 xid) const = 0;
virtual bool IsWindowDecorated(guint32 xid) = 0;
- virtual bool IsWindowOnCurrentDesktop(guint32 xid) = 0;
- virtual bool IsWindowObscured(guint32 xid) = 0;
- virtual bool IsWindowMapped(guint32 xid) = 0;
- virtual bool IsWindowVisible(guint32 xid) = 0;
- virtual bool IsWindowOnTop(guint32 xid) = 0;
- virtual bool IsWindowClosable(guint32 xid) = 0;
- virtual bool IsWindowMinimizable(guint32 xid) = 0;
- virtual bool IsWindowMaximizable(guint32 xid) = 0;
+ virtual bool IsWindowOnCurrentDesktop(guint32 xid) const = 0;
+ virtual bool IsWindowObscured(guint32 xid) const = 0;
+ virtual bool IsWindowMapped(guint32 xid) const = 0;
+ virtual bool IsWindowVisible(guint32 xid) const = 0;
+ virtual bool IsWindowOnTop(guint32 xid) const = 0;
+ virtual bool IsWindowClosable(guint32 xid) const = 0;
+ virtual bool IsWindowMinimizable(guint32 xid) const = 0;
+ virtual bool IsWindowMaximizable(guint32 xid) const = 0;
virtual void ShowDesktop() = 0;
@@ -74,11 +74,13 @@ public:
virtual void Lower(guint32 xid) = 0;
virtual void TerminateScale() = 0;
- virtual bool IsScaleActive() = 0;
- virtual bool IsScaleActiveForGroup() = 0;
+ virtual bool IsScaleActive() const = 0;
+ virtual bool IsScaleActiveForGroup() const = 0;
virtual void InitiateExpo() = 0;
- virtual bool IsExpoActive() = 0;
+ virtual bool IsExpoActive() const = 0;
+
+ virtual bool IsWallActive() const = 0;
virtual void FocusWindowGroup(std::vector<Window> windows, FocusVisibility, int monitor = -1, bool only_top_win = true) = 0;
virtual bool ScaleWindowGroup(std::vector<Window> windows, int state, bool force) = 0;
@@ -86,8 +88,8 @@ public:
virtual void Decorate(guint32 xid) {};
virtual void Undecorate(guint32 xid) {};
- virtual bool IsScreenGrabbed() = 0;
- virtual bool IsViewPortSwitchStarted() = 0;
+ virtual bool IsScreenGrabbed() const = 0;
+ virtual bool IsViewPortSwitchStarted() const = 0;
virtual void MoveResizeWindow(guint32 xid, nux::Geometry geometry) = 0;
void StartMove(guint32 xid, int, int);
@@ -98,13 +100,13 @@ public:
virtual nux::Geometry GetScreenGeometry() const = 0;
virtual nux::Geometry GetWorkAreaGeometry(guint32 xid = 0) const = 0;
- virtual unsigned long long GetWindowActiveNumber(guint32 xid) = 0;
+ virtual unsigned long long GetWindowActiveNumber(guint32 xid) const = 0;
virtual void SetWindowIconGeometry(Window window, nux::Geometry const& geo) = 0;
virtual void CheckWindowIntersections (nux::Geometry const& region, bool &active, bool &any) = 0;
- virtual int WorkspaceCount() = 0;
+ virtual int WorkspaceCount() const = 0;
virtual bool saveInputFocus() = 0;
virtual bool restoreInputFocus() = 0;