Fix marker display mode (#1487)

This commit is contained in:
WithoutPants
2021-06-07 15:09:06 +10:00
committed by GitHub
parent 3e80dffe34
commit 099b4ecc56
2 changed files with 18 additions and 3 deletions

View File

@@ -451,8 +451,13 @@ const useList = <QueryResult extends IQueryResult, QueryData extends IDataItem>(
const persistanceKey = options.persistanceKey ?? options.filterMode; const persistanceKey = options.persistanceKey ?? options.filterMode;
const defaultSort = options.defaultSort ?? filterOptions.defaultSortBy; const defaultSort = options.defaultSort ?? filterOptions.defaultSortBy;
const defaultDisplayMode = filterOptions.displayModeOptions[0];
const [filter, setFilter] = useState<ListFilterModel>( const [filter, setFilter] = useState<ListFilterModel>(
new ListFilterModel(queryString.parse(location.search), defaultSort) new ListFilterModel(
queryString.parse(location.search),
defaultSort,
defaultDisplayMode
)
); );
const updateInterfaceConfig = useCallback( const updateInterfaceConfig = useCallback(
@@ -513,7 +518,11 @@ const useList = <QueryResult extends IQueryResult, QueryData extends IDataItem>(
} }
: activeFilter; : activeFilter;
const newFilter = new ListFilterModel(query, defaultSort); const newFilter = new ListFilterModel(
query,
defaultSort,
defaultDisplayMode
);
// Compare constructed filter with current filter. // Compare constructed filter with current filter.
// If different it's the result of navigation, and we update the filter. // If different it's the result of navigation, and we update the filter.
@@ -530,6 +539,7 @@ const useList = <QueryResult extends IQueryResult, QueryData extends IDataItem>(
} }
}, [ }, [
defaultSort, defaultSort,
defaultDisplayMode,
filter, filter,
interfaceState.data, interfaceState.data,
interfaceState.loading, interfaceState.loading,

View File

@@ -32,9 +32,14 @@ export class ListFilterModel {
public criteria: Array<Criterion<CriterionValue>> = []; public criteria: Array<Criterion<CriterionValue>> = [];
public randomSeed = -1; public randomSeed = -1;
public constructor(rawParms?: ParsedQuery<string>, defaultSort?: string) { public constructor(
rawParms?: ParsedQuery<string>,
defaultSort?: string,
defaultDisplayMode?: DisplayMode
) {
const params = rawParms as IQueryParameters; const params = rawParms as IQueryParameters;
this.sortBy = defaultSort; this.sortBy = defaultSort;
if (defaultDisplayMode !== undefined) this.displayMode = defaultDisplayMode;
if (params) this.configureFromQueryParameters(params); if (params) this.configureFromQueryParameters(params);
} }