urwid 2.6.14__tar.gz → 2.6.15__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (318) hide show
  1. {urwid-2.6.14 → urwid-2.6.15}/.pre-commit-config.yaml +1 -1
  2. {urwid-2.6.14 → urwid-2.6.15}/PKG-INFO +1 -1
  3. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/subproc.py +2 -2
  4. {urwid-2.6.14 → urwid-2.6.15}/examples/subproc.py +2 -2
  5. urwid-2.6.15/pylint-requirements.txt +1 -0
  6. urwid-2.6.15/ruff-requirements.txt +1 -0
  7. {urwid-2.6.14 → urwid-2.6.15}/tests/test_scrollable.py +15 -0
  8. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/_posix_raw_display.py +2 -2
  9. {urwid-2.6.14 → urwid-2.6.15}/urwid/version.py +2 -2
  10. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/listbox.py +12 -11
  11. {urwid-2.6.14 → urwid-2.6.15}/urwid.egg-info/PKG-INFO +1 -1
  12. urwid-2.6.14/pylint-requirements.txt +0 -1
  13. urwid-2.6.14/ruff-requirements.txt +0 -1
  14. {urwid-2.6.14 → urwid-2.6.15}/.coveralls.yml +0 -0
  15. {urwid-2.6.14 → urwid-2.6.15}/.devcontainer/dev.dockerfile +0 -0
  16. {urwid-2.6.14 → urwid-2.6.15}/.devcontainer/devcontainer.json +0 -0
  17. {urwid-2.6.14 → urwid-2.6.15}/.dockerignore +0 -0
  18. {urwid-2.6.14 → urwid-2.6.15}/.editorconfig +0 -0
  19. {urwid-2.6.14 → urwid-2.6.15}/.github/CODE_OF_CONDUCT.md +0 -0
  20. {urwid-2.6.14 → urwid-2.6.15}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  21. {urwid-2.6.14 → urwid-2.6.15}/.github/ISSUE_TEMPLATE/docs.md +0 -0
  22. {urwid-2.6.14 → urwid-2.6.15}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  23. {urwid-2.6.14 → urwid-2.6.15}/.github/ISSUE_TEMPLATE/question.md +0 -0
  24. {urwid-2.6.14 → urwid-2.6.15}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  25. {urwid-2.6.14 → urwid-2.6.15}/.github/dependabot.yml +0 -0
  26. {urwid-2.6.14 → urwid-2.6.15}/.github/labeler.yml +0 -0
  27. {urwid-2.6.14 → urwid-2.6.15}/.github/release.yml +0 -0
  28. {urwid-2.6.14 → urwid-2.6.15}/.github/workflows/documentation.yml +0 -0
  29. {urwid-2.6.14 → urwid-2.6.15}/.github/workflows/isolated_static_check.yml +0 -0
  30. {urwid-2.6.14 → urwid-2.6.15}/.github/workflows/labels.yml +0 -0
  31. {urwid-2.6.14 → urwid-2.6.15}/.github/workflows/pythonpackage.yml +0 -0
  32. {urwid-2.6.14 → urwid-2.6.15}/.github/workflows/yamllint.yml +0 -0
  33. {urwid-2.6.14 → urwid-2.6.15}/.gitignore +0 -0
  34. {urwid-2.6.14 → urwid-2.6.15}/.yamllint.yml +0 -0
  35. {urwid-2.6.14 → urwid-2.6.15}/COPYING +0 -0
  36. {urwid-2.6.14 → urwid-2.6.15}/MANIFEST.in +0 -0
  37. {urwid-2.6.14 → urwid-2.6.15}/README.rst +0 -0
  38. {urwid-2.6.14 → urwid-2.6.15}/black-requirements.txt +0 -0
  39. {urwid-2.6.14 → urwid-2.6.15}/classifiers.txt +0 -0
  40. {urwid-2.6.14 → urwid-2.6.15}/docs/Makefile +0 -0
  41. {urwid-2.6.14 → urwid-2.6.15}/docs/changelog.rst +0 -0
  42. {urwid-2.6.14 → urwid-2.6.15}/docs/conf.py +0 -0
  43. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/bigtext.py +0 -0
  44. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/bigtext.py.xdotool +0 -0
  45. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/bigtext1.png +0 -0
  46. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/bigtext2.png +0 -0
  47. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/bigtext3.png +0 -0
  48. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/browse.py +0 -0
  49. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/browse.py.xdotool +0 -0
  50. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/browse1.png +0 -0
  51. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/browse2.png +0 -0
  52. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/edit.py +0 -0
  53. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/edit.py.xdotool +0 -0
  54. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/edit1.png +0 -0
  55. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/edit2.png +0 -0
  56. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/edit_text.txt +0 -0
  57. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/graph.py +0 -0
  58. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/graph.py.xdotool +0 -0
  59. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/graph1.png +0 -0
  60. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/graph2.png +0 -0
  61. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/index.rst +0 -0
  62. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/palette_test.py +0 -0
  63. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/palette_test.py.xdotool +0 -0
  64. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/palette_test1.png +0 -0
  65. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/palette_test2.png +0 -0
  66. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/pop_up.py +0 -0
  67. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/pop_up.py.xdotool +0 -0
  68. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/pop_up1.png +0 -0
  69. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/pop_up2.png +0 -0
  70. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/real_browse.py +0 -0
  71. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/real_edit.py +0 -0
  72. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/subproc.py.xdotool +0 -0
  73. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/subproc1.png +0 -0
  74. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/subproc2.png +0 -0
  75. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/subproc2.py +0 -0
  76. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/tour.py +0 -0
  77. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/tour.py.xdotool +0 -0
  78. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/tour1.png +0 -0
  79. {urwid-2.6.14 → urwid-2.6.15}/docs/examples/tour2.png +0 -0
  80. {urwid-2.6.14 → urwid-2.6.15}/docs/index.rst +0 -0
  81. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/bright_combinations.py +0 -0
  82. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/bright_combinations.py.xdotool +0 -0
  83. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/bright_combinations1.png +0 -0
  84. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/canvascache.rst +0 -0
  85. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/displayattributes.rst +0 -0
  86. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/displaymodules.rst +0 -0
  87. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/encodings.rst +0 -0
  88. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/images/display_modules.png +0 -0
  89. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/images/introduction.png +0 -0
  90. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/images/urwid_widgets.svgz +0 -0
  91. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/images/urwid_widgets_1.png +0 -0
  92. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/images/urwid_widgets_1.xcf +0 -0
  93. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/images/urwid_widgets_2.png +0 -0
  94. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/images/urwid_widgets_2.xcf +0 -0
  95. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/images/widget_layout.png +0 -0
  96. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/index.rst +0 -0
  97. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/mainloop.rst +0 -0
  98. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/overview.rst +0 -0
  99. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/safe_combinations.py +0 -0
  100. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/safe_combinations.py.xdotool +0 -0
  101. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/safe_combinations1.png +0 -0
  102. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/textlayout.rst +0 -0
  103. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/userinput.rst +0 -0
  104. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/wanat.py +0 -0
  105. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/wanat_multi.py +0 -0
  106. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/wcur1.py +0 -0
  107. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/wcur2.py +0 -0
  108. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/widgets.rst +0 -0
  109. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/wmod.py +0 -0
  110. {urwid-2.6.14 → urwid-2.6.15}/docs/manual/wsel.py +0 -0
  111. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/attrspec.rst +0 -0
  112. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/canvas.rst +0 -0
  113. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/command_map.rst +0 -0
  114. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/constants.rst +0 -0
  115. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/deprecated.rst +0 -0
  116. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/display_modules.rst +0 -0
  117. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/exceptions.rst +0 -0
  118. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/global_settings.rst +0 -0
  119. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/index.rst +0 -0
  120. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/list_walkers.rst +0 -0
  121. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/main_loop.rst +0 -0
  122. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/meta.rst +0 -0
  123. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/signals.rst +0 -0
  124. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/text_layout.rst +0 -0
  125. {urwid-2.6.14 → urwid-2.6.15}/docs/reference/widget.rst +0 -0
  126. {urwid-2.6.14 → urwid-2.6.15}/docs/tools/compile_pngs.sh +0 -0
  127. {urwid-2.6.14 → urwid-2.6.15}/docs/tools/screenshots.sh +0 -0
  128. {urwid-2.6.14 → urwid-2.6.15}/docs/tools/static/.placeholder +0 -0
  129. {urwid-2.6.14 → urwid-2.6.15}/docs/tools/templates/indexcontent.html +0 -0
  130. {urwid-2.6.14 → urwid-2.6.15}/docs/tools/templates/indexsidebar.html +0 -0
  131. {urwid-2.6.14 → urwid-2.6.15}/docs/tools/templates/localtoc.html +0 -0
  132. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/adventure.py +0 -0
  133. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/adventure.py.xdotool +0 -0
  134. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/adventure1.png +0 -0
  135. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/adventure2.png +0 -0
  136. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/adventure3.png +0 -0
  137. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/adventure4.png +0 -0
  138. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/cmenu.py +0 -0
  139. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/cmenu.py.xdotool +0 -0
  140. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/cmenu1.png +0 -0
  141. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/cmenu2.png +0 -0
  142. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/cmenu3.png +0 -0
  143. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/cmenu4.png +0 -0
  144. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/highcolors.py +0 -0
  145. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/highcolors.py.xdotool +0 -0
  146. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/highcolors1.png +0 -0
  147. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/hmenu.py +0 -0
  148. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/hmenu.py.xdotool +0 -0
  149. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/hmenu1.png +0 -0
  150. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/hmenu2.png +0 -0
  151. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/hmenu3.png +0 -0
  152. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/hmenu4.png +0 -0
  153. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/index.rst +0 -0
  154. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/input.py +0 -0
  155. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/input.py.xdotool +0 -0
  156. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/input1.png +0 -0
  157. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/input2.png +0 -0
  158. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/input3.png +0 -0
  159. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/input4.png +0 -0
  160. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/input5.png +0 -0
  161. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/menu25.png +0 -0
  162. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/minimal.py +0 -0
  163. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/minimal.py.xdotool +0 -0
  164. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/minimal1.png +0 -0
  165. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/multiple.py +0 -0
  166. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/multiple.py.xdotool +0 -0
  167. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/multiple1.png +0 -0
  168. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/multiple2.png +0 -0
  169. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/multiple3.png +0 -0
  170. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/multiple4.png +0 -0
  171. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/qa.py +0 -0
  172. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/qa.py.xdotool +0 -0
  173. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/qa1.png +0 -0
  174. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/qa2.png +0 -0
  175. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/qa3.png +0 -0
  176. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/sig.py +0 -0
  177. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/sig.py.xdotool +0 -0
  178. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/sig1.png +0 -0
  179. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/sig2.png +0 -0
  180. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/sig3.png +0 -0
  181. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/sig4.png +0 -0
  182. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/smenu.py +0 -0
  183. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/smenu.py.xdotool +0 -0
  184. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/smenu1.png +0 -0
  185. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/smenu2.png +0 -0
  186. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/smenu3.png +0 -0
  187. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/urwid_attr.py +0 -0
  188. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/urwid_attr.py.xdotool +0 -0
  189. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/urwid_attr1.png +0 -0
  190. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/urwid_attr2.png +0 -0
  191. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/urwid_attr3.png +0 -0
  192. {urwid-2.6.14 → urwid-2.6.15}/docs/tutorial/urwid_attr4.png +0 -0
  193. {urwid-2.6.14 → urwid-2.6.15}/docs/urwid-logo.png +0 -0
  194. {urwid-2.6.14 → urwid-2.6.15}/examples/asyncio_socket_server.py +0 -0
  195. {urwid-2.6.14 → urwid-2.6.15}/examples/bigtext.py +0 -0
  196. {urwid-2.6.14 → urwid-2.6.15}/examples/browse.py +0 -0
  197. {urwid-2.6.14 → urwid-2.6.15}/examples/calc.py +0 -0
  198. {urwid-2.6.14 → urwid-2.6.15}/examples/dialog.py +0 -0
  199. {urwid-2.6.14 → urwid-2.6.15}/examples/edit.py +0 -0
  200. {urwid-2.6.14 → urwid-2.6.15}/examples/fib.py +0 -0
  201. {urwid-2.6.14 → urwid-2.6.15}/examples/graph.py +0 -0
  202. {urwid-2.6.14 → urwid-2.6.15}/examples/input_test.py +0 -0
  203. {urwid-2.6.14 → urwid-2.6.15}/examples/lcd_cf635.py +0 -0
  204. {urwid-2.6.14 → urwid-2.6.15}/examples/palette_test.py +0 -0
  205. {urwid-2.6.14 → urwid-2.6.15}/examples/pop_up.py +0 -0
  206. {urwid-2.6.14 → urwid-2.6.15}/examples/subproc2.py +0 -0
  207. {urwid-2.6.14 → urwid-2.6.15}/examples/terminal.py +0 -0
  208. {urwid-2.6.14 → urwid-2.6.15}/examples/tour.py +0 -0
  209. {urwid-2.6.14 → urwid-2.6.15}/examples/treesample.py +0 -0
  210. {urwid-2.6.14 → urwid-2.6.15}/examples/twisted_serve_ssh.py +0 -0
  211. {urwid-2.6.14 → urwid-2.6.15}/examples/twisted_serve_ssh.tac +0 -0
  212. {urwid-2.6.14 → urwid-2.6.15}/isort-requirements.txt +0 -0
  213. {urwid-2.6.14 → urwid-2.6.15}/pyproject.toml +0 -0
  214. {urwid-2.6.14 → urwid-2.6.15}/requirements.txt +0 -0
  215. {urwid-2.6.14 → urwid-2.6.15}/setup.cfg +0 -0
  216. {urwid-2.6.14 → urwid-2.6.15}/setup.py +0 -0
  217. {urwid-2.6.14 → urwid-2.6.15}/test_requirements.txt +0 -0
  218. {urwid-2.6.14 → urwid-2.6.15}/tests/__init__.py +0 -0
  219. {urwid-2.6.14 → urwid-2.6.15}/tests/test_canvas.py +0 -0
  220. {urwid-2.6.14 → urwid-2.6.15}/tests/test_columns.py +0 -0
  221. {urwid-2.6.14 → urwid-2.6.15}/tests/test_container.py +0 -0
  222. {urwid-2.6.14 → urwid-2.6.15}/tests/test_doctests.py +0 -0
  223. {urwid-2.6.14 → urwid-2.6.15}/tests/test_escapes.py +0 -0
  224. {urwid-2.6.14 → urwid-2.6.15}/tests/test_event_loops.py +0 -0
  225. {urwid-2.6.14 → urwid-2.6.15}/tests/test_filler.py +0 -0
  226. {urwid-2.6.14 → urwid-2.6.15}/tests/test_floatedit.py +0 -0
  227. {urwid-2.6.14 → urwid-2.6.15}/tests/test_font.py +0 -0
  228. {urwid-2.6.14 → urwid-2.6.15}/tests/test_frame.py +0 -0
  229. {urwid-2.6.14 → urwid-2.6.15}/tests/test_graphics.py +0 -0
  230. {urwid-2.6.14 → urwid-2.6.15}/tests/test_grid_flow.py +0 -0
  231. {urwid-2.6.14 → urwid-2.6.15}/tests/test_line_box.py +0 -0
  232. {urwid-2.6.14 → urwid-2.6.15}/tests/test_listbox.py +0 -0
  233. {urwid-2.6.14 → urwid-2.6.15}/tests/test_main_loop.py +0 -0
  234. {urwid-2.6.14 → urwid-2.6.15}/tests/test_moved_imports.py +0 -0
  235. {urwid-2.6.14 → urwid-2.6.15}/tests/test_overlay.py +0 -0
  236. {urwid-2.6.14 → urwid-2.6.15}/tests/test_padding.py +0 -0
  237. {urwid-2.6.14 → urwid-2.6.15}/tests/test_pile.py +0 -0
  238. {urwid-2.6.14 → urwid-2.6.15}/tests/test_raw_display.py +0 -0
  239. {urwid-2.6.14 → urwid-2.6.15}/tests/test_signals.py +0 -0
  240. {urwid-2.6.14 → urwid-2.6.15}/tests/test_str_util.py +0 -0
  241. {urwid-2.6.14 → urwid-2.6.15}/tests/test_text_layout.py +0 -0
  242. {urwid-2.6.14 → urwid-2.6.15}/tests/test_tree.py +0 -0
  243. {urwid-2.6.14 → urwid-2.6.15}/tests/test_util.py +0 -0
  244. {urwid-2.6.14 → urwid-2.6.15}/tests/test_vterm.py +0 -0
  245. {urwid-2.6.14 → urwid-2.6.15}/tests/test_widget.py +0 -0
  246. {urwid-2.6.14 → urwid-2.6.15}/tests/util.py +0 -0
  247. {urwid-2.6.14 → urwid-2.6.15}/tox.ini +0 -0
  248. {urwid-2.6.14 → urwid-2.6.15}/urwid/__init__.py +0 -0
  249. {urwid-2.6.14 → urwid-2.6.15}/urwid/canvas.py +0 -0
  250. {urwid-2.6.14 → urwid-2.6.15}/urwid/command_map.py +0 -0
  251. {urwid-2.6.14 → urwid-2.6.15}/urwid/container.py +0 -0
  252. {urwid-2.6.14 → urwid-2.6.15}/urwid/decoration.py +0 -0
  253. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/__init__.py +0 -0
  254. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/_raw_display_base.py +0 -0
  255. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/_web.css +0 -0
  256. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/_web.js +0 -0
  257. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/_win32.py +0 -0
  258. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/_win32_raw_display.py +0 -0
  259. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/common.py +0 -0
  260. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/curses.py +0 -0
  261. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/escape.py +0 -0
  262. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/html_fragment.py +0 -0
  263. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/lcd.py +0 -0
  264. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/raw.py +0 -0
  265. {urwid-2.6.14 → urwid-2.6.15}/urwid/display/web.py +0 -0
  266. {urwid-2.6.14 → urwid-2.6.15}/urwid/event_loop/__init__.py +0 -0
  267. {urwid-2.6.14 → urwid-2.6.15}/urwid/event_loop/abstract_loop.py +0 -0
  268. {urwid-2.6.14 → urwid-2.6.15}/urwid/event_loop/asyncio_loop.py +0 -0
  269. {urwid-2.6.14 → urwid-2.6.15}/urwid/event_loop/glib_loop.py +0 -0
  270. {urwid-2.6.14 → urwid-2.6.15}/urwid/event_loop/main_loop.py +0 -0
  271. {urwid-2.6.14 → urwid-2.6.15}/urwid/event_loop/select_loop.py +0 -0
  272. {urwid-2.6.14 → urwid-2.6.15}/urwid/event_loop/tornado_loop.py +0 -0
  273. {urwid-2.6.14 → urwid-2.6.15}/urwid/event_loop/trio_loop.py +0 -0
  274. {urwid-2.6.14 → urwid-2.6.15}/urwid/event_loop/twisted_loop.py +0 -0
  275. {urwid-2.6.14 → urwid-2.6.15}/urwid/event_loop/zmq_loop.py +0 -0
  276. {urwid-2.6.14 → urwid-2.6.15}/urwid/font.py +0 -0
  277. {urwid-2.6.14 → urwid-2.6.15}/urwid/graphics.py +0 -0
  278. {urwid-2.6.14 → urwid-2.6.15}/urwid/numedit.py +0 -0
  279. {urwid-2.6.14 → urwid-2.6.15}/urwid/signals.py +0 -0
  280. {urwid-2.6.14 → urwid-2.6.15}/urwid/split_repr.py +0 -0
  281. {urwid-2.6.14 → urwid-2.6.15}/urwid/str_util.py +0 -0
  282. {urwid-2.6.14 → urwid-2.6.15}/urwid/text_layout.py +0 -0
  283. {urwid-2.6.14 → urwid-2.6.15}/urwid/util.py +0 -0
  284. {urwid-2.6.14 → urwid-2.6.15}/urwid/vterm.py +0 -0
  285. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/__init__.py +0 -0
  286. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/attr_map.py +0 -0
  287. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/attr_wrap.py +0 -0
  288. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/bar_graph.py +0 -0
  289. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/big_text.py +0 -0
  290. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/box_adapter.py +0 -0
  291. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/columns.py +0 -0
  292. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/constants.py +0 -0
  293. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/container.py +0 -0
  294. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/divider.py +0 -0
  295. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/edit.py +0 -0
  296. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/filler.py +0 -0
  297. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/frame.py +0 -0
  298. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/grid_flow.py +0 -0
  299. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/line_box.py +0 -0
  300. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/monitored_list.py +0 -0
  301. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/overlay.py +0 -0
  302. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/padding.py +0 -0
  303. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/pile.py +0 -0
  304. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/popup.py +0 -0
  305. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/progress_bar.py +0 -0
  306. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/scrollable.py +0 -0
  307. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/solid_fill.py +0 -0
  308. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/text.py +0 -0
  309. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/treetools.py +0 -0
  310. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/widget.py +0 -0
  311. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/widget_decoration.py +0 -0
  312. {urwid-2.6.14 → urwid-2.6.15}/urwid/widget/wimp.py +0 -0
  313. {urwid-2.6.14 → urwid-2.6.15}/urwid/wimp.py +0 -0
  314. {urwid-2.6.14 → urwid-2.6.15}/urwid.egg-info/SOURCES.txt +0 -0
  315. {urwid-2.6.14 → urwid-2.6.15}/urwid.egg-info/dependency_links.txt +0 -0
  316. {urwid-2.6.14 → urwid-2.6.15}/urwid.egg-info/not-zip-safe +0 -0
  317. {urwid-2.6.14 → urwid-2.6.15}/urwid.egg-info/requires.txt +0 -0
  318. {urwid-2.6.14 → urwid-2.6.15}/urwid.egg-info/top_level.txt +0 -0
