Mavericks: Deaktivieren des reaktionsschnellen Bildlaufs

10

Responsive Scrolling verursacht mir viele Probleme. Es ist schön, wenn es funktioniert, aber es bleibt manchmal sehr zurück, besonders in Chrome.

Hat jemand eine Möglichkeit gefunden, das reaktionsschnelle Scrollen zu deaktivieren und das Scrollen wie in 10.8 zu verhalten? Entweder global oder per App.

Während des WWDC-Videos "Zeichnen und Scrollen unter OS X optimieren" verwendet der Apple Engineer eine AppleScript-Datei, um das reaktionsfähige Scrollen global zu deaktivieren. Dies ist also möglich, aber ich kann nicht herausfinden, wie.

bogdansrc
quelle
1
Das "reaktionsschnelle" Scrollen ist für mich auf einem 2009 MacBook absolut schrecklich. Ich hatte mit Mountain Lion eine großartige Bildlaufleistung, aber jetzt ist das Bildlauf so abgehackt, dass ich nicht in die Ansicht scrollen kann, was ich sehen möchte. Es ist wirklich frustrierend.
OregonTrail
Das beschreibt perfekt die Probleme, die ich habe ... Für das, was es wert ist, bin ich auf einem 2012 MacBook Pro.
Bogdansrc
@bogdansrc In Bezug auf Chrome haben Sie versucht, es zu löschen und dann neu zu installieren?
Simon
@ Simon ja, habe das versucht. Dies gilt auch für eine Neuinstallation von Mavericks.
Bogdansrc

Antworten:

4

Erstens poste ich dies als mögliche hilfreiche Information und nicht als Lösung. Welches kann jemand in die richtige Richtung bringen.


Ich fand dies in Was ist neu in OSX , in dem erklärt wird, was und wie Responsive Scrolling funktioniert.

Unten befindet sich auch ein Hinweis, wie Sie es pro App zu Testzwecken deaktivieren können.

Diese Option wird jedoch in meinen eigenen oder anderen Apps nicht angezeigt.

Responsive Scrolling

Responsive Scrolling ist eine AppKit-Erweiterung, die das Scrollen reibungsloser macht. Dies beinhaltet zwei wesentliche Änderungen an der Art und Weise, wie Ihre App Inhalte zeichnet:

Bildlaufansichten fordern ihre untergeordneten Ansichten auf, zusätzlichen Inhalt außerhalb ihres normalen Ansichtsbereichs zu zeichnen, damit der Inhalt sofort für Bildlaufzwecke verfügbar gemacht werden kann. Diese zusätzliche Fensterunterstützung wird im löschbaren Speicher gespeichert, um zusätzliches Paging zu minimieren. Der Scrolling-Thread versucht, die Ansicht mit 60 Bildern pro Sekunde neu zu zeichnen, zieht sich jedoch zurück, wenn die App nicht mithalten kann. Bildlaufereignisse werden in einem Hintergrundthread verarbeitet. Die meisten Apps erhalten automatisch dieses reaktionsschnelle Bildlaufverhalten. Einige Ansichten müssen jedoch explizit aktiviert werden, einschließlich Layer-gestützter Ansichten, benutzerdefinierter Bildlaufansicht oder Clip-Ansicht-Unterklassen, die drawRect: überschreiben, NSSurface-basierte Dokumentansichten, transparente Dokumentansichten und Dokumentansichten, die die lockFocus-Methode überschreiben.

In Ansichten, in denen das reaktionsschnelle Scrollen automatisch aktiviert wird, sollte die Verhaltensänderung für Sie als Entwickler vollständig transparent sein. Wenn Ihre App jedoch beim Scrollen ungewöhnliches Verhalten zeigt, melden Sie bitte Fehler.

Hinweis: Sie können das reaktionsschnelle Scrollen zu Testzwecken vorübergehend deaktivieren, indem Sie im Finder in Ihrer App Datei> Informationen abrufen wählen. Nachdem Sie die Einstellung geändert haben, müssen Sie Ihre App beenden und neu starten. Weitere Informationen finden Sie in den AppKit-Versionshinweisen für OS X 10.9.

Ich habe mir die Versionshinweise zum Appkit angesehen - Responsives Scrolling, das detaillierter beschrieben wird.

Es gibt Bedingungen, die verhindern sollten, dass Responsive Scrolling einer App zugewiesen wird. Einer von ihnen ist:

Die Anwendung ist auf 10.7 oder früher verlinkt (die Anwendung muss auf Mountain Lion oder höher verlinkt sein, um diese Funktion zu unterstützen).

Was ich damit meine, wenn die App so gebaut ist, dass sie auch auf 10.6 läuft, wird diese Funktion nicht hinzugefügt.

Chrome AFAIK läuft ab 10.6. Ich vermute jedoch, dass der Downloader eine Version für Ihr aktuelles System herunterlädt.

Möglicherweise würde eine Version, die nur für 10.6 erstellt wurde, diese in Chrome deaktivieren.


UPDATE * Aber wie bogdansrc in den Kommentaren betont. Es gibt keinen einzigen Build für 10.6


Ich habe versucht:

defaults write ~/Library/Preferences/com.google.Chrome isCompatibleWithResponsiveScrolling -bool NO

Aber das isCompatibleWithResponsiveScrolling ist für eine nsview-Unterklasse und ich erwarte nicht wirklich, dass es funktioniert. Ich bekomme dieses Problem auch nicht, daher kann ich es nicht sagen.

markhunte
quelle
Dies sieht aus wie ein interessanter Hack
New Alexandria
Die Annahme "funktioniert unter 10.6 => hat kein responsives Scrollen" ist falsch. Hier geht es darum, gegen welches SDK die App verlinkt. Sie können einen App-Link für das 10.9 SDK verwenden und problemlos mit 10.6 arbeiten. Soweit ich weiß, besteht der allgemeine Ansatz darin, auf das neueste SDK zu verlinken, also tut Chrome dies höchstwahrscheinlich. Wenn dies nicht der Fall wäre, hätte es kein reaktionsschnelles Scrollen. Es gibt keine mehreren Versionen von Chrome, je nachdem, welche OS X-Version Sie ausführen. Das ist dumm.
Bogdansrc
Was ich im Grunde versuche, aus Äpfelnoten falsch oder richtig zu sagen und zu interpretieren, ist, wenn die Basis-SDK 10.6 ist und nicht mit einer darüber liegenden verknüpft ist, dann wird die App, soweit ich es verstehe, keine RS haben. Du fängst so gut an, aber dann verdirbst du es, indem du mit "Das ist albern" beleidigst. Ein einfaches "Es gibt kein 10.6 nur Chrome" hätte ausgereicht. Apps können Builds für ältere Betriebssysteme haben, die nicht auf dem neuesten Betriebssystem installiert oder ausgeführt werden.
Daran habe
4

UPDATE (7.XI.2013 nach Anruf bei Apple Care):

Ich brauchte auch:

1) Zurücksetzen des PRAM (nach dem Ausschalten, Einschalten, während CMD + ALT + P + R bis zum zweiten Gong gedrückt gehalten wird), Vorgehensweise auf Ihrem Mac: https://support.apple.com/kb/ht1379

2) Zurücksetzen von SMC (nach dem Ausschalten, Einschalten bei gedrückter UMSCHALTTASTE + STRG + ALT (Option) + EIN / AUS) auf Ihrem Mac: https://support.apple.com/kb/HT3964

Die folgende Einstellung sollte sein: mit Trägheit


Es ist wahrscheinlich NICHT die dauerhafte Lösung, aber ein schneller und komfortabler Hack im Vergleich zum Neustart des Systems.

Es hat bei mir funktioniert. Entschuldigung, dass die Screenshots auf Polnisch sind. Auf jeden Fall sollten Sie es dank Bildern / Symbolen verwalten.

Öffnen Sie zuerst die Eingabehilfen in den Systemeinstellungen

Geben Sie hier die Bildbeschreibung ein

Klicken Sie dann in den Touchpad- / Mauseinstellungen auf die Touchpad-Schaltfläche

Geben Sie hier die Bildbeschreibung ein

Dann mit / ohne Trägheit spielen.

Geben Sie hier die Bildbeschreibung ein

Andilabs
quelle
Ich denke, das
reaktionsschnelle
1
@ DanHickstein es ist eine Art Workaround.
Andilabs
Hmmmm, ich denke, dass das reaktionsschnelle Scrollen eine neue Sache ist, damit das Scrollen mit 60 fps funktioniert, wie hier beschrieben: developer.apple.com/library/mac/releasenotes/MacOSX/… Ich bin mir nicht sicher, ob es irgendetwas damit zu tun hat das Trägheits-Scrollen.
DanHickstein
Vielleicht nicht. Aber ich und einige Benutzer haben festgestellt, dass das Spielen mit Interial es ermöglicht, Probleme mit dem Frezzing in Chrome zu beseitigen.
Andilabs
2
Das Deaktivieren des Trägheits-Bildlaufs ist für mich keine Option (ich hasse nicht-Trägheits-Bildlauf). Das reaktionsschnelle Scrollen hat auch nichts mit dem Trägheits-Scrollen zu tun. Sie erhalten immer noch reaktionsschnelles Scrollen mit oder ohne Trägheit.
Bogdansrc
1

Ich habe John Siracusa auf Twitter gefragt:

https://twitter.com/siracusa/status/394988398009925632

@siracusa Hast du eine Möglichkeit gefunden, "responsives Scrollen" in Außenseitern zu deaktivieren? Es fühlt sich seltsam an

Seine Antwort war sehr prägnant:

https://twitter.com/siracusa/status/394988398009925632

@ Davidmarsh Nr.

Ich denke, das bedeutet nicht, dass Sie es nicht deaktivieren können, nur dass John keine Möglichkeit kennt, es auszuschalten.

David
quelle
2
Wenn John Siracusa nicht weiß wie, ist es sehr wahrscheinlich, dass es nicht möglich ist. arstechnica.com/apple/2013/10/os-x-10-9
1
Ein Apple-Ingenieur hat dies während der WWDC-Sitzung "Zeichnen und Scrollen unter OS X optimieren" mit einem AppleScript durchgeführt. Das Video ist unter developer.apple.com/wwdc/videos verfügbar . Dies bedeutet nicht, dass es in der neuesten Version von Mavericks noch möglich ist.
Bogdansrc