Ensure that the selection layer updates when the review panel is toggled (#17021)

GitOrigin-RevId: e5418ae642e0c46f12c633fc71323bb86018c42a
This commit is contained in:
Alf Eaton
2024-02-16 09:04:31 +00:00
committed by Copybot
parent 387c7656b9
commit 00d043cc72
3 changed files with 28 additions and 2 deletions
@@ -6,7 +6,12 @@ import {
updateChangesTopPadding,
updateSetsVerticalOverflow,
} from '../vertical-overflow'
import { EditorSelection, EditorState } from '@codemirror/state'
import {
EditorSelection,
EditorState,
StateEffect,
TransactionSpec,
} from '@codemirror/state'
import { EditorView, ViewUpdate } from '@codemirror/view'
import { fullHeightCoordsAtPos } from '../../utils/layer'
import { debounce } from 'lodash'
@@ -14,6 +19,7 @@ import { Change, EditOperation } from '../../../../../../types/change'
import { ThreadId } from '../../../../../../types/review-panel/review-panel'
import { isDeleteOperation, isInsertOperation } from '@/utils/operations'
import { DocumentContainer } from '@/features/ide-react/editor/document-container'
import { updateHasEffect } from '@/features/source-editor/utils/effects'
// With less than this number of entries, don't bother culling to avoid
// little UI jumps when scrolling.
@@ -597,3 +603,13 @@ export const createChangeManager = (
},
}
}
const reviewPanelToggledEffect = StateEffect.define()
export const updateHasReviewPanelToggledEffect = updateHasEffect(
reviewPanelToggledEffect
)
export const reviewPanelToggled = (): TransactionSpec => ({
effects: reviewPanelToggledEffect.of(null),
})