1. 22 Jan, 2024 13 commits
  2. 19 Jan, 2024 5 commits
    • Robert Knight's avatar
      Remove `user` property from `focusFilters` state when no user selected · ccb0f77b
      Robert Knight authored
      Several pieces of code tested only for the presence of keys in `focusFilters` to
      determine whether a focus filter was configured, rather than whether the
      property was set to a "valid" value for that particular filter. The
      `changeFocusModeUser` store action would always set this property, instead of
      removing it when the passed user info was empty (logically meaning "no user is
      focused").
      
      Fixes https://github.com/hypothesis/client/issues/6109
      ccb0f77b
    • Robert Knight's avatar
      Make selection override other filters · befe424f
      Robert Knight authored
      When the user clicks highlight(s) in the document and makes a "selection" in the
      sidebar, we want the selected threads to always be visible. Previously this was
      handled by clearing other types of filter when the selection was made, in
      addition to setting the selection. This however meant that after the selection
      was cleared, the state was different than prior to making the selection, with
      any non-selection filters being disabled.
      
      This commit changes the behavior so that the selection, if present, temporarily
      overrides other filters rather than being combined with them. This allows the
      selection to later be removed to revert back to the previous state.
      befe424f
    • Robert Knight's avatar
      Don't clear filters when clearing selection · bbd6408d
      Robert Knight authored
      When focus filters are in use (eg. user / page filters) it is annoying if
      clicking a highlight in the document and then clearing the selection has the
      effect of disabling the focus filters. Instead the plan is to have the selection
      temporarily replace filters when active.
      bbd6408d
    • Alejandro Celaya's avatar
    • Alejandro Celaya's avatar
      33cb5da1
  3. 18 Jan, 2024 4 commits
  4. 17 Jan, 2024 5 commits
  5. 16 Jan, 2024 8 commits
  6. 15 Jan, 2024 5 commits
    • Robert Knight's avatar
      Include waiting-to-anchor annotations in `threadAnnotations` tests · bd6446ac
      Robert Knight authored
      These should not appear on any tab or be included in `tabCounts` output.
      bd6446ac
    • Robert Knight's avatar
      Restore the behavior of hiding threads if the root annotation is missing · e7c1710d
      Robert Knight authored
      This matches the behavior from earlier versions when tabs were shown. Unlike
      previously, we now always show tabs in the sidebar, so this means that
      conversations without a root annotation will always be hidden in this context,
      whereas previously they could be hidden until you performed a search, which
      could be confusing.
      e7c1710d
    • Robert Knight's avatar
      Don't clear selection when switching tabs · c52e06d3
      Robert Knight authored
      The `store.clearSelection()` call currently clears the selection and also all
      other filters, which means that switching tabs changed several things in the UI
      beyond just the current tab. Change this so it just changes the tab.
      c52e06d3
    • Robert Knight's avatar
      Always show tabs when new search filter UI is active · 850c5212
      Robert Knight authored
      This makes the UI more consistent across filter active/inactive states and
      removes the need to show a total number of annotations in the search result
      summary, since that continues to be visible on the tabs when a filter is active.
      850c5212
    • Robert Knight's avatar
      Compute thread counts for each tab as part of building root thread · 1bf6e8f9
      Robert Knight authored
      Previously the thread counts shown on tabs in the sidebar were computed from the
      full set of annotations in the store, not taking into account any filters that
      are active. This was acceptable because the tabs were hidden if a filter was
      active. However we are planning to change this and thus we need to compute tab
      counts that include the effects of active filters.
      
       - Change `threadAnnotations` to compute thread counts per tab, as well as the
         thread itself. This is done by not filtering top-level threads in
         `buildThread` but instead doing a filtering pass later, which also computes
         the thread count for each tab.
      
       - Change `SelectionTabs` to take the tab counts as a prop, instead of
         getting the count from the store.
      1bf6e8f9