feat(ui): Change start positioning for AIM login window
- commit
- ea6754c50ebdd6a0e6dca88fa43101d9ed1ebd0e
- author
- Kit · · 2025-02-18 16:12 UTC
- parent
- 6e4a0f0
- signature
- SSH Unverified
SHA256:H91DFuEG4jpk5edzLA4aUKkpv4zv9Q339ipRmkph6TkThe key is unknown
1 file · +18 -9
M src/lib/components/aim-login.svelte +18 -9
| @@ -7,6 +7,7 @@ | |||
| 7 | 7 | import { chatState } from '$lib/states/chat.svelte'; | |
| 8 | 8 | import Turnstile from './turnstile.svelte'; | |
| 9 | 9 | import { createSafeUser } from '$lib/types/chat'; | |
| 10 | + | import { onMount } from 'svelte'; | |
| 10 | 11 | ||
| 11 | 12 | interface $$Props { | |
| 12 | 13 | showAuth: boolean; | |
| @@ -34,6 +35,23 @@ | |||
| 34 | 35 | let signupStatus = $state('idle'); | |
| 35 | 36 | let suTurnstileToken = $state(''); | |
| 36 | 37 | ||
| 38 | + | // Added dragging state and handler similar to chat-room | |
| 39 | + | let windowX = $state(0); | |
| 40 | + | let windowY = $state(0); | |
| 41 | + | ||
| 42 | + | // Initialize window position on mount | |
| 43 | + | onMount(() => { | |
| 44 | + | if (window.innerWidth > 768) { // Desktop mode | |
| 45 | + | windowX = window.innerWidth * 0.2; | |
| 46 | + | windowY = window.innerHeight * 0.2; | |
| 47 | + | } | |
| 48 | + | }); | |
| 49 | + | ||
| 50 | + | function handleDragMove(event: CustomEvent<{ x: number; y: number }>) { | |
| 51 | + | windowX = event.detail.x; | |
| 52 | + | windowY = event.detail.y; | |
| 53 | + | } | |
| 54 | + | ||
| 37 | 55 | function handleClose() { | |
| 38 | 56 | console.debug("Closing AIM Login component."); | |
| 39 | 57 | showAuth = false; | |
| @@ -221,15 +239,6 @@ | |||
| 221 | 239 | handleClose(); | |
| 222 | 240 | } | |
| 223 | 241 | } | |
| 224 | - | ||
| 225 | - | // Added dragging state and handler similar to chat-room | |
| 226 | - | let windowX = $state(0); | |
| 227 | - | let windowY = $state(0); | |
| 228 | - | ||
| 229 | - | function handleDragMove(event: CustomEvent<{ x: number; y: number }>) { | |
| 230 | - | windowX = event.detail.x; | |
| 231 | - | windowY = event.detail.y; | |
| 232 | - | } | |
| 233 | 242 | </script> | |
| 234 | 243 | ||
| 235 | 244 | <svelte:window onkeydown={handleKeydown} /> | |
| @@ -7,6 +7,7 @@ | |||||
| 7 | import { chatState } from '$lib/states/chat.svelte'; | 7 | import { chatState } from '$lib/states/chat.svelte'; | ||
| 8 | import Turnstile from './turnstile.svelte'; | 8 | import Turnstile from './turnstile.svelte'; | ||
| 9 | import { createSafeUser } from '$lib/types/chat'; | 9 | import { createSafeUser } from '$lib/types/chat'; | ||
| 10 | + | import { onMount } from 'svelte'; | |||
| 10 | 11 | ||||
| 11 | interface $$Props { | 12 | interface $$Props { | ||
| 12 | showAuth: boolean; | 13 | showAuth: boolean; | ||
| @@ -34,6 +35,23 @@ | |||||
| 34 | let signupStatus = $state('idle'); | 35 | let signupStatus = $state('idle'); | ||
| 35 | let suTurnstileToken = $state(''); | 36 | let suTurnstileToken = $state(''); | ||
| 36 | 37 | ||||
| 38 | + | // Added dragging state and handler similar to chat-room | |||
| 39 | + | let windowX = $state(0); | |||
| 40 | + | let windowY = $state(0); | |||
| 41 | + | ||||
| 42 | + | // Initialize window position on mount | |||
| 43 | + | onMount(() => { | |||
| 44 | + | if (window.innerWidth > 768) { // Desktop mode | |||
| 45 | + | windowX = window.innerWidth * 0.2; | |||
| 46 | + | windowY = window.innerHeight * 0.2; | |||
| 47 | + | } | |||
| 48 | + | }); | |||
| 49 | + | ||||
| 50 | + | function handleDragMove(event: CustomEvent<{ x: number; y: number }>) { | |||
| 51 | + | windowX = event.detail.x; | |||
| 52 | + | windowY = event.detail.y; | |||
| 53 | + | } | |||
| 54 | + | ||||
| 37 | function handleClose() { | 55 | function handleClose() { | ||
| 38 | console.debug("Closing AIM Login component."); | 56 | console.debug("Closing AIM Login component."); | ||
| 39 | showAuth = false; | 57 | showAuth = false; | ||
| @@ -221,15 +239,6 @@ | |||||
| 221 | handleClose(); | 239 | handleClose(); | ||
| 222 | } | 240 | } | ||
| 223 | } | 241 | } | ||
| 224 | - | ||||
| 225 | - | // Added dragging state and handler similar to chat-room | |||
| 226 | - | let windowX = $state(0); | |||
| 227 | - | let windowY = $state(0); | |||
| 228 | - | ||||
| 229 | - | function handleDragMove(event: CustomEvent<{ x: number; y: number }>) { | |||
| 230 | - | windowX = event.detail.x; | |||
| 231 | - | windowY = event.detail.y; | |||
| 232 | - | } | |||
| 233 | </script> | 242 | </script> | ||
| 234 | 243 | ||||
| 235 | <svelte:window onkeydown={handleKeydown} /> | 244 | <svelte:window onkeydown={handleKeydown} /> | ||