Repository navigation
feat(skins): detectar el modelo de la skin al subirla - #53
Merged
staFF6773 merged 2 commits intoOct 21, 2026
Merged
Conversation
Al subir una skin, el modelo (clásico o delgado) se toma de la propia imagen y no del que estaba seleccionado antes. Una skin delgada guardada como clásica muestra franjas negras en los brazos. Los botones Clásico y Delgado siguen permitiendo cambiarlo antes de guardar; una nota bajo los botones avisa que el modelo se detectó.
Member
|
Ahorita mismo lo puedo testear, pero cuando pueda y verifique todo, acepto el PR de forma inmediata. |
staFF6773
reviewed
Oct 21, 2026
La detección solo responde con pruebas en la imagen: algo dibujado en las columnas que solo existen en el modelo clásico, o una cara dibujada que termina antes de ellas. Si esas caras están vacías (brazo sin dibujar, transparente o imagen incompleta), devuelve null y se conserva el modelo elegido, sin mostrar la nota.
Member
|
Listo >3 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Descripcion
Al subir una skin, el launcher ahora detecta si es clásica (Steve, brazos de 4 px) o delgada (Alex, brazos de 3 px) mirando la propia imagen. Hasta ahora se guardaba con el modelo que estaba seleccionado, que es el de la skin anterior, y una skin delgada guardada como clásica queda con franjas negras en los brazos (ver capturas). Lo hablamos en #52.
src/lib/utils/skinModel.ts:detectSkinModelrevisa las zonas que el modelo delgado nunca usa: dos columnas en la cara de atrás de cada brazo y dos en la parte de abajo de la mano. Si el brazo está dibujado y esas zonas están vacías, es delgada; ante la duda, clásica. Funciona con skins HD, y las de 64×32 siempre son clásicas.SkinCapeManager.svelte: al subir una skin (con el botón o arrastrando) se aplica el modelo detectado y aparece una nota bajo los botones. Los botones Clásico y Delgado funcionan igual que antes, y la nota desaparece al elegir a mano. Cambiar el modelo de la skin actual sin subir otra no cambia.userMenu.skinCape.modelDetectedenes-ESyen-US.tests/frontend/ui/skinModel.test.mjs.Sin dependencias nuevas y sin cambios en Rust.
Tipo de cambio
Plataforma
Checklist
bun run build && cargo build)bun run test:all): ver "Informacion adicional"Screenshots / logs (si aplica)
Antes: la skin delgada guardada como clásica, con franjas negras en los brazos.
Con este PR: al subirla se detecta Delgado y aparece la nota.
Informacion adicional
bun run lintybun run checkpasan sin errores, y Prettier está aplicado a los archivos tocados.bun run test:frontend: los 7 tests nuevos pasan. En mi máquina (Windows) fallamarketRequest.test.mjs("native market bridge unregisters abort listeners..."), que también falla sin este cambio.bun run test:rustycargo clippyno los corrí: el PR no toca Rust.cargo fmt --checkmarca un espacio al final de la línea 26 desrc-tauri/src/commands/themes/install.rs, que no es de este PR.