feat(admin): preserve list return target for back and close actions

This commit is contained in:
2026-03-11 23:32:11 +01:00
parent bc9506866f
commit 277168f7e8
24 changed files with 525 additions and 96 deletions

View File

@@ -152,6 +152,10 @@ const readSubmitLockMode = (submitter, form) => normalizeSubmitLock(
const disableSubmitControlsForForm = (form, submitter, options = {}) => {
const controls = findSubmitControlsForForm(form);
controls.forEach((control) => {
if (submitter instanceof HTMLElement && control === submitter) {
// Keep the clicked submitter enabled so its name/value stays part of form submission.
return;
}
control.disabled = true;
});
if (submitter instanceof HTMLElement) {

View File

@@ -1,6 +1,6 @@
import { warnOnce } from './app-dom.js';
import { confirmDialog } from './app-confirm-dialog.js';
import { gridFiltersFromSchema } from '../pages/app-list-utils.js';
import { gridFiltersFromSchema, withCurrentListReturn } from '../pages/app-list-utils.js';
import { initListFilterExperience } from '../pages/app-list-filter-experience.js';
import { buildChipsFromMeta, removeChipFromMetaState, clearMetaState } from '../pages/app-list-filter-state.js';
@@ -294,7 +294,11 @@ export function createServerGrid(options) {
return '';
}
const url = rowDblClick.getUrl(rowData, rowIndex);
return String(url || '').trim();
const normalized = String(url || '').trim();
if (normalized === '') {
return '';
}
return withCurrentListReturn(normalized);
};
const getInput = (input) => {