aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2022-09-13 15:51:20 -0400
committerbobzel <zzzman@gmail.com>2022-09-13 15:51:20 -0400
commit7869b13de37b9d910f455be79f6bf55ecfe49b26 (patch)
treeb4c3aec7f48dd99a7538cebbaaa20e929bcae662
parent60ebe1b45560fcabb8011c42e15009c197d4dd20 (diff)
make filterBox reuse filter if it is unsaved.
-rw-r--r--src/client/views/PropertiesView.tsx14
-rw-r--r--src/client/views/nodes/FilterBox.tsx2
2 files changed, 12 insertions, 4 deletions
diff --git a/src/client/views/PropertiesView.tsx b/src/client/views/PropertiesView.tsx
index 555320aed..842664402 100644
--- a/src/client/views/PropertiesView.tsx
+++ b/src/client/views/PropertiesView.tsx
@@ -1157,13 +1157,21 @@ export class PropertiesView extends React.Component<PropertiesViewProps> {
*/
createNewFilterDoc = () => {
if (this.selectedDoc) {
+ const curFilterDoc = DocCast(this.selectedDoc.currentFilter);
const currentDocFilters = this.selectedDoc._docFilters;
const currentDocRangeFilters = this.selectedDoc._docRangeFilters;
this.selectedDoc._docFilters = new List<string>();
this.selectedDoc._docRangeFilters = new List<string>();
- (this.selectedDoc.currentFilter as Doc)._docFiltersList = currentDocFilters;
- (this.selectedDoc.currentFilter as Doc)._docRangeFiltersList = currentDocRangeFilters;
- this.selectedDoc.currentFilter = FilterBox.createFilterDoc();
+ if (DocListCast(Doc.UserDoc().savedFilters).includes(curFilterDoc)) {
+ curFilterDoc._docFiltersList = currentDocFilters;
+ curFilterDoc._docRangeFiltersList = currentDocRangeFilters;
+ this.selectedDoc.currentFilter = FilterBox.createFilterDoc();
+ } else {
+ Doc.GetProto(curFilterDoc).data = undefined;
+ Doc.GetProto(curFilterDoc).title = 'Unnamed Filter';
+ curFilterDoc._docFiltersList = undefined;
+ curFilterDoc._docRangeFiltersList = undefined;
+ }
}
};
diff --git a/src/client/views/nodes/FilterBox.tsx b/src/client/views/nodes/FilterBox.tsx
index 54501cfa2..04d252abe 100644
--- a/src/client/views/nodes/FilterBox.tsx
+++ b/src/client/views/nodes/FilterBox.tsx
@@ -379,7 +379,7 @@ export class FilterBox extends ViewBoxBaseComponent<FieldViewProps>() {
* Changes the title of the filterDoc
*/
onTitleValueChange = (val: string) => {
- this.props.Document.title = val || `FilterDoc for ${FilterBox.targetDoc?.title}`;
+ Doc.GetProto(this.props.Document).title = val || `FilterDoc for ${FilterBox.targetDoc?.title}`;
return true;
};