diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ba754b33c..1f876a92e3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/). +## [2.0.4] - 2025-02-17 + +### Fixed + +- Fixed smooth scrolling breaking mouse support in VSCode (and probably others) https://github.com/Textualize/textual/pull/5549 + ## [2.0.3] - 2025-02-16 ### Fixed @@ -2735,6 +2741,7 @@ https://textual.textualize.io/blog/2022/11/08/version-040/#version-040 - New handler system for messages that doesn't require inheritance - Improved traceback handling +[2.0.4]: https://github.com/Textualize/textual/compare/v2.0.3...v2.0.4 [2.0.3]: https://github.com/Textualize/textual/compare/v2.0.2...v2.0.3 [2.0.2]: https://github.com/Textualize/textual/compare/v2.0.1...v2.0.2 [2.0.1]: https://github.com/Textualize/textual/compare/v2.0.0...v2.0.1 diff --git a/pyproject.toml b/pyproject.toml index ae1f70e298..079e30cb60 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "textual" -version = "2.0.3" +version = "2.0.4" homepage = "https://github.com/Textualize/textual" repository = "https://github.com/Textualize/textual" documentation = "https://textual.textualize.io/" diff --git a/src/textual/drivers/linux_driver.py b/src/textual/drivers/linux_driver.py index a73e32c2ad..6842750049 100644 --- a/src/textual/drivers/linux_driver.py +++ b/src/textual/drivers/linux_driver.py @@ -454,19 +454,18 @@ def process_selector_events( def process_message(self, message: Message) -> None: # intercept in-band window resize if isinstance(message, TerminalSupportInBandWindowResize): - # If it is supported, enabled it - if message.supported and not message.enabled: - self._enable_in_band_window_resize() - self._in_band_window_resize = message.supported - elif message.enabled: - self._in_band_window_resize = message.supported - self._enable_mouse_pixels() - # Send up-to-date message - super().process_message( - TerminalSupportInBandWindowResize( - message.supported, self._in_band_window_resize - ) - ) - return + if message.supported: + self._in_band_window_resize = True + if message.enabled: + # Supported and enabled + super().process_message(message) + else: + # Supported, but not enabled + self._enable_in_band_window_resize() + super().process_message( + TerminalSupportInBandWindowResize(True, True) + ) + self._enable_mouse_pixels() + return super().process_message(message)