Run the crash report window at startup when needed.
This commit is contained in:
parent
e73c660c03
commit
085cfb2e60
|
@ -173,8 +173,10 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSUserInterfaceValidations,
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
DispatchQueue.main.async {
|
||||||
CrashReporter.check(appName: "NetNewsWire")
|
CrashReporter.check(appName: "NetNewsWire")
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func applicationShouldHandleReopen(_ sender: NSApplication, hasVisibleWindows flag: Bool) -> Bool {
|
func applicationShouldHandleReopen(_ sender: NSApplication, hasVisibleWindows flag: Bool) -> Bool {
|
||||||
createAndShowMainWindow()
|
createAndShowMainWindow()
|
||||||
|
|
|
@ -44,6 +44,8 @@ struct CrashReporter {
|
||||||
static let sendCrashLogsAutomaticallyKey = "SendCrashLogsAutomatically"
|
static let sendCrashLogsAutomaticallyKey = "SendCrashLogsAutomatically"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static var crashReportWindowController: CrashReportWindowController?
|
||||||
|
|
||||||
/// Look in ~/Library/Logs/DiagnosticReports/ for a new crash log for this app.
|
/// Look in ~/Library/Logs/DiagnosticReports/ for a new crash log for this app.
|
||||||
/// Show a crash log reporter window if found.
|
/// Show a crash log reporter window if found.
|
||||||
static func check(appName: String) {
|
static func check(appName: String) {
|
||||||
|
@ -112,9 +114,9 @@ struct CrashReporter {
|
||||||
}
|
}
|
||||||
|
|
||||||
static func runCrashReporterWindow(_ crashLog: CrashLog) {
|
static func runCrashReporterWindow(_ crashLog: CrashLog) {
|
||||||
// TODO
|
crashReportWindowController = CrashReportWindowController(crashLogText: crashLog.content)
|
||||||
|
crashReportWindowController!.showWindow(self)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private extension CrashReporter {
|
private extension CrashReporter {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="14460.31" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
|
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="14460.31" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" customObjectInstantitationMethod="direct">
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="14460.31"/>
|
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="14460.31"/>
|
||||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||||
|
@ -16,25 +16,26 @@
|
||||||
<customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
|
<customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
|
||||||
<customObject id="-3" userLabel="Application" customClass="NSObject"/>
|
<customObject id="-3" userLabel="Application" customClass="NSObject"/>
|
||||||
<window title="Crash Log Reporter" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" releasedWhenClosed="NO" visibleAtLaunch="NO" animationBehavior="default" id="QvC-M9-y7g">
|
<window title="Crash Log Reporter" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" releasedWhenClosed="NO" visibleAtLaunch="NO" animationBehavior="default" id="QvC-M9-y7g">
|
||||||
<windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES" resizable="YES"/>
|
<windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES"/>
|
||||||
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
|
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
|
||||||
<rect key="contentRect" x="251" y="776" width="496" height="416"/>
|
<rect key="contentRect" x="251" y="776" width="496" height="498"/>
|
||||||
<rect key="screenRect" x="0.0" y="0.0" width="2560" height="1417"/>
|
<rect key="screenRect" x="0.0" y="0.0" width="2560" height="1417"/>
|
||||||
<value key="maxSize" type="size" width="2048" height="2048"/>
|
<view key="contentView" wantsLayer="YES" id="EiT-Mj-1SZ">
|
||||||
<view key="contentView" wantsLayer="YES" misplaced="YES" id="EiT-Mj-1SZ">
|
<rect key="frame" x="0.0" y="0.0" width="496" height="498"/>
|
||||||
<rect key="frame" x="0.0" y="0.0" width="496" height="416"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
<autoresizingMask key="autoresizingMask"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="QBv-7S-WQv">
|
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" id="QBv-7S-WQv">
|
||||||
<rect key="frame" x="18" y="459" width="460" height="19"/>
|
<rect key="frame" x="18" y="459" width="460" height="19"/>
|
||||||
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<textFieldCell key="cell" selectable="YES" title="NetNewsWire Crash Log Found" id="k6r-PA-hYf">
|
<textFieldCell key="cell" selectable="YES" title="NetNewsWire Crash Log Found" id="k6r-PA-hYf">
|
||||||
<font key="font" size="16" name=".AppleSystemUIFontBold"/>
|
<font key="font" size="16" name=".AppleSystemUIFontBold"/>
|
||||||
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
|
||||||
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
</textFieldCell>
|
</textFieldCell>
|
||||||
</textField>
|
</textField>
|
||||||
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="b7P-9Z-RkD">
|
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" id="b7P-9Z-RkD">
|
||||||
<rect key="frame" x="18" y="417" width="460" height="34"/>
|
<rect key="frame" x="18" y="417" width="460" height="34"/>
|
||||||
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<textFieldCell key="cell" selectable="YES" id="O6E-xl-G55">
|
<textFieldCell key="cell" selectable="YES" id="O6E-xl-G55">
|
||||||
<font key="font" metaFont="system"/>
|
<font key="font" metaFont="system"/>
|
||||||
<string key="title">To help us fix crashing bugs, click Send Crash Log. Below is the text that will be sent to Brent. No other information will be sent.</string>
|
<string key="title">To help us fix crashing bugs, click Send Crash Log. Below is the text that will be sent to Brent. No other information will be sent.</string>
|
||||||
|
@ -42,9 +43,10 @@
|
||||||
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
</textFieldCell>
|
</textFieldCell>
|
||||||
</textField>
|
</textField>
|
||||||
<scrollView borderType="line" horizontalLineScroll="10" horizontalPageScroll="10" verticalLineScroll="10" verticalPageScroll="10" hasHorizontalScroller="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UTe-5f-47F">
|
<scrollView borderType="line" horizontalLineScroll="10" horizontalPageScroll="10" verticalLineScroll="10" verticalPageScroll="10" hasHorizontalScroller="NO" id="UTe-5f-47F">
|
||||||
<rect key="frame" x="20" y="153" width="456" height="256"/>
|
<rect key="frame" x="20" y="153" width="456" height="256"/>
|
||||||
<clipView key="contentView" drawsBackground="NO" copiesOnScroll="NO" id="MeG-49-sPS">
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
|
<clipView key="contentView" copiesOnScroll="NO" id="MeG-49-sPS">
|
||||||
<rect key="frame" x="1" y="1" width="454" height="254"/>
|
<rect key="frame" x="1" y="1" width="454" height="254"/>
|
||||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
|
@ -58,17 +60,16 @@
|
||||||
<color key="insertionPointColor" name="textColor" catalog="System" colorSpace="catalog"/>
|
<color key="insertionPointColor" name="textColor" catalog="System" colorSpace="catalog"/>
|
||||||
</textView>
|
</textView>
|
||||||
</subviews>
|
</subviews>
|
||||||
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
</clipView>
|
</clipView>
|
||||||
<constraints>
|
|
||||||
<constraint firstAttribute="height" constant="256" id="t2l-lf-pj5"/>
|
|
||||||
</constraints>
|
|
||||||
<scroller key="verticalScroller" wantsLayer="YES" verticalHuggingPriority="750" horizontal="NO" id="wLl-nc-XBT">
|
<scroller key="verticalScroller" wantsLayer="YES" verticalHuggingPriority="750" horizontal="NO" id="wLl-nc-XBT">
|
||||||
<rect key="frame" x="439" y="1" width="16" height="254"/>
|
<rect key="frame" x="439" y="1" width="16" height="254"/>
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
<autoresizingMask key="autoresizingMask"/>
|
||||||
</scroller>
|
</scroller>
|
||||||
</scrollView>
|
</scrollView>
|
||||||
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="MDs-Wi-EiJ">
|
<button verticalHuggingPriority="750" id="MDs-Wi-EiJ">
|
||||||
<rect key="frame" x="18" y="118" width="460" height="18"/>
|
<rect key="frame" x="18" y="118" width="460" height="18"/>
|
||||||
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<buttonCell key="cell" type="check" title="Send crash reports automatically" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="hsB-Hx-Fgs">
|
<buttonCell key="cell" type="check" title="Send crash reports automatically" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="hsB-Hx-Fgs">
|
||||||
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
|
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
|
||||||
<font key="font" metaFont="system"/>
|
<font key="font" metaFont="system"/>
|
||||||
|
@ -87,8 +88,9 @@
|
||||||
</binding>
|
</binding>
|
||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" textCompletion="NO" translatesAutoresizingMaskIntoConstraints="NO" id="D5D-Vb-5TR">
|
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" textCompletion="NO" id="D5D-Vb-5TR">
|
||||||
<rect key="frame" x="18" y="61" width="460" height="51"/>
|
<rect key="frame" x="18" y="61" width="460" height="51"/>
|
||||||
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<textFieldCell key="cell" allowsUndo="NO" id="nou-5k-c1U">
|
<textFieldCell key="cell" allowsUndo="NO" id="nou-5k-c1U">
|
||||||
<font key="font" metaFont="system"/>
|
<font key="font" metaFont="system"/>
|
||||||
<string key="title">You can skip this window in the future by telling NetNewsWire to automatically send crash logs. You can also turn this setting on and off in the Preferences window, in the Advanced section.</string>
|
<string key="title">You can skip this window in the future by telling NetNewsWire to automatically send crash logs. You can also turn this setting on and off in the Preferences window, in the Advanced section.</string>
|
||||||
|
@ -96,8 +98,9 @@
|
||||||
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
|
||||||
</textFieldCell>
|
</textFieldCell>
|
||||||
</textField>
|
</textField>
|
||||||
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="fcK-kG-dtY">
|
<button verticalHuggingPriority="750" id="fcK-kG-dtY">
|
||||||
<rect key="frame" x="345" y="13" width="137" height="32"/>
|
<rect key="frame" x="345" y="13" width="137" height="32"/>
|
||||||
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<buttonCell key="cell" type="push" title="Send Crash Log" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="7ot-Ev-JTY">
|
<buttonCell key="cell" type="push" title="Send Crash Log" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="7ot-Ev-JTY">
|
||||||
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
|
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
|
||||||
<font key="font" metaFont="system"/>
|
<font key="font" metaFont="system"/>
|
||||||
|
@ -109,8 +112,9 @@ DQ
|
||||||
<action selector="sendCrashReport:" target="-2" id="mob-bL-tRb"/>
|
<action selector="sendCrashReport:" target="-2" id="mob-bL-tRb"/>
|
||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="o4V-7L-v6D">
|
<button verticalHuggingPriority="750" id="o4V-7L-v6D">
|
||||||
<rect key="frame" x="208" y="13" width="137" height="32"/>
|
<rect key="frame" x="208" y="13" width="137" height="32"/>
|
||||||
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<buttonCell key="cell" type="push" title="Don’t Send" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="gzj-Vz-pdb">
|
<buttonCell key="cell" type="push" title="Don’t Send" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="gzj-Vz-pdb">
|
||||||
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
|
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
|
||||||
<font key="font" metaFont="system"/>
|
<font key="font" metaFont="system"/>
|
||||||
|
@ -122,8 +126,9 @@ Gw
|
||||||
<action selector="dontSendCrashReport:" target="-2" id="r3y-TC-h8U"/>
|
<action selector="dontSendCrashReport:" target="-2" id="r3y-TC-h8U"/>
|
||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="fEy-Fg-JhO">
|
<button verticalHuggingPriority="750" id="fEy-Fg-JhO">
|
||||||
<rect key="frame" x="14" y="13" width="137" height="32"/>
|
<rect key="frame" x="14" y="13" width="137" height="32"/>
|
||||||
|
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
|
||||||
<buttonCell key="cell" type="push" title="Privacy Policy" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="mMg-qO-UGu">
|
<buttonCell key="cell" type="push" title="Privacy Policy" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="mMg-qO-UGu">
|
||||||
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
|
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
|
||||||
<font key="font" metaFont="system"/>
|
<font key="font" metaFont="system"/>
|
||||||
|
@ -133,35 +138,8 @@ Gw
|
||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
</subviews>
|
</subviews>
|
||||||
<constraints>
|
|
||||||
<constraint firstAttribute="trailing" secondItem="QBv-7S-WQv" secondAttribute="trailing" constant="20" symbolic="YES" id="36B-NT-JKz"/>
|
|
||||||
<constraint firstAttribute="trailing" secondItem="fcK-kG-dtY" secondAttribute="trailing" constant="20" symbolic="YES" id="6md-gj-Ebi"/>
|
|
||||||
<constraint firstItem="D5D-Vb-5TR" firstAttribute="top" secondItem="MDs-Wi-EiJ" secondAttribute="bottom" constant="8" id="CfF-vN-jCe"/>
|
|
||||||
<constraint firstAttribute="trailing" secondItem="D5D-Vb-5TR" secondAttribute="trailing" constant="20" symbolic="YES" id="CsH-Gv-cwP"/>
|
|
||||||
<constraint firstAttribute="trailing" secondItem="MDs-Wi-EiJ" secondAttribute="trailing" constant="20" symbolic="YES" id="ElN-Oc-O2s"/>
|
|
||||||
<constraint firstItem="D5D-Vb-5TR" firstAttribute="leading" secondItem="EiT-Mj-1SZ" secondAttribute="leading" constant="20" symbolic="YES" id="GRh-Au-gHX"/>
|
|
||||||
<constraint firstItem="UTe-5f-47F" firstAttribute="leading" secondItem="EiT-Mj-1SZ" secondAttribute="leading" constant="20" symbolic="YES" id="U1O-9z-jYz"/>
|
|
||||||
<constraint firstItem="fcK-kG-dtY" firstAttribute="width" secondItem="o4V-7L-v6D" secondAttribute="width" id="U5j-x8-wHK"/>
|
|
||||||
<constraint firstItem="fcK-kG-dtY" firstAttribute="firstBaseline" secondItem="o4V-7L-v6D" secondAttribute="firstBaseline" id="Vpq-7Z-UNR"/>
|
|
||||||
<constraint firstAttribute="trailing" secondItem="b7P-9Z-RkD" secondAttribute="trailing" constant="20" symbolic="YES" id="W19-0H-DVN"/>
|
|
||||||
<constraint firstItem="MDs-Wi-EiJ" firstAttribute="leading" secondItem="EiT-Mj-1SZ" secondAttribute="leading" constant="20" symbolic="YES" id="Zwd-5k-iXD"/>
|
|
||||||
<constraint firstItem="UTe-5f-47F" firstAttribute="top" secondItem="b7P-9Z-RkD" secondAttribute="bottom" constant="8" symbolic="YES" id="aED-61-b2W"/>
|
|
||||||
<constraint firstItem="fEy-Fg-JhO" firstAttribute="leading" secondItem="EiT-Mj-1SZ" secondAttribute="leading" constant="20" symbolic="YES" id="dP8-9C-Ig6"/>
|
|
||||||
<constraint firstItem="fcK-kG-dtY" firstAttribute="top" secondItem="D5D-Vb-5TR" secondAttribute="bottom" constant="20" id="eFz-oU-MeW"/>
|
|
||||||
<constraint firstItem="b7P-9Z-RkD" firstAttribute="top" secondItem="QBv-7S-WQv" secondAttribute="bottom" constant="8" symbolic="YES" id="eOP-Vs-QAJ"/>
|
|
||||||
<constraint firstItem="o4V-7L-v6D" firstAttribute="firstBaseline" secondItem="fEy-Fg-JhO" secondAttribute="firstBaseline" id="h78-2f-JRj"/>
|
|
||||||
<constraint firstItem="QBv-7S-WQv" firstAttribute="top" secondItem="EiT-Mj-1SZ" secondAttribute="top" constant="20" symbolic="YES" id="kab-GW-in9"/>
|
|
||||||
<constraint firstItem="b7P-9Z-RkD" firstAttribute="leading" secondItem="EiT-Mj-1SZ" secondAttribute="leading" constant="20" symbolic="YES" id="kuR-dt-lWl"/>
|
|
||||||
<constraint firstAttribute="bottom" secondItem="fcK-kG-dtY" secondAttribute="bottom" constant="20" symbolic="YES" id="kur-mc-PCf"/>
|
|
||||||
<constraint firstAttribute="trailing" secondItem="UTe-5f-47F" secondAttribute="trailing" constant="20" symbolic="YES" id="mgo-OJ-3aJ"/>
|
|
||||||
<constraint firstItem="o4V-7L-v6D" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="fEy-Fg-JhO" secondAttribute="trailing" constant="12" symbolic="YES" id="nlA-5l-26s"/>
|
|
||||||
<constraint firstItem="fcK-kG-dtY" firstAttribute="leading" secondItem="o4V-7L-v6D" secondAttribute="trailing" constant="12" symbolic="YES" id="oSf-uE-ggL"/>
|
|
||||||
<constraint firstItem="o4V-7L-v6D" firstAttribute="width" secondItem="fEy-Fg-JhO" secondAttribute="width" id="roG-LM-pbk"/>
|
|
||||||
<constraint firstItem="MDs-Wi-EiJ" firstAttribute="top" secondItem="hW5-cq-81L" secondAttribute="bottom" constant="20" id="uOq-NF-b2t"/>
|
|
||||||
<constraint firstItem="QBv-7S-WQv" firstAttribute="leading" secondItem="EiT-Mj-1SZ" secondAttribute="leading" constant="20" symbolic="YES" id="zQj-wQ-ppH"/>
|
|
||||||
</constraints>
|
|
||||||
</view>
|
</view>
|
||||||
<point key="canvasLocation" x="136" y="-14"/>
|
<point key="canvasLocation" x="121" y="-239"/>
|
||||||
</window>
|
</window>
|
||||||
<userDefaultsController representsSharedInstance="YES" id="Owf-g6-irL"/>
|
<userDefaultsController representsSharedInstance="YES" id="Owf-g6-irL"/>
|
||||||
</objects>
|
</objects>
|
||||||
|
|
Loading…
Reference in New Issue