Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Namespace IDs for ContentTab in TabbedContent #3815

Merged
merged 17 commits into from Dec 15, 2023

Conversation

davep
Copy link
Collaborator

@davep davep commented Dec 5, 2023

To satisfy #3695 this PR adds an "internal" prefix to the tabs that go to make up a TabbedContent, thus ensuring that an ID for a TabPane doesn't end up being a duplicate ID amongst the descendants of the TabbedContent1. All ContentTab instances now have and ID of --content-tab- followed by the ID of the TabPane they pertain to.

In doing this the following changes have been included:

  • TabbedContent.TabActivated has grown a pane property, which is a reference to the TabPane that has been activated.
  • TabbedContent.TabActivated has been added to TabbedContent.TabActivated.ALLOW_SELECTOR_MATCH, allowing it to be used with the @on decorator.
  • TabbedContent.TabActivated.tab has been removed from TabbedContent.TabActivated.ALLOW_SELECTOR_MATCH, an intentional breaking change to encourage anyone using it to switch to pane (the reason being that the ID of the tab will be the "internally-prefixed" one so will be less easy to reason about).
  • ContentTab has grown a couple of methods for handling the addition and removal of the prefix to IDs.
  • ContentTabs has grown wrappers around disable, enable, show and hide to handle the transition between IDs.
  • TabbedContent has grown get_tab and get_pane methods, partially in service of this PR, but also as a handy utility for the developer using TabbedContent.
  • Added some extra information to the docs for TabbedContent that informs the developer how they can go about styling the tabs themselves. (Note: this is as-yet unchecked with local docs serving as both myself and @rodrigogiraoserrao are unable to get the docs to build right now)

Footnotes

  1. The initial complaint being that a query_one("#some-tab-pane") failing was surprising.

@davep davep added enhancement New feature or request Task labels Dec 5, 2023
@davep davep self-assigned this Dec 5, 2023
@davep davep linked an issue Dec 6, 2023 that may be closed by this pull request
I *might* add a method to ContentTab for getting the clean ID, so having the
correct type will help IDEs using LSP.
Note that I can't tell if this comes out as I'd like, as right at the moment
I can't locally serve the docs due to an error during documentation
generation (an issue confirmed by @rodrigogiraoserrao).
@davep davep changed the title WiP: Namespace IDs for ContentTab in TabbedContent Namespace IDs for ContentTab in TabbedContent Dec 7, 2023
@davep davep marked this pull request as ready for review December 7, 2023 15:29
Copy link
Contributor

@rodrigogiraoserrao rodrigogiraoserrao left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A couple of small changes requested.

How easy/convenient is it to use the helper methods add_prefix/sans_prefix?
While I agree they were defined in the more logical place from the point of view of the organisation of the code, I wonder if we chould/should allow the user to get to those methods in a more direct manner, as we usually don't import ContentTabs.

src/textual/widgets/_tabbed_content.py Show resolved Hide resolved
src/textual/widgets/_tabbed_content.py Outdated Show resolved Hide resolved
src/textual/widgets/_tabbed_content.py Outdated Show resolved Hide resolved
src/textual/widgets/_tabbed_content.py Show resolved Hide resolved
tests/test_tabbed_content.py Outdated Show resolved Hide resolved
@davep
Copy link
Collaborator Author

davep commented Dec 14, 2023

They're intentionally a hidden detail.

Copy link
Contributor

@rodrigogiraoserrao rodrigogiraoserrao left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

src/textual/widgets/_tabbed_content.py Show resolved Hide resolved
@davep davep merged commit c94752d into Textualize:main Dec 15, 2023
20 checks passed
@davep davep deleted the tab-discontent branch December 15, 2023 12:12
brokenshield added a commit to brokenshield/textual that referenced this pull request Jan 4, 2024
commit 1e1b02398f356e710b5b44c6bee46c98ec2dc957
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Thu Jan 4 17:09:43 2024 +0000

    words

