browser/index.js overwrites window.screen
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- javascript
- Área
- frontend
Línea de trabajo
Comienza leyendo browser/index.js y reproduce el problema con el paquete de navegador de Jimp 1.6.0 en un navegador Windows, Android o iOS, comparándolo con la versión 0.22.12. Se considera terminado cuando Jimp sigue cargándose y window.screen conserva la información de pantalla del navegador en lugar de convertirse en la función screen de Jimp.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Expected Behavior
When using the browser/index.js, Jimp works fine however it overwrites window.screen and causes out application issues when needing the screen details to adjust the UX. I would expect the Jimp required global/window functions not to collide with standard objects. details of the screen standard here: https://developer.mozilla.org/en-US/docs/Web/API/Window/screen. We did not see this issue in 0.22.12 or earlier releases of Jimp.
Current Behavior
With Jimp 0.22.12, window.screen is:
Screen {
availHeight: 1366
availLeft: 0
availTop: 0
availWidth: 1024
colorDepth: 24
height: 1366
isExtended: true
onchange: null
orientation: ScreenOrientation {angle: 0, type: 'portrait-primary', onchange: null}
pixelDepth: 24
width: 1024
}
With Jimp 1.6.0 via browser/index.js:
function screen(e, t, i=1) {
e.a *= i;
const r = t.a + e.a - t.a * e.a
, n = e.r * e.a
, a = e.g * e.a
, o = e.b * e.a
, s = t.r * t.a
, l = t.g * t.a
, u = t.b * t.a;
return {
r: (n * t.a + s * e.a - n * s + n * (1 - t.a) + s * (1 - e.a)) / r,
g: (a * t.a + l * e.a - a * l + a * (1 - t.a) + l * (1 - e.a)) / r,
b: (o * t.a + u * e.a - o * u + o * (1 - t.a) + u * (1 - e.a)) / r,
a: r
}
}
Failure Information (for bugs)
The failure is the blocking of the screen information when using Jimp 1.6.0.
Steps to Reproduce
- Lenguaje dominante
- TypeScript
- Estrellas
- 14.7k
- Forks
- 777
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de jimp-dev/jimp
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
Add blit changes to migration guide.Posiblemente ocupada @ryanchou1994 la tomó hace 42 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
documentation help wanted solution in issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 62/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 48/100
Todos los issues de jimp-dev/jimp
Issues similares
-
area:plugins area:security area:skills bug has repro
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
anthropics/claude-code#105911 ·
Los mantenedores suelen responder en 1 día
-
openspec-apply-change skill: when blocked, may select a ready artifact unrelated to missingArtifactsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Fission-AI/OpenSpec#2165 ·
Los mantenedores suelen responder en 1 día
-
🐞 bug 🧐 unconfirmed
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Tencent/tdesign-vue-next#7032 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
gnosis/gnosis_vpn#661 ·
Los mantenedores suelen responder en 1 día
-
content-freshness: staleOwnedContent doc comments still say 'complete receipt' (follow-up to #7912)Abiertotriage:bug-verified
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
Los mantenedores suelen responder en 1 día