18 votos

¿Por qué sólo Safari tiene (casi) perfecto desplazamiento inercial en OS X?

Estoy bastante sorprendido de que Safari es el navegador sólo en OS X que se las arregla para conseguir (casi) perfecto desplazamiento inercial.

  • Incluso con un montón de contenido de flash en un sitio web, Safari en el que el desplazamiento es suave.
  • Hay sitios web con gran cantidad de contenido para cargar y Safari continuará para desplazarse sin problemas, mientras que el contenido se carga y se representa.
  • La instalación de varias extensiones no tienen un efecto sobre el rendimiento del desplazamiento.

Los principales competidores para el navegador Safari en OS X son Chrome y Firefox. Ambos no logran entregar el mismo desplazamiento suave como uno está acostumbrado en Safari:

  • La habilitación de banderas como la composición por GPU en todas las páginas en Google Chrome (chrome://flags) o ...
  • desplazamiento suave en Firefox (Options > Advanced) no entregar el rendimiento del desplazamiento que Safari por defecto.

Pregunta

Es Safari utilizando la API privada para entregar desplazamiento suave que el de Chrome/desarrolladores de Firefox es no puede acceder? ¿Cómo Safari de desplazamiento es mucho mejor y los competidores no logran entregar no roto de desplazamiento.

Me pregunto especialmente acerca de Chrome ya que por lo general se adapta a los nuevos OS X características muy rápido.

6voto

Steve Evans Puntos 155

La diferencia es probable que ver con la arquitectura y la comunicación entre las opciones de cada navegador.

Los navegadores web modernos de procesamiento páginas en procesos separados. Apple tiene un marco llamado IOSurface que proporciona una manera más eficiente para un proceso para pasar de una imagen a otro proceso. Este marco fue introducido en Mac OS X 10.6, también conocido como Snow Leopard, la última versión de QuickTime.

QuickTime utiliza IOSurface a la descarga de la película de decodificación para separar los procesos. Sin decodificación de hacerlo, la aplicación QuickTime Player es la izquierda trata únicamente con la interfaz de usuario y mostrando imágenes proporcionadas por la decodificación de los procesos.

Sospecho que Safari ha aprendido de QuickTime y está utilizando las mismas técnicas. Las páginas Web se descargan a otros procesos, prestados, y volver a pasar.

Podría Chrome y Firefox hacer la misma cosa, absolutamente. El reto es asegurar el hilo trato con el usuario responde de forma rápida y que no se retrase la espera para el procesamiento de la actualización.

Chrome hace uso de procesos independientes y parece que usa IOSurface en el Mac; este error se habla de la mejora de Chrome uso de IOSurface.

IOSurface es un marco público disponible para cualquier Mac OS X 10.6+ aplicación. Sin embargo, hay poca documentación y es específico para Mac.

Todo esto es conjetura.

1voto

Locutus Puntos 125

La respuesta simple es que los desarrolladores no les importa.

No es de Apple y no de Microsoft de software de sistema es de calidad inferior, así de simple. Son unoptimised con cero preocupación por la suavidad o la experiencia de usuario. Safari es suave en OS X y el IE es la mantequilla suave en Windows. En comparación con ellos, todos los demás navegadores son lag. Chrome es el peor - tiene una interfaz de usuario nativa y atroces de desplazamiento retraso, como todos los otros programas de software de Google. Se utiliza la propiedad de interfaz de usuario marcos que son feos y que no responden en comparación con la plataforma de interfaz de usuario nativa. Incluso sus otras aplicaciones de iOS no son nativos han de responder de la espalda y los botones de menú comared a los nativos de iOS controles.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by: