message: Don't load up default filters ever, and use session storage instead of permanent.
  We want to make sure devlog-only games get noticed, so we don't want to hide them by default when browsing tag pages and stuff.
diff: import Vue from 'vue';
  import { Location, Route } from 'vue-router';
  -import { Device } from '../../../../lib/gj-lib-client/components/device/device.service';
  import { Scroll } from '../../../../lib/gj-lib-client/components/scroll/scroll.service';
  import { Translate } from '../../../../lib/gj-lib-client/components/translate/translate.service';
  import { forEach } from '../../../../lib/gj-lib-client/utils/collection';
  import { objectEquals } from '../../../../lib/gj-lib-client/utils/object';
  import { router } from '../../../views/index';
  -const STORAGE_KEY = 'game-filtering:filters';
  +const STORAGE_KEY = 'game-filtering:filters-v2';
  interface GameFilteringContainerDefinition {
  label: string;
  @@ -30,42 +29,13 @@ export function checkGameFilteringRoute(route: Route) {
  // We only do work if the URL is bare with no filters set yet.
  if (!paramFiltersFound && !GJ_IS_SSR) {
  - const storageKey = window.localStorage.getItem(STORAGE_KEY);
  + const storageKey = window.sessionStorage.getItem(STORAGE_KEY);
  if (storageKey) {
  console.log('from storage');
  let filters = JSON.parse(storageKey);
  if (filters && !isEmpty(filters)) {
  // Never resolve so we don't switch routes.
  - const _filters = getRouteData(filters);
  - return getNewRouteLocation(route, _filters);
  - }
  - } else {
  - console.log('from device');
  -
  - const os = Device.os();
  -
  - let filters: { [k: string]: object } | undefined;
  - if (os === 'windows') {
  - filters = { os: ['windows'] };
  - } else if (os === 'mac') {
  - filters = { os: ['mac'] };
  - } else if (os === 'linux') {
  - filters = { os: ['linux'] };
  - }
  -
  - if (filters) {
  - // Always add in all browser types if we auto-detected.
  - // TODO: Would be nice to not have to manually add every single one in, but rather just a single filter for all browser types.
  - if (!GJ_IS_CLIENT) {
  - filters.browser = Object.keys(
  - GameFilteringContainer.definitions.browser.options || {}
  - );
  - } else {
  - // On client we only do HTML for now.
  - filters.browser = ['html'];
  - }
  -
  const _filters = getRouteData(filters);
  return getNewRouteLocation(route, _filters);
  }
  @@ -361,7 +331,7 @@ export class GameFilteringContainer {
  // We allow them to save/set blank filters as well.
  // This is so they can specifically say not to do our detected OS filters.
  - window.localStorage.setItem(STORAGE_KEY, JSON.stringify(this.filters));
  + window.sessionStorage.setItem(STORAGE_KEY, JSON.stringify(this.filters));
  }
  }
  