def showPopup(self, *args, **kwargs):

        QtGui.QComboBox.showPopup(self, *args, **kwargs)
        parent = findEmbeddedParentWidget(self)
        if parent:
            item = parent.graphicsProxyWidget()
            scene = item.scene()
            view = None
            if scene:
                views = scene.views()
                for v in views:
                    if v == QtGui.QApplication.focusWidget():
                        view = v
                if not view:
                    view = views[0]
            if view:
                br = item.boundingRect()
                rightPos = view.mapToGlobal(view.mapFromScene(item.mapToScene(
                                    QtCore.QPointF(br.width(), br.height()))))
                pos = view.mapToGlobal(view.mapFromScene(item.mapToScene(
                                             QtCore.QPointF(0, br.height()))))
                self.view().parentWidget().move(pos)
                self.view().parentWidget().setFixedWidth(rightPos.x()-pos.x())
                self.view().parentWidget().installEventFilter(self)
Test if push succeeds.
dataset/ETHPy150Open VisTrails/VisTrails/vistrails/gui/modules/constant_configuration.py/StandardConstantEnumWidget.showPopup--crossover with--dataset/ETHPy150Open saltstack/salt/tests/unit/modules/cp_test.py/CpTestCase.test_push_success