@@ -654,5 +654,31 @@ Item {
654 var closeButton = findChild(dashAppDelegate, "closeWindowButton");
654 var closeButton = findChild(dashAppDelegate, "closeWindowButton");
655 tryCompare(closeButton, "visible", false);
655 tryCompare(closeButton, "visible", false);
658+ function test_hideMaximizeButtonWhenSizeConstrained() {
659+ var dialerDelegate = startApplication("dialer-app");
661+ var dialerMaximizeButton = findChild(dialerDelegate, "maximizeWindowButton");
662+ tryCompare(dialerMaximizeButton, "visible", true);
664+ // add size restrictions, smaller than our stage
665+ dialerDelegate.surface.setMaximumWidth(40);
666+ dialerDelegate.surface.setMaximumHeight(30);
667+ tryCompare(dialerMaximizeButton, "visible", false);
669+ // try double clicking the decoration, shouldn't maximize it
670+ var sizeBefore = Qt.size(dialerDelegate.width, dialerDelegate.height);
671+ var deco = findChild(dialerDelegate, "appWindowDecoration");
673+ tryCompare(deco, "maximizeButtonShown", false);
674+ mouseDoubleClick(deco);
675+ var sizeAfter = Qt.size(dialerDelegate.width, dialerDelegate.height);
676+ tryCompareFunction(function(){ return sizeBefore; }, sizeAfter);
678+ // remove restrictions, the maximize button should again be visible
679+ dialerDelegate.surface.setMaximumWidth(0);
680+ dialerDelegate.surface.setMaximumHeight(0);
681+ tryCompare(dialerMaximizeButton, "visible", true);