@@ -108,19 +108,48 @@ impl ExecutablesTab {
108108
109109        ui. separator ( ) ; 
110110        let  bar_size = Vec2 :: new ( ui. available_width ( ) ,  20.0 ) ; 
111-         let  bar_rect = Rect :: from_min_size ( ui. next_widget_position ( ) ,  bar_size) ; 
112-         ui. allocate_ui_at_rect ( bar_rect,  |ui| { 
113-             ui. columns ( 3 ,  |ui| { 
114-                 ui[ 0 ] . with_layout ( Layout :: left_to_right ( Align :: Center ) ,  |ui| { 
115-                     ui. label ( format ! ( "{} executables" ,  self . last_exe_count) ) ; 
116-                 } ) ; 
117-                 ui[ 1 ] . with_layout ( Layout :: centered_and_justified ( Direction :: TopDown ) ,  |ui| { 
118-                     ui. label ( ingest_status) ; 
119-                 } ) ; 
120-                 ui[ 2 ] . with_layout ( Layout :: right_to_left ( Align :: Center ) ,  |ui| { 
121-                     let  hint = format ! ( "{} Filter ..." ,  icons:: FUNNEL ) ; 
122-                     clearable_line_edit ( ui,  & hint,  & mut  self . filter ) ; 
123-                 } ) ; 
111+ 
112+         // Allocate space for the entire bar 
113+         let  ( _rect,  _)  = ui. allocate_space ( bar_size) ; 
114+ 
115+         // Create the horizontal layout directly inside the main UI 
116+         ui. horizontal ( |ui| { 
117+             // Set the width of each column 
118+             let  available_width = ui. available_width ( ) ; 
119+             let  col_width = available_width / 3.0 ; 
120+ 
121+             // First column - left aligned 
122+             ui. with_layout ( Layout :: left_to_right ( Align :: Center ) ,  |ui| { 
123+                 ui. allocate_ui_with_layout ( 
124+                     Vec2 :: new ( col_width,  bar_size. y ) , 
125+                     Layout :: left_to_right ( Align :: Center ) , 
126+                     |ui| { 
127+                         ui. label ( format ! ( "{} executables" ,  self . last_exe_count) ) ; 
128+                     } , 
129+                 ) ; 
130+             } ) ; 
131+ 
132+             // Second column - centered 
133+             ui. with_layout ( Layout :: centered_and_justified ( Direction :: TopDown ) ,  |ui| { 
134+                 ui. allocate_ui_with_layout ( 
135+                     Vec2 :: new ( col_width,  bar_size. y ) , 
136+                     Layout :: centered_and_justified ( Direction :: TopDown ) , 
137+                     |ui| { 
138+                         ui. label ( ingest_status) ; 
139+                     } , 
140+                 ) ; 
141+             } ) ; 
142+ 
143+             // Third column - right aligned 
144+             ui. with_layout ( Layout :: right_to_left ( Align :: Center ) ,  |ui| { 
145+                 ui. allocate_ui_with_layout ( 
146+                     Vec2 :: new ( col_width,  bar_size. y ) , 
147+                     Layout :: right_to_left ( Align :: Center ) , 
148+                     |ui| { 
149+                         let  hint = format ! ( "{} Filter ..." ,  icons:: FUNNEL ) ; 
150+                         clearable_line_edit ( ui,  & hint,  & mut  self . filter ) ; 
151+                     } , 
152+                 ) ; 
124153            } ) ; 
125154        } ) ; 
126155
@@ -169,9 +198,15 @@ impl ExecutablesTab {
169198            painter. rect_stroke ( rect,  Rounding :: ZERO ,  Stroke :: new ( 1.0 ,  Color32 :: BLACK ) ) ; 
170199
171200            if  matches ! ( response. hover_pos( ) ,  Some ( p)  if  rect. contains( p) )  { 
172-                 show_tooltip_at_pointer ( ui. ctx ( ) ,  Id :: new ( "executable-bar-tooltip" ) ,  |ui| { 
173-                     ui. label ( format ! ( "{}: {:.0}" ,  name,  humanize_count( value) ) ) ; 
174-                 } ) ; 
201+                 let  tooltip_id = Id :: new ( "executable-bar-tooltip" ) ; 
202+                 show_tooltip_at_pointer ( 
203+                     ui. ctx ( ) , 
204+                     egui:: LayerId :: new ( egui:: Order :: Tooltip ,  tooltip_id) , 
205+                     tooltip_id, 
206+                     |ui :  & mut  Ui | { 
207+                         ui. label ( format ! ( "{}: {:.0}" ,  name,  humanize_count( value) ) ) ; 
208+                     } , 
209+                 ) ; 
175210            } 
176211
177212            offset += width; 
0 commit comments