diff options
| -rw-r--r-- | AUTHORS | 5 | ||||
| -rw-r--r-- | CMakeLists.txt | 4 | ||||
| -rw-r--r-- | ChangeLog | 1505 | ||||
| -rw-r--r-- | launcher/Launcher.cpp | 5 | ||||
| -rw-r--r-- | launcher/Launcher.h | 3 | ||||
| -rw-r--r-- | launcher/LauncherIcon.cpp | 17 | ||||
| -rw-r--r-- | launcher/LauncherIcon.h | 2 | ||||
| -rw-r--r-- | launcher/LauncherOptions.cpp | 2 | ||||
| -rw-r--r-- | launcher/MockLauncherIcon.h | 5 | ||||
| -rw-r--r-- | launcher/SwitcherController.cpp | 7 | ||||
| -rw-r--r-- | launcher/SwitcherController.h | 2 | ||||
| -rw-r--r-- | manual-tests/Launcher.txt | 11 | ||||
| -rw-r--r-- | plugins/unityshell/src/unityshell.cpp | 6 | ||||
| -rw-r--r-- | plugins/unityshell/unityshell.xml.in | 2 | ||||
| -rw-r--r-- | services/panel-service.c | 49 | ||||
| -rw-r--r-- | tests/autopilot/unity/tests/test_quicklist.py | 38 | ||||
| -rw-r--r-- | tests/autopilot/unity/tests/test_switcher.py | 16 | ||||
| -rw-r--r-- | tests/test_launcher.cpp | 64 | ||||
| -rw-r--r-- | unity-shared/PluginAdapter.h | 40 | ||||
| -rw-r--r-- | unity-shared/PluginAdapterCompiz.cpp | 44 | ||||
| -rw-r--r-- | unity-shared/PluginAdapterStandalone.cpp | 44 | ||||
| -rw-r--r-- | unity-shared/WindowManager.cpp | 40 | ||||
| -rw-r--r-- | unity-shared/WindowManager.h | 36 |
23 files changed, 1814 insertions, 133 deletions
@@ -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") @@ -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, ¤t); + + 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; |
