From 2e32f1c8a19525004cb9b3b7ac9cc53c9aa4fdd0 Mon Sep 17 00:00:00 2001 From: Kirill Bulatov Date: Sat, 26 Oct 2024 21:57:22 +0300 Subject: [PATCH] Restore horizontal scrollbar checks (#19767) Closes https://github.com/zed-industries/zed/issues/19637 Follow-up of https://github.com/zed-industries/zed/pull/18927 , restores the condition that removed the horizontal scrollbar when panel's items are not long enough. Release Notes: - Fixed horizontal scrollbar not being hidden ([#19637](https://github.com/zed-industries/zed/issues/19637)) --- crates/project_panel/src/project_panel.rs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/crates/project_panel/src/project_panel.rs b/crates/project_panel/src/project_panel.rs index 50c9d2d1269c6a2028581fb4129fcfaaacb7afee..355e8780cc91932447daccd8b630fb3d8a8b46c2 100644 --- a/crates/project_panel/src/project_panel.rs +++ b/crates/project_panel/src/project_panel.rs @@ -2821,6 +2821,17 @@ impl ProjectPanel { return None; } + let scroll_handle = self.scroll_handle.0.borrow(); + let longest_item_width = scroll_handle + .last_item_size + .filter(|size| size.contents.width > size.item.width)? + .contents + .width + .0 as f64; + if longest_item_width < scroll_handle.base_handle.bounds().size.width.0 as f64 { + return None; + } + Some( div() .occlude()