<!--
{
  "availability" : [
    "macOS: 10.7.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/NSWindow/isRestorable",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "AppKit"
    ],
    "preciseIdentifier" : "c:objc(cs)NSWindow(py)restorable"
  },
  "title" : "isRestorable"
}
-->

# isRestorable

A Boolean value indicating whether the window configuration is preserved between application launches.

```
var isRestorable: Bool { get set }
```

## Discussion

Set this property to <doc://com.apple.documentation/documentation/Swift/true> if you want the window to be preserved or <doc://com.apple.documentation/documentation/Swift/false> if you do not want it preserved. By default, the value of this property is <doc://com.apple.documentation/documentation/Swift/true> if the window’s [`styleMask`](/documentation/AppKit/NSWindow/styleMask-swift.property) property includes the [`NSTitledWindowMask`](/documentation/AppKit/NSTitledWindowMask) flag. For other windows, the value is <doc://com.apple.documentation/documentation/Swift/false>. Setting a value explicitly overrides the default values.

Windows should be preserved between launch cycles to maintain interface continuity for the user. During subsequent launch cycles, the system tries to recreate the window and restore its configuration to the preserved state. Configuration data is updated as needed and saved automatically by the system.

If you enable preservation for a given window, you should also specify a restoration class for the window using the [`restorationClass`](/documentation/AppKit/NSWindow/restorationClass) property.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)