Mac Developer Library

Developer

WebKit Framework Reference WebView Class Reference

Options
Deployment Target:

On This Page
Language:

WebView

Inheritance


Import Statement


Swift

import WebKit

Objective-C

@import WebKit;

Availability


Available in OS X v10.2 with Safari 1.0 and later.
Available in OS X v10.2.7 and later.

WebView is the core view class in the WebKit framework that manages interactions between the WebFrame and WebFrameView classes. To embed web content in your application, you just create a WebView object, attach it to a window, and send a loadRequest: message to its main frame.

Behind the scenes, WebFrame objects encapsulate the content contained in a single frame element. A hierarchy of WebFrame objects is used to model an entire webpage where the root is called the main frame. There is a WebFrameView object per WebFrame object used to display the frame content. Therefore, there is a parallel hierarchy of WebFrameView objects used to render an entire page. The WebView object is also the parent view of this hierarchy. You do not need to create WebFrame and WebFrameView objects directly. These objects are automatically created when the page loads, either programmatically or by the user clicking a link.

You customize your embedded web content by implementing WebView delegates to handle certain aspects of the process. WebView objects have multiple delegates because the process of loading a webpage is asynchronous and complicated if errors occur. All the WebView delegates use informal protocols so you only need to implement only the delegates and methods that define the behavior you wish to change—default implementations are already provided.

For example, you might want to implement the frame load and resource load delegates to monitor the load progress and display status messages. Applications that use multiple windows may want to implement a user interface delegate. See the individual informal delegate protocols for more details: WebFrameLoadDelegate Protocol Reference, WebPolicyDelegate Protocol Reference, WebResourceLoadDelegate Protocol Reference, and WebUIDelegate Protocol Reference.

Another way to monitor load progress with less control is to observe the WebViewProgressEstimateChangedNotification, WebViewProgressFinishedNotification, and WebViewProgressStartedNotification notifications. For example, you could observe these notifications to implement a simple progress indicator in your application. You update the progress indicator by invoking the estimatedProgress method to get an estimate of the amount of content that is currently loaded.

A WebView object is intended to support most features you would expect in a web browser except that it doesn’t implement the specific user interface for those features. You are responsible for implementing the user interface objects such as status bars, toolbars, buttons, and text fields. For example, a WebView object manages a back-forward list by default, and has goBack: and goForward: action methods. It is your responsibility to create the buttons that would send theses action messages. Note, there is some overhead in maintaining a back-forward list and page cache, so you should disable it if your application doesn’t use it.

You use a WebPreferences object to encapsulate the preferences of a WebView object, such as the font, text encoding, and image settings. You can modify the preferences for individual WebView objects or specify a shared WebPreferences object using the setPreferencesIdentifier: method. Use the setAutosaves: WebPreferences method to specify whether the preferences should be automatically saved to the user defaults database.

