This is an automated email from the ASF dual-hosted git repository.

jscheffl pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new e87d672be19 Fix #47708: Ensure all multiple dropdown selections are 
visible (#48185)
e87d672be19 is described below

commit e87d672be191449c86a645d01699953566374aa6
Author: davidfgcorreia <[email protected]>
AuthorDate: Mon Mar 24 20:52:18 2025 +0000

    Fix #47708: Ensure all multiple dropdown selections are visible (#48185)
    
    The dropdown filters were not visible to the user. I modified the
        functions responsible for this issue, implementing a dynamic version
        that adjusts based on the size of each filter. Now, all filters are
        fully visible.
---
 airflow-core/src/airflow/ui/src/pages/DagRuns.tsx  |  4 ++--
 .../pages/TaskInstances/TaskInstancesFilter.tsx    | 22 +++++++++++-----------
 2 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/airflow-core/src/airflow/ui/src/pages/DagRuns.tsx 
b/airflow-core/src/airflow/ui/src/pages/DagRuns.tsx
index 32239cb08c3..16f9cfab1fb 100644
--- a/airflow-core/src/airflow/ui/src/pages/DagRuns.tsx
+++ b/airflow-core/src/airflow/ui/src/pages/DagRuns.tsx
@@ -185,8 +185,8 @@ export const DagRuns = () => {
           onValueChange={handleStateChange}
           value={[filteredState ?? "all"]}
         >
-          <Select.Trigger colorPalette="blue" 
isActive={Boolean(filteredState)}>
-            <Select.ValueText width={20}>
+          <Select.Trigger colorPalette="blue" 
isActive={Boolean(filteredState)} minW="max-content">
+            <Select.ValueText width="auto">
               {() =>
                 filteredState === null ? (
                   "All States"
diff --git 
a/airflow-core/src/airflow/ui/src/pages/TaskInstances/TaskInstancesFilter.tsx 
b/airflow-core/src/airflow/ui/src/pages/TaskInstances/TaskInstancesFilter.tsx
index cd53bc8180f..72cef0c3c94 100644
--- 
a/airflow-core/src/airflow/ui/src/pages/TaskInstances/TaskInstancesFilter.tsx
+++ 
b/airflow-core/src/airflow/ui/src/pages/TaskInstances/TaskInstancesFilter.tsx
@@ -80,10 +80,18 @@ export const TaskInstancesFilter = ({
   };
 
   return (
-    <HStack>
+    <HStack paddingY="4px">
+      <SearchBar
+        buttonProps={{ disabled: true }}
+        defaultValue={taskDisplayNamePattern ?? ""}
+        hideAdvanced
+        hotkeyDisabled={Boolean(runId)}
+        onChange={handleSearchChange}
+        placeHolder="Search Tasks"
+      />
       <Select.Root
         collection={stateOptions}
-        maxW="250px"
+        maxW="450px"
         multiple
         onValueChange={handleStateChange}
         value={hasFilteredState ? filteredState : ["all"]}
@@ -96,7 +104,7 @@ export const TaskInstancesFilter = ({
           <Select.ValueText>
             {() =>
               hasFilteredState ? (
-                <HStack gap="10px">
+                <HStack flexWrap="wrap" fontSize="sm" gap="4px" paddingY="8px">
                   {filteredState.map((state) => (
                     <StateBadge key={state} state={state as TaskInstanceState}>
                       {state === "none" ? "No Status" : capitalize(state)}
@@ -121,14 +129,6 @@ export const TaskInstancesFilter = ({
           ))}
         </Select.Content>
       </Select.Root>
-      <SearchBar
-        buttonProps={{ disabled: true }}
-        defaultValue={taskDisplayNamePattern ?? ""}
-        hideAdvanced
-        hotkeyDisabled={Boolean(runId)}
-        onChange={handleSearchChange}
-        placeHolder="Search Tasks"
-      />
     </HStack>
   );
 };

Reply via email to