| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Return original code to the deprecated getters and setters
* Make more aggressive deprecation warning
Fix: #548
* Return original code to the deprecated getters and setters
* Make more aggressive deprecation warning
Fix: #548
---------
Co-authored-by: Aleksei Stepanov <alekseis@nvidia.com>
|
| |
|
|
|
| |
`focus` in constructor (#535)
Co-authored-by: Aleksei Stepanov <alekseis@nvidia.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Deprecate legacy property creation
* Drop long time ago removed methods (never returning methods)
* Move large part of property implementations under `@property`
* Emit `PendingDeprecationWarning`
for old compatibility code
for public methods used as core for property and methods for compatibility
* Emit `DeprecationWarning`
for private methods used in property construction
using `property()` call
Due to amount of copy-paste like changes, for containers shared part is moved to the existing base classes
Add `__len__` to the list based containers. Related #445
Fix typo in type annotation for `Frame.mouse_event`
* Update urwid/canvas.py
Co-authored-by: Ian Ward <ian@excess.org>
* Update urwid/canvas.py
Co-authored-by: Ian Ward <ian@excess.org>
* Update urwid/tests/test_container.py
Co-authored-by: Ian Ward <ian@excess.org>
* Fix typo in test name
* Frame `header`, `body` and `footer` also has property and methods from pre-property era
Make consistent with other containers
---------
Co-authored-by: Aleksei Stepanov <alekseis@nvidia.com>
Co-authored-by: Ian Ward <ian@excess.org>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* add basic mypy config for better tracking
(now crazy amount of warnings without `strict`)
* Useless check in `raw_display` (`if not Popen` will be always `False`)
* use explicit `return None`
Partial: #406
Related: #512
Related: #408
Co-authored-by: Aleksei Stepanov <alekseis@nvidia.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
checking (#529)
* Use `super()` where possible instead of direct base class
Related #525
Partial #406
Fix #510
Co-authored-by: Aleksei Stepanov <alekseis@nvidia.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Initial migration to the python 3.7: Semi-automatic changes
CI related:
Update `tox.ini` and `.travis.yml` to run python3 only tests
Python 3.11 tests is commented-out on travis until #517 is not merged
Manual changes:
* `setup.py`: classifiers, remove python2 compatibility code
* `docs/manual/wcur2.py`: looks like file was never completed, syntax is invalid
* `urwid.compat`: removed `ord2`, `bytes3`, `text_type`, `xrange` and `text_types`
Automatic changes (no manual editing, AST validated equality:
* removed `u` prefix from all strings: not allowed in modern python code
* `bytes()` -> `b''`
* `== None` -> `is None`
* subclassing of `object`
* `super(<Class>`, self>)` ->`super()`
* `from __future__ import ...` python3 compatibility imports
* `set(<Iterable[Hashable]>)` -> `{<Hashable>}`
* partial f-strings conversion
* (`IOError`, `select.error`, `socket.error`) -> `OSError`
* Switch to f-strings (automatic changes)
* Remove `urwid.compat.B`
* Remove `urwid.compat.with_metaclass`
* use native `super()` instead of `self.__super`
* Remove `urwid.compat.chr2`
* Remove `urwid.split_repr.python3_repr`
* Use native `@classmethod` and `@property` where overload is not possible
* Add `from __future__ import annotations`
* automatically sort imports
* Add DeprecationWarning to the deprecated methods
most IDE's will recognize it and annotate during new code usage
call with "warnings as errors" mode will help to refactor other users
* Address comments
* replace homepage address in all files
* remove outdated comments in compat.py
* make wcur2.py correct python code. For example subclass
* replace `self.__super` by `super()` in examples
* fix asyncio_socket_server.py: magic with `asyncio` became wrong
* Remove `widget.update_wrapper`: this was backport of python `functools.update_wrapper`
* display_common.py: fix trivial typo in _colors calculation
* use `sorted` method instead of list construction with later sorting
* Address comments
* `wcur2` include in docs
* warning on `signals.Signals.emit`
---------
Co-authored-by: Aleksei Stepanov <alekseis@nvidia.com>
|
| | |
|
| |
|
|
|
|
|
|
| |
This sequence generates DeprecationWarning under Python-3.7:
```
urwid/container.py:150: DeprecationWarning: invalid escape sequence \:
"""
```
|
| | |
|
| |
|
|
|
|
|
| |
Ensure inner GridFlow's Pile selectable attribute is updated with the
added content, so that keypress events are forwarded properly.
Fixes https://github.com/urwid/urwid/issues/387
|
| | |
|
| | |
|
| |\ |
|
| | | |
|
| | | |
|
| |/
|
|
|
| |
Fixes behaviour when changing contents to non selectable widgets. Before
this may have trapped the focus to a non-selectable widget.
|
| |\
| |
| | |
remove duplicate Columns.dividechars declaration
|
| | |
| |
| | |
Seems to be a typo
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* WIP
* Metaclasses
* String literal fixes
* Remove 2to3 and make tests compatible with both Python 2 & 3
* Removed debug code.
* Added tests for ProgressBar
* Fixed examples.
* future division & font literals fix
* Cleaner fonts initialization.
|
| |\ \
| | |
| | | |
Fix typos
|
| | | | |
|
| |/ / |
|
| |/
|
|
|
| |
(x)range is an iterable
__iterator__ should return an iterator (iter(iterable))
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The GridFlow widget create a Pile which contains Columns, one per
row of the grid. Because it creates the Columns widgets empty,
the Columns widgets all have their focus_position set to the default
of 0. The only time the GridFlow widget will update the focus of
the Columns widgets when constructing them is if the widget it is
adding is the focus widget of the GridFlow. This means that if
a GridFlow ends up with a row whose first widget is not selectable
and the current GridFlow focus position is not in that row, then
the entire Columns widget for that row will be considered not
selectable (as its focus position will remain 0).
Correct this by ensuring that the first selectable widget gets the
focus when a GridFlow creats a Columns widget (or the actual
GridFlow focus widget if it is in the row).
A similar fix is not needed for the Pile focus because as long as
the GridFlow focus position is set, the Pile focus will be as well.
Fixes issue #61.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
--HG--
extra : transplant_source : %FB%12%87%29d%C0%F8%7D/%C2%1C%05T%DCW%84MjEr
|
| | |
|
| |
|
|
|
|
| |
---
urwid/container.py | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
|
| | |
|
| |
|
|
|
| |
--HG--
extra : transplant_source : %E0%1C%B7H%87d%F9%19NR%B2%86%B3w%EE%A7%1D%9E%9B%FB
|
| |
|
|
| |
get_pref_col focused box column case
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
--HG--
branch : feature-sphinx
|
| |
|
|
|
| |
--HG--
branch : feature-sphinx
|
| |
|
|
|
| |
--HG--
branch : feature-sphinx
|
| |
|
|
|
| |
--HG--
branch : feature-sphinx
|
| |\
| |
| |
| |
| | |
--HG--
branch : feature-sphinx
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Due to a copy-paste error, the Overlay widget would apply the left and
right padding to the top and bottom as well as to the left and right.
---
urwid/container.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
|