From f319ca36c18ce0beba6023fe4c19ad86016330bd Mon Sep 17 00:00:00 2001
From: Ryan Laurie <30528226+iethree@users.noreply.github.com>
Date: Thu, 26 May 2022 09:02:35 -0600
Subject: [PATCH] allow filter changes on blur (#22903)

---
 .../query_builder/components/filters/FilterPopover.tsx      | 6 ++++++
 .../filters/modals/BulkFilterSelect/BulkFilterSelect.tsx    | 1 +
 2 files changed, 7 insertions(+)

diff --git a/frontend/src/metabase/query_builder/components/filters/FilterPopover.tsx b/frontend/src/metabase/query_builder/components/filters/FilterPopover.tsx
index 766b1003e6d..7abc3a439fa 100644
--- a/frontend/src/metabase/query_builder/components/filters/FilterPopover.tsx
+++ b/frontend/src/metabase/query_builder/components/filters/FilterPopover.tsx
@@ -38,6 +38,7 @@ type Props = {
   onChangeFilter: (filter: Filter) => void;
 
   onClose?: () => void;
+  commitOnBlur?: boolean;
 
   noCommitButton?: boolean;
   showFieldPicker?: boolean;
@@ -60,6 +61,7 @@ export default class FilterPopover extends Component<Props, State> {
     style: {},
     showFieldPicker: true,
     showCustom: true,
+    commitOnBlur: false,
   };
 
   constructor(props: Props) {
@@ -84,6 +86,10 @@ export default class FilterPopover extends Component<Props, State> {
     }
   }
 
+  componentWillUnmount() {
+    this.props.commitOnBlur && this.handleCommit();
+  }
+
   setFilter(filter: Filter, hideShortcuts = true) {
     this.setState({
       filter,
diff --git a/frontend/src/metabase/query_builder/components/filters/modals/BulkFilterSelect/BulkFilterSelect.tsx b/frontend/src/metabase/query_builder/components/filters/modals/BulkFilterSelect/BulkFilterSelect.tsx
index 4fcb1b42cfc..8804a60926b 100644
--- a/frontend/src/metabase/query_builder/components/filters/modals/BulkFilterSelect/BulkFilterSelect.tsx
+++ b/frontend/src/metabase/query_builder/components/filters/modals/BulkFilterSelect/BulkFilterSelect.tsx
@@ -79,6 +79,7 @@ export const BulkFilterSelect = ({
           showFieldPicker={false}
           onChangeFilter={handleChange}
           onClose={closePopover}
+          commitOnBlur
         />
       )}
     />
-- 
GitLab