We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Range slider does not render in proper place in multi monitor environment on linux
## 🐛 Bug

![20200604_165422_HDR](https://user-images.githubusercontent.com/3826210/83773561-f6849780-a684-11ea-959e-9ddec2d620bd.jpg)


On my system (Ubuntu 19.10 with gnome shell and nvidia drivers) when napari is not on the most left screen then range slider is not rendered in proper place. 

<!-- A clear and concise description of what the bug is. -->

## To Reproduce

Steps to reproduce the behaviour:

1. Start napari on mulit screeen computer
2. Move window from left screen
3. Click right on range small slider to open big

<!-- If you have a code sample, error messages, stack traces, please provide it here as well -->

## Expected behavior
Slider should be placed properly (inside napari window)
<!-- A clear and concise description of what you expected to happen. -->

## Environment
napari: 0.3.5.dev3+ge9df14f6
Platform: Linux-5.3.0-55-generic-x86_64-with-debian-buster-sid
Python: 3.7.2 (default, Aug 1 2019, 23:29:28) [GCC 8.3.0]
Qt: 5.14.2
PySide2: 5.14.2.2
NumPy: 1.18.2
SciPy: 1.4.1
Dask: 2.12.0
VisPy: 0.6.4

GL version: 4.6.0 NVIDIA 390.132
MAX_TEXTURE_SIZE: 32768

Plugins:
- napari-plugin-engine: 0.1.5
- napari-plugins: 0.1.0
- svg: 0.1.3
 - Please copy and paste the information at napari info option in help menubar here:

 - Any other relevant information:

Ubuntu 19.10, Gnome Shell with nvidia drivers on 3 screen configuration (FullHD, WQHD, FullHD)  

## Additional context

<!-- Add any other context about the problem here. -->
Opening this view for range slider block print screen.

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `napari/_qt/qt_modal.py`
Content:
```
1 from qtpy.QtCore import QPoint, Qt
2 from qtpy.QtGui import QCursor, QGuiApplication
3 from qtpy.QtWidgets import QDialog, QFrame, QVBoxLayout
4 
5 
6 class QtPopup(QDialog):
7     """A generic popup window.
8 
9     The seemingly extra frame here is to allow rounded corners on a truly
10     transparent background.  New items should be added to QtPopup.frame
11 
12     +----------------------------------
13     | Dialog
14     |  +-------------------------------
15     |  | QVBoxLayout
16     |  |  +----------------------------
17     |  |  | QFrame
18     |  |  |  +-------------------------
19     |  |  |  |
20     |  |  |  |  (add a new layout here)
21 
22     Parameters
23     ----------
24     parent : qtpy.QtWidgets:QWidget
25         Parent widget of the popup dialog box.
26 
27     Attributes
28     ----------
29     frame : qtpy.QtWidgets.QFrame
30         Frame of the popup dialog box.
31     layout : qtpy.QtWidgets.QVBoxLayout
32         Layout of the popup dialog box.
33     """
34 
35     def __init__(self, parent):
36         super().__init__(parent)
37         self.setObjectName("QtModalPopup")
38         self.setModal(False)  # if False, then clicking anywhere else closes it
39         self.setWindowFlags(Qt.Popup | Qt.FramelessWindowHint)
40         self.setLayout(QVBoxLayout())
41 
42         self.frame = QFrame()
43         self.frame.setObjectName("QtPopupFrame")
44         self.layout().addWidget(self.frame)
45         self.layout().setContentsMargins(0, 0, 0, 0)
46 
47     def show_above_mouse(self, *args):
48         """Show popup dialog above the mouse cursor position."""
49         pos = QCursor().pos()  # mouse position
50         szhint = self.sizeHint()
51         pos -= QPoint(szhint.width() / 2, szhint.height() + 14)
52         self.move(pos)
53         self.show()
54 
55     def show_right_of_mouse(self, *args):
56         pos = QCursor().pos()  # mouse position
57         szhint = self.sizeHint()
58         pos -= QPoint(-14, szhint.height() / 4)
59         self.move(pos)
60         self.show()
61 
62     def show_at(self, position='top', *, win_ratio=0.9, min_length=0):
63         """Show popup at a position relative to the QMainWindow.
64 
65         Parameters
66         ----------
67         position : {str, tuple}, optional
68             position in the QMainWindow to show the pop, by default 'top'
69             if str: must be one of {'top', 'bottom', 'left', 'right' }
70             if tuple: must be length 4 with (left, top, width, height)
71         win_ratio : float, optional
72             Fraction of the width (for position = top/bottom) or height (for
73             position = left/right) of the QMainWindow that the popup will
74             occupy.  Only valid when isinstance(position, str).
75             by default 0.9
76         min_length : int, optional
77             Minimum size of the long dimension (width for top/bottom or
78             height fort left/right).
79 
80         Raises
81         ------
82         ValueError
83             if position is a string and not one of
84             {'top', 'bottom', 'left', 'right' }
85         """
86         if isinstance(position, str):
87             window = self.parent().window() if self.parent() else None
88             if not window:
89                 raise ValueError(
90                     "Specifying position as a string is only posible if "
91                     "the popup has a parent"
92                 )
93             left = window.pos().x()
94             top = window.pos().y()
95             if position in ('top', 'bottom'):
96                 width = window.width() * win_ratio
97                 width = max(width, min_length)
98                 left += (window.width() - width) / 2
99                 height = self.sizeHint().height()
100                 top += (
101                     24
102                     if position == 'top'
103                     else (window.height() - height - 12)
104                 )
105             elif position in ('left', 'right'):
106                 height = window.height() * win_ratio
107                 height = max(height, min_length)
108                 # 22 is for the title bar
109                 top += 22 + (window.height() - height) / 2
110                 width = self.sizeHint().width()
111                 left += (
112                     12 if position == 'left' else (window.width() - width - 12)
113                 )
114             else:
115                 raise ValueError(
116                     'position must be one of '
117                     '["top", "left", "bottom", "right"]'
118                 )
119         elif isinstance(position, (tuple, list)):
120             assert len(position) == 4, '`position` argument must have length 4'
121             left, top, width, height = position
122 
123         # necessary for transparent round corners
124         self.resize(self.sizeHint())
125         # make sure the popup is completely on the screen
126         # In Qt ≥5.10 we can use screenAt to know which monitor the mouse is on
127         if hasattr(QGuiApplication, 'screenAt'):
128             screen_size = QGuiApplication.screenAt(QCursor.pos()).size()
129         else:
130             # otherwise we just use the size of the first monitor
131             screen_size = QGuiApplication.screens()[0].size()
132         left = max(min(screen_size.width() - width, left), 0)
133         top = max(min(screen_size.height() - height, top), 0)
134         self.setGeometry(left, top, width, height)
135         self.show()
136 
137     def keyPressEvent(self, event):
138         """Close window on return, else pass event through to super class.
139 
140         Parameters
141         ----------
142         event : qtpy.QtCore.QEvent
143             Event from the Qt context.
144         """
145         if event.key() in (Qt.Key_Return, Qt.Key_Enter):
146             return self.close()
147         super().keyPressEvent(event)
148
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/napari/_qt/qt_modal.py b/napari/_qt/qt_modal.py
--- a/napari/_qt/qt_modal.py
+++ b/napari/_qt/qt_modal.py
@@ -1,4 +1,4 @@
-from qtpy.QtCore import QPoint, Qt
+from qtpy.QtCore import QPoint, Qt, QRect
 from qtpy.QtGui import QCursor, QGuiApplication
 from qtpy.QtWidgets import QDialog, QFrame, QVBoxLayout
 
@@ -119,18 +119,31 @@
         elif isinstance(position, (tuple, list)):
             assert len(position) == 4, '`position` argument must have length 4'
             left, top, width, height = position
+        else:
+            raise ValueError(f"Wrong type of position {position}")
 
         # necessary for transparent round corners
         self.resize(self.sizeHint())
         # make sure the popup is completely on the screen
         # In Qt ≥5.10 we can use screenAt to know which monitor the mouse is on
-        if hasattr(QGuiApplication, 'screenAt'):
-            screen_size = QGuiApplication.screenAt(QCursor.pos()).size()
+
+        if hasattr(QGuiApplication, "screenAt"):
+            screen_geometry: QRect = QGuiApplication.screenAt(
+                QCursor.pos()
+            ).geometry()
         else:
-            # otherwise we just use the size of the first monitor
-            screen_size = QGuiApplication.screens()[0].size()
-        left = max(min(screen_size.width() - width, left), 0)
-        top = max(min(screen_size.height() - height, top), 0)
+            # This widget is deprecated since Qt 5.11
+            from qtpy.QtWidgets import QDesktopWidget
+
+            screen_num = QDesktopWidget().screenNumber(QCursor.pos())
+            screen_geometry = QGuiApplication.screens()[screen_num].geometry()
+
+        left = max(
+            min(screen_geometry.right() - width, left), screen_geometry.left()
+        )
+        top = max(
+            min(screen_geometry.bottom() - height, top), screen_geometry.top()
+        )
         self.setGeometry(left, top, width, height)
         self.show()

{"golden_diff": "diff --git a/napari/_qt/qt_modal.py b/napari/_qt/qt_modal.py\n--- a/napari/_qt/qt_modal.py\n+++ b/napari/_qt/qt_modal.py\n@@ -1,4 +1,4 @@\n-from qtpy.QtCore import QPoint, Qt\n+from qtpy.QtCore import QPoint, Qt, QRect\n from qtpy.QtGui import QCursor, QGuiApplication\n from qtpy.QtWidgets import QDialog, QFrame, QVBoxLayout\n \n@@ -119,18 +119,31 @@\n         elif isinstance(position, (tuple, list)):\n             assert len(position) == 4, '`position` argument must have length 4'\n             left, top, width, height = position\n+        else:\n+            raise ValueError(f\"Wrong type of position {position}\")\n \n         # necessary for transparent round corners\n         self.resize(self.sizeHint())\n         # make sure the popup is completely on the screen\n         # In Qt \u22655.10 we can use screenAt to know which monitor the mouse is on\n-        if hasattr(QGuiApplication, 'screenAt'):\n-            screen_size = QGuiApplication.screenAt(QCursor.pos()).size()\n+\n+        if hasattr(QGuiApplication, \"screenAt\"):\n+            screen_geometry: QRect = QGuiApplication.screenAt(\n+                QCursor.pos()\n+            ).geometry()\n         else:\n-            # otherwise we just use the size of the first monitor\n-            screen_size = QGuiApplication.screens()[0].size()\n-        left = max(min(screen_size.width() - width, left), 0)\n-        top = max(min(screen_size.height() - height, top), 0)\n+            # This widget is deprecated since Qt 5.11\n+            from qtpy.QtWidgets import QDesktopWidget\n+\n+            screen_num = QDesktopWidget().screenNumber(QCursor.pos())\n+            screen_geometry = QGuiApplication.screens()[screen_num].geometry()\n+\n+        left = max(\n+            min(screen_geometry.right() - width, left), screen_geometry.left()\n+        )\n+        top = max(\n+            min(screen_geometry.bottom() - height, top), screen_geometry.top()\n+        )\n         self.setGeometry(left, top, width, height)\n         self.show()\n", "issue": "Range slider does not render in proper place in multi monitor environment on linux\n## \ud83d\udc1b Bug\r\n\r\n![20200604_165422_HDR](https://user-images.githubusercontent.com/3826210/83773561-f6849780-a684-11ea-959e-9ddec2d620bd.jpg)\r\n\r\n\r\nOn my system (Ubuntu 19.10 with gnome shell and nvidia drivers) when napari is not on the most left screen then range slider is not rendered in proper place. \r\n\r\n<!-- A clear and concise description of what the bug is. -->\r\n\r\n## To Reproduce\r\n\r\nSteps to reproduce the behaviour:\r\n\r\n1. Start napari on mulit screeen computer\r\n2. Move window from left screen\r\n3. Click right on range small slider to open big\r\n\r\n<!-- If you have a code sample, error messages, stack traces, please provide it here as well -->\r\n\r\n## Expected behavior\r\nSlider should be placed properly (inside napari window)\r\n<!-- A clear and concise description of what you expected to happen. -->\r\n\r\n## Environment\r\nnapari: 0.3.5.dev3+ge9df14f6\r\nPlatform: Linux-5.3.0-55-generic-x86_64-with-debian-buster-sid\r\nPython: 3.7.2 (default, Aug 1 2019, 23:29:28) [GCC 8.3.0]\r\nQt: 5.14.2\r\nPySide2: 5.14.2.2\r\nNumPy: 1.18.2\r\nSciPy: 1.4.1\r\nDask: 2.12.0\r\nVisPy: 0.6.4\r\n\r\nGL version: 4.6.0 NVIDIA 390.132\r\nMAX_TEXTURE_SIZE: 32768\r\n\r\nPlugins:\r\n- napari-plugin-engine: 0.1.5\r\n- napari-plugins: 0.1.0\r\n- svg: 0.1.3\r\n - Please copy and paste the information at napari info option in help menubar here:\r\n\r\n - Any other relevant information:\r\n\r\nUbuntu 19.10, Gnome Shell with nvidia drivers on 3 screen configuration (FullHD, WQHD, FullHD)  \r\n\r\n## Additional context\r\n\r\n<!-- Add any other context about the problem here. -->\r\nOpening this view for range slider block print screen.\n", "before_files": [{"content": "from qtpy.QtCore import QPoint, Qt\nfrom qtpy.QtGui import QCursor, QGuiApplication\nfrom qtpy.QtWidgets import QDialog, QFrame, QVBoxLayout\n\n\nclass QtPopup(QDialog):\n    \"\"\"A generic popup window.\n\n    The seemingly extra frame here is to allow rounded corners on a truly\n    transparent background.  New items should be added to QtPopup.frame\n\n    +----------------------------------\n    | Dialog\n    |  +-------------------------------\n    |  | QVBoxLayout\n    |  |  +----------------------------\n    |  |  | QFrame\n    |  |  |  +-------------------------\n    |  |  |  |\n    |  |  |  |  (add a new layout here)\n\n    Parameters\n    ----------\n    parent : qtpy.QtWidgets:QWidget\n        Parent widget of the popup dialog box.\n\n    Attributes\n    ----------\n    frame : qtpy.QtWidgets.QFrame\n        Frame of the popup dialog box.\n    layout : qtpy.QtWidgets.QVBoxLayout\n        Layout of the popup dialog box.\n    \"\"\"\n\n    def __init__(self, parent):\n        super().__init__(parent)\n        self.setObjectName(\"QtModalPopup\")\n        self.setModal(False)  # if False, then clicking anywhere else closes it\n        self.setWindowFlags(Qt.Popup | Qt.FramelessWindowHint)\n        self.setLayout(QVBoxLayout())\n\n        self.frame = QFrame()\n        self.frame.setObjectName(\"QtPopupFrame\")\n        self.layout().addWidget(self.frame)\n        self.layout().setContentsMargins(0, 0, 0, 0)\n\n    def show_above_mouse(self, *args):\n        \"\"\"Show popup dialog above the mouse cursor position.\"\"\"\n        pos = QCursor().pos()  # mouse position\n        szhint = self.sizeHint()\n        pos -= QPoint(szhint.width() / 2, szhint.height() + 14)\n        self.move(pos)\n        self.show()\n\n    def show_right_of_mouse(self, *args):\n        pos = QCursor().pos()  # mouse position\n        szhint = self.sizeHint()\n        pos -= QPoint(-14, szhint.height() / 4)\n        self.move(pos)\n        self.show()\n\n    def show_at(self, position='top', *, win_ratio=0.9, min_length=0):\n        \"\"\"Show popup at a position relative to the QMainWindow.\n\n        Parameters\n        ----------\n        position : {str, tuple}, optional\n            position in the QMainWindow to show the pop, by default 'top'\n            if str: must be one of {'top', 'bottom', 'left', 'right' }\n            if tuple: must be length 4 with (left, top, width, height)\n        win_ratio : float, optional\n            Fraction of the width (for position = top/bottom) or height (for\n            position = left/right) of the QMainWindow that the popup will\n            occupy.  Only valid when isinstance(position, str).\n            by default 0.9\n        min_length : int, optional\n            Minimum size of the long dimension (width for top/bottom or\n            height fort left/right).\n\n        Raises\n        ------\n        ValueError\n            if position is a string and not one of\n            {'top', 'bottom', 'left', 'right' }\n        \"\"\"\n        if isinstance(position, str):\n            window = self.parent().window() if self.parent() else None\n            if not window:\n                raise ValueError(\n                    \"Specifying position as a string is only posible if \"\n                    \"the popup has a parent\"\n                )\n            left = window.pos().x()\n            top = window.pos().y()\n            if position in ('top', 'bottom'):\n                width = window.width() * win_ratio\n                width = max(width, min_length)\n                left += (window.width() - width) / 2\n                height = self.sizeHint().height()\n                top += (\n                    24\n                    if position == 'top'\n                    else (window.height() - height - 12)\n                )\n            elif position in ('left', 'right'):\n                height = window.height() * win_ratio\n                height = max(height, min_length)\n                # 22 is for the title bar\n                top += 22 + (window.height() - height) / 2\n                width = self.sizeHint().width()\n                left += (\n                    12 if position == 'left' else (window.width() - width - 12)\n                )\n            else:\n                raise ValueError(\n                    'position must be one of '\n                    '[\"top\", \"left\", \"bottom\", \"right\"]'\n                )\n        elif isinstance(position, (tuple, list)):\n            assert len(position) == 4, '`position` argument must have length 4'\n            left, top, width, height = position\n\n        # necessary for transparent round corners\n        self.resize(self.sizeHint())\n        # make sure the popup is completely on the screen\n        # In Qt \u22655.10 we can use screenAt to know which monitor the mouse is on\n        if hasattr(QGuiApplication, 'screenAt'):\n            screen_size = QGuiApplication.screenAt(QCursor.pos()).size()\n        else:\n            # otherwise we just use the size of the first monitor\n            screen_size = QGuiApplication.screens()[0].size()\n        left = max(min(screen_size.width() - width, left), 0)\n        top = max(min(screen_size.height() - height, top), 0)\n        self.setGeometry(left, top, width, height)\n        self.show()\n\n    def keyPressEvent(self, event):\n        \"\"\"Close window on return, else pass event through to super class.\n\n        Parameters\n        ----------\n        event : qtpy.QtCore.QEvent\n            Event from the Qt context.\n        \"\"\"\n        if event.key() in (Qt.Key_Return, Qt.Key_Enter):\n            return self.close()\n        super().keyPressEvent(event)\n", "path": "napari/_qt/qt_modal.py"}], "after_files": [{"content": "from qtpy.QtCore import QPoint, Qt, QRect\nfrom qtpy.QtGui import QCursor, QGuiApplication\nfrom qtpy.QtWidgets import QDialog, QFrame, QVBoxLayout\n\n\nclass QtPopup(QDialog):\n    \"\"\"A generic popup window.\n\n    The seemingly extra frame here is to allow rounded corners on a truly\n    transparent background.  New items should be added to QtPopup.frame\n\n    +----------------------------------\n    | Dialog\n    |  +-------------------------------\n    |  | QVBoxLayout\n    |  |  +----------------------------\n    |  |  | QFrame\n    |  |  |  +-------------------------\n    |  |  |  |\n    |  |  |  |  (add a new layout here)\n\n    Parameters\n    ----------\n    parent : qtpy.QtWidgets:QWidget\n        Parent widget of the popup dialog box.\n\n    Attributes\n    ----------\n    frame : qtpy.QtWidgets.QFrame\n        Frame of the popup dialog box.\n    layout : qtpy.QtWidgets.QVBoxLayout\n        Layout of the popup dialog box.\n    \"\"\"\n\n    def __init__(self, parent):\n        super().__init__(parent)\n        self.setObjectName(\"QtModalPopup\")\n        self.setModal(False)  # if False, then clicking anywhere else closes it\n        self.setWindowFlags(Qt.Popup | Qt.FramelessWindowHint)\n        self.setLayout(QVBoxLayout())\n\n        self.frame = QFrame()\n        self.frame.setObjectName(\"QtPopupFrame\")\n        self.layout().addWidget(self.frame)\n        self.layout().setContentsMargins(0, 0, 0, 0)\n\n    def show_above_mouse(self, *args):\n        \"\"\"Show popup dialog above the mouse cursor position.\"\"\"\n        pos = QCursor().pos()  # mouse position\n        szhint = self.sizeHint()\n        pos -= QPoint(szhint.width() / 2, szhint.height() + 14)\n        self.move(pos)\n        self.show()\n\n    def show_right_of_mouse(self, *args):\n        pos = QCursor().pos()  # mouse position\n        szhint = self.sizeHint()\n        pos -= QPoint(-14, szhint.height() / 4)\n        self.move(pos)\n        self.show()\n\n    def show_at(self, position='top', *, win_ratio=0.9, min_length=0):\n        \"\"\"Show popup at a position relative to the QMainWindow.\n\n        Parameters\n        ----------\n        position : {str, tuple}, optional\n            position in the QMainWindow to show the pop, by default 'top'\n            if str: must be one of {'top', 'bottom', 'left', 'right' }\n            if tuple: must be length 4 with (left, top, width, height)\n        win_ratio : float, optional\n            Fraction of the width (for position = top/bottom) or height (for\n            position = left/right) of the QMainWindow that the popup will\n            occupy.  Only valid when isinstance(position, str).\n            by default 0.9\n        min_length : int, optional\n            Minimum size of the long dimension (width for top/bottom or\n            height fort left/right).\n\n        Raises\n        ------\n        ValueError\n            if position is a string and not one of\n            {'top', 'bottom', 'left', 'right' }\n        \"\"\"\n        if isinstance(position, str):\n            window = self.parent().window() if self.parent() else None\n            if not window:\n                raise ValueError(\n                    \"Specifying position as a string is only posible if \"\n                    \"the popup has a parent\"\n                )\n            left = window.pos().x()\n            top = window.pos().y()\n            if position in ('top', 'bottom'):\n                width = window.width() * win_ratio\n                width = max(width, min_length)\n                left += (window.width() - width) / 2\n                height = self.sizeHint().height()\n                top += (\n                    24\n                    if position == 'top'\n                    else (window.height() - height - 12)\n                )\n            elif position in ('left', 'right'):\n                height = window.height() * win_ratio\n                height = max(height, min_length)\n                # 22 is for the title bar\n                top += 22 + (window.height() - height) / 2\n                width = self.sizeHint().width()\n                left += (\n                    12 if position == 'left' else (window.width() - width - 12)\n                )\n            else:\n                raise ValueError(\n                    'position must be one of '\n                    '[\"top\", \"left\", \"bottom\", \"right\"]'\n                )\n        elif isinstance(position, (tuple, list)):\n            assert len(position) == 4, '`position` argument must have length 4'\n            left, top, width, height = position\n        else:\n            raise ValueError(f\"Wrong type of position {position}\")\n\n        # necessary for transparent round corners\n        self.resize(self.sizeHint())\n        # make sure the popup is completely on the screen\n        # In Qt \u22655.10 we can use screenAt to know which monitor the mouse is on\n\n        if hasattr(QGuiApplication, \"screenAt\"):\n            screen_geometry: QRect = QGuiApplication.screenAt(\n                QCursor.pos()\n            ).geometry()\n        else:\n            # This widget is deprecated since Qt 5.11\n            from qtpy.QtWidgets import QDesktopWidget\n\n            screen_num = QDesktopWidget().screenNumber(QCursor.pos())\n            screen_geometry = QGuiApplication.screens()[screen_num].geometry()\n\n        left = max(\n            min(screen_geometry.right() - width, left), screen_geometry.left()\n        )\n        top = max(\n            min(screen_geometry.bottom() - height, top), screen_geometry.top()\n        )\n        self.setGeometry(left, top, width, height)\n        self.show()\n\n    def keyPressEvent(self, event):\n        \"\"\"Close window on return, else pass event through to super class.\n\n        Parameters\n        ----------\n        event : qtpy.QtCore.QEvent\n            Event from the Qt context.\n        \"\"\"\n        if event.key() in (Qt.Key_Return, Qt.Key_Enter):\n            return self.close()\n        super().keyPressEvent(event)\n", "path": "napari/_qt/qt_modal.py"}]}