diff --git a/public/pdf.html b/public/pdf.html
index b16bd0a..f76241f 100644
--- a/public/pdf.html
+++ b/public/pdf.html
@@ -1160,6 +1160,14 @@
el.appendChild(card);
});
});
+
+ // Render page thumbnails for selected file
+ const _sel = state.files.find(f => f.id === state.selectedFileId);
+ if (_sel && typeof renderPageGrid === 'function') {
+ renderPageGrid('deletePageGrid', 'deleteHint', _sel.id, _sel.pages, 'delete');
+ renderPageGrid('rotatePageGrid', 'rotateHint', _sel.id, _sel.pages, 'rotate');
+ renderPageGrid('reorderPageGrid', 'reorderHint', _sel.id, _sel.pages, 'reorder');
+ }
}
function escHtml(str) {
@@ -1450,6 +1458,10 @@
showError('Введите текст водяного знака.');
return;
}
+ if (op === 'pages' && state.pagesSubOp === 'delete' && getSelectedPages('deletePageGrid').length === 0) {
+ showError('Выберите страницы для удаления');
+ return;
+ }
if (op === 'security' && state.securitySub === 'protect' && !document.getElementById('protectPassword').value) {
showError('Введите пароль для защиты файла.');
return;
@@ -1691,17 +1703,7 @@
return Array.from(grid.querySelectorAll('.page-thumb.selected')).map(t => parseInt(t.dataset.page));
}
- // Re-render grids when file selection changes
- const origRenderSingle = renderSingleFileSelectors;
- renderSingleFileSelectors = function() {
- origRenderSingle();
- const sel = state.files.find(f => f.id === state.selectedFileId);
- if (sel) {
- renderPageGrid('deletePageGrid', 'deleteHint', sel.id, sel.pages, 'delete');
- renderPageGrid('rotatePageGrid', 'rotateHint', sel.id, sel.pages, 'rotate');
- renderPageGrid('reorderPageGrid', 'reorderHint', sel.id, sel.pages, 'reorder');
- }
- };
+
})();