Checkbox gets hidden to the launcher when too many commands run in a short space of time
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Checkbox |
Fix Released
|
High
|
Daniel Manrique | ||
checkbox (Ubuntu) |
Fix Released
|
High
|
Daniel Manrique | ||
Oneiric |
Won't Fix
|
Undecided
|
Unassigned |
Bug Description
It seems that when Checkbox runs a command as part of a test, it will jump into the Unity launcher and require the user to switch back to its window somehow. This makes it very difficult to use at the moment.
[Impact]
When running tests using Checkbox on an Ubuntu system with Unity 3D (the default, so a lot of people will have this config), checkbox often "minimizes" itself during the tests. It gets "swallowed" by Unity, and from the user's point of view it simply disappears. This is very confusing for users; they may think checkbox just crashed, or even if they realize it's in the dash and bring it back, the same behavior is likely to occur multiple times during a test run. This makes the testing process confusing and cumbersome.
Given the exposure checkbox has received as the testing client for Ubuntu Friendly, having this fix in the stable 11.10 release would be desirable, as otherwise we're providing a very poor testing experience that can hinder adoption and usefulness of Ubuntu Friendly.
[Development Fix]
Since the main checkbox window is actually a GtkDialog, and the progress indicator dialog actually a GtkWindow, Unity was getting confused about which one was the main window and which one has to be minimized to the dash.
Checkbox revision 1109 addresses this by getting rid of the progress indicator popup window. The progress indicator has instead been moved as a widget inside the main GtkDialog. It just gets hidden and shown as needed. The code changes are purposefully small, and most of the work resides in the .ui file, where the box_wait component was simply moved from its containing window_wait (which is removed altogether) to a slot inside the main dialog's GtkVBox.
[Stable Fix]
This is fixed in http://
[Test Case]
- Start "system testing" (checkbox-gtk version 0.12.8) on an 11.10 system using Unity 3d.
- Press "Next" and provide password when prompted.
- Leave all tests and suites selected and press Next.
- When the tests start, just press "alt-X" to invoke the "Next" button, skipping all the tests.
- Checkbox will eventually minimize to the dash. The behavior is somewhat unpredictable but easily reproducible.
- Restore checkbox and continue pressing 'Next' until the test run finishes. This is to observe how many times the behavior occurs during a test run.
[Regression Potential]This is just a rearranging of GUI components with a small code change. Regressions are quite unlikely, consisting perhaps of further UI quirks (though potentially not as disrupting as this one). None of the submitted changes are likely to result in the application crashing or other undesirable behavior.
ProblemType: BugDistroRelease: Ubuntu 11.10
Package: checkbox 0.12.8
ProcVersionSign
Uname: Linux 3.0.0-12-
ApportVersion: 1.23-0ubuntu2
Architecture: i386
CheckboxSubmission: d8c5f3e985fb348
CheckboxSystem: b845c366ea09c60
Date: Thu Oct 6 09:55:44 2011
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Beta i386 (20110921.2)
ProcEnviron:
LANGUAGE=en_GB:en
LANG=en_GB.UTF-8
SHELL=
UpgradeStatus: No upgrade log present (probably fresh install)
Related branches
- Brendan Donegan (community): Approve
-
Diff: 128 lines (+42/-42)3 files modifiedcheckbox_gtk/gtk_interface.py (+2/-4)
debian/changelog (+3/-1)
gtk/checkbox-gtk.ui (+37/-37)
- Ubuntu Sponsors: Pending requested
-
Diff: 18858 lines (+9936/-3266)93 files modifiedcheckbox/application.py (+5/-5)
checkbox/contrib/persist.py (+5/-4)
checkbox/dispatcher.py (+201/-0)
checkbox/lib/bit.py (+5/-4)
checkbox/lib/config.py (+15/-2)
checkbox/lib/conversion.py (+131/-42)
checkbox/lib/dmi.py (+169/-18)
checkbox/lib/safe.py (+5/-0)
checkbox/lib/template.py (+1/-1)
checkbox/message.py (+4/-3)
checkbox/parsers/cpuinfo.py (+30/-41)
checkbox/parsers/cputable (+40/-0)
checkbox/parsers/cputable.py (+42/-0)
checkbox/parsers/deferred.py (+27/-0)
checkbox/parsers/dmidecode.py (+123/-0)
checkbox/parsers/meminfo.py (+46/-0)
checkbox/parsers/submission.py (+474/-383)
checkbox/parsers/udevadm.py (+178/-317)
checkbox_cli/cli_interface.py (+9/-1)
checkbox_gtk/gtk_interface.py (+4/-4)
data/whitelists/default.whitelist (+1/-0)
debian/changelog (+59/-0)
debian/po/ro.po (+118/-0)
examples/checkbox.ini (+1/-1)
gtk/checkbox-gtk.ui (+37/-37)
jobs/apport.txt.in (+0/-5)
jobs/audio.txt.in (+44/-24)
jobs/autotest.txt.in (+4/-2)
jobs/bluetooth.txt.in (+64/-52)
jobs/camera.txt.in (+19/-12)
jobs/codecs.txt.in (+16/-38)
jobs/cpu.txt.in (+3/-3)
jobs/daemons.txt.in (+11/-11)
jobs/disk.txt.in (+6/-5)
jobs/evolution.txt.in (+0/-26)
jobs/fingerprint.txt.in (+24/-20)
jobs/firewire.txt.in (+9/-8)
jobs/gcalctool.txt.in (+0/-52)
jobs/gedit.txt.in (+0/-22)
jobs/gnome-terminal.txt.in (+0/-12)
jobs/graphics.txt.in (+63/-51)
jobs/hibernate.txt.in (+9/-7)
jobs/info.txt.in (+47/-27)
jobs/input.txt.in (+15/-7)
jobs/install.txt.in (+1/-1)
jobs/keys.txt.in (+58/-45)
jobs/local.txt.in (+41/-6)
jobs/ltp.txt.in (+3/-2)
jobs/mago.txt.in (+4/-2)
jobs/mediacard.txt.in (+106/-84)
jobs/memory.txt.in (+8/-5)
jobs/miscellanea.txt.in (+19/-8)
jobs/monitor.txt.in (+43/-24)
jobs/networking.txt.in (+31/-32)
jobs/optical.txt.in (+56/-42)
jobs/panel_clock_test.txt.in (+18/-15)
jobs/panel_reboot.txt.in (+8/-6)
jobs/pcmcia-pcix.txt.in (+6/-3)
jobs/peripheral.txt.in (+27/-22)
jobs/phoronix.txt.in (+4/-2)
jobs/power-management.txt.in (+32/-18)
jobs/qa_regression.txt.in (+4/-2)
jobs/resource.txt.in (+15/-0)
jobs/screenshot.txt.in (+0/-13)
jobs/server-services.txt.in (+12/-12)
jobs/stress.txt.in (+18/-10)
jobs/suspend.txt.in (+52/-31)
jobs/usb.txt.in (+55/-36)
jobs/user_apps.txt.in (+337/-110)
jobs/wireless.txt.in (+9/-9)
plugins/apport_prompt.py (+1/-1)
plugins/launchpad_report.py (+6/-4)
plugins/persist_info.py (+2/-1)
plugins/resource_info.py (+14/-1)
plugins/system_info.py (+2/-2)
po/POTFILES.in (+0/-6)
po/ca@valencia.po (+2897/-0)
po/el.po (+229/-293)
po/en_GB.po (+240/-240)
po/gd.po (+2606/-0)
po/ja.po (+297/-335)
po/lt.po (+294/-357)
po/tr.po (+217/-177)
scripts/connect_wireless (+1/-1)
scripts/cpuinfo_resource (+13/-17)
scripts/dmi_resource (+55/-0)
scripts/hal_resource (+0/-5)
scripts/meminfo_resource (+15/-27)
scripts/package_resource (+6/-0)
scripts/udev_resource (+2/-2)
scripts/usb_test (+5/-3)
setup.cfg (+1/-7)
setup.py (+2/-0)
- Luke Yelavich (community): Approve
-
Diff: 279 lines (+82/-54)10 files modifiedcheckbox/contrib/persist.py (+5/-4)
checkbox/lib/safe.py (+5/-0)
checkbox/message.py (+4/-3)
checkbox_gtk/gtk_interface.py (+2/-4)
debian/changelog (+20/-0)
gtk/checkbox-gtk.ui (+37/-37)
jobs/input.txt.in (+1/-1)
plugins/persist_info.py (+2/-1)
scripts/connect_wireless (+1/-1)
scripts/usb_test (+5/-3)
summary: |
- Checkbox gets swallowed by the launcher whenever a command runs + Checkbox gets swallowed by the launcher sometimes when a command runs |
Changed in checkbox: | |
status: | New → Confirmed |
assignee: | nobody → Brendan Donegan (brendan-donegan) |
summary: |
- Checkbox gets swallowed by the launcher sometimes when a command runs + Checkbox gets hidden to the launcher when too many commands run in a + short space of time |
Changed in checkbox: | |
status: | In Progress → Triaged |
assignee: | Brendan Donegan (brendan-donegan) → nobody |
Changed in checkbox: | |
status: | Triaged → In Progress |
assignee: | nobody → Daniel Manrique (roadmr) |
Changed in checkbox (Ubuntu): | |
status: | Confirmed → In Progress |
assignee: | nobody → Daniel Manrique (roadmr) |
description: | updated |
Changed in checkbox: | |
status: | In Progress → Fix Committed |
Changed in checkbox: | |
status: | Fix Committed → Fix Released |
description: | updated |
description: | updated |
description: | updated |
A bit annoying, yes. We will need to include this in a SRU