@@ -390,5 +390,57 @@ IndicatorTest {
390 tap(panel, touchPosX, touchPosY);
390 tap(panel, touchPosX, touchPosY);
391 compare(backgroundPressedSpy.count, 2);
391 compare(backgroundPressedSpy.count, 2);
395+ Regression test for https://bugs.launchpad.net/ubuntu/+source/unity8/+bug/1439318
396+ When the panel is in fullscreen mode and the user taps near the top edge,
397+ the panel should take no action and the tap should reach the item behind the
400+ function test_tapNearTopEdgeWithPanelInFullscreenMode() {
401+ var indicatorArea = findChild(panel, "indicatorArea");
402+ verify(indicatorArea);
403+ var panelPriv = findInvisibleChild(panel, "panelPriv");
406+ panel.fullscreenMode = true;
407+ // wait until if finishes hiding itself
408+ tryCompare(indicatorArea, "y", -panelPriv.indicatorHeight);
410+ compare(panel.indicators.shown, false);
411+ verify(panel.indicators.fullyClosed);
413+ // tap near the very top of the screen
414+ tap(itemArea, itemArea.width / 2, 2);
416+ // the tap should have reached the item behind the panel
417+ compare(backgroundPressedSpy.count, 2);
419+ // give it a couple of event loop iterations for any animations etc to kick in
422+ compare(panel.indicators.shown, false);
423+ verify(panel.indicators.fullyClosed);
426+ function test_openAndClosePanelWithMouseClicks() {
427+ compare(panel.indicators.shown, false);
428+ verify(panel.indicators.fullyClosed);
430+ mouseClick(panel.indicators,
431+ panel.indicators.width / 2,
432+ panel.indicators.minimizedPanelHeight / 2);
434+ compare(panel.indicators.shown, true);
435+ tryCompare(panel.indicators, "fullyOpened", true);
437+ var handle = findChild(panel.indicators, "handle");
442+ compare(panel.indicators.shown, false);
443+ tryCompare(panel.indicators, "fullyClosed", true);