- view_page now calls _render_file_viewer for content_format='file' pages instead of rendering the full page_editor template (which was the old path) - URL-encode filenames in file_url using urllib.parse.quote() to handle spaces and special characters correctly - Fixed in both board.py (viewer + page_data) and dashboard.py The _render_file_viewer was dead code — defined but never called. File pages were going through page_editor.html which rendered PDFs in an iframe embedded in the editor UI. Now they get a clean standalone HTML viewer.