View Single Post
For filtering, you can implement the OFSDataStore delegate method -documentStore:fileItemClassForURL: to return Nil and the somewhat redundant -documentStore:canViewFileTypeWithIdentifier:. These are already subclassed in OUIAppController, but you can further subclass them in your app.

The nil target convention means to start looking for a responder at the current first responder in the window. The exact search ordering differs between UIKit and AppKit. In this case, when the OUIEditableFrame is first responder, the search starts there and goes up the view and view controller chain until it gets to the TextViewController instance (UIViewControllers are part of the responder chain in iOS, unlike NSViewController in AppKit).

The MidSummer.rtf example was added as a far out performance goal for OUIEditableFrame. We've made some improvements in the latest round of framework changes that let it be a bit more usable, but it still shows off the need for better handling of large text blobs. We haven't tackled this yet, but a couple of possible approaches that we might take are to break up the text by paragraphs and build CTFrameRefs for smaller chunks and to allow rendering of slices of text (like CATileLayer). In fact, the class becomes almost usable (though it hits a bunch of assertions) if you make it subclass from OUITiledScalingView. This avoids allocating a HUGE CALayer for the text view, which eats up a ton of memory.
__________________
CTO, The Omni Group