commit 2801a41a8ff4d37eca7e3b2a585b6bb659a79335
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Thu Jan 4 16:37:25 2024 +0000

    change quotes (#3957)

commit a6fe4d405fa48f52812d9bf627a84bea266cee0e
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Thu Jan 4 15:29:14 2024 +0000

    changelog

commit b7f998a8a589ae0ed96f15f49cb27b0fa423c148
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Thu Jan 4 15:19:12 2024 +0000

    bump version (#3956)

commit b2fe0a76c270fbf72a6abe406c924de7e6455c61
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Thu Jan 4 15:07:43 2024 +0000

    nested (#3946)

    * nested

    * remove debug

    * patch scope

    * fix nested

    * docs

    * clarification

    * docstring

    * fix test

    * remove debug

    * copy

    * fix example

    * wording

    * Apply suggestions from code review

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
    Co-authored-by: Dave Pearson <davep@davep.org>

    * highlighting

    * wording

    * wording

    * check errors

    * type checking:

    * extra errors

    * extra test [skip ci]

    ---------

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
    Co-authored-by: Dave Pearson <davep@davep.org>

commit e5f223156f7755166543f8ec21c8959db92e44a0
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Thu Jan 4 13:52:41 2024 +0000

    screen docs (#3955)

    * screen docs

    * Added push_screen_wait

    * words and test

    * overload typing

    * docstring

    * style tweak

    * ws

    * Update docs/guide/screens.md

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

    * Update docs/guide/screens.md

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

    * Update src/textual/app.py

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

    * merge fix

    * wording

    * wording [skipci]

    ---------

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

commit babbc40f9f91af8e1a5153a4a11790110a9ca585
Merge: 39e700e3e 82e4f07e7
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Jan 4 12:07:02 2024 +0000

    Merge pull request #3941 from elenakrittik/patch-1

    fix(typing): Add missing generic parameter

commit 39e700e3e0ee428a3b96749f69b5378d65a8802b
Merge: df2d85207 8da216f8b
Author: Dave Pearson <davep.org@gmail.com>
Date:   Thu Jan 4 07:15:04 2024 +0000

    Merge pull request #3950 from TomJGooding/docs-widget-fix-show-vertical-scrollbar-docstring

commit 8da216f8bf1dc3c7a2d1017900dc41df0fb33ae4
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Thu Jan 4 07:11:37 2024 +0000

    docs(widget): fix show_vertical_scrollbar docstring

commit df2d852077b67844e001923627919d3f3d049351
Merge: 354c42314 5f5758c51
Author: Dave Pearson <davep@davep.org>
Date:   Wed Jan 3 12:41:29 2024 +0000

    Merge pull request #3944 from davep/tree-root-expanded-state

    Retain `Tree.root`'s expanded state when performing a `Tree.clear`

commit 354c42314a4710650dfee948ffa35a11923dff6d
Merge: 03fb1b1de 0e6769721
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Jan 3 12:05:48 2024 +0000

    Merge pull request #3905 from Textualize/hllines-docs-fix

    Fix highlighted lines in docs example

commit 03fb1b1deb2a6cbeb59bbb5c9f879272b21f35d2
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Jan 2 18:18:40 2024 +0000

    api docs

commit 5f5758c51f6611a93ecbbce64d2d9eb65c54f407
Author: Dave Pearson <davep@davep.org>
Date:   Tue Jan 2 12:13:47 2024 +0000

    Update the ChangeLog

commit d5765de863ec109c77e70c282dd06e51f76d5249
Author: Dave Pearson <davep@davep.org>
Date:   Tue Jan 2 12:11:09 2024 +0000

    :sparkles: Add snapshot tests for Tree.node/clear expansion

commit 4c5defe778b1a45d7706eaab2ec3e18d4a0bccca
Author: Dave Pearson <davep@davep.org>
Date:   Tue Jan 2 11:19:39 2024 +0000

    Remember Tree.root's expanded state when performing Tree.clear

    See #3557.

commit 82e4f07e7a378e4d8b8c146f58429baf73d92d00
Author: lena <77104725+elenakrittik@users.noreply.github.com>
Date:   Tue Jan 2 01:27:25 2024 +0300

    fix(typing): Add missing generic parameter

commit b8fccd494a151719b7d4d0b1e8426ef81ffa8570
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Jan 1 15:54:55 2024 +0000

    lazy mount (#3936)

    * lazy mount

    * Lazy test

    * doc

    * Add to docs

    * snapshot and changelog

    * typing

    * future

    * less flaky

    * comment

commit 244e42c6fcfd4989de08c57ffc10db1e5fc87add
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Fri Dec 22 16:54:48 2023 +0000

    missing f

commit 6a894461ba9a78891abc6dc8d92f39c586fa9989
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Fri Dec 22 15:40:39 2023 +0000

    Fix render str (#3920)

    * Fix text render

    * changelog

commit 0e6769721b9796b784183f9310d1e733d465b1c0
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Dec 20 17:11:30 2023 +0000

    Show TCSS as css instead of sass.

commit ff70df87aad4d0c3ccad45709813299e04faeb03
Merge: 373a31992 e03de2765
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Dec 20 13:23:58 2023 +0000

    Merge pull request #3896 from Textualize/move-child-before-after-self-noop

    Move child acts as noop if trying to move before/after itself

commit e03de2765e2e495eddfaf1834e674863c3a27200
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Dec 20 12:00:52 2023 +0000

    Refactor tests.

    Address review feedback in https://github.com/Textualize/textual/pull/3896#discussion_r1430711149.

commit 373a31992b12604b73aeebc009ac19395cba6753
Merge: 7c0fe102d aa87295d9
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Dec 19 13:42:56 2023 +0000

    Merge pull request #3904 from Textualize/listviewindex-doc

    Document ListView.index.

commit 49994f60ab6515b70903efa9997882ab72ee5c9c
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Dec 19 11:59:18 2023 +0000

    Fix hl_lines.

commit 7c0fe102dd51df0604ae3ad2335829b625998736
Merge: 1c8dc5d74 d6780f71c
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Dec 19 11:45:02 2023 +0000

    Merge pull request #3900 from jrycw/add-one-period

    docs(queries): add one period

commit aa87295d9a8fd402a31f35b7a6903c1add1ce01c
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Dec 19 11:43:30 2023 +0000

    Document ListView.index.

commit d6780f71cde3176bc2ae9a51d76e6cfb4cb4f008
Author: Jerry Wu <jerry@ycwu.space>
Date:   Tue Dec 19 08:51:47 2023 +0800

    Update queries.md

commit 40794371094602ecbe109f8529311d1b9e87b6ff
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Dec 18 16:41:40 2023 +0000

    Link to PR in changelog.

commit 5f85cf4bd4b146a3a15584fdda76af89fbeb0b32
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Dec 18 15:46:56 2023 +0000

    Add tests.

    Co-authored-by: Jeff Epler <jepler@gmail.com>

commit a9444aadfd9876a4760fa70ef89e5f280fb44145
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Dec 18 15:46:41 2023 +0000

    Fix move_child noop when target is child.

    This finishes the work done in #2530, which was incomplete as seen in https://github.com/Textualize/textual/issues/1743#issuecomment-1858132809.

commit be862376c6895dc50b6e238f127da379f3156926
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Dec 18 15:44:23 2023 +0000

    Add overloads to move_child.

    This makes it so that typecheckers can warn users early about calling 'move_child' with no after/before or with both.
    We also make those two parameters keyword-only to increase readability.

commit 1c8dc5d74e4e791f746cdc8a10c0272c9e1dff97
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Sun Dec 17 20:17:20 2023 +0000

    bump 0.46 (#3891)

commit c4e1067ceb3c4b973f3b23f1d6456c9edc44f72e
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Sun Dec 17 15:56:28 2023 +0000

    Restore no-op default. (#3879)

    As it stands, if there's only one non-disabled radio button, using up/down to navigate will de-select it (because the default value in 'min' is None) when navigation should do nothing (the default should be 'selected').

commit 32b916fa23b5b63e8c221b53416bee5709925510
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Sun Dec 17 14:40:58 2023 +0000

    fix for zero width scrollbars (#3887)

    * fix for zero width scrollbars

    * changelog

    * snapshot fix

    * simplify

    * change wait

    * early out, test fix

    * no early out

    * increase wait

    * auto pilot

    * increase wait

    * skip windoze

    * disable test

    * restore test

    * flush events

    * another flush

    * maybe fix race condition

    * uderline fix

    * simplify

    * remove flush events

commit 1ce647350d1655f4320e61b069dd5deaacffb39e
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Sat Dec 16 18:38:36 2023 +0000

    Button optimization (#3885)

    * optimize button

    * optimize

    * simplify

    * fix test

    * explicit none

    * sleep for animation

    * test fix

    * wait snapshots

    * remove tab delay

    * reduce delay

    * fix

    * schdule animations

    * remove import [skip ci]

commit ac9fd784d848e2056f8786e98358a1287a12f84d
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Sat Dec 16 10:10:31 2023 +0000

    Better cache key

commit cc5fee45335be30b3090c7b29ee33c86480ce28b
Merge: 60bf90a7d 9df9fb924
Author: Dave Pearson <davep@davep.org>
Date:   Sat Dec 16 08:49:05 2023 +0000

    Merge pull request #3884 from TomJGooding/docs-readme-update-python-version

    docs(readme): update python version

commit 60bf90a7d8fe443f014beb5e87649a1f5ccaafa3
Merge: b4a5674ea 6647d5a78
Author: Dave Pearson <davep@davep.org>
Date:   Sat Dec 16 08:47:49 2023 +0000

    Merge pull request #3883 from TomJGooding/docs-changelog-fix-unreleased-updates

    docs(changelog): fix unreleased updates

commit 9df9fb92422202b9861f1378fb1203d1ea4c61ca
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Fri Dec 15 18:57:59 2023 +0000

    docs(readme): update python version

commit 6647d5a783ad1d4cdd75800daeb3a50ad13b7436
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Fri Dec 15 18:34:19 2023 +0000

    docs(changelog): fix unreleased updates

commit b4a5674eaeb87a1cf2d2495cc84dcedfeb282a2b
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Fri Dec 15 16:44:40 2023 +0000

    rules caching (#3880)

    * rules caching

    * changelog

    * docstring

    * fix cache

    * fix test

    * fix test

    * remove comment [skip ci]

commit 1ebb59b383d3b8d213a18aa5d49c1cd99c839d4b
Merge: c94752d78 6e2122992
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Fri Dec 15 12:25:07 2023 +0000

    Merge pull request #3872 from Textualize/fix-keyboard-navigation-radio-buttons

    Ignore disabled radio buttons when moving selection.

commit c94752d78e3f394559d35e5f4e9ed63c7d5f7c61
Merge: c5cf804bc dbf023725
Author: Dave Pearson <davep@davep.org>
Date:   Fri Dec 15 12:12:53 2023 +0000

    Merge pull request #3815 from davep/tab-discontent

    Namespace IDs for `ContentTab` in `TabbedContent`

commit 6e2122992419183253b604802d482864ca104472
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Fri Dec 15 12:01:06 2023 +0000

    Make black happy.

commit c5cf804bcb30d161c2d48ded0c5435e42a949bd6
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Fri Dec 15 11:58:56 2023 +0000

    delay underline in tabs (#3876)

commit 9f917743ce41b13eb18f55b83de3186164b514b7
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Fri Dec 15 11:46:40 2023 +0000

    optimization (#3877)

commit 17cd38f369247c03db57171683d8beb3212c6a2c
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Fri Dec 15 11:32:32 2023 +0000

    Update src/textual/widgets/_radio_set.py

    🤦

    Co-authored-by: Will McGugan <willmcgugan@gmail.com>

commit e72bab31a48f545a7c9f2c5b2504fae0dc148295
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Fri Dec 15 10:39:42 2023 +0000

    feat(collapsible): make title a reactive attribute (#3830)

    * feat(collapsible): make title a reactive attribute

    * update docs and changelog

    * fix collapsed in init

    * change collapsible title to static

    * remove unnecessary mounted check

commit bf7b70c456fc6ea431d8a2cca02a6b7cdb25dfc4
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Fri Dec 15 10:24:33 2023 +0000

    Add note about . (#3873)

commit dbf02372514a85f03b5a26c8054c2a5205726372
Author: Dave Pearson <davep.org@gmail.com>
Date:   Thu Dec 14 17:37:14 2023 +0000

    Update src/textual/widgets/_tabbed_content.py

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

commit 5c260d0ff821262d34ccb5b720add1f378fb67ae
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 14 17:35:24 2023 +0000

    Remove unnecessary use of results()

commit b00374d4d6ec26a994eee51ccecc150c31a7c0cd
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 14 17:33:37 2023 +0000

    Add missing Raises section

commit c498a43375037fda794eb9b5ac2e28113be3a93d
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 14 17:32:56 2023 +0000

    Remove unused watch parameter

commit 0099e496df37ff9b15aec3c33797a398ad4e4e45
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Dec 14 16:36:21 2023 +0000

    Update highlighted lines. (#3875)

commit 2dd6e923655c96c0f45fa47992cc9f1bc8b1b883
Author: Daniel Schwarz <danschwarz@users.noreply.github.com>
Date:   Thu Dec 14 10:39:43 2023 -0500

    handle cities with spaces in the urllib.request version of weather05.py (#3871)

    handle cities with spaces in the urllib.request version of weather

commit 2e0f84f0095ad4019b68af8a1353cd97d533aa21
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Dec 14 15:16:42 2023 +0000

    Ignore disabled radio buttons when moving selection.

commit 49e71862688a60e5e29f6bb60084e45890a65285
Merge: e1b94e4b6 f01d31ca0
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Dec 14 12:06:43 2023 +0000

    Merge pull request #3845 from branchvincent/importlib-metadata

    drop importlib-metadata

commit e1b94e4b66f20f164a598712ad954719ad3fbc73
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Dec 14 10:42:18 2023 +0000

    Add 3.12 to CI (#3863)

    Adds Python 3.12 to CI.
    Because `tree-sitter`/`tree-sitter-languages` can't be installed on 3.12 yet, we need to run slightly different commands when installing dependencies/running tests on 3.12.

    See for more context: https://github.com/Textualize/textual/issues/3491#issuecomment-1854156476

commit f01d31ca01d779315270a8b3a9f907a41f38d9e4
Author: Branch Vincent <branchevincent@gmail.com>
Date:   Sun Dec 10 11:38:46 2023 -0800

    drop importlib-metadata

commit 4a12076bf2ed0170c298bb8ed775f9905690d3e8
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Wed Dec 13 21:05:42 2023 +0000

    docs: update minimum python version (#3866)

    * docs: update minimum python version

    * docs: update minimum python version

commit c6aef4b8b951e7ba4c78433b47a47d8f925c4730
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Wed Dec 13 17:32:42 2023 +0000

    Added Merlin to examples

commit a85edb77f4cd7fd23b618e24119495c1de812963
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Wed Dec 13 10:52:45 2023 +0000

    added example

commit 618a450b31e12f5dde011823bc47a4e7ead22e7f
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Dec 12 21:22:46 2023 +0000

    changelog

commit 4bfb82ac06e618092963942ee616b7256b4ee597
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Dec 12 21:20:22 2023 +0000

    fix update styles (#3860)

    * fix update styles

    * snapshot test, version bump

    * changelog

    * snapshot

commit ea3020f12fac30a5e65fa1d91286a007ac14cd19
Author: Simon Willison <swillison@gmail.com>
Date:   Tue Dec 12 07:29:25 2023 -0800

    Fix link previews on Twitter (#3856)

commit 2f3809dcff78c5bf417aa86da03bb1fc70d0cfa0
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Dec 12 15:21:52 2023 +0000

    clarification

commit 0cbf728d39f60d58187bf7433f50b0e2ceb983e4
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Dec 12 15:13:18 2023 +0000

    fix example

commit 21ba7dbcf63973067aa283733f5e7f5f3df56563
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Dec 12 14:42:07 2023 +0000

    bump (#3855)

commit bfbc6fb285c0e2030d5f11b828e750b58af136ca
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Dec 12 14:39:27 2023 +0000

    added howto (#3854)

    * added howto

    * don't need this

    * don't need this

    * move title

    * docstring

commit dbdcf275265dd06445d1e28baf78988317fb7ad6
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Dec 12 11:01:20 2023 +0000

    skip if not mounted (#3847)

    * skip if not mounted

    * avoid refresh before  mount

    * micro op

    * ws

commit bac7119539e9adec60259a0c5b2f5e4d1b1936d7
Author: Daniel Cook <cook.r.dan@gmail.com>
Date:   Tue Dec 12 18:37:38 2023 +0900

    resolves #3833 - change wording/grammar in the documentation for box-sizing (#3850)

commit 0bbf9d1f121ed900a5ddab729f36f929e3f41923
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Dec 11 16:44:23 2023 +0000

    Don't @ me

commit 8f3d32059195c39a071f7ec8635002f5edd388d5
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Dec 11 12:14:38 2023 +0000

    Faster css (#3844)

    * faster css

    * simplify

    * ws

    * superfluous function

    * simplify selector names, change to set

    * changelog

    * micro op

    * quicken

    * Update src/textual/strip.py

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

    ---------

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

commit a2a6f56cec1ed6a67b54d0551ef0c02ad84b9241
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Sat Dec 9 12:12:46 2023 +0000

    docs fix (#3841)

commit 5eea51ce1bfad433b0711c913faff41ed8e005f0
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Sat Dec 9 11:17:59 2023 +0000

    Optimizations (#3837)

    * optimize layout

    * optimization

    * test fix

    * startup optimization

    * simplify

    * faster content height

commit 82d6e3e05f87939166364e805f35e8260f395c9d
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Thu Dec 7 18:40:48 2023 +0000

    Roll back ALLOW_CHILDREN and max height fix (#3814)

    * max height

    * changelog

    * snapshot

    * unused exception

commit 4f459d63b2d9dd47de7f49b06cbe025dc5bef84b
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 18:39:47 2023 +0000

    Fix a typo in docs for OptionList (#3828)

commit 880fc89cd00c90914e89cb8d867e9aaf900c9052
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Dec 7 16:09:45 2023 +0000

    Add Collapsible.Toggled. (#3825)

    Add Collapsible.Toggled, Collapsible.Expanded, and Collapsible.Collapsed.

commit de83fae06c92f907b3d106cf8eec48c85b36ef39
Merge: 2a67b6d15 817af470c
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 15:36:21 2023 +0000

    Merge pull request #3786 from davep/force-tree-node-scroll

    Force the call to scroll to the region of a node's label

commit b16217cfe87f468cac1f729ab1e2d2cfcb4e0ab4
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 15:19:50 2023 +0000

    Update the ChangeLog

commit 758547b5ddf4c80e636bd8c3865b0928be1fd5ec
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 15:02:39 2023 +0000

    Add a note to the docs about styling tabs

    Note that I can't tell if this comes out as I'd like, as right at the moment
    I can't locally serve the docs due to an error during documentation
    generation (an issue confirmed by @rodrigogiraoserrao).

commit 1e472d54e9678a172815dc7731f842a9adc88fb4
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 14:01:27 2023 +0000

    Mark ContentTab._PREFIX as being a constant

commit fc5d611eb58b2989389119186ebfaf93652ccd15
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 13:03:02 2023 +0000

    Add a get_pane method to TabbedContent

commit 474f2146d3ccabe28cc545ffc8587cfa36930b21
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 12:03:39 2023 +0000

    Swap to selecting on the pane for TabbedContent.TabActivated

commit 779c590f13e517692fe9b1d198e2302c1bd97a4b
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 11:29:08 2023 +0000

    Better type the tab within TabbedContent.TabActivated

    I *might* add a method to ContentTab for getting the clean ID, so having the
    correct type will help IDEs using LSP.

commit 06e7b87545668fdbd6458af1f1bd7b7103d12322
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 11:21:25 2023 +0000

    Take the prefix into account during tab en/disable

commit a58581dd5fe5070455d1c5da34292ffee72b838c
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 10:39:12 2023 +0000

    Remove unnecessary f-strings

commit 1f5d84a60f6faef1e3f9b340302892999b9aeabc
Author: Dave Pearson <davep@davep.org>
Date:   Thu Dec 7 09:30:11 2023 +0000

    Remove debugging notify calls

    Oops.

commit 2a67b6d15c9299a86259491b400438dcd5ed009c
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Wed Dec 6 18:44:40 2023 +0000

    simplify (#3820)

commit b263e44024cacd46346d65dad7ded83509483705
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Wed Dec 6 17:31:03 2023 +0000

    simplify loading (#3816)

    * simplify loading

    * ws removal

    * no need for this

    * simplify

    * gutter

    * tests and refactor

    * ws

    * ws

    * restore

    * move to compositor

    * words

    * tweak timeout in snapshot

commit 126343012442be3485ccadb298b950ba88a8b2fc
Author: Dave Pearson <davep@davep.org>
Date:   Wed Dec 6 16:30:38 2023 +0000

    Run black over the TabbedContent code

    Looks like I managed to nuke my pre-commits recently.

commit abf5d56b479ddd151a29c4b742ce19ca7a5c569c
Author: Dave Pearson <davep@davep.org>
Date:   Wed Dec 6 16:29:46 2023 +0000

    Run black over the tests

commit 7bf9503af32e2a6baf889572fe5326cf266b1b08
Author: Dave Pearson <davep@davep.org>
Date:   Wed Dec 6 16:26:45 2023 +0000

    Namespace the Tab IDs within a TabbedContent

    See #3695.

commit 8be6032de92f8ea6451c245e783d91718eb446c4
Author: Dave Pearson <davep@davep.org>
Date:   Tue Dec 5 16:00:09 2023 +0000

    Experiment with namespacing the ContentTab IDs

    See #3695.

commit 87ef1bbcc165614d4fad8feeb00ab67621c6fc39
Author: azinneck0485 <123660683+azinneck0485@users.noreply.github.com>
Date:   Tue Dec 5 09:17:25 2023 -0500

    Add Select.from_values class method for initializing with iterator (#3743)

    * prototype to use class method to initialize Select object using an iterator

    * add docstring and optional arguments to Select.from_values()

    * add test widget for Select.from_values() and update documentation to include an example for its use

    * add snapshot tests to Select.from_values() class method and update snapshots to include results

    * address review comments

    ---------

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

commit d04c8387ee0f09551288be0c46388a40e7960b2e
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Tue Dec 5 13:37:37 2023 +0000

    fix(datatable): raise error for update_cell with invalid column key (#3336)

    * fix(datatable): raise error for update cell with invalid column key

    * update changelog

    * fix changelog version

    ---------

    Co-authored-by: Will McGugan <willmcgugan@gmail.com>

commit 17726b6b773c13d9ffe81f9dbfa4536c01321141
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Dec 5 12:13:18 2023 +0000

    docs (#3812)

commit 59dc11d8a2f17587af0ac3c19da47296b5913654
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Dec 5 12:07:02 2023 +0000

    culling (#3810)

    * culling

    * don't cull fixed

commit 3ab7b57d3b7bcc63bd68a259b0bce60b65c0772e
Merge: cb612395e 10d82d68e
Author: Dave Pearson <davep@davep.org>
Date:   Tue Dec 5 10:10:52 2023 +0000

    Merge pull request #3808 from davep/only-suggest-on-focus

    Only show `Input` suggestions on focus

commit 10d82d68e2d1c05a06828d60afefcc3caeba2732
Author: Dave Pearson <davep@davep.org>
Date:   Mon Dec 4 20:52:25 2023 +0000

    Update the snapshot tests

commit 6c603025663286a55eb530af0d10c23243f8366c
Author: Dave Pearson <davep@davep.org>
Date:   Mon Dec 4 20:51:59 2023 +0000

    Change the suggester snapshot test code to account for many Input

commit 67d383cbb5d9d407bb34153417b7c422142d0a52
Author: Dave Pearson <davep@davep.org>
Date:   Mon Dec 4 20:42:25 2023 +0000

    Update the CHANGELOG

commit e7e59b0e8c22f5d579da8935b7fa078842556b34
Author: Dave Pearson <davep@davep.org>
Date:   Mon Dec 4 20:39:50 2023 +0000

    Add extra Inputs to the suggester snapshot test

    See #3806

commit c2311696078c353de4d2386035504a78e56840ed
Author: Dave Pearson <davep@davep.org>
Date:   Mon Dec 4 20:37:34 2023 +0000

    Only show a suggestion when an Input has focus

    Fixes #3806

commit 062c84b783422e00385a0ee702d60de5e6440104
Author: Dave Pearson <davep@davep.org>
Date:   Mon Dec 4 20:35:10 2023 +0000

    Clean up trailing whitespace

commit cb612395e848e4e1c35aae1e542fbaaf14bfbe03
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Dec 4 16:25:44 2023 +0000

    docstring

commit 07182c3d5304bfee045e8bad6ed7ef74474283fc
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Dec 4 14:30:38 2023 +0000

    remove align (#3804)

commit ad3934bc9d41bdd7914a2552c529aa85b86c746e
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Dec 4 13:56:49 2023 +0000

    changelog and bump (#3803)

    * changelog and bump

    * diff

commit 8ec57198ac062090acffcdcd44c6d3c6d75ea2d3
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Dec 4 13:51:41 2023 +0000

    faster scrolling (#3801)

    * faster scrolling

    * simplify

    * bail early

    * better comment

commit dc43f4447fc5e1a72bb9648c1e4c619875e48395
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Dec 4 10:21:44 2023 +0000

    optimize cuts (#3798)

    * optimize cuts

    * even simpler

    * simpler

    * another optimization

    * optimize scroll

    * remove assert

commit e6b92a66a0e836787c25d72fc172c02abbb7c118
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Fri Dec 1 11:54:47 2023 +0000

    typo

commit e537125baab4f1911f40038e68c73ecd79d7575a
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Fri Dec 1 11:50:46 2023 +0000

    Catch no widget (#3790)

    * Catch no widget

    * changelog

    * version bump

    * remove prints

commit 817af470c87d9f82b39d6fac7abf496e1c63cf8c
Merge: 83583d4fe be8581e3c
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 30 18:38:02 2023 +0000

    Merge branch 'main' into force-tree-node-scroll

commit 83583d4feb845b0232dfd9901264e87522816f5f
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 30 18:32:16 2023 +0000

    Update the CHANGELOG

commit 49beb3e40715ae2121fcbdf01b94ebc054c0fef2
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 30 18:15:39 2023 +0000

    Force the call to scroll to the region of a node's label

    Re: https://discord.com/channels/1026214085173461072/1033754296224841768/1179803173498658966

    It is possible that the developer may be making a call to scroll to a node,
    while the scrollbar isn't quite in play yet; without a force to scroll the
    scroll won't happen.

commit be8581e3c9f06968463c55966082b6bb14595449
Merge: a3e91d43a 0c197777e
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 30 09:59:09 2023 +0000

    Merge pull request #3769 from davep/simplify-some-rxvt-sequences

    Simplify some sequences that seem unique to rxvt

commit 0c197777e32706bd43fb9a4cd0289aaab722caf1
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 30 09:15:03 2023 +0000

    Map shift-enter

commit c4c52e7ca41bc7cc984257e59b213fe79426420e
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 30 08:53:15 2023 +0000

    Add shift fullstop

commit 95fc41323ebb512b373ebf711fefceca1ac3dbf4
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 30 08:51:20 2023 +0000

    Add zero

    I went full Roman...

commit a3e91d43a4b50590ac8ffc4185cb47aca9ab77b7
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Wed Nov 29 15:38:10 2023 +0000

    mount error (#3780)

    * mount error

    * changelog

commit 29d6f3d86a5bd2c46b5b7bad9adef55c5407febb
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Wed Nov 29 14:50:38 2023 +0000

    docs(widget): fix broken capture_print link (#3504)

    Co-authored-by: Will McGugan <willmcgugan@gmail.com>

commit 12a8429fec5eae51a4c875be10263bef49692849
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 29 14:49:41 2023 +0000

    Update the CHANGELOG

commit e7d1ed4bde942dffaa1d1061420b33287b433060
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Wed Nov 29 14:47:31 2023 +0000

    docs(contributing): update setup guide (#3713)

    * docs(contributing): update setup guide

    * move make note to match other sections

commit 9dcc2fad286b9e7a0c4dc8d4a1ecb1496c36f118
Merge: d9e025875 9fbaffe06
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 29 14:27:37 2023 +0000

    Merge branch 'main' into simplify-some-rxvt-sequences

commit 9fbaffe060e18bc32f4de2b22d67d7959126347e
Author: Darren Burns <darrenburns@users.noreply.github.com>
Date:   Wed Nov 29 14:13:04 2023 +0000

    Use system logging group when logging from app to be consistent (#3580)

commit 754fc5ca93e5a62eb153db1df746b6b87b469792
Author: Paul Ollis <paul@cleversheep.org>
Date:   Wed Nov 29 14:12:16 2023 +0000

    Add `TreeNode.refresh` (fix for issue #3637) (#3639)

    * Added test demonstrating issue 3637.

    * Fix for issue 3637.

    * Make new tests refer to issue 3637.

    * Give TreeNode a repaint method.

    This is following pull request discussions with davep. Partly as a side
    effect, Tree.refresh_line is only required internally, so I have removed
    its docstring so it does not appear as part of the public API.

    * Reinstate the docstring for refresh_line

    * Make refresh_line internal

    * Simplify the docstring for TreeNode.refresh

    * Swap the TreeNode.refresh tests to something a bit simpler

    While it would be nice to dive really deep into testing the refresh (the
    request was initially that we test that values didn't come from the cache,
    etc), there isn't really a reasonable interface for doing such tests.
    Moreover, it looks like that, at least in a testing scenario, a node refresh
    can result in the labels of more than just that node being called upon.

    As such we're going to go with a pragmatic approach to testing
    this (discussed and agreed during 2023-11-21 standup).

    * Update the CHANGELOG

    Co-authored-by: Paul Ollis <paul@cleversheep.org>

    ---------

    Co-authored-by: Dave Pearson <davep@davep.org>

commit d993cce5051e7e21098fc88e936c7de311adf772
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Nov 29 14:09:58 2023 +0000

    Rename link-hover-* rules to link-*-hover. (#3736)

    Co-authored-by: Will McGugan <willmcgugan@gmail.com>

commit 5603a4da2bf01f6d17e23e6d902a01852656fb56
Author: Darren Burns <darrenburns@users.noreply.github.com>
Date:   Wed Nov 29 14:05:25 2023 +0000

    Fix GH Actions, remove Python 3.7, re-enable MacOS, remove old dev dependency (#3766)

    * Fixing pytest running on incorrect Python version in GitHub actions.
    Also removes 3.12 from the testing matrix, and enables MacOS again.

    * Dropping Python 3.7

    * Update required Python version to ^3.8

    * Remove 3.7 asyncio compatibility layer

    * Version pinning in GitHub Action

commit ed3924e89cd5b174ac1af246c283ad0f35f6d211
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Wed Nov 29 14:02:27 2023 +0000

    docs(reference): delete outdated devtools.md (#3774)

commit 1eb44125d6edfe58f2caba3526ffddd50145fdf5
Author: Petr Viktorin <encukou@gmail.com>
Date:   Wed Nov 29 15:01:40 2023 +0100

    _box_drawing.py: Fix 3 of the characters (#3773)

    * _box_drawing.py: Fix 3 of the characters

    * Update src/textual/_box_drawing.py

    * Fix quotes

commit b55b2db58418696349254d48ef40396bc4ffd706
Merge: 382bf10cf 13124b694
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 29 13:58:26 2023 +0000

    Merge pull request #3737 from davep/rxvt-keys

    Add support for ctrl+Fn keys under rxvt

commit 13124b6943338d23660c69d4e236f843a2b43b4c
Merge: 78d4569fb 382bf10cf
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 29 13:48:44 2023 +0000

    Merge branch 'main' into rxvt-keys

commit 382bf10cf464376028487437ba8f56bfa156b3d7
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Wed Nov 29 13:45:47 2023 +0000

    fix changelog

commit 78d4569fb3d34718511d8242390348979dda2da3
Merge: cca507af2 1a76b628c
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 29 13:44:32 2023 +0000

    Merge branch 'main' into rxvt-keys

commit 1a76b628c78c15c0dca4e31f76c5ce6d43c80cbf
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Wed Nov 29 13:28:24 2023 +0000

    fix threading issue (#3779)

    * fix threading issue

    * remote debug

    * changelog

    * version bump

    * changelog

    * docstring

    * fix snapshot test

commit cca507af2aca3adec3bbbd6728f1824ae478b789
Merge: 5093c8090 eed7a94ed
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 29 13:07:27 2023 +0000

    Merge branch 'main' into rxvt-keys

commit eed7a94edac0f2402775d83e7a646a4a0153c165
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Nov 28 14:54:46 2023 +0000

    fix example

commit 0ec41af945a27e7762bcfe559734d37ec8a50e19
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Wed Nov 29 10:18:18 2023 +0000

    add mouse down handler (#3778)

    * add mouse down handler

    * changelog

    * version bump

commit 60766a30560562567bd881de90a73e6d8aa0b730
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Nov 28 14:32:18 2023 +0000

    version bump (#3770)

    * version bump

    * changelog

commit cb57d70e818f4eac448237c1b989e831d6088721
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Nov 28 14:15:10 2023 +0000

    App focus (#3767)

    * global focus

    * change name to app focus

    * app focus

    * refactor

    * changelog

commit d9e0258750e6c8b943bd91e8bc8f65ce58d8055e
Author: Dave Pearson <davep@davep.org>
Date:   Tue Nov 28 12:56:20 2023 +0000

    Simplify some sequences that seem unique to rxvt

    Almost(?) all other terminals I've tested, shifted numeric keypad keys just
    yield the unshifted version of that key. rxvt seems to have sequences for
    those keys. Much like #3737 and #3739 we *could* add support for these
    sequences to the ANSI sequence list, but this is a bit different. Whereas in
    those other PRs we've been adding the alternate sequences that rxvt seems
    to have for well known and well-supported keys, here it would be the other
    way round: it would be adding bindable keys that are only available on a
    small subset of environments.

    Ideally, at least for the moment, we want to encourage people to bind keys
    that are well-supported; so here we turn the shifted keypad keys into their
    unshifted counterparts, thus matching many other environments.

    See #3741

commit 5093c8090551810d3777de4ac82b9768646496f9
Merge: badeb9d4c 2f86ee4e5
Author: Dave Pearson <davep@davep.org>
Date:   Tue Nov 28 11:42:18 2023 +0000

    Merge branch 'main' into rxvt-keys

commit 2f86ee4e52e4d0ffee35b72c7c5ec9292db27b77
Author: Dave Pearson <davep@davep.org>
Date:   Tue Nov 28 09:54:37 2023 +0000

    Allow setting a toggle button's label (#3765)

    * Allow setting a toggle button's label

    Until now CheckBox and RadioButton labels have been fixed after the widgets
    have been created. Prompted by #3764 and seeing no reasonable reason to not
    allow updating the labels later on, this adds that ability.

    * Link the CHANGELOG entries to the PR

    * Ensure the setter enforces the first-line-only rule too

commit 4058e598e8304844e1b2edff0b5b9c56da0d9000
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Nov 27 17:09:50 2023 +0000

    error if no children allowed (#3758)

    * error if no children allowed

    * changelog

    * changelog

    * remove comment

    * quote RHS

    * annotations

    * attempt to fix 3.7

    * restore experiment

commit fb2a0fe71a6a856a12254a8d661931d5d298dad0
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Mon Nov 27 16:56:31 2023 +0000

    docs(changelog): fix out of sync changes (#3755)

    Co-authored-by: Will McGugan <willmcgugan@gmail.com>

commit 7bbb1947aa6543878572f75c64e9729840ce5616
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Nov 27 16:55:25 2023 +0000

    Typing fix. (#3759)

commit fe0892e0cf315201eb5f44c19d86033fd7354f2d
Merge: b70a8f179 c19d54de6
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Nov 27 16:53:35 2023 +0000

    Merge pull request #3751 from Textualize/documentation-fixes

    Documentation fixes.

commit b70a8f179e4d958d8a577be1970864d659d9804e
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Nov 27 15:11:47 2023 +0000

    remove flicker (#3757)

    * remove flicker

    * changelog

commit bc93b21bc65d079722700e81cfe44540c6e8e3c4
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Nov 27 14:15:58 2023 +0000

    Lazy command provider (#3756)

    * Lazy command privoder

    * changelog

    * fix tests

    * test fix

commit 9a9d534b6d7ff82e37c62ff54d4013879ef5e31f
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Nov 27 13:44:26 2023 +0000

    Document DOMNode.watch (#3724)

    * Document DOMNode.watch

    * Create standalone example.

    Addresses review comment: https://github.com/Textualize/textual/pull/3724#pullrequestreview-1744357054.

    * Create standalone example.

    Addresses review comment: https://github.com/Textualize/textual/pull/3724#pullrequestreview-1744357054.

commit 370f5f72141c3faad015f10a8bff8acd6524d6c8
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Nov 27 11:54:53 2023 +0000

    Keyline rule (#3669)

    * canvas

    * imports

    * more box drawing

    * lines

    * lines

    * box drawing table

    * fix box table

    * tweak test

    * canvas color

    * simplify canvas

    * optimization

    * clipping

    * render experiment

    * keyline css

    * tests

    * don't draw around invisible widgets

    * optimize

    * snapshot test

    * docs and examples

    * tab size

    * disclaimer

    * docs

    * changelog

    * snapshots

    * accidental add

    * rename for consistency

    * simplify color

    * docstrings

    * comment

    * snapshots

    * micro optimize

    * micro-optimization

    * typing

    * set over list

    * remove comment

    * docstring

    * punctuation

    * Update docs/styles/keyline.md

    Co-authored-by: Darren Burns <darrenburns@users.noreply.github.com>

    ---------

    Co-authored-by: Darren Burns <darrenburns@users.noreply.github.com>

commit 4c4e724b8597b1bed2a6ffedf03f472e3ad8a183
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Nov 27 11:47:04 2023 +0000

    move expensive imports out of module scope (#3753)

    * move expensive imports out of module scope

    * function level import

    * changelog

    * restore _asyncio.py

    * restore asyncio

    * fix create_Task

    * create_task fix

commit d8b0583c23e237547e37983c4d76e21694ab4deb
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Mon Nov 27 10:46:36 2023 +0000

    fix(select): watch reactive prompt change (#3701)

    * fix(select): allow reactive prompt change

    * update watcher with new is_mounted check

    * update only first in option list

    * update option list only if allow blank

    * update changelog

commit c19d54de6777d856b811b2fffb6b71c5b3bd67ba
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Nov 27 10:31:33 2023 +0000

    Documentation fixes.

commit 9a9a072badd5b68561f73c160f1b37d65d4e058f
Author: David Brochart <david.brochart@gmail.com>
Date:   Sat Nov 25 11:45:37 2023 +0100

    Fix typo (#3729)

commit 23735cdc341d07d27cece6e1c94ac27a9b155609
Author: Darren Burns <darrenburns@users.noreply.github.com>
Date:   Thu Nov 23 16:54:37 2023 +0000

    Fixing click targeting/tab expansion interaction (#3725)

    * Extract logic for converting cell widths to column indices

    * Fix click target issue when tabs not fully expanded

    * Update CHANGELOG

    * Update docstring

    * Update CHANGELOG.md

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

    ---------

    Co-authored-by: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>

commit badeb9d4c7f2dee019458096205edfb2cb13e89a
Merge: a5650f73c 76c0c0e28
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 15:59:43 2023 +0000

    Merge branch 'main' into rxvt-keys

commit a5650f73c4d5d9465cecb9b7b79aa3c9e7517619
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 15:58:56 2023 +0000

    Add missing CHANGELOG entry for related PR

commit 76c0c0e286b150fc0cf2a5b9517bac7fc648f6e8
Merge: 3c92376bc dac9ab0c6
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 15:49:49 2023 +0000

    Merge pull request #3739 from davep/rxvt-more-navigation-keys

    Add support for various modified navigation/edit keys under rxvt

commit dac9ab0c6b524d2fcc244b40e720ec0ee01f94be
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 14:39:26 2023 +0000

    Add support for ctrl+pgup/dn under rxvt

commit 3b89363ece782f0436f75f31498d4cbf65efa789
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 14:37:09 2023 +0000

    Add ctrl+home and ctrl+end support for rxvt

commit ed14269995cd4954ac5fab962942205ba6944ba2
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 14:36:04 2023 +0000

    Fix a typo

commit 61c7703b27088e63679e3ae040f394ae17c493af
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 14:29:37 2023 +0000

    Add modified delete keys for rxvt

commit 721269557ec8416b23ade6fd1c5d369d16298688
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 14:21:49 2023 +0000

    Add shifted navigation keys for rxvt

commit 1ee1f7841ce23e163735195ad1b9583eee4a8029
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 13:59:30 2023 +0000

    Add ctrl+up and ctrl+down for rxvt

commit 3c92376bc3686bcdb52e846c7342440b23e55523
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Thu Nov 23 13:11:02 2023 +0000

    Update README.md

commit 51047f0b00589b64ef889067355c50a299248e21
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 13:01:13 2023 +0000

    Update the CHANGELOG

commit aee54eca79e3f62d04b2390bb2020555d065c53c
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 23 12:34:49 2023 +0000

    Add support for ctrl+Fn keys under rxvt

    See #3735 (and by extension #3440).

commit 07bfcf2feb9926a0aa3b327efc77ff4061c7a614
Merge: a64a0d21d 92f5c4242
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Nov 23 11:01:18 2023 +0000

    Merge pull request #3730 from Textualize/docs-improvements

    Improve documentation.

commit 92f5c4242f8728f8d4464913bfbce4de9b05dd5c
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Nov 23 10:47:43 2023 +0000

    Update src/textual/widgets/_markdown.py

    Co-authored-by: Dave Pearson <davep@davep.org>

commit c7d59b9f20e1a627225e745da8f99790c27956d3
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Nov 23 10:47:37 2023 +0000

    Update src/textual/widgets/_directory_tree.py

    Co-authored-by: Dave Pearson <davep@davep.org>

commit a64a0d21d787016df9dde84287cb36ecda50b787
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Wed Nov 22 16:17:26 2023 +0000

    version bump (#3731)

commit b902b1cae6aeb68383834988b9b3dfb7f97d5c99
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Nov 22 15:50:20 2023 +0000

    Improve documentation.

commit 896aa9f9244ce852659946bb3abc8551b38bbb03
Merge: 67dd75ae6 a000994b2
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Nov 21 14:43:40 2023 +0000

    Merge pull request #3718 from Textualize/compositor-ignore-unmounted

    Compositor ignores non-mounted widgets.

commit a000994b2f09f41b35184ad0d1dd370be00c563c
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Nov 21 14:23:09 2023 +0000

    Compositor ignores non-mounted widgets.

    This, in turn, ensures widgets are not rendered before they are mounted.

commit 67dd75ae64929d7cdf1bd8340df031afc83d0075
Merge: a11ff1651 f5826951b
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Nov 21 11:27:50 2023 +0000

    Merge pull request #3715 from Textualize/widget-compose-example

    Fix docstring example.

commit f5826951bfc8a9b1dba2e1138def7c9761819351
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Nov 21 10:41:02 2023 +0000

    Fix docstring example.

commit a11ff16519c06d3d31b6e920a0c3e08362714b38
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Tue Nov 21 09:48:57 2023 +0000

    fix min width (#3712)

    * fix min width

    * changelog

    * snapshot tests

    * whitespace

commit ca68b868a62ec73230c961541268a982563459f0
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Mon Nov 20 20:42:08 2023 +0000

    feat(widget): add is_mounted property (#3709)

    * feat(widget): add is_mounted property

    Co-authored-by: Darren Burns <darrenburns@users.noreply.github.com>

    * fix property docstring

    * add simple test

    * update changelog

    ---------

    Co-authored-by: Darren Burns <darrenburns@users.noreply.github.com>

commit ca534a0cc4f467b2edb6f7aa8600a773378b629a
Merge: 81b35e328 aec84543b
Author: Dave Pearson <davep@davep.org>
Date:   Mon Nov 20 14:23:04 2023 +0000

    Merge pull request #3632 from TomJGooding/fix-scrollable-container-receive-focus

    fix(scrollable container): receive focus

commit 81b35e328d655b5ca2a46610dd773cce987669da
Merge: 63111fe0f 43de6d7ba
Author: Dave Pearson <davep.org@gmail.com>
Date:   Mon Nov 20 14:14:00 2023 +0000

    Merge pull request #3708 from davep/main

commit 43de6d7bab2e003e706c1c830d424c8a6d137c4e
Merge: 01cfdf884 63111fe0f
Author: Dave Pearson <davep.org@gmail.com>
Date:   Mon Nov 20 12:30:36 2023 +0000

    Merge branch 'Textualize:main' into main

commit 01cfdf8848394c8a8ab3ebe3c00a1f971c0a766a
Author: Dave Pearson <davep@davep.org>
Date:   Mon Nov 20 12:28:17 2023 +0000

    Add some wiggle room to the no-matches command palette timeout test

    See #3700.

commit 63111fe0f6816dd1d6ba55ac462f5c572bc3ff09
Merge: ef1aebd4c f5ca080c2
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Nov 20 11:21:05 2023 +0000

    Merge pull request #3495 from Textualize/change-click

    Change when click events are emitted.

commit f5ca080c20202fed92efb520be16d54bf5ccee84
Merge: 527bc1a2c ef1aebd4c
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Nov 20 11:11:05 2023 +0000

    Merge branch 'main' into change-click

commit aec84543b578a9d69f1ed13b1b70921545add811
Merge: 5732bfa15 ef1aebd4c
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Nov 20 11:10:01 2023 +0000

    Merge branch 'main' into fix-scrollable-container-receive-focus

commit ef1aebd4c3fc5757d0fb50f0576a02d9f22dd985
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Nov 20 10:58:59 2023 +0000

    Escape markup in markdown headings. (#3697)

    * Escape markup in markdown headings.

    The markup would already be 'escaped' (ignored, really) in the markdown document itself, but it would be processed when building the table of contents because of the way the widget 'Tree' internally processes labels.
    This was changed, so that we create our own 'Text' instances for the labels, which means we get to avoid markup processing.

    Related issue: #3689.

    * Update CHANGELOG.md

    Co-authored-by: Dave Pearson <davep@davep.org>

    * Optimisation.

    Related review comment: https://github.com/Textualize/textual/pull/3697/#discussion_r1397241681

    * Optimisation.

    Related review comment: https://github.com/Textualize/textual/pull/3697#discussion_r1398983336

    * Update snapshot.

    ---------

    Co-authored-by: Dave Pearson <davep@davep.org>

commit 018479edf0edbd4540730df6708e26e491c69791
Merge: 871240271 42583917d
Author: Dave Pearson <davep@davep.org>
Date:   Mon Nov 20 10:41:57 2023 +0000

    Merge pull request #3706 from davep/lv-type-tweak

    Correct the type hints for ListView.watch_index

commit 871240271f078443ecb595fc34742b5aff3a4cc9
Merge: 266613b74 47dc95aa5
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Nov 20 10:38:35 2023 +0000

    Merge pull request #3683 from Textualize/loading-indicator-fixes

    Change loading indicator layer and effects.

commit 42583917dae5182367c856c0b7310bbe6967a890
Author: Dave Pearson <davep@davep.org>
Date:   Mon Nov 20 10:31:34 2023 +0000

    Turn ListView._is_valid_index into a type guard

    Co-authored-by: Rodrigo Girão Serrão <rodrigogiraoserrao@gmail.com>

commit 266613b74240054bcd50e26ce3d9dd6fbf4d945b
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Mon Nov 20 10:16:35 2023 +0000

    optimize align (#3704)

    * optimize aling

    * superfluous call

    * no need

commit a3768db34d8071713501e66516309eb34a0595e5
Merge: 49120fe59 cd78824b9
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Mon Nov 20 09:57:28 2023 +0000

    Merge pull request #3699 from Textualize/button-no-longer-static

    Make Button inherit directly from Widget.

commit 49120fe5994d932b35b87eedd4477a63cb9444ed
Merge: 78d9c4c59 9ef566beb
Author: Dave Pearson <davep@davep.org>
Date:   Mon Nov 20 09:15:28 2023 +0000

    Merge pull request #3692 from davep/clean-up-command-palette-docs

    Hide command palette mount and unmount handlers from the docs

commit 77cb7434656043e976565eb2cfe92dc3d53cf88b
Author: Dave Pearson <davep@davep.org>
Date:   Mon Nov 20 08:55:55 2023 +0000

    Correct the type hints for ListView.watch_index

    The old and new index can be None, as highlighted in #3705.

commit cd78824b99a039aa1f3bb778bd7a6d214a9691ad
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Fri Nov 17 15:16:14 2023 +0000

    Make Button inherit directly from Widget.

commit 9ef566bebd5d75ea467325036a7f5f6326aa1c35
Merge: 17ac6a889 78d9c4c59
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 16 17:12:06 2023 +0000

    Merge branch 'main' into clean-up-command-palette-docs

commit 78d9c4c59cbcacb27c0fa80935fdcbd4bb516ce3
Merge: e819e97c2 6b803184a
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 16 17:11:01 2023 +0000

    Merge pull request #3641 from davep/command-palette-query-isolation

    Command palette query isolation

commit 6b803184a0d5740ee659b906af4ef67c437d1e49
Merge: 5554afc52 e819e97c2
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 16 14:38:55 2023 +0000

    Merge branch 'main' into command-palette-query-isolation

commit 17ac6a889809ee41c052a58dec3e91e1a4962c11
Author: Dave Pearson <davep@davep.org>
Date:   Thu Nov 16 14:34:00 2023 +0000

    Hide command palette mount and unmount handlers from the docs

    CommandPalette.on_mount and CommandPalette.on_unmount were in the docs and
    indexed because they're not private and they have docstrings documenting
    what they do for the command palette. This has the unfortunate side-effect
    of CommandPalette.on_mount (for example) turning up as the first it if
    someone searches the docs for `on_mount` (which, if they've not gone through
    the guide and have read up on events and messages, they're likely to do and
    then end up confusing themselves due to not reading the docs in a sensible
    order).

    While it won't help someone understand what `on_mount` does, it will hide an
    implementation of it that won't help them.

commit 47dc95aa5420e3eb5a2a19bfd9044bc57cc59ab9
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Nov 15 16:56:43 2023 +0000

    Change loading indicator layer and effects.

    The loading indicator will now disable the underlying widget.

commit e819e97c2984fd2e75df9b06dcf88c135fca26a9
Merge: 7a25bb199 9c89524c6
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Nov 15 13:46:55 2023 +0000

    Merge pull request #3659 from Textualize/off-by-one

    Be consistent with line/col numbers.

commit 9c89524c6b8601473a01c589c3e88485f8291563
Merge: c1204bbf5 7a25bb199
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Nov 15 13:33:10 2023 +0000

    Merge branch 'main' into off-by-one

commit 7a25bb19980ba14c4a49e5e70d5fafc21caecd70
Merge: 998cbe412 570c35cb5
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Nov 15 10:46:01 2023 +0000

    Merge pull request #3678 from Textualize/fix-docs-mouse-move-example

    Fix docs example by deleting code.

commit 998cbe412287773477e76c0e9bf8005b325d3e39
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 15 09:51:24 2023 +0000

    Add missing parameter type hint (#3682)

commit 87a489e4e458815938188b015d7daf2cdf1d88aa
Merge: d091b4b62 ec670450f
Author: Dave Pearson <davep.org@gmail.com>
Date:   Wed Nov 15 09:20:58 2023 +0000

    Merge pull request #3681 from davep/tidy-up-get-option-index

commit ec670450f0201b7d05c52386694beb0c3a257635
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 15 08:55:28 2023 +0000

    Add missing return type and return detail for OptionList.get_option_index

    https://github.com/Textualize/textual/commit/a3590ac19253b43bb2f92d1264ea1fd4ab981426
    added this but it looks like the type hint for the return value, and the
    return value explanation were left off in the PR.

commit d091b4b6201e1a9da8ca988fb25b16c96721e0a0
Merge: 0a0832c9a 3f54a93ef
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Nov 14 16:32:01 2023 +0000

    Merge pull request #3614 from Textualize/select-improvements

    Validate `Select.value` and minor `Select` improvements.

commit 3f54a93ef4b4a636d9c7cdaf18fae361ae254a51
Merge: eb9b4bcb0 0a0832c9a
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Nov 14 16:19:00 2023 +0000

    Merge branch 'main' into select-improvements

commit 570c35cb5e8ec17b527435b9f0de2bcc862006b2
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Tue Nov 14 15:59:30 2023 +0000

    Fix docs example by deleting code.

commit 0a0832c9a233e60d0ebae31ae9445266f29a2487
Author: Darren Burns <darrenburns@users.noreply.github.com>
Date:   Tue Nov 14 11:43:45 2023 +0000

    Fix for CSS outline issues (#3656)

    * Fix `line_trim` only handling a single empty segment. It now removes any number of empty segments before performing the trim.

    * Update the lockfile

    * Tidy up

    * Rewriting line_trim to support empty cells correctly

    * Regression snapshot test for case where outline was applied to `Button` and did not render correctly.

    * Update the changelog

    * Add unit test for empty segments case

    * Turn off AUTO_FOCUS on button outline snapshot test

    * Remove debugging prints

    * Fix issue with alignment generating empty segments

    * Validate and update snapshots

    * Revert some changes relating to trimming empty segments

    * _styles_cache.py - In DEBUG mode, inspect Strips for non-control Segments which contain no text. There should be no empty Segments in Textual. If any are detected, we should investigate the source of them.

    * _styles_cache.py - In DEBUG mode, inspect Strips for non-control Segments which contain no text. There should be no empty Segments in Textual. If any are detected, we should investigate the source of them.

    * Remove types from docs

commit 81531e87647eae26b83ad31f1941016b4f2bab41
Author: Darren Burns <darrenburns@users.noreply.github.com>
Date:   Mon Nov 13 15:31:26 2023 +0000

    Improve get_child_by_type docstring (#3670)

commit b99f143e9b3701b5af3b6145a7cde1c135fb155d
Author: TomJGooding <101601846+TomJGooding@users.noreply.github.com>
Date:   Mon Nov 13 10:54:09 2023 +0000

    fix: replace textlog references (#3663)

commit c0f299b5931c943c354de048aa009815f66e5fa1
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Fri Nov 10 16:16:42 2023 +0000

    input restriction (#3657)

    * input restriction

    * types

    * tweak

    * tests

    * docstring

    * fix lock

    * words

    * add valid empty

    * another test

    * fix regex

    * doc

    * name change

    * Fix regex

    * force initial value

    * force reactive

    * test fix

    * add plus

    * input type literal

    * export InputType

commit 5554afc52cc1aff8212fffe4ab8b0d5e2974ca34
Merge: dc19558ef 65bf94a54
Author: Dave Pearson <davep@davep.org>
Date:   Fri Nov 10 14:47:13 2023 +0000

    Merge branch 'main' into command-palette-query-isolation

commit c1204bbf5a92acec43db61da84701c3bdec4640e
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Nov 9 17:48:39 2023 +0000

    Be consistent with line/col numbers.

    I added some comments so that we know what line/column numbers are 0-based and which ones are 1-based.

    Related issue: #3625.

commit eb9b4bcb004380f672e206f842261cfd7471f7aa
Merge: 1436dcbaf 65bf94a54
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Nov 9 12:59:56 2023 +0000

    Merge branch 'main' into select-improvements

commit 65bf94a54d24d38ab8afffc1f459fd07f07f56b6
Merge: b22fb71c1 1a641e134
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Thu Nov 9 12:57:54 2023 +0000

    Merge pull request #3654 from Textualize/live-reloading-screen-css

    Fix live-reloading of screen CSS.

commit b22fb71c1570008737c2609f2457665d39a38250
Merge: 38e4cc08e 20865a47d
Author: Dave Pearson <davep.org@gmail.com>
Date:   Wed Nov 8 17:12:20 2023 +0000

    Merge pull request #3653 from davep/runnable-styles-references

commit 20865a47d3c8d808df967141dc7b4841f39c4af6
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 15:44:38 2023 +0000

    Fix up highlights for the tint example

commit bc241726bce96155811314c4d1e98a64c08ea4a2
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 15:33:50 2023 +0000

    Fix up highlights for the link styling example

commit 061f8a9bc46c4f9cce2caebc77a13df6f1c4ee2c
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 15:32:45 2023 +0000

    Fix up highlights for the link hover example

commit 53e864262a44883b410657ef352f62755353b9c8
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 15:31:09 2023 +0000

    Fix up highlights for the link hover example

commit 1a641e13470ca5e5c092252893d53ee08ea9b1ec
Author: Rodrigo Girão Serrão <5621605+rodrigogiraoserrao@users.noreply.github.com>
Date:   Wed Nov 8 15:28:55 2023 +0000

    Fix live-reloading of screen CSS.

commit ba6a25aac7343b369a31055ee5069bfe084cff97
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 15:28:03 2023 +0000

    More an -> a

commit 65e55ecaaa7822b1a36cbf8f2a172bcf1962b79c
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 15:25:52 2023 +0000

    Fix up highlights for the link hover example

commit e47c55520be75563f24670f24a138c9a16d4ab38
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 15:25:31 2023 +0000

    An -> a

commit 6c46ed4c96eca25101fdee6b10ed126a1232d764
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 15:24:04 2023 +0000

    Fix up highlights for the link colour example

commit e252d67131caba31b5adbaff6c8a4b5afdc53002
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 15:08:46 2023 +0000

    Fix up highlights for height comparison example

commit 6a76a7e221daa7cf1a6d470379658c673057dfcb
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 15:02:54 2023 +0000

    Fix up highlights for border subtitle align example

commit 0540ccce416f3c8b0241246f5bc4f344951254b3
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 14:56:37 2023 +0000

    Remove the highlights from the border_all example

    They don't seem to be highlighting anything particular at all; I suspect a
    copy/paste-o here.

commit 77ba89647b756f6db1327d6fa448202ea5930385
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 14:52:49 2023 +0000

    Fix up highlights for link background

commit 414096233b1388346eae88f782a4a69788160a6b
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 14:37:01 2023 +0000

    Make all styles reference examples capable of being run standalone

    Also move the declarations of the stylesheets into the app classes.

    See #3650

commit dc19558ef8298c15f6f3628922dab81f8ecc52f4
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 11:47:26 2023 +0000

    Remove anything to do with CommandPalette.current_screen

    It was for the older approach to command palette isolation; it's not really
    needed any more.

commit 869e04617ef9dbe6224e2b2b7ea6d713e17c6427
Merge: 14a44e8af 38e4cc08e
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 11:27:03 2023 +0000

    Merge branch 'main' into command-palette-query-isolation

commit 14a44e8af05838401657e5376e1db5d157382782
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 11:22:29 2023 +0000

    Swap command palette isolation to a system-screen filtering approach

    While for now, and likely for a while to come, the command palette is going
    to be a special case we'll want to ignore, it's been decided that we should
    introduce the concept of a system screen type and filter those out. So here
    I introduce a _SystemModalScreen type and have the command palette inherit
    from that, and then I filter that type out when looking for children of the
    app.

    Technically, at some point, I guess we should also have a _SystemScreen,
    with a similar approach.

    <whisper>This would be an excellent moment for a mixin</whisper>

commit 38e4cc08e4ee7d16a0faa16a456b1423d5f3a659
Merge: e8e2a07ad 30cecf3f5
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 11:14:10 2023 +0000

    Merge pull request #3648 from davep/more-makefile-tweaks

    More `Makefile` tweaks

commit e8e2a07ad73731f96aa4462da49e4e3f38be03b8
Author: Will McGugan <willmcgugan@gmail.com>
Date:   Wed Nov 8 10:18:26 2023 +0000

    optimization (#3646)

    * optimization

    * further optimization

commit 30cecf3f5b8b7df8647c8ac119d4358aa390c287
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 06:55:22 2023 +0000

    Add `make repl`

    I use this in so many other projects, and I keep doing it within the textual
    development environment, and get annoyed every time it isn't there. It's
    handy so...

commit 25c5658a01c6062e947ba61a7b9304320fd89019
Author: Dave Pearson <davep@davep.org>
Date:   Wed Nov 8 06:52:56 2023 +0000

    Add setting up of the syntax extra in "make setup"

    Yes, this does mean it'll fail when using Python 3.7; but it hardly seems
    worth going to all the effort of trying to detect this inside the Makefile
    when 3.7-support can't be that…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Task
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Querying TabPane by ID returns multiple nodes
2 participants