docs(0036c): mark issue as done

This commit is contained in:
2026-05-04 00:56:50 +02:00
parent 176d9b232d
commit 98e744ea4e
@@ -0,0 +1,83 @@
---
id: 0036c
title: Doble click en Group abre/centra NodeGroups + cleanup del Table panel filter
status: done
priority: high
created: 2026-05-04
parent: 0036
depends_on: [0036a, 0036b]
---
## Objetivo
Cambiar el dispatch del doble click sobre un nodo `Group`: en lugar
de filtrar el panel `Table` generico (logica de 0035d), abre/enfoca
la NodeGroups window correspondiente al Group. Eliminar el filtro
group_id del Table panel para evitar confusion.
## Cambios
### `on_double_click_cb` en `main.cpp`
Hoy hay un branch que detecta `type_ref == "Group"` y setea
`g_app.table_filter_group_id`. Reemplazar:
```cpp
if (type_ref == "Group") {
ge::node_groups_open(g_app, sql_id, NodeGroupsKind::Group);
// marcar focus_request en la window devuelta
}
```
Anyadir branch para `type_ref == "Table"` que use kind=Table (igual
que el flow del menu "Open NodeGroups" actual). Nota: hoy Table se
abre desde el menu contextual, no desde doble click. Mantener el
context menu igual; el doble click es nuevo flujo paralelo.
### Eliminar campos AppState ya inutiles
- `app.table_filter_group_id`
- `app.table_filter_group_name`
### Eliminar logica del Table panel generico (`views.cpp::views_table`)
- El bloque del breadcrumb amarillo `Group: <name> (N)` + boton
`Clear group filter`.
- El filtro `r.group_id != app.table_filter_group_id` en
`build_visible`.
- La restriccion de `types_present` cuando hay filtro activo.
- El reset del filtro al cerrar el panel (`if (!panel_table) ...`).
El Table panel queda como antes de 0035d: lista de entidades del
grafo, tabs por tipo, search, column filters. Sin drill-in.
### `focus_request` en NodeGroupsWindowState
Para centrar la window al abrirla. Si ya estaba abierta, debe
recibir `ImGui::SetWindowFocus("NodeGroups: <name>")` el frame
siguiente. Implementacion: bool `focus_request` en el state, que el
render consume.
## Acceptance criteria
- Doble click en un Url normal: abre Note como hoy (sin regresion).
- Doble click en un Group: abre NodeGroups window con sus hijos (los
N-K agrupados, no los preview sueltos), titulo
`NodeGroups: <group_name>`, y la window queda al frente.
- Si ya estaba abierta, vuelve a centrarse.
- El Table panel generico ya no tiene breadcrumb ni filtro group_id.
Si lo abres, ves todas las entidades del grafo (incluyendo las que
estan dentro de grupos — el render filter del canvas las oculta,
pero la lista del Table panel las muestra todas).
- Tests pytest verdes.
## TBD
Branch `issue/0036c-doubleclick-group-opens-nodegroups`,
merge `--no-ff` a master.
## Out of scope
- Promote en NodeGroups (es 0036d).
- Row click focus (0036e).
- View menu accion (0036f).