All entity browsers (ShotBrowser, AssetBrowser, TaskBrowser) now have consistent detail panel behavior following the specification.
// All browsers now have these states:
const isDetailPanelEnabled = ref(true) // Auto-enable toggle
const isDetailPanelVisible = ref(false) // Manual visibility
// Combined visibility logic:
v-if="selectedEntity && (isDetailPanelEnabled || isDetailPanelVisible)"
const handleKeyDown = (event: KeyboardEvent) => {
if (event.key.toLowerCase() === 'i' && selectedEntity.value) {
// Input field protection
if (target.tagName === 'INPUT' || target.tagName === 'TEXTAREA') return
// Toggle visibility
isDetailPanelVisible.value = !isDetailPanelVisible.value
}
}
// Manual visibility is NOT reset on selection
const selectEntity = (entity) => {
selectedEntity.value = entity
// No longer: isDetailPanelVisible.value = false
// Panel stays open if manually activated
}
<Button
:variant="isDetailPanelEnabled ? 'default' : 'outline'"
:class="isDetailPanelEnabled ? 'bg-primary text-primary-foreground' : ''"
>
๐ All entity browsers now provide a unified, consistent detail panel experience!