Rodrigo Girão Serrão
66a644845b
Prevent reactive-watcher loop in Tabs / TabbedContent. ( #2305 )
...
* Add regression test for #2229 .
* Fix potential reactive-watch loop.
* Simplify regression test.
Labels are cheaper to use and the final visual result of the test won't depend on the directory it runs from.
* Simplify solution.
Turns out I didn't need a descriptor. :(
* Fail on empty tab.
2023-04-18 11:48:33 +01:00
Rodrigo Girão Serrão
3a7cf08ef2
Make scrollable containers focusable. ( #2317 )
...
* Make scrollable containers focusable.
Related issues: #2270 .
2023-04-18 11:44:32 +01:00
Dave Pearson
77e47f7508
Swap the result callbacks on screens to be a stack of callbacks
...
It is possible for the same instance of a screen to get pushed onto the
screen stack multiple times; as such we really need to keep track of all the
callback requests.
So here I register a callback for every screen push and clean it up on every
screen pop; with those without callbacks being no-ops.
2023-04-18 11:40:12 +01:00
darrenburns
496f8b4524
Updating styles on demand instead of on_idle ( #2304 )
...
* Updating styles on demand instead of on_idle
* Tidy up update_styles
* Fix LRU cache tests
* Remove some debugging code
* Adding test for pseudoclass style update
* Update changelog
2023-04-18 11:36:00 +01:00
Rodrigo Girão Serrão
01d67173e8
Don't expose snippets publically. ( #2300 )
2023-04-18 10:19:43 +01:00
Dave Pearson
b67f4f89cc
Initial testing of screen result callbacks
...
This is roughly how it should work. Having got this going and constructed
test code to go with it (outwith of this commit, not unit testing code, just
a test app to try out the ideas), I wanted to get this onto the forge for
further mulling over tomorrow.
The one sneaky/questionable thing here is that I'm sort of dumpster-diving
the screen stack to get the "parent" screen, to make the callback in
context. This both feels right and feels like a cheat. On the other hand
it's public for a reason, right?
Right?
2023-04-17 21:03:49 +01:00
Will McGugan
e930e82526
fix for win driver ( #2303 )
2023-04-17 17:06:07 +01:00
Dave Pearson
f8b51ea269
Ensure the active message pump is set when app is the sender ( #2302 )
...
See https://github.com/Textualize/textual/issues/2301
2023-04-17 16:23:31 +01:00
Will McGugan
0509cf8948
Border style ( #2292 )
...
* border styles
* docs for border styles
* fix tests
* tests
* tests and docs
* changelog
* implement auto
* style information fix
2023-04-16 12:31:39 +01:00
Dave Pearson
9fb63f9b53
Merge pull request #2286 from davep/faqup
...
Update the centring FAQ to reference `Center`
2023-04-15 09:05:07 +01:00
Dave Pearson
52dcca4e8c
Merge pull request #2287 from davep/export-button-variant
2023-04-14 15:59:01 +01:00
Dave Pearson
3c1a311a67
Update the Button docs to mention ButtonVariant
...
I'm not 100% sure how to get this into the docs as I'd like, and it seems
we've moved the API docs around a lot in respect to widgets, recently (I'm
aware of this but aren't sure what the new layout is yet).
This at least starts to get things into the right place.
2023-04-14 13:08:26 +01:00
Dave Pearson
8fe14e44da
Update the CHANGELOG
2023-04-14 12:19:24 +01:00
Dave Pearson
3ce910f764
Add textual.widgets.button to expose ButtonVariant
...
See #2264 .
2023-04-14 12:17:53 +01:00
Dave Pearson
bec01e99d1
Rebuild the FAQ
...
Keep forgetting to do this!
2023-04-14 12:11:45 +01:00
Dave Pearson
ee8153c9ed
Update the centring FAQ to reference Center
...
See #2263 .
2023-04-14 12:09:25 +01:00
darrenburns
898de5a69c
Fix for empty ListView bindings not firing ( #2281 )
...
* Fix bindings not firing when ListView is empty
* Regression test for empty ListView bindings not working
* Update changelog
2023-04-13 15:32:56 +01:00
Will McGugan
5e50b2e417
optimization
2023-04-13 14:33:01 +01:00
Will McGugan
58b8d22a3c
remove bell
2023-04-13 14:23:06 +01:00
Will McGugan
04b994836c
Strips render optimization ( #2278 )
...
* WIP optimization
* optimization
* simplify, add comments
* docstring
* Update src/textual/_compositor.py
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
* Update src/textual/_compositor.py
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
* Update src/textual/strip.py
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
* Update src/textual/_compositor.py
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
* driver bell
* optimize render
---------
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
2023-04-13 14:15:32 +01:00
darrenburns
5246282c22
Improving data table documentation ( #2279 )
...
* Improving data table documentation
* More info on DataTable
* Add note on retrieving cursor coordinate
* Add note on DataTable supporting more than just strings
* Add note on cell styling and justifying - common question
* Slight rewording
* Explaining what "row labels" are.
* Update docs/widgets/data_table.md
Co-authored-by: Will McGugan <willmcgugan@gmail.com >
* Update docs/widgets/data_table.md
Co-authored-by: Will McGugan <willmcgugan@gmail.com >
* Update docs/widgets/data_table.md
Co-authored-by: Will McGugan <willmcgugan@gmail.com >
* Update docs/widgets/data_table.md
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
* Update docs/widgets/data_table.md
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
* Update docs/widgets/data_table.md
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
* Update docs/widgets/data_table.md
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
* Update docs/widgets/data_table.md
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
* Improve data table fixed rows/columns docs
* Update some examples
---------
Co-authored-by: Will McGugan <willmcgugan@gmail.com >
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
2023-04-13 14:09:19 +01:00
Rodrigo Girão Serrão
bb2c31ba35
Add --port option to textual console. ( #2258 )
...
* Add --port option to textual console.
* Changelog.
* Address review feedback.
* Mark unpredictable test as xfail.
This test gets an xfail mark until #2254 is open.
* Make DEVTOOLS_PORT a constant.
Related review: https://github.com/Textualize/textual/pull/2258\#discussion_r1165210395
* Factor logic into function.
Related review: https://github.com/Textualize/textual/pull/2258\#discussion_r1165298259
* Remove dead import.
2023-04-13 11:57:35 +01:00
Rodrigo Girão Serrão
e32cdbb390
Merge pull request #2276 from Textualize/tabs-scroll-to-center
...
Scroll to center when tab is clicked.
2023-04-13 10:48:15 +01:00
Rodrigo Girão Serrão
5104cbe501
changelog
2023-04-12 22:28:48 +01:00
Rodrigo Girão Serrão
663b09736e
Scroll to center when tab is clicked.
...
Related comment: https://github.com/Textualize/textual/issues/2256#issuecomment-1505551728
2023-04-12 22:25:37 +01:00
Will McGugan
c249548c43
Move responsibility for writing in to driver ( #2273 )
...
* Move responsibility for writing in to driver
* remove driver property
* optimization for segments
* force terminal
* Update src/textual/drivers/_writer_thread.py
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
* no safe box
* safe box false
* force null file
---------
Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com >
2023-04-12 17:10:21 +01:00
darrenburns
6369c37907
Ensure styles applied in correct order in DataTable ( #2272 )
...
* Ensure styles applied in correct order in DataTable
* Add snapshot regression test for datatable style ordering
* Update CHANGELOG
2023-04-12 14:45:24 +01:00
Will McGugan
03fa641be7
Simplify driver ( #2252 )
...
* Simplify driver
* remove debug flag
* added set_terminal_size to driver
* restore flush
* Restore debug mode
* docstring
* fix parser
* simplify windows driver
* driver update
* annotations
* docstrings
2023-04-12 13:44:22 +01:00
Will McGugan
71becfc090
make Timer.start private
2023-04-12 13:42:57 +01:00
Will McGugan
2aa59f1ff0
changelog
2023-04-12 12:12:47 +01:00
Will McGugan
3c1898edeb
don't return task
2023-04-12 12:08:22 +01:00
Will McGugan
f239bc1aa4
docstring
2023-04-12 12:05:24 +01:00
Will McGugan
2852c41597
exception docstring
2023-04-12 11:55:16 +01:00
Will McGugan
f81d76fcf0
docs
2023-04-12 11:43:36 +01:00
Will McGugan
7c25402c5d
comment
2023-04-12 11:37:47 +01:00
Will McGugan
4ef070df66
docs
2023-04-12 11:22:19 +01:00
darrenburns
2bfe7df524
Add docstring to action_check_bindings ( #2266 )
...
* Add docstring to action_check_bindings
* Use action docstring convention
2023-04-12 11:16:59 +01:00
darrenburns
f95e30870b
Tabbed content activated message ( #2260 )
...
* Add a message for the tabbed content activated
* Add a docstring
* Testing tabbed content activated message
* Update changelog
* Add reference to the docs about TabbedContent.TabActivated
2023-04-12 10:55:14 +01:00
darrenburns
6352ceb61b
Datatable remove row ( #2253 )
...
* Checking in remove_row progress
* Ensuring structures updated correctly when row deleted
* Clamping index
* Failed attempt
* Removing rows
* Update a type hint in DataTable
* Remove some code that wasnt required
* Use index syntax instead of get
* Add DataTable remove row test
* Snapshot tests for removing rows
* Add a docstring for DataTable.remove_row method
* Update changelog regarding DataTable.remove_row
* Add check_idle call to remove_row
2023-04-11 18:48:58 +01:00
Will McGugan
13939499d9
implement single line comments ( #2248 )
2023-04-11 15:21:41 +01:00
Rodrigo Girão Serrão
48e8b510ba
Merge pull request #2255 from Textualize/scroll_to_center
...
Add scroll_to_center method.
2023-04-11 15:20:38 +01:00
Rodrigo Girão Serrão
349f414dac
Use Offset operators.
2023-04-11 14:51:59 +01:00
Rodrigo Girão Serrão
8fe9e97fd7
Restore deleted snapshot tests.
2023-04-11 14:23:45 +01:00
Rodrigo Girão Serrão
2588cfdb0d
Update snapshot test.
2023-04-11 13:39:24 +01:00
Rodrigo Girão Serrão
454254fab4
Implement scroll_to_center method.
2023-04-11 13:36:34 +01:00
Rodrigo Girão Serrão
e87edd79cb
Add test for scroll_to_center method.
2023-04-11 13:29:56 +01:00
Will McGugan
3c8f2ec4e9
map geometry
2023-04-10 21:57:20 +01:00
Will McGugan
af93a82fb1
fix byte example
2023-04-10 17:25:13 +01:00
Will McGugan
3d642e1c71
comments, made update_timer private
2023-04-10 17:10:04 +01:00
Will McGugan
4f7b2d00bc
fix arrangement cache ( #2249 )
...
* fix arrangement cache
* changelog
v0.19.1
2023-04-10 16:50:34 +01:00