@@ -26,7 +26,7 @@ repos:
26
26
 
27
27
  - repo: https://github.com/astral-sh/ruff-pre-commit
28
28
  # Ruff version.
29
- rev: v0.4.7
29
+ rev: v0.5.0
30
30
  hooks:
31
31
  - id: ruff
32
32
  args: [ --fix, --exit-non-zero-on-fix ]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: urwid
3
- Version: 2.6.14
3
+ Version: 2.6.15
4
4
  Summary: A full-featured console (xterm et al.) user interface library
5
5
  Home-page: https://urwid.org/
6
6
  Author-email: Ian Ward <ian@excess.org>
@@ -34,8 +34,8 @@ def received_output(data: bytes) -> bool:
34
34
 
35
35
 
36
36
  write_fd = loop.watch_pipe(received_output)
37
- with subprocess.Popen(
38
- ["python", "-u", run_me, str(factor_me)], # noqa: S603,S607 # Example can be insecure
37
+ with subprocess.Popen( # noqa: S603
38
+ ["python", "-u", run_me, str(factor_me)], # noqa: S607 # Example can be insecure
39
39
  stdout=write_fd,
40
40
  close_fds=True,
41
41
  ) as proc:
@@ -34,8 +34,8 @@ def received_output(data: bytes) -> bool:
34
34
 
35
35
 
36
36
  write_fd = loop.watch_pipe(received_output)
37
- with subprocess.Popen(
38
- ["python", "-u", run_me, str(factor_me)], # noqa: S603,S607 # Example can be insecure
37
+ with subprocess.Popen( # noqa: S603
38
+ ["python", "-u", run_me, str(factor_me)], # noqa: S607 # Example can be insecure
39
39
  stdout=write_fd,
40
40
  close_fds=True,
41
41
  ) as proc:
@@ -0,0 +1 @@
1
+ pylint==3.2.5
@@ -0,0 +1 @@
1
+ ruff==0.5.0
@@ -291,6 +291,21 @@ class TestScrollBarListBox(unittest.TestCase):
291
291
 
292
292
  self.assertEqual(top_position_rendered, widget.render(reduced_size).decoded_text)
293
293
 
294
+ def test_empty(self):
295
+ """Empty widget should be correctly rendered."""
296
+ widget = urwid.ScrollBar(urwid.ListBox(urwid.SimpleListWalker(())))
297
+ reduced_size = (10, 5)
298
+ self.assertEqual(
299
+ (
300
+ " ",
301
+ " ",
302
+ " ",
303
+ " ",
304
+ " ",
305
+ ),
306
+ widget.render(reduced_size).decoded_text,
307
+ )
308
+
294
309
 
295
310
  def trivial_AttrMap(widget):
296
311
  return urwid.AttrMap(widget, {})
@@ -148,8 +148,8 @@ class Screen(_raw_display_base.Screen):
148
148
  if not os.environ.get("TERM", "").lower().startswith("linux"):
149
149
  return
150
150
 
151
- m = Popen( # pylint: disable=consider-using-with
152
- ["/usr/bin/mev", "-e", "158"], # noqa: S603
151
+ m = Popen( # noqa: S603 # pylint: disable=consider-using-with
152
+ ["/usr/bin/mev", "-e", "158"],
153
153
  stdin=PIPE,
154
154
  stdout=PIPE,
155
155
  close_fds=True,
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '2.6.14'
16
- __version_tuple__ = version_tuple = (2, 6, 14)
15
+ __version__ = version = '2.6.15'
16
+ __version_tuple__ = version_tuple = (2, 6, 15)
@@ -645,17 +645,18 @@ class ListBox(Widget, WidgetContainerMixin):
645
645
  rows = 0
646
646
 
647
647
  focused_w, idx = self.body.get_focus()
648
- rows += focused_w.rows((cols,), focus)
649
-
650
- prev, pos = self._body.get_prev(idx)
651
- while prev is not None:
652
- rows += prev.rows((cols,), False)
653
- prev, pos = self._body.get_prev(pos)
654
-
655
- next_, pos = self.body.get_next(idx)
656
- while next_ is not None:
657
- rows += next_.rows((cols,), True)
658
- next_, pos = self._body.get_next(pos)
648
+ if focused_w:
649
+ rows += focused_w.rows((cols,), focus)
650
+
651
+ prev, pos = self._body.get_prev(idx)
652
+ while prev is not None:
653
+ rows += prev.rows((cols,), False)
654
+ prev, pos = self._body.get_prev(pos)
655
+
656
+ next_, pos = self.body.get_next(idx)
657
+ while next_ is not None:
658
+ rows += next_.rows((cols,), True)
659
+ next_, pos = self._body.get_next(pos)
659
660
 
660
661
  self._rows_max_cached = rows
661
662
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: urwid
3
- Version: 2.6.14
3
+ Version: 2.6.15
4
4
  Summary: A full-featured console (xterm et al.) user interface library
5
5
  Home-page: https://urwid.org/
6
6
  Author-email: Ian Ward <ian@excess.org>
@@ -1 +0,0 @@
1
- pylint==3.2.3
@@ -1 +0,0 @@
1
- ruff==0.4.8
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes