diff --git a/keyserver/src/responders/website-responders.js b/keyserver/src/responders/website-responders.js
--- a/keyserver/src/responders/website-responders.js
+++ b/keyserver/src/responders/website-responders.js
@@ -177,6 +177,10 @@
     'defaultCalendarFilters',
     _isEqual(defaultCalendarFilters),
   ),
+  communityPickerStore: t.irreducible(
+    'default communityPickerStore',
+    _isEqual({ chat: null, calendar: null }),
+  ),
   urlPrefix: tString(''),
   windowDimensions: t.irreducible(
     'default windowDimensions',
@@ -496,6 +500,7 @@
     updatesCurrentAsOf: currentAsOfPromise,
     loadingStatuses: {},
     calendarFilters: defaultCalendarFilters,
+    communityPickerStore: { chat: null, calendar: null },
     // We can use paths local to the <base href> on web
     urlPrefix: '',
     windowDimensions: { width: 0, height: 0 },
diff --git a/web/redux/redux-setup.js b/web/redux/redux-setup.js
--- a/web/redux/redux-setup.js
+++ b/web/redux/redux-setup.js
@@ -63,6 +63,11 @@
 
 export type WindowDimensions = { width: number, height: number };
 
+export type CommunityPickerStore = {
+  +chat: ?string,
+  +calendar: ?string,
+};
+
 export type AppState = {
   navInfo: NavInfo,
   deviceID: ?string,
@@ -76,7 +81,7 @@
   updatesCurrentAsOf: number,
   loadingStatuses: { [key: string]: { [idx: number]: LoadingStatus } },
   calendarFilters: $ReadOnlyArray<CalendarFilter>,
-  calendarPickedCommunityID: ?string,
+  communityPickerStore: CommunityPickerStore,
   urlPrefix: string,
   windowDimensions: WindowDimensions,
   cookie?: void,
@@ -158,14 +163,20 @@
           threadIDs,
         },
       ],
-      calendarPickedCommunityID: action.payload,
+      communityPickerStore: {
+        ...state.communityPickerStore,
+        calendar: action.payload,
+      },
     };
   } else if (action.type === clearCalendarCommunityFilter) {
     const nonThreadFilters = nonThreadCalendarFilters(state.calendarFilters);
     return {
       ...state,
       calendarFilters: nonThreadFilters,
-      calendarPickedCommunityID: null,
+      communityPickerStore: {
+        ...state.communityPickerStore,
+        calendar: null,
+      },
     };
   } else if (action.type === setNewSessionActionType) {
     if (
diff --git a/web/selectors/calendar-selectors.js b/web/selectors/calendar-selectors.js
--- a/web/selectors/calendar-selectors.js
+++ b/web/selectors/calendar-selectors.js
@@ -44,7 +44,7 @@
 const filterThreadIDsBelongingToCommunitySelector: (
   state: AppState,
 ) => ?$ReadOnlySet<string> = createSelector(
-  (state: AppState) => state.calendarPickedCommunityID,
+  (state: AppState) => state.communityPickerStore.calendar,
   threadInfoSelector,
   (
     calendarPickedCommunityID: ?string,
@@ -60,9 +60,9 @@
   },
 );
 
-function useCommunityIsPicked(communityID: string): boolean {
+function useCommunityIsPickedCalendar(communityID: string): boolean {
   const calendarPickedCommunityID = useSelector(
-    state => state.calendarPickedCommunityID,
+    state => state.communityPickerStore.calendar,
   );
   return communityID === calendarPickedCommunityID;
 }
@@ -72,5 +72,5 @@
   useFilterThreadSearchIndex,
   filterThreadIDsBelongingToCommunitySelector,
   filterThreadIDsBelongingToCommunity,
-  useCommunityIsPicked,
+  useCommunityIsPickedCalendar,
 };
diff --git a/web/selectors/thread-selectors.js b/web/selectors/thread-selectors.js
--- a/web/selectors/thread-selectors.js
+++ b/web/selectors/thread-selectors.js
@@ -113,7 +113,7 @@
     state => state.navInfo.activeChatThreadID,
   );
   const pickedCommunityID = useSelector(
-    state => state.calendarPickedCommunityID,
+    state => state.communityPickerStore.calendar,
   );
   const inCalendar = useSelector(state => state.navInfo.tab === 'calendar');
 
diff --git a/web/sidebar/community-drawer-item-handlers.react.js b/web/sidebar/community-drawer-item-handlers.react.js
--- a/web/sidebar/community-drawer-item-handlers.react.js
+++ b/web/sidebar/community-drawer-item-handlers.react.js
@@ -7,7 +7,7 @@
 
 import type { CommunityDrawerItemHandler } from './community-drawer-item-handler.react.js';
 import { updateCalendarCommunityFilter } from '../redux/action-types.js';
-import { useCommunityIsPicked } from '../selectors/calendar-selectors.js';
+import { useCommunityIsPickedCalendar } from '../selectors/calendar-selectors.js';
 import {
   useOnClickThread,
   useThreadIsActive,
@@ -45,7 +45,7 @@
       payload: threadInfo.id,
     });
   }, [dispatch, threadInfo.id]);
-  const isActive = useCommunityIsPicked(threadInfo.id);
+  const isActive = useCommunityIsPickedCalendar(threadInfo.id);
 
   const handler = React.useMemo(
     () => ({ onClick, isActive }),