Commit Graph
18 Commits
Author SHA1 Message Date
BordedDev 4164fbd877 feat: add paste and file drop support to web input handler
Implement clipboard paste event listener in initInputField that reads image files from clipboard and triggers upload via the upload-button component. Add drag-and-drop file drop support to the textarea input field for improved user experience.
2025-05-06 21:14:52 +00:00
BordedDev 5293d483c4 fix: replace manifest icon paths with correctly sized 192 and 512 png assets
The manifest.json previously referenced a single icon file (snek1.png) for both 192x192 and 512x512 sizes, causing browser instability warnings due to mismatched dimensions. This commit adds properly sized snek192.png and snek512.png images and updates the manifest to point each icon entry to its corresponding size-specific asset, resolving the Firefox Android manifest validation issue.
2025-04-06 21:47:18 +00:00
BordedDev 3188b180df fix: revert multi-line formatting of umami script tag in base.html 2025-03-17 21:06:52 +00:00
BordedDev bf8ca3c69b feat: add Promise.withResolvers polyfill and include it in app and base templates
The polyfill provides a static method on Promise that returns an object with resolve and reject functions exposed, enabling external resolution of a promise. It is loaded as a module script in both app.html and base.html to ensure compatibility before app.js runs.
2025-03-17 21:05:46 +00:00
BordedDev 24ce2ceb83 style: normalize import spacing and object literal formatting in app.js 2025-03-16 04:03:05 +00:00
BordedDev 4e9c8c55bb refactor: extract EventHandler and Socket classes into separate modules from app.js 2025-03-16 03:55:01 +00:00
BordedDev e12d3b7c5d feat: convert JavaScript classes to ES modules with export/import across app and templates
Convert all JavaScript classes in app.js and schedule.js from implicit globals to ES module exports, add import statements in template scripts for the app instance, and mark all script tags with type="module" to enable module scoping. Also fix a potential null reference in web.html by using optional chaining on lastMessage.scrollIntoView and hoist the lastMessage variable to outer scope for proper closure behavior.
2025-03-15 18:10:52 +00:00
BordedDev 22d13d4385 feat: extract shared input focus styles into shared.css and import on all pages
Create a new shared.css file containing consistent focus ring and placeholder opacity transition rules for input and textarea elements. Import shared.css into both base.css and style.css to apply the updated input styling across all pages, replacing previously scattered or missing focus indicators.
2025-03-15 14:53:24 +00:00
BordedDev 7f9273d9dc fix: add missing semicolon to loadForm call in GenericForm URL handler 2025-03-08 20:18:20 +00:00
BordedDev ef8ee90276 feat: preload form structure into login and register templates and autofocus first input
Add `preloaded-structure` attribute to `<generic-form>` elements in both login and register templates, passing the serialized form JSON from the server. This enables instant form rendering without an additional fetch. Also implement autofocus logic in `generic-form.js` to focus the first input field on page load, improving UX for authentication flows.
2025-03-08 20:04:32 +00:00
BordedDev a504af4c6f style: revert indentation from 4-space to 2-space in base.css across all selectors 2025-03-08 18:35:22 +00:00
BordedDev f36b94e46b feat: wrap back button and form in grid container with new back-form.css stylesheet
Add a new CSS file `back-form.css` defining a two-column grid layout for the back button and generic form, with the button positioned at (1,1) with 30px margins and z-index 1. Update both `login.html` and `register.html` to include the stylesheet in the head block and wrap the existing `fancy-button` and `generic-form` elements in a `div.back-form` container, replacing the previous standalone button placement.
2025-03-08 18:07:09 +00:00
BordedDev 852d949d7f feat: add head block placeholder to base template for child template injection
Insert an empty Jinja2 block named 'head' inside the <head> element of base.html, enabling child templates to inject custom meta tags, styles, or scripts before the closing head tag.
2025-03-08 17:59:00 +00:00
BordedDev ba39d16635 style: add focus outline and placeholder opacity transition to form input fields 2025-03-08 17:56:55 +00:00
BordedDev 8855e40d6d feat: add theme-color, application-name, and author meta tags to base.html head
Add six new meta elements to the HTML head in base.html: theme-color set to black,
application-name and description both set to "Snek chat by Molodetz", author set to
"Molodetz", keywords including "snek, chat, molodetz", and color-scheme set to dark.
Also insert a blank line after the title block for improved readability.
2025-03-08 17:25:15 +00:00
BordedDev 64fe00b161 fix: dispatch change event on blur to sync autocomplete with form state 2025-03-08 17:09:14 +00:00
BordedDev 9c844d9f30 feat: add default page title and specific titles for login and register templates
Set a default "Snek chat by Molodetz" title in base.html and override it with
"Login - Snek chat by Molodetz" and "Register - Snek chat by Molodetz" in their
respective templates, improving user-facing page identification.
2025-03-08 17:04:53 +00:00
BordedDev 4b59f8b780 fix: correct border-radius on follow-up messages to prevent sharp corners 2025-03-08 16:25:56 +00:00