You can also extend WebKit by implementing your own document view and representation classes for specific MIME types. Use the registerViewClass:representationClass:forMIMEType: class method to register your custom classes with a WebView object.

  • Adds the specified URL scheme to the list of local schemes.

    Declaration

    Swift

    class func registerURLSchemeAsLocal(_ scheme: String!)

    Objective-C

    + (void)registerURLSchemeAsLocal:(NSString *)scheme

    Parameters

    scheme

    The scheme to add to the list.

    Discussion

    You need to register a scheme as local to access resources with file URLs and to have the same security checks as a local file.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Specifies the view and representation objects to be used for specific MIME types.

    Declaration

    Swift

    class func registerViewClass(_ viewClass: AnyClass!, representationClass representationClass: AnyClass!, forMIMEType MIMEType: String!)

    Objective-C

    + (void)registerViewClass:(Class)viewClass representationClass:(Class)representationClass forMIMEType:(NSString *)MIMEType

    Parameters

    viewClass

    A class conforming to the WebDocumentView protocol that displays the specified MIME types.

    representationClass

    The class conforming to WebDocumentRepresentation protocol that represents the specified MIME types.

    MIMEType

    The MIME type of the content.

    This may be a primary MIME type or subtype. For example, if MIMEType is “video/” the specified view and representation objects are used for all video types. More specific subtype mappings, such as “image/gif”, takes precedence over primary type matching, such as “image/”.

    Discussion

    After invoking this method, when MIMEType content is encountered, instances of representationClass and viewClass are created to handle and display it.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Initializes the receiver with a frame rectangle, frame name, and group name.

    Declaration

    Swift

    init!(frame frameRect: NSRect, frameName frameName: String!, groupName groupName: String!)

    Objective-C

    - (instancetype)initWithFrame:(NSRect)frameRect frameName:(NSString *)frameName groupName:(NSString *)groupName

    Parameters

    frameRect

    The frame rectangle for the created view object.

    frameName

    The web frame’s name. This should not be one of the predefined frame names (see the WebFramefindFrameNamed: method for a description of their meaning), but a custom name or a name used in HTML source. This parameter can be nil.

    groupName

    An arbitrary identifier used to group related frames. For example, JavaScript running in a frame can access any other frame in the same group. It's up to the application how it chooses to scope related frames. This parameter can be nil.

    Return Value

    An initialized view object or nil if the object couldn't be created.

    Discussion

    This method is the designated initializer for the WebView class.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Closes the web view when it’s no longer needed.

    Declaration

    Swift

    func close()

    Objective-C

    - (void)close

    Discussion

    Closes the web view by unloading its webpage and canceling any pending load requests. A closed web view no longer responds to new requests nor sends delegate messages. It is invoked automatically if the receiver’s enclosing window or host window is closed and sending shouldCloseWithWindow to the receiver returns YEStrue. Use this method to stop the receiver from loading and sending delegate messages.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Returns whether the web view should close when its window or host window closes.

    Declaration

    Swift

    var shouldCloseWithWindow: Bool

    Objective-C

    @property(nonatomic) BOOL shouldCloseWithWindow

    Return Value

    If YEStrue, the web view should close; otherwise, it should not.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Sets whether the web view should close when its window or host window closes.

    Declaration

    Swift

    var shouldCloseWithWindow: Bool

    Objective-C

    @property(nonatomic) BOOL shouldCloseWithWindow

    Parameters

    close

    If YEStrue, the web view should close; otherwise, it should not.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Returns the main frame, the root of the web frame hierarchy for this page.

    Declaration

    Swift

    var mainFrame: WebFrame! { get }

    Objective-C

    @property(nonatomic, readonly, strong) WebFrame *mainFrame

    Return Value

    The main frame.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • An action method that stops the loading of any web frame content managed by the receiver.

    Declaration

    Swift

    @IBAction func stopLoading(_ sender: AnyObject?)

    Objective-C

    - (IBAction)stopLoading:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    Stops any content in the process of being loaded by the main frame or any of its children frames. Does nothing if no content is being loaded.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver’s current location by obtaining a URL string from the sender.

    Declaration

    Swift

    @IBAction func takeStringURLFrom(_ sender: AnyObject?)

    Objective-C

    - (IBAction)takeStringURLFrom:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This method sets the receiver’s current location to the value obtained by sending a stringValue message to sender, then starts loading the URL returned by sender.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

    See Also

    loadRequest: (WebFrame)

  • An action method that reloads the current page.

    Declaration

    Swift

    @IBAction func reload(_ sender: AnyObject?)

    Objective-C

    - (IBAction)reload:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Action method that performs an end-to-end revalidation using cache-validating conditionals if possible.

    Declaration

    Swift

    @IBAction func reloadFromOrigin(_ sender: AnyObject?)

    Objective-C

    - (IBAction)reloadFromOrigin:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.6 and later.

    See Also

    reloadFromOrigin (WebView)
    – reload:

  • Returns an estimate, as a percentage, of the amount of content that is currently loaded.

    Declaration

    Swift

    var estimatedProgress: Double { get }

    Objective-C

    @property(nonatomic, readonly) double estimatedProgress

    Return Value

    A number ranging from 0 to 1.0 and, once a load completes, 1.0 until a new load starts, at which point it resets to 0.

    The value is an estimate based on the total number of bytes expected to be received for a document, including all its possible subresources. For more accurate load progress information, implement delegates conforming to the WebFrameLoadDelegate and WebResourceLoadDelegate informal protocols.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns whether the web view draws a background.

    Declaration

    Swift

    var drawsBackground: Bool

    Objective-C

    @property(nonatomic) BOOL drawsBackground

    Return Value

    YEStrue if a background is drawn; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Sets whether a default background is drawn when the webpage has no background set.

    Declaration

    Swift

    var drawsBackground: Bool

    Objective-C

    @property(nonatomic) BOOL drawsBackground

    Parameters

    drawsBackround

    If YEStrue, a default background is drawn; if NOfalse, it is not.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Sets whether the web view should update even when it is not in a window that is currently visible.

    Declaration

    Swift

    var shouldUpdateWhileOffscreen: Bool

    Objective-C

    @property(nonatomic) BOOL shouldUpdateWhileOffscreen

    Parameters

    updateWhileOffscreen

    If YEStrue, the web view updates regardless if it is visible. If NOfalse, it updates only if it is visible, possibly improving performance, and then updates automatically when it becomes visible. The default value is YEStrue.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.6 and later.

  • Returns whether the web view should update even when it is not visible.

    Declaration

    Swift

    var shouldUpdateWhileOffscreen: Bool

    Objective-C

    @property(nonatomic) BOOL shouldUpdateWhileOffscreen

    Return Value

    YEStrue if it should update even when it is not visible; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.6 and later.

  • Sets whether to use a back-forward list.

    Declaration

    Swift

    func setMaintainsBackForwardList(_ flag: Bool)

    Objective-C

    - (void)setMaintainsBackForwardList:(BOOL)flag

    Parameters

    flag

    If NOfalse, clears the back-forward list and relinquishes ownership the page cache; otherwise, it does not.

    Discussion

    The back-forward list maintains a page cache, so applications that do not use the goForward or goBack methods should disable it.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the receiver’s back-forward list.

    Declaration

    Swift

    var backForwardList: WebBackForwardList! { get }

    Objective-C

    @property(nonatomic, readonly, strong) WebBackForwardList *backForwardList

    Return Value

    The receiver’s back-forward list.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns whether the previous location can be loaded.

    Declaration

    Swift

    var canGoBack: Bool { get }

    Objective-C

    @property(nonatomic, readonly) BOOL canGoBack

    Return Value

    YEStrue if able to move backward; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Loads the previous location in the back-forward list.

    Declaration

    Swift

    func goBack() -> Bool

    Objective-C

    - (BOOL)goBack

    Return Value

    YEStrue if able to move backward; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • An action method that loads the previous location in the back-forward list.

    Declaration

    Swift

    @IBAction func goBack(_ sender: AnyObject?)

    Objective-C

    - (IBAction)goBack:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This method does nothing if it is unable to move backward.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

    See Also

    – goForward:

  • Returns whether the next location can be loaded.

    Declaration

    Swift

    var canGoForward: Bool { get }

    Objective-C

    @property(nonatomic, readonly) BOOL canGoForward

    Return Value

    YEStrue if able to move forward; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Loads the next location in the back-forward list.

    Declaration

    Swift

    func goForward() -> Bool

    Objective-C

    - (BOOL)goForward

    Return Value

    YEStrue if able to move forward; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • An action method that loads the next location in the back-forward list.

    Declaration

    Swift

    @IBAction func goForward(_ sender: AnyObject?)

    Objective-C

    - (IBAction)goForward:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This method does nothing if it is unable to move forward.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

    See Also

    – goBack:

  • Loads a specific location from the back-forward list and sets it as the current item.

    Declaration

    Swift

    func goToBackForwardItem(_ item: WebHistoryItem!) -> Bool

    Objective-C

    - (BOOL)goToBackForwardItem:(WebHistoryItem *)item

    Parameters

    item

    The index of the location to load. This method sets the current item in the back-forward list to item.

    Return Value

    YEStrue if item is in the back-forward list; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Return the receiver’s download delegate.

    Declaration

    Swift

    unowned(unsafe) var downloadDelegate: AnyObject!

    Objective-C

    @property(nonatomic, assign) id downloadDelegate

    Return Value

    The receiver’s download delegate that implements the WebDownload protocol.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver's shared download delegate.

    Declaration

    Swift

    unowned(unsafe) var downloadDelegate: AnyObject!

    Objective-C

    @property(nonatomic, assign) id downloadDelegate

    Parameters

    delegate

    The download delegate that implements the WebDownload protocol.

    Discussion

    WebKit may create WebDownload objects automatically to handle downloads that start with a webpage or link.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Return the receiver’s frame load delegate.

    Declaration

    Swift

    unowned(unsafe) var frameLoadDelegate: AnyObject!

    Objective-C

    @property(nonatomic, assign) id frameLoadDelegate

    Return Value

    A frame load delegate that conforms to the WebFrameLoadDelegate protocol.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver's frame load delegate.

    Declaration

    Swift

    unowned(unsafe) var frameLoadDelegate: AnyObject!

    Objective-C

    @property(nonatomic, assign) id frameLoadDelegate

    Parameters

    delegate

    A frame load delegate that conforms to the WebFrameLoadDelegate protocol.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the receiver's policy delegate.

    Declaration

    Swift

    unowned(unsafe) var policyDelegate: AnyObject!

    Objective-C

    @property(nonatomic, assign) id policyDelegate

    Return Value

    A policy delegate that conforms to the WebPolicyDelegate protocol.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver's policy delegate.

    Declaration

    Swift

    unowned(unsafe) var policyDelegate: AnyObject!

    Objective-C

    @property(nonatomic, assign) id policyDelegate

    Parameters

    delegate

    A policy delegate that conforms to the WebPolicyDelegate protocol.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the receiver’s resource load delegate.

    Declaration

    Swift

    unowned(unsafe) var resourceLoadDelegate: AnyObject!

    Objective-C

    @property(nonatomic, assign) id resourceLoadDelegate

    Return Value

    A resource load delegate that conforms to the WebResourceLoadDelegate protocol.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver's resource load delegate.

    Declaration

    Swift

    unowned(unsafe) var resourceLoadDelegate: AnyObject!

    Objective-C

    @property(nonatomic, assign) id resourceLoadDelegate

    Parameters

    delegate

    A resource load delegate that conforms to the WebResourceLoadDelegate protocol.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the receiver's user interface delegate.

    Declaration

    Swift

    unowned(unsafe) var UIDelegate: AnyObject!

    Objective-C

    @property(nonatomic, assign) id UIDelegate

    Return Value

    A user interface delegate that conforms to the WebUIDelegate protocol.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver's user interface delegate.

    Declaration

    Objective-C

    - (void)setUIDelegate:(id)delegate

    Parameters

    delegate

    A user interface delegate that conforms to the WebUIDelegate protocol.

    Import Statement

    Objective-C

    @import WebKit;

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

    See Also

    – UIDelegate

  • Returns the receiver’s host window.

    Declaration

    Swift

    var hostWindow: NSWindow!

    Objective-C

    @property(nonatomic, strong) NSWindow *hostWindow

    Return Value

    The receiver’s host window.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver's host window.

    Declaration

    Swift

    var hostWindow: NSWindow!

    Objective-C

    @property(nonatomic, strong) NSWindow *hostWindow

    Parameters

    hostWindow

    A host window.

    Discussion

    This method sets the receiver’s host window to hostWindow. Your application should only use this method if a web view is going to be removed from its window temporarily, and you want the web view to continue operating (for example, you don’t want to interrupt a load in progress). Since the receiver maintains a copy of hostWindow, it is your responsibility to set the host window to nil before closing the window to avoid consuming excess memory.

    For example, you might invoke this method if you attach a web view to an NSTabView object (as in a tabbed browser implementation). The NSTabView object takes views out of the window when they are not in the active tab, so you need to invoke this method before the web view is removed from its window. If you don't invoke this method, plug-ins will stop operating when the web view is removed from its window.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

    See Also

    – hostWindow

  • Returns the receiver’s preferences.

    Declaration

    Swift

    var preferences: WebPreferences!

    Objective-C

    @property(nonatomic, strong) WebPreferences *preferences

    Return Value

    The receiver’s preferences or the standard preferences, if the preferences were not set using the setPreferences: method.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver’s preferences.

    Declaration

    Swift

    var preferences: WebPreferences!

    Objective-C

    @property(nonatomic, strong) WebPreferences *preferences

    Parameters

    preferences

    The web view’s preferences.

    Discussion

    Typically, you do not invoke this method directly. Use the setPreferencesIdentifier: method to change the receiver’s preferences.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

    See Also

    – preferences

  • Returns the identifier of the receiver’s preferences.

    Declaration

    Swift

    var preferencesIdentifier: String!

    Objective-C

    @property(nonatomic, copy) NSString *preferencesIdentifier

    Return Value

    The preferences identifier.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver's preferences identifier, creating a preferences object if needed.

    Declaration

    Swift

    var preferencesIdentifier: String!

    Objective-C

    @property(nonatomic, copy) NSString *preferencesIdentifier

    Parameters

    anIdentifier

    The unique identifier for the preferences—it is fixed to the keys used to store the receiver’s preferences in the user defaults database. WebView objects can share instances of the WebPreferences class by using the same preferences identifier.

    Discussion

    This method sets the receiver’s preferences to the specified preferences object if it exists. Otherwise, this method creates a new WebPreferences object for the receiver initialized with anIdentifier. Use this method to change the preferences used by the receiver’s WebFrameView objects. If you do not directly set the preferences, WebFrameView objects use the preferences returned by the standardPreferences class method of WebPreferences.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns whether the web view is loading content.

    Declaration

    Objective-C

    - (BOOL)isLoading

    Return Value

    YEStrue if the web view is currently loading any resources; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Availability

    Available in OS X v10.4.11 and later.

  • Returns the frame with the active selection.

    Declaration

    Swift

    var selectedFrame: WebFrame! { get }

    Objective-C

    @property(nonatomic, readonly, strong) WebFrame *selectedFrame

    Return Value

    The frame that contains the first responder. If it doesn’t exist, the frame that contains a non-zero-length selection; otherwise, nil.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Sets the URL that the main frame loads.

    Declaration

    Swift

    var mainFrameURL: String!

    Objective-C

    @property(nonatomic, copy) NSString *mainFrameURL

    Parameters

    URLString

    The main frame URL string.

    Discussion

    This method is functionally equivalent to invoking [[webView mainFrame] loadRequest:[NSURLRequest requestWithURL: [NSURL URLWithString:URLString]]].

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Returns the URL that the main frame loads.

    Declaration

    Swift

    var mainFrameURL: String!

    Objective-C

    @property(nonatomic, copy) NSString *mainFrameURL

    Return Value

    The main frame URL string.

    Discussion

    This method is functionally equivalent to invoking [[[[[webView mainFrame] provisionalDataSource] request] URL] absoluteString].

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Returns the HTML title of the loaded page.

    Declaration

    Swift

    var mainFrameTitle: String! { get }

    Objective-C

    @property(nonatomic, readonly, copy) NSString *mainFrameTitle

    Return Value

    The HTML title of the loaded page. Returns @"" if the loaded document is not HTML.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Returns the site’s favicon.

    Declaration

    Swift

    var mainFrameIcon: NSImage! { get }

    Objective-C

    @property(nonatomic, readonly, strong) NSImage *mainFrameIcon

    Return Value

    The site’s icon. Returns nil if no favicon is provided.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Returns the DOM document for the main frame.

    Declaration

    Swift

    var mainFrameDocument: DOMDocument! { get }

    Objective-C

    @property(nonatomic, readonly, strong) DOMDocument *mainFrameDocument

    Return Value

    The DOM document for the main frame.

    Discussion

    Invoking this method is equivalent to [[webView mainFrame] DOMDocument].

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Returns whether the receiver can display content of a given MIME type.

    Declaration

    Swift

    class func canShowMIMEType(_ MIMEType: String!) -> Bool

    Objective-C

    + (BOOL)canShowMIMEType:(NSString *)MIMEType

    Parameters

    MIMEType

    The MIME type of the content.

    Return Value

    YEStrue if the receiver can display content of the specified MIME type where MIMEType is one of the standard types like “image/gif”; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns a list of MIME types that WebKit renders as HTML.

    Declaration

    Swift

    class func MIMETypesShownAsHTML() -> [AnyObject]!

    Objective-C

    + (NSArray *)MIMETypesShownAsHTML

    Return Value

    An array containing NSString objects that represent the MIME types WebKit attempts to render as HTML.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Sets the MIME types that WebKit attempts to render as HTML.

    Declaration

    Swift

    class func setMIMETypesShownAsHTML(_ MIMETypes: [AnyObject]!)

    Objective-C

    + (void)setMIMETypesShownAsHTML:(NSArray *)MIMETypes

    Parameters

    MIMETypes

    An array of NSString objects representing the MIME types. Typically, you create the MIMETypes array by adding additional types to the array returned by the MIMETypesShownAsHTML class method.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Returns whether the receiver interprets a MIME type as HTML.

    Declaration

    Swift

    class func canShowMIMETypeAsHTML(_ MIMEType: String!) -> Bool

    Objective-C

    + (BOOL)canShowMIMETypeAsHTML:(NSString *)MIMEType

    Parameters

    MIMEType

    The MIME type of the content.

    Return Value

    YEStrue if the receiver interprets MIMEType as HTML; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns whether the document view supports different text encodings.

    Declaration

    Swift

    var supportsTextEncoding: Bool { get }

    Objective-C

    @property(nonatomic, readonly) BOOL supportsTextEncoding

    Return Value

    YEStrue if the receiver’s document view can support different text encodings; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the custom text encoding name.

    Declaration

    Swift

    var customTextEncodingName: String!

    Objective-C

    @property(nonatomic, copy) NSString *customTextEncodingName

    Return Value

    The receiver’s custom text encoding name or nil if no custom text encoding name was set.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the custom text encoding name.

    Declaration

    Swift

    var customTextEncodingName: String!

    Objective-C

    @property(nonatomic, copy) NSString *customTextEncodingName

    Parameters

    encodingName

    A text encoding name. If nil, the default encoding is restored.

    Discussion

    This method overrides the default text encoding, including any encoding that is specified in the webpage header or HTTP response. Invoking this method stops any load in progress. The default encoding is restored when the main frame changes to a new location, or if encodingName is nil.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the font size multiplier for text displayed in web frame view objects managed by the receiver.

    Declaration

    Swift

    var textSizeMultiplier: Float

    Objective-C

    @property(nonatomic) float textSizeMultiplier

    Return Value

    The font size multiplier, a fractional percentage value where 1.0 denotes 100%.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Change the font size multiplier for text displayed in web frame view objects managed by the receiver.

    Declaration

    Swift

    var textSizeMultiplier: Float

    Objective-C

    @property(nonatomic) float textSizeMultiplier

    Parameters

    multiplier

    A fractional percentage value where 1.0 denotes 100%.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Searches a document view for a string and highlights it if it is found.

    Declaration

    Swift

    func searchFor(_ string: String!, direction forward: Bool, caseSensitive caseFlag: Bool, wrap wrapFlag: Bool) -> Bool

    Objective-C

    - (BOOL)searchFor:(NSString *)string direction:(BOOL)forward caseSensitive:(BOOL)caseFlag wrap:(BOOL)wrapFlag

    Parameters

    string

    The search string.

    forward

    If YEStrue the direction of the search is forward; if NOfalse, the direction is backward.

    caseFlag

    If YEStrue if the search is case sensitive; otherwise, it is not.

    wrapFlag

    If YEStrue if the search wraps; otherwise, it does not.

    Return Value

    YEStrue if the search is successful; otherwise, NOfalse.

    Discussion

    The search for string begins from the current selection and continues in the direction specified by forward. The search continues across all frames.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the receiver’s group name.

    Declaration

    Swift

    var groupName: String!

    Objective-C

    @property(nonatomic, copy) NSString *groupName

    Return Value

    The receiver’s group name.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver's group name.

    Declaration

    Swift

    var groupName: String!

    Objective-C

    @property(nonatomic, copy) NSString *groupName

    Parameters

    groupName

    An arbitrary identifier used to group related frames.

    Discussion

    You might use this method to set the group name of a WebView object after it is loaded from a nib file.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the appropriate user-agent string for a given URL.

    Declaration

    Swift

    func userAgentForURL(_ URL: NSURL!) -> String!

    Objective-C

    - (NSString *)userAgentForURL:(NSURL *)URL

    Parameters

    URL

    The URL that you need the user-agent string for.

    Return Value

    The user-agent string for a given URL. The user-agent string is used by websites to identify the client browser.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the receiver’s application name that is used in the user-agent string.

    Declaration

    Swift

    var applicationNameForUserAgent: String!

    Objective-C

    @property(nonatomic, copy) NSString *applicationNameForUserAgent

    Return Value

    The application name to use in the user-agent string. The user-agent is used by websites to identify the client browser.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the application name used in the user-agent string.

    Declaration

    Swift

    var applicationNameForUserAgent: String!

    Objective-C

    @property(nonatomic, copy) NSString *applicationNameForUserAgent

    Parameters

    applicationName

    The application name to use in the user-agent string. The user-agent is used by websites to identify the client browser.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the receiver’s custom user-agent string.

    Declaration

    Swift

    var customUserAgent: String!

    Objective-C

    @property(nonatomic, copy) NSString *customUserAgent

    Return Value

    The user-agent string to identify the client browser. The custom user-agent string is used for all URLs.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Sets the receiver’s custom user-agent string.

    Declaration

    Swift

    var customUserAgent: String!

    Objective-C

    @property(nonatomic, copy) NSString *customUserAgent

    Parameters

    userAgentString

    The custom user-agent string. The user-agent string is used by websites to identify the client browser. The custom user-agent string is used for all URLs. If nil, then the receiver constructs a user-agent string that produces the best rendering results for each URL.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Returns the result of running a script.

    Declaration

    Swift

    func stringByEvaluatingJavaScriptFromString(_ script: String!) -> String!

    Objective-C

    - (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script

    Parameters

    script

    The script to run.

    Return Value

    The result of running a JavaScript specified by script, or an empty string if the script failed.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Action method that copies the selected content to the general pasteboard.

    Declaration

    Swift

    func copy(_ sender: AnyObject?)

    Objective-C

    - (void)copy:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This action method copies the selected content onto the general pasteboard, in as many formats as the receiver supports. For example, a plain text object uses NSStringPboardType for plain text, and a rich text object also uses NSRTFPboardType.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that copies font information onto the font pasteboard.

    Declaration

    Swift

    func copyFont(_ sender: AnyObject?)

    Objective-C

    - (void)copyFont:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This action method copies the font information for the first character of the selection (or for the insertion point) onto the font pasteboard as NSFontPboardType.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

    See Also

    – pasteFont:

  • An action method that deletes selected content and puts it on the general pasteboard.

    Declaration

    Swift

    func cut(_ sender: AnyObject?)

    Objective-C

    - (void)cut:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This action method deletes the selected content and places it onto the general pasteboard, in as many formats as the receiver supports. For example, a plain text object uses NSStringPboardType for plain text, and a rich text object also uses NSRTFPboardType.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that deletes the selected content.

    Declaration

    Swift

    func delete(_ sender: AnyObject?)

    Objective-C

    - (void)delete:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    The pasteboard is unaffected by invoking this method.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

    See Also

    – cut:

  • An action method that pastes content from the pasteboard at the insertion point or over the selection.

    Declaration

    Swift

    func paste(_ sender: AnyObject?)

    Objective-C

    - (void)paste:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that pastes font information from the font pasteboard.

    Declaration

    Swift

    func pasteFont(_ sender: AnyObject?)

    Objective-C

    - (void)pasteFont:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This action method pastes font information from the font pasteboard onto the selected content or insertion point of a rich text object, or over all text of the receiver.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

    See Also

    – copyFont:

  • An action method that pastes pasteboard content as plain text.

    Declaration

    Swift

    func pasteAsPlainText(_ sender: AnyObject?)

    Objective-C

    - (void)pasteAsPlainText:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that pastes pasteboard content into the receiver as rich text, maintaining its attributes.

    Declaration

    Swift

    func pasteAsRichText(_ sender: AnyObject?)

    Objective-C

    - (void)pasteAsRichText:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    The text is inserted at the insertion point if there is one; otherwise, it replaces the selection.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that applies center alignment to selected content or all content if there’s no selection.

    Declaration

    Swift

    func alignCenter(_ sender: AnyObject?)

    Objective-C

    - (void)alignCenter:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that applies full justification to selected content or all content if there’s no selection.

    Declaration

    Swift

    func alignJustified(_ sender: AnyObject?)

    Objective-C

    - (void)alignJustified:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This method behaves similar to the alignJustified: method in NSTextView.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that applies left justification to selected content or all content if there’s no selection.

    Declaration

    Swift

    func alignLeft(_ sender: AnyObject?)

    Objective-C

    - (void)alignLeft:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that applies right justification to selected content or all content if there is no selection.

    Declaration

    Swift

    func alignRight(_ sender: AnyObject?)

    Objective-C

    - (void)alignRight:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that changes the font of the selection, or all content if there is no selection.

    Declaration

    Swift

    func changeFont(_ sender: AnyObject?)

    Objective-C

    - (void)changeFont:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    If the receiver doesn’t use the Fonts panel, this method does nothing.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that changes the attributes of the current selection.

    Declaration

    Swift

    func changeAttributes(_ sender: AnyObject?)

    Objective-C

    - (void)changeAttributes:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This method behaves similar to the changeAttributes: method in NSTextView.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

    See Also

    – changeFont:

  • Sets the background color of the selected content.

    Declaration

    Swift

    func changeDocumentBackgroundColor(_ sender: AnyObject?)

    Objective-C

    - (void)changeDocumentBackgroundColor:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This method is invoked by the NSColorPanel sender and behaves similar to the changeDocumentBackgroundColor: method in NSTextView.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Sets the color of the selected content.

    Declaration

    Swift

    func changeColor(_ sender: AnyObject?)

    Objective-C

    - (void)changeColor:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This method is invoked by the NSColorPanel sender and behaves similar to the changeColor: method in NSTextView.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that searches for a misspelled word in the receiver.

    Declaration

    Swift

    func checkSpelling(_ sender: AnyObject?)

    Objective-C

    - (void)checkSpelling:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This action method starts a search at the end of the selection and continues until it reaches a word suspected of being misspelled or the end of the content. If a word isn’t recognized by the spelling server, a showGuessPanel: message is sent to the receiver which opens the Guess panel and allows the user to make a correction or add the word to the local dictionary.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that shows a spelling correction panel.

    Declaration

    Swift

    func showGuessPanel(_ sender: AnyObject?)

    Objective-C

    - (void)showGuessPanel:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This action method opens the Spelling panel, allowing the user to make a correction during spell checking.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that opens the Find menu and Find panel.

    Declaration

    Swift

    func performFindPanelAction(_ sender: AnyObject?)

    Objective-C

    - (void)performFindPanelAction:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This method behaves similar to the performFindPanelAction: method in NSTextView.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that starts speaking the selected text or all text if there’s no selection.

    Declaration

    Swift

    func startSpeaking(_ sender: AnyObject?)

    Objective-C

    - (void)startSpeaking:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    Speech continues asynchronously until the end of the text or until terminated by invoking the stopSpeaking: method. This method behaves similar to the startSpeaking: method in NSTextView.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • An action method that stops speaking that is in progress.

    Declaration

    Swift

    func stopSpeaking(_ sender: AnyObject?)

    Objective-C

    - (void)stopSpeaking:(id)sender

    Parameters

    sender

    The object that sent this message.

    Discussion

    This action method stops speech that was previously started with startSpeaking:. This method behaves similar to the stopSpeaking: method in NSTextView.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Returns whether the user is allowed to edit the document.

    Declaration

    Objective-C

    - (BOOL)isEditable

    Return Value

    YEStrue if the receiver allows the user to edit the HTML document, NOfalse if it doesn’t.

    Discussion

    You can change the receiver’s document programmatically regardless of this setting.

    Import Statement

    Objective-C

    @import WebKit;

    Availability

    Available in OS X v10.3.9 and later.

  • Sets whether the receiver allows the user to edit its HTML document.

    Declaration

    Swift

    var editable: Bool

    Objective-C

    @property(nonatomic, getter=isEditable) BOOL editable

    Parameters

    flag

    YEStrue if the receiver allows the user to edit the document. NOfalse if an element in the receiver’s document can be edited only if the CONTENTEDITABLE attribute has been set on the element or one of its parent elements.

    Discussion

    You can change the receiver’s document programmatically regardless of this setting. By default a WebView object is not editable.

    Normally, an HTML document is not editable unless the elements within the document are editable. This method provides a low-level way to make the contents of a WebView object editable without altering the document or DOM structure.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

    See Also

    – isEditable

  • Returns whether smart-space insertion and deletion is enabled.

    Declaration

    Swift

    var smartInsertDeleteEnabled: Bool

    Objective-C

    @property(nonatomic) BOOL smartInsertDeleteEnabled

    Return Value

    YEStrue if the receiver inserts or deletes space around selected words so as to preserve proper spacing and punctuation. NOfalse if it inserts and deletes exactly what’s selected.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Sets whether the receiver should insert or delete spaces around selected words to preserve proper spacing and punctuation.

    Declaration

    Swift

    var smartInsertDeleteEnabled: Bool

    Objective-C

    @property(nonatomic) BOOL smartInsertDeleteEnabled

    Parameters

    flag

    If YEStrue, the receiver performs smart insert and delete; if NOfalse, it inserts and deletes exactly what’s selected.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Returns whether the web view has continuous spell-checking enabled.

    Declaration

    Objective-C

    - (BOOL)isContinuousSpellCheckingEnabled

    Return Value

    YEStrue if the object has continuous spell-checking enabled; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Availability

    Available in OS X v10.3.9 and later.

  • Sets whether the web view has continuous spell-checking enabled.

    Declaration

    Swift

    var continuousSpellCheckingEnabled: Bool

    Objective-C

    @property(nonatomic, getter=isContinuousSpellCheckingEnabled) BOOL continuousSpellCheckingEnabled

    Parameters

    flag

    YEStrue if the object should have continuous spell-checking enabled; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Returns the spell-checker document tag for this document.

    Declaration

    Swift

    var spellCheckerDocumentTag: Int { get }

    Objective-C

    @property(nonatomic, readonly) NSInteger spellCheckerDocumentTag

    Return Value

    The document tag for this web view. A tag identifying the receiver’s text as a document for the spell-checker server. See the NSSpellChecker and NSSpellServer class specifications for more information on how this tag is used.

    The return value changed from unsigned int to a NSUInteger in OS X v10.5.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

    See Also

    spellCheckerDocumentTag (NSTextView)

  • Returns the receiver’s undo manager.

    Declaration

    Swift

    var undoManager: NSUndoManager! { get }

    Objective-C

    @property(nonatomic, readonly, strong) NSUndoManager *undoManager

    Return Value

    The receiver’s undo manager.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Returns the receiver’s editing delegate.

    Declaration

    Swift

    var editingDelegate: AnyObject!

    Objective-C

    @property(nonatomic, strong) id editingDelegate

    Return Value

    The receiver’s editing delegate.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Sets the receiver’s editing delegate.

    Declaration

    Swift

    var editingDelegate: AnyObject!

    Objective-C

    @property(nonatomic, strong) id editingDelegate

    Parameters

    delegate

    The editing delegate for the web view that conforms to the WebEditingDelegate protocol.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Returns the editable DOM object located at a given point.

    Declaration

    Swift

    func editableDOMRangeForPoint(_ point: NSPoint) -> DOMRange!

    Objective-C

    - (DOMRange *)editableDOMRangeForPoint:(NSPoint)point

    Parameters

    point

    The location of the editable DOM object.

    Return Value

    A single range object of the editable DOM object located at point in the receiver’s coordinates.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Replaces the receiver’s current selection with the specified DOM node.

    Declaration

    Swift

    func replaceSelectionWithNode(_ node: DOMNode!)

    Objective-C

    - (void)replaceSelectionWithNode:(DOMNode *)node

    Parameters

    node

    The node that replaces the current selection. If nil, a NOT_FOUND_ERR DOM error is thrown as an exception. Use the deleteSelection method to delete the selection.

    Discussion

    If the current selection is collapsed (a range is selected with the same nodes and offsets for the start and end) then no content is removed when inserting the node, and the selection is collapsed and moved to the end of the inserted content. If no content is selected, the node is not inserted.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Replaces the current selection with a string of text.

    Declaration

    Swift

    func replaceSelectionWithText(_ text: String!)

    Objective-C

    - (void)replaceSelectionWithText:(NSString *)text

    Parameters

    text

    The text that replaces the current selection.

    Discussion

    If the current selection is collapsed (a range is selected with the same nodes and offsets for the start and end) then no content is removed when inserting the text, and the selection is collapsed and moved to the end of the inserted content. If no content is selected, the text is not inserted.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Replaces the current selection with mixed text and markup.

    Declaration

    Swift

    func replaceSelectionWithMarkupString(_ markupString: String!)

    Objective-C

    - (void)replaceSelectionWithMarkupString:(NSString *)markupString

    Parameters

    markupString

    The markup string that replaces the current selection.

    Discussion

    If the current selection is collapsed (a range is selected with the same nodes and offsets for the start and end) then no content is removed when inserting the markup, and the selection is collapsed and moved to the end of the inserted content. If no content is selected, the markup is not inserted.

    See HTML Clipboard Format for a specification of the supported HTML markup.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Replaces the current selection with an archive's contents.

    Declaration

    Swift

    func replaceSelectionWithArchive(_ archive: WebArchive!)

    Objective-C

    - (void)replaceSelectionWithArchive:(WebArchive *)archive

    Parameters

    archive

    The archive that replaces the current selection.

    Discussion

    If the current selection is collapsed (a range is selected with the same nodes and offsets for the start and end) then no content is removed when inserting the archive, and the selection is collapsed and moved to the end of the inserted content. If no content is selected, the archive is not inserted.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Deletes the receiver’s current selection unless it’s collapsed.

    Declaration

    Swift

    func deleteSelection()

    Objective-C

    - (void)deleteSelection

    Discussion

    No content is removed if the current selection is collapsed (a range is selected with the same nodes and offsets for the start and end) or if there is no current selection.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Moves the insertion point to the beginning of the current sentence.

    Declaration

    Swift

    func moveToBeginningOfSentence(_ sender: AnyObject?)

    Objective-C

    - (void)moveToBeginningOfSentence:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Moves the insertion point and extends the selection to the beginning of the current sentence.

    Declaration

    Swift

    func moveToBeginningOfSentenceAndModifySelection(_ sender: AnyObject?)

    Objective-C

    - (void)moveToBeginningOfSentenceAndModifySelection:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Moves the insertion point to the end of the current sentence.

    Declaration

    Swift

    func moveToEndOfSentence(_ sender: AnyObject?)

    Objective-C

    - (void)moveToEndOfSentence:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Moves the insertion point and extends the selection to the end of the current sentence.

    Declaration

    Swift

    func moveToEndOfSentenceAndModifySelection(_ sender: AnyObject?)

    Objective-C

    - (void)moveToEndOfSentenceAndModifySelection:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Selects the entire sentence around the insertion point.

    Declaration

    Swift

    func selectSentence(_ sender: AnyObject?)

    Objective-C

    - (void)selectSentence:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Toggles whether continuous spell checking is available.

    Declaration

    Swift

    @IBAction func toggleContinuousSpellChecking(_ sender: AnyObject?)

    Objective-C

    - (IBAction)toggleContinuousSpellChecking:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Toggles whether spaces around selected words are inserted or deleted to preserve proper spacing and punctuation.

    Declaration

    Swift

    @IBAction func toggleSmartInsertDelete(_ sender: AnyObject?)

    Objective-C

    - (IBAction)toggleSmartInsertDelete:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Returns whether the current text size is a multiple of 1.

    Declaration

    Swift

    var canMakeTextStandardSize: Bool { get }

    Objective-C

    @property(nonatomic, readonly) BOOL canMakeTextStandardSize

    Return Value

    YEStrue if the current text size is a multiple of 1; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Resets the text size to a multiple of 1.

    Declaration

    Swift

    @IBAction func makeTextStandardSize(_ sender: AnyObject?)

    Objective-C

    - (IBAction)makeTextStandardSize:(id)sender

    Parameters

    sender

    The object that sent this message.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Returns whether the selection is maintained when focus is lost.

    Declaration

    Swift

    var maintainsInactiveSelection: Bool { get }

    Objective-C

    @property(nonatomic, readonly) BOOL maintainsInactiveSelection

    Return Value

    YEStrue if the selection is maintained when focus is lost; otherwise, NOfalse.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.4.11 and later.

  • Returns the computed style of an element and its pseudo element.

    Declaration

    Swift

    func computedStyleForElement(_ element: DOMElement!, pseudoElement pseudoElement: String!) -> DOMCSSStyleDeclaration!

    Objective-C

    - (DOMCSSStyleDeclaration *)computedStyleForElement:(DOMElement *)element pseudoElement:(NSString *)pseudoElement

    Parameters

    element

    The element whose computed style is returned.

    pseudoElement

    The pseudo element for element.

    Return Value

    An immutable object describing the computed style of element and pseudoElement according to the Cascading Style Sheets Specification at http://www.w3.org/TR/CSS21. Returns nil if the receiver doesn’t display element.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Returns the receiver’s CSS media property.

    Declaration

    Swift

    var mediaStyle: String!

    Objective-C

    @property(nonatomic, copy) NSString *mediaStyle

    Return Value

    The receiver’s CSS media property. nil if no media style was set.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Sets the receiver’s CSS media property.

    Declaration

    Swift

    var mediaStyle: String!

    Objective-C

    @property(nonatomic, copy) NSString *mediaStyle

    Parameters

    mediaStyle

    The CSS media property for the receiver.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

    See Also

    – mediaStyle

  • Returns the receiver’s CSS typing style.

    Declaration

    Swift

    var typingStyle: DOMCSSStyleDeclaration!

    Objective-C

    @property(nonatomic, strong) DOMCSSStyleDeclaration *typingStyle

    Return Value

    The receiver’s CSS typing style.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Sets the receiver’s CSS typing style.

    Declaration

    Swift

    var typingStyle: DOMCSSStyleDeclaration!

    Objective-C

    @property(nonatomic, strong) DOMCSSStyleDeclaration *typingStyle

    Parameters

    style

    The receiver’s CSS typing style.

    Discussion

    The typing style is reset automatically when the receiver’s selection changes.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Returns the CSS style declaration for the specified text.

    Declaration

    Swift

    func styleDeclarationWithText(_ text: String!) -> DOMCSSStyleDeclaration!

    Objective-C

    - (DOMCSSStyleDeclaration *)styleDeclarationWithText:(NSString *)text

    Parameters

    text

    The text whose style declaration is returned.

    Return Value

    The style declaration for text.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Applies the CSS typing style to the current selection.

    Declaration

    Swift

    func applyStyle(_ style: DOMCSSStyleDeclaration!)

    Objective-C

    - (void)applyStyle:(DOMCSSStyleDeclaration *)style

    Parameters

    style

    The style to apply to the current selection.

    Discussion

    This method does nothing if there is no current selection or if the current selection is collapsed.

    This method hides the complexities of applying styles to elements. If necessary, this method will make multiple passes over the range of the current selection to ensure that the requested style is applied to the elements in that range, and takes into account the complexities of CSS style application rules. This method also simplifies styling attributes so that the minimum number of styling directives are used to yield a given computed style.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Predefined keys used to access an element dictionary.

    Declaration

    Swift

    let WebElementDOMNodeKey: String let WebElementFrameKey: String let WebElementImageAltStringKey: String let WebElementImageKey: String let WebElementImageRectKey: String let WebElementImageURLKey: String let WebElementIsSelectedKey: String let WebElementLinkURLKey: String let WebElementLinkTargetFrameKey: String let WebElementLinkTitleKey: String let WebElementLinkLabelKey: String

    Objective-C

    extern NSString *WebElementDOMNodeKey; extern NSString *WebElementFrameKey; extern NSString *WebElementImageAltStringKey; extern NSString *WebElementImageKey; extern NSString *WebElementImageRectKey; extern NSString *WebElementImageURLKey; extern NSString *WebElementIsSelectedKey; extern NSString *WebElementLinkURLKey; extern NSString *WebElementLinkTargetFrameKey; extern NSString *WebElementLinkTitleKey; extern NSString *WebElementLinkLabelKey;

    Constants

    • WebElementDOMNodeKey

      WebElementDOMNodeKey

      The DOMNode for this element.

      Available in OS X v10.3 and later.

    • WebElementFrameKey

      WebElementFrameKey

      The WebFrame object associated with this element.

      Available in OS X v10.2 and later.

    • WebElementImageAltStringKey

      WebElementImageAltStringKey

      An NSString of the ALT attribute of an image element.

      Available in OS X v10.2 and later.

    • WebElementImageKey

      WebElementImageKey

      An NSImage representing an image element.

      Available in OS X v10.2 and later.

    • WebElementImageRectKey

      WebElementImageRectKey

      An NSValue containing an NSRect, the size of an image element.

      Available in OS X v10.2 and later.

    • WebElementImageURLKey

      WebElementImageURLKey

      An NSURL containing the location of an image element.

      Available in OS X v10.2 and later.

    • WebElementIsSelectedKey

      WebElementIsSelectedKey

      An NSNumber used as a BOOL value to indicate whether a text element is selected or not. Zero value indicates false, true otherwise.

      Available in OS X v10.2 and later.

    • WebElementLinkURLKey

      WebElementLinkURLKey

      An NSURL containing the location of a link if the element is within an anchor.

      Available in OS X v10.2 and later.

    • WebElementLinkTargetFrameKey

      WebElementLinkTargetFrameKey

      The WebFrame object associated with the target of the anchor.

      Available in OS X v10.2 and later.

    • WebElementLinkTitleKey

      WebElementLinkTitleKey

      An NSString containing the title of an anchor.

      Available in OS X v10.2 and later.

    • WebElementLinkLabelKey

      WebElementLinkLabelKey

      An NSString containing the text within an anchor.

      Available in OS X v10.2 and later.

    Discussion

    These constants represent predefined keys used to access an element dictionary. An element dictionary is an NSDictionary representation of an HTML element, as in a clicked or selected element. Some methods in the WebPolicyDelegate informal protocol have an element dictionary argument. The descriptions below describe the dictionary value for the key.

  • Posted when a web view begins any operation that changes its contents in response to user editing. The notification object is the WebView object that the user is editing. This notification does not contain a userInfo dictionary.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Posted when a web view performs any operation that changes its contents in response to user editing. The notification object is the WebView object that the user is editing. This notification does not contain a userInfo dictionary.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Posted when a web view changes its typing selection. The notification object is the WebView that changed its typing selection. This notification does not contain a userInfo dictionary.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Posted when a web view changes its typing style. The notification object is the WebView that changed its typing style. This notification does not contain a userInfo dictionary.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Posted when a web view ends any operation that changes its contents in response to user editing. The notification object is the WebView that the user is editing. This notification does not contain a userInfo dictionary.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.3.9 and later.

  • Posted by a WebView object when the estimated progress value of a load changes. This notification may be posted zero or more times after a WebViewProgressStartedNotification notification is posted. The notification object is the WebView for which the progress value has changed. This notification does not contain a userInfo dictionary.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Posted by a WebView object when the load has finished. The notification object is the WebView that finished loading. This notification does not contain a userInfo dictionary.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.

  • Posted by a WebView object when a load begins, including a load that is initiated in a subframe. The notification object is the WebView that began loading. This notification does not contain a userInfo dictionary.

    Import Statement

    Objective-C

    @import WebKit;

    Swift

    import WebKit

    Availability

    Available in OS X v10.2 with Safari 1.0 and later.

    Available in OS X v10.2.7 and later.