Browse Source

【综合】DMG折扣模块远程控制串接

niehaoyu 1 năm trước cách đây
mục cha
commit
ad83dda6f4

+ 13 - 1
PDF Office/PDF Master/AppDelegate.swift

@@ -56,7 +56,19 @@ class AppDelegate: NSObject, NSApplicationDelegate, iRateDelegate{
         KMStatusBar.system()
         
         //        MARK: 广告数据初始化
-        KMAdvertisementManager.manager.initConfig(appName: .PDFReaderProMac,
+        var appName: KMAdvertisementAppNameType = .PDFReaderProMac
+#if VERSION_FREE
+
+#if VERSION_DMG
+        appName = .PDFReaderProMacDMG
+#else
+        
+#endif
+        
+#else
+        appName = .PDFReaderProMacPro
+#endif
+        KMAdvertisementManager.manager.initConfig(appName: appName,
                                                   subscribeType: .unknow,
                                                   platform: .Mac)
         //        测试模式,默认false

+ 5 - 1
PDF Office/PDF Master/Class/KMAdvertisement/Manager/KMAdvertisementManager.swift

@@ -10,6 +10,8 @@
     @objc public static let manager = KMAdvertisementManager()
     @objc public var configuration: KMAdvertisementConfig = KMAdvertisementConfig()
     
+    var info: KMAdvertisementInfo = KMAdvertisementInfo()
+    
     /**
      @abstract 测试模式,默认为false
       */
@@ -75,13 +77,14 @@ extension KMAdvertisementManager {
         if cacheData.count != 0 {
             self.parseData(data: cacheData, isNeedLocalComparison: false) { result in
                 if result.count != 0 {
+                    info = result.first!
                     completion(result.first, nil, nil)
                 }
             }
         }
         
         unowned let weakSelf = self
-        KMAdvertisementRequestServer.requestServer.request(urlString: urlString, method: "GET", params: params) { task, responseObject, error in
+        KMAdvertisementRequestServer.requestServer.request(urlString: urlString, method: "GET", params: params) { [self] task, responseObject, error in
             print("正在获取数据")
             if (error == nil && responseObject != nil) {
                 let array = responseObject?["list"] ?? []
@@ -91,6 +94,7 @@ extension KMAdvertisementManager {
                     weakSelf.parseData(data: array as! [NSDictionary], isNeedLocalComparison: true) { data in
                         print("数据处理完毕")
                         if data.count != 0 {
+                            info =  data.first!
                             completion(data.first, responseObject, nil)
                         }
                     }

+ 2 - 2
PDF Office/PDF Master/Class/KMAdvertisement/Model/KMAdvertisementImage.swift

@@ -9,8 +9,8 @@ import Foundation
 import AppKit
 
 typealias KMAdvertisementImageCompletion = (_ image: NSImage) -> Void
-class KMAdvertisementImage: NSObject {
-    static func imageWithURL(url : URL?, completion: KMAdvertisementImageCompletion?) -> NSImage {
+@objc class KMAdvertisementImage: NSObject {
+    @objc static func imageWithURL(url : URL?, completion: KMAdvertisementImageCompletion?) -> NSImage {
         var image: NSImage = NSImage()
         if url != nil {
             //获取缓存图片是否存在

+ 1 - 0
PDF Office/PDF Master/Class/KMAdvertisement/Model/KMAdvertisementModel.swift

@@ -11,6 +11,7 @@
     public var recommondContent: KMAdvertisementContent?
     public var advertisement: KMAdvertisementItem?
     public var remoteControl: KMAdvertisementRemoteControl?
+    public var discountRecommond: KMAdvertisementItem?
 }
 
 @objcMembers public class KMAdvertisementContent: NSObject, Codable {

+ 3 - 3
PDF Office/PDF Master/Class/KMAdvertisement/View/View/KMAdvertisementShowView.xib

@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="22155" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="22505" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
         <deployment identifier="macosx"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="22155"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="22505"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
-        <customObject id="-2" userLabel="File's Owner" customClass="KMAdvertisementShowView" customModule="PDF_Master" customModuleProvider="target">
+        <customObject id="-2" userLabel="File's Owner" customClass="KMAdvertisementShowView" customModule="PDF_Reader_Pro" customModuleProvider="target">
             <connections>
                 <outlet property="closeButton" destination="Iay-VK-ICj" id="65i-qn-Dts"/>
                 <outlet property="contentView" destination="c22-O7-iKe" id="GO1-1D-DOk"/>

+ 21 - 18
PDF Office/PDF Master/Class/Purchase/DMG/KMPurchaseCompareDMGWindowController.m

@@ -459,13 +459,18 @@ static NSString *const KMPurchaseCompareDMGCellIdentifier       = @"KMPurchaseCo
         [self.freeTrialButton setTitleColor:[NSColor colorWithRed:160/255. green:40/255. blue:1 alpha:1]];
     }
     [self.buyNowButton setTitleColor:[NSColor whiteColor]];
-//    if ([KMRecommondManager manager].discountRecommond.recommondInfoArrM.count > 0) {
-//        KMRecommondInfo *info = [KMRecommondManager manager].discountRecommond.recommondInfoArrM.firstObject;
-//        if (info.show) {
-//            self.discountTipImage.hidden = NO;
-//            self.discountTipImage.image = info.iconImage;
-//        }
-//    }
+    
+    if (KMAdvertisementManager.manager.info.discountRecommond.content.count > 0) {
+        KMAdvertisementItemInfo *info = KMAdvertisementManager.manager.info.discountRecommond.content.firstObject;
+        if ([info.show isEqual:@"true"] ) {
+            self.discountTipImage.hidden = NO;
+            
+            NSURL *url = [NSURL URLWithString:[KMAdvertisementModelTransition transitionImagePathWithImage:info.image highlight:NO]];
+            self.discountTipImage.image = [KMAdvertisementImage imageWithURLWithUrl:url completion:^(NSImage * _Nonnull image) {
+                self.discountTipImage.image = image;
+            }];
+        }
+    }
 }
 
 #pragma mark - Window Method
@@ -644,17 +649,15 @@ static NSString *const KMPurchaseCompareDMGCellIdentifier       = @"KMPurchaseCo
 }
 
 - (void)recommondInfoUpdateNoti:(NSNotification *)noti {
-//    dispatch_async(dispatch_get_main_queue(), ^{
-//        if ([KMRecommondManager manager].discountRecommond.recommondInfoArrM.count > 0) {
-//            KMRecommondInfo *info = [KMRecommondManager manager].discountRecommond.recommondInfoArrM.firstObject;
-//            if ([noti.object[@"unique"] isEqualToString:info.versionKey]) {
-//                if (info.show) {
-//                    self.discountTipImage.hidden = NO;
-//                    self.discountTipImage.image = info.iconImage;
-//                }
-//            }
-//        }
-//    });
+    dispatch_async(dispatch_get_main_queue(), ^{
+        if (KMAdvertisementManager.manager.info.discountRecommond.content.count > 0) {
+            KMAdvertisementItemInfo *info = KMAdvertisementManager.manager.info.discountRecommond.content.firstObject;
+            if ([info.show isEqual:@"true"] ) {
+                self.discountTipImage.hidden = NO;
+                self.discountTipImage.image = info.image;
+            }
+        }
+    });
 }
 
 @end

+ 40 - 40
PDF Office/PDF Master/Class/Purchase/DMG/KMPurchaseCompareDMGWindowController.xib

@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="21507" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="22505" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
         <deployment identifier="macosx"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="21507"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="22505"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
     <objects>
@@ -61,7 +61,7 @@
             <windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES" resizable="YES" fullSizeContentView="YES"/>
             <windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
             <rect key="contentRect" x="160" y="33" width="932" height="610"/>
-            <rect key="screenRect" x="0.0" y="0.0" width="1440" height="875"/>
+            <rect key="screenRect" x="0.0" y="0.0" width="1920" height="1055"/>
             <value key="minSize" type="size" width="932" height="610"/>
             <value key="maxSize" type="size" width="932" height="1110"/>
             <view key="contentView" wantsLayer="YES" id="se5-gp-TjO">
@@ -86,7 +86,7 @@
                                     <action selector="enterLicenseAction:" target="-2" id="c66-I2-Yta"/>
                                 </connections>
                             </button>
-                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="PYw-CG-kOA">
+                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="PYw-CG-kOA">
                                 <rect key="frame" x="330" y="538" width="273" height="24"/>
                                 <textFieldCell key="cell" lineBreakMode="clipping" title="Upgrade to Permanent Version" id="mXT-0V-U8G">
                                     <font key="font" metaFont="system" size="20"/>
@@ -100,7 +100,7 @@
                                     <customView translatesAutoresizingMaskIntoConstraints="NO" id="wbK-Ex-3dw">
                                         <rect key="frame" x="0.0" y="0.0" width="284" height="446"/>
                                         <subviews>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="hW7-gR-Gg1">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="hW7-gR-Gg1">
                                                 <rect key="frame" x="73" y="399" width="139" height="28"/>
                                                 <textFieldCell key="cell" lineBreakMode="clipping" title="Free Version" id="l5l-jW-bbS">
                                                     <font key="font" metaFont="systemSemibold" size="24"/>
@@ -126,7 +126,7 @@
                                                         </constraints>
                                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="TRW-cy-tts"/>
                                                     </imageView>
-                                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="xaG-Yc-Kmu">
+                                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="xaG-Yc-Kmu">
                                                         <rect key="frame" x="34" y="225" width="202" height="20"/>
                                                         <constraints>
                                                             <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="c8L-yx-7H9"/>
@@ -145,7 +145,7 @@
                                                         </constraints>
                                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="BZa-F2-hcC"/>
                                                     </imageView>
-                                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="11Y-f7-Zj2">
+                                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="11Y-f7-Zj2">
                                                         <rect key="frame" x="34" y="197" width="202" height="20"/>
                                                         <constraints>
                                                             <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="3V1-ua-cBJ"/>
@@ -164,7 +164,7 @@
                                                         </constraints>
                                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="compare_nosupport" id="a1c-h0-EhN"/>
                                                     </imageView>
-                                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="cIu-Xk-RbB">
+                                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="cIu-Xk-RbB">
                                                         <rect key="frame" x="34" y="169" width="202" height="20"/>
                                                         <constraints>
                                                             <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="n6a-8j-4Jx"/>
@@ -183,7 +183,7 @@
                                                         </constraints>
                                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="compare_nosupport" id="Mi1-wo-N70"/>
                                                     </imageView>
-                                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="drj-ku-nB2">
+                                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="drj-ku-nB2">
                                                         <rect key="frame" x="34" y="141" width="202" height="20"/>
                                                         <constraints>
                                                             <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="jSe-bh-zc6"/>
@@ -202,7 +202,7 @@
                                                         </constraints>
                                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="compare_nosupport" id="lih-Ae-WxX"/>
                                                     </imageView>
-                                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="aqC-Bx-eUM">
+                                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="aqC-Bx-eUM">
                                                         <rect key="frame" x="34" y="113" width="202" height="20"/>
                                                         <constraints>
                                                             <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="xx6-Qz-oju"/>
@@ -221,7 +221,7 @@
                                                         </constraints>
                                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="compare_nosupport" id="SwV-uC-WHy"/>
                                                     </imageView>
-                                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="9Cn-ee-K9o">
+                                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="9Cn-ee-K9o">
                                                         <rect key="frame" x="34" y="85" width="202" height="20"/>
                                                         <constraints>
                                                             <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="9E4-1b-Xxa"/>
@@ -240,7 +240,7 @@
                                                         </constraints>
                                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="compare_nosupport" id="rdh-jo-8al"/>
                                                     </imageView>
-                                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="8Eg-fh-d4o">
+                                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="8Eg-fh-d4o">
                                                         <rect key="frame" x="34" y="57" width="202" height="20"/>
                                                         <constraints>
                                                             <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="uZT-B7-cDY"/>
@@ -259,7 +259,7 @@
                                                         </constraints>
                                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="compare_nosupport" id="9at-M1-45l"/>
                                                     </imageView>
-                                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="AAH-AD-uBk">
+                                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="AAH-AD-uBk">
                                                         <rect key="frame" x="34" y="29" width="202" height="20"/>
                                                         <constraints>
                                                             <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="lyK-Wx-OUz"/>
@@ -278,7 +278,7 @@
                                                         </constraints>
                                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="compare_nosupport" id="rfl-3x-q37"/>
                                                     </imageView>
-                                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="GCv-Zo-FpH">
+                                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="GCv-Zo-FpH">
                                                         <rect key="frame" x="34" y="4" width="202" height="17"/>
                                                         <textFieldCell key="cell" title="View PDFs" id="JPB-N9-U7c">
                                                             <font key="font" metaFont="system" size="14"/>
@@ -343,7 +343,7 @@
                                                     <rect key="frame" x="1" y="1" width="160" height="38"/>
                                                     <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                                                     <subviews>
-                                                        <button focusRingType="none" verticalHuggingPriority="750" fixedFrame="YES" allowsExpansionToolTips="YES" translatesAutoresizingMaskIntoConstraints="NO" id="4fI-f7-Qnp" customClass="KMButton" customModule="PDF_Reader_Pro" customModuleProvider="target">
+                                                        <button focusRingType="none" allowsExpansionToolTips="YES" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="4fI-f7-Qnp" customClass="KMButton" customModule="PDF_Reader_Pro" customModuleProvider="target">
                                                             <rect key="frame" x="0.0" y="0.0" width="162" height="40"/>
                                                             <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                                                             <buttonCell key="cell" type="square" title="Free Trial" bezelStyle="shadowlessSquare" alignment="center" lineBreakMode="truncatingMiddle" focusRingType="none" imageScaling="proportionallyDown" inset="2" id="OUe-aZ-jdt">
@@ -387,7 +387,7 @@
                                         <rect key="frame" x="0.0" y="0.0" width="284" height="446"/>
                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="axesIndependently" image="AIDMGBG" id="pL4-Kh-6Ho"/>
                                     </imageView>
-                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="inx-bW-irf">
+                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="inx-bW-irf">
                                         <rect key="frame" x="102" y="400" width="89" height="28"/>
                                         <textFieldCell key="cell" lineBreakMode="clipping" title="AI Tools" id="uog-PY-C6F">
                                             <font key="font" metaFont="systemSemibold" size="24"/>
@@ -413,7 +413,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="vipAbleIcon" id="usA-3E-SLF"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="dD0-C2-Lga">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="dD0-C2-Lga">
                                                 <rect key="frame" x="30" y="184" width="88" height="16"/>
                                                 <textFieldCell key="cell" title="AI Summarize" id="3vB-Fw-N6B">
                                                     <font key="font" metaFont="system"/>
@@ -429,7 +429,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="vipAbleIcon" id="LzZ-iP-8em"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="pdE-kf-rtu">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="pdE-kf-rtu">
                                                 <rect key="frame" x="30" y="156" width="73" height="17"/>
                                                 <textFieldCell key="cell" title="View PDFs" id="83k-RN-53d">
                                                     <font key="font" metaFont="system" size="14"/>
@@ -445,7 +445,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="vipAbleIcon" id="csy-Zd-yX9"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="zyJ-pN-yCh">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="zyJ-pN-yCh">
                                                 <rect key="frame" x="30" y="128" width="73" height="17"/>
                                                 <textFieldCell key="cell" title="View PDFs" id="LBd-dR-Ld1">
                                                     <font key="font" metaFont="system" size="14"/>
@@ -461,7 +461,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="vipAbleIcon" id="bdL-7C-DKn"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="1OY-mu-1YV">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="1OY-mu-1YV">
                                                 <rect key="frame" x="30" y="100" width="73" height="17"/>
                                                 <textFieldCell key="cell" title="View PDFs" id="p6V-Sz-eSC">
                                                     <font key="font" metaFont="system" size="14"/>
@@ -509,7 +509,7 @@
                                                         </constraints>
                                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="axesIndependently" image="aiIconA" id="bjw-7w-ecP"/>
                                                     </imageView>
-                                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="2yh-PK-SVp">
+                                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="2yh-PK-SVp">
                                                         <rect key="frame" x="26" y="4" width="79" height="16"/>
                                                         <textFieldCell key="cell" lineBreakMode="clipping" title="My AI Credit" id="PkG-XP-GsP">
                                                             <font key="font" metaFont="system"/>
@@ -529,14 +529,14 @@
                                             </customView>
                                             <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="0S4-Y8-qlW" customClass="KMButton" customModule="PDF_Reader_Pro" customModuleProvider="target">
                                                 <rect key="frame" x="0.0" y="0.0" width="200" height="40"/>
-                                                <constraints>
-                                                    <constraint firstAttribute="height" constant="40" id="gtc-cl-Yxg"/>
-                                                    <constraint firstAttribute="width" constant="200" id="rJW-IL-6Pp"/>
-                                                </constraints>
                                                 <buttonCell key="cell" type="bevel" bezelStyle="rounded" imagePosition="overlaps" alignment="center" lineBreakMode="charWrapping" imageScaling="axesIndependently" inset="2" id="nfY-Ib-pyH">
                                                     <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                                                     <font key="font" metaFont="smallSystem"/>
                                                 </buttonCell>
+                                                <constraints>
+                                                    <constraint firstAttribute="height" constant="40" id="gtc-cl-Yxg"/>
+                                                    <constraint firstAttribute="width" constant="200" id="rJW-IL-6Pp"/>
+                                                </constraints>
                                                 <connections>
                                                     <action selector="aiPurchaseButtonClick:" target="-2" id="1LH-Br-IFZ"/>
                                                 </connections>
@@ -587,7 +587,7 @@
                                         </constraints>
                                         <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="vip_pro_icon" id="ay0-vg-Q18"/>
                                     </imageView>
-                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="xB9-aF-9mk">
+                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="xB9-aF-9mk">
                                         <rect key="frame" x="44" y="410" width="213" height="28"/>
                                         <textFieldCell key="cell" lineBreakMode="clipping" title="Permanent License" id="bgF-Cs-9jH">
                                             <font key="font" metaFont="systemSemibold" size="24"/>
@@ -595,7 +595,7 @@
                                             <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
                                         </textFieldCell>
                                     </textField>
-                                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="tDw-Yz-8eU">
+                                    <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="tDw-Yz-8eU">
                                         <rect key="frame" x="87" y="389" width="126" height="17"/>
                                         <textFieldCell key="cell" lineBreakMode="clipping" title="one-time purchase" id="AmC-dB-pSk">
                                             <font key="font" metaFont="system" size="14"/>
@@ -614,7 +614,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="MoF-fp-kom"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="zlT-ii-WYi">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="zlT-ii-WYi">
                                                 <rect key="frame" x="34" y="224" width="202" height="20"/>
                                                 <constraints>
                                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="SyG-jP-ZTw"/>
@@ -633,7 +633,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="dbH-z7-kvT"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="xnv-Sf-nZ1">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="xnv-Sf-nZ1">
                                                 <rect key="frame" x="34" y="196" width="69" height="20"/>
                                                 <constraints>
                                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="sQH-yQ-S3I"/>
@@ -650,14 +650,14 @@
                                             </imageView>
                                             <button translatesAutoresizingMaskIntoConstraints="NO" id="3mX-DM-Ssw" customClass="KMButton" customModule="PDF_Reader_Pro" customModuleProvider="target">
                                                 <rect key="frame" x="101" y="196" width="20" height="20"/>
-                                                <constraints>
-                                                    <constraint firstAttribute="height" constant="20" id="DQB-Bc-Hea"/>
-                                                    <constraint firstAttribute="width" constant="20" id="rlY-sN-tsh"/>
-                                                </constraints>
                                                 <buttonCell key="cell" type="roundRect" bezelStyle="roundedRect" imagePosition="only" alignment="center" imageScaling="proportionallyDown" inset="2" id="kWd-ga-hI9">
                                                     <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                                                     <font key="font" metaFont="cellTitle"/>
                                                 </buttonCell>
+                                                <constraints>
+                                                    <constraint firstAttribute="height" constant="20" id="DQB-Bc-Hea"/>
+                                                    <constraint firstAttribute="width" constant="20" id="rlY-sN-tsh"/>
+                                                </constraints>
                                             </button>
                                             <imageView horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="Xkj-ZO-il5">
                                                 <rect key="frame" x="0.0" y="168" width="20" height="20"/>
@@ -667,7 +667,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="PWy-Nb-1Kk"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Dgh-Aq-0O5">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Dgh-Aq-0O5">
                                                 <rect key="frame" x="34" y="168" width="202" height="20"/>
                                                 <constraints>
                                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="3dA-qn-Ega"/>
@@ -686,7 +686,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="QTF-cc-g3j"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="kaB-X2-mLe">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="kaB-X2-mLe">
                                                 <rect key="frame" x="34" y="140" width="202" height="20"/>
                                                 <constraints>
                                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="kis-m3-acf"/>
@@ -705,7 +705,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="t4N-s0-4sh"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Jb1-Ji-S0u">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Jb1-Ji-S0u">
                                                 <rect key="frame" x="34" y="112" width="202" height="20"/>
                                                 <constraints>
                                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="wTt-gm-QMU"/>
@@ -724,7 +724,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="VnB-Ak-Vqh"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="tPr-KE-sls">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="tPr-KE-sls">
                                                 <rect key="frame" x="34" y="84" width="202" height="20"/>
                                                 <constraints>
                                                     <constraint firstAttribute="height" constant="20" id="ziu-1B-u5w"/>
@@ -743,7 +743,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="nj8-hb-08Z"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="7p3-XR-Rs2">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="7p3-XR-Rs2">
                                                 <rect key="frame" x="34" y="56" width="202" height="20"/>
                                                 <constraints>
                                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="3np-Nn-FMA"/>
@@ -762,7 +762,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="EsP-2z-FmA"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="6cc-rQ-t1T">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="6cc-rQ-t1T">
                                                 <rect key="frame" x="34" y="28" width="202" height="20"/>
                                                 <constraints>
                                                     <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="20" id="OSv-xl-VPX"/>
@@ -781,7 +781,7 @@
                                                 </constraints>
                                                 <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="function_vip" id="fnP-JO-ygh"/>
                                             </imageView>
-                                            <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="sAj-ob-iZk">
+                                            <textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="sAj-ob-iZk">
                                                 <rect key="frame" x="34" y="4" width="202" height="16"/>
                                                 <textFieldCell key="cell" title="View PDFs" id="Ytw-iw-WBb">
                                                     <font key="font" metaFont="system"/>

+ 147 - 35
PDF Office/PDF Reader Pro.xcodeproj/xcuserdata/kdanmobile.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -727,10 +727,42 @@
             filePath = "PDF Master/Class/Purchase/DMG/KMPurchaseCompareDMGWindowController.m"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "587"
-            endingLineNumber = "587"
-            landmarkName = "-buttonItemClicked_License:"
+            startingLineNumber = "592"
+            endingLineNumber = "592"
+            landmarkName = "-buttonItemClicked_Buy:"
             landmarkType = "7">
+            <Locations>
+               <Location
+                  uuid = "80B40888-4B5F-4443-875D-C70B50A5155F - 2d4c131f40183377"
+                  shouldBeEnabled = "Yes"
+                  ignoreCount = "0"
+                  continueAfterRunningActions = "No"
+                  symbolName = "-[KMPurchaseCompareDMGWindowController buttonItemClicked_CloseWindow:]"
+                  moduleName = "PDF Reader Pro"
+                  usesParentBreakpointCondition = "Yes"
+                  urlString = "file:///Users/kdanmobile/Documents/Git/PDF_Office/PDF%20Office/PDF%20Master/Class/Purchase/DMG/KMPurchaseCompareDMGWindowController.m"
+                  startingColumnNumber = "9223372036854775807"
+                  endingColumnNumber = "9223372036854775807"
+                  startingLineNumber = "592"
+                  endingLineNumber = "592"
+                  offsetFromSymbolStart = "72">
+               </Location>
+               <Location
+                  uuid = "80B40888-4B5F-4443-875D-C70B50A5155F - a240c95d9a421d7a"
+                  shouldBeEnabled = "Yes"
+                  ignoreCount = "0"
+                  continueAfterRunningActions = "No"
+                  symbolName = "-[KMPurchaseCompareDMGWindowController buttonItemClicked_License:]"
+                  moduleName = "PDF Reader Pro"
+                  usesParentBreakpointCondition = "Yes"
+                  urlString = "file:///Users/kdanmobile/Documents/Git/PDF_Office/PDF%20Office/PDF%20Master/Class/Purchase/DMG/KMPurchaseCompareDMGWindowController.m"
+                  startingColumnNumber = "9223372036854775807"
+                  endingColumnNumber = "9223372036854775807"
+                  startingLineNumber = "592"
+                  endingLineNumber = "592"
+                  offsetFromSymbolStart = "68">
+               </Location>
+            </Locations>
          </BreakpointContent>
       </BreakpointProxy>
       <BreakpointProxy
@@ -908,22 +940,6 @@
             landmarkType = "24">
          </BreakpointContent>
       </BreakpointProxy>
-      <BreakpointProxy
-         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
-         <BreakpointContent
-            uuid = "2A842700-F289-4A0C-9506-A6C0D3E4488B"
-            shouldBeEnabled = "Yes"
-            ignoreCount = "0"
-            continueAfterRunningActions = "No"
-            filePath = "PDF Master/Class/Batch/View/KMCustomViewButton.swift"
-            startingColumnNumber = "9223372036854775807"
-            endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "311"
-            endingLineNumber = "311"
-            landmarkName = "_toolbarButtonSelected(_:)"
-            landmarkType = "7">
-         </BreakpointContent>
-      </BreakpointProxy>
       <BreakpointProxy
          BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
          <BreakpointContent
@@ -1004,22 +1020,6 @@
             landmarkType = "7">
          </BreakpointContent>
       </BreakpointProxy>
-      <BreakpointProxy
-         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
-         <BreakpointContent
-            uuid = "97038856-D6C1-46D1-9ADB-FC1CCED8D74F"
-            shouldBeEnabled = "Yes"
-            ignoreCount = "0"
-            continueAfterRunningActions = "No"
-            filePath = "PDF Master/Class/Batch/WindowController/KMBatchOperateWindowController.swift"
-            startingColumnNumber = "9223372036854775807"
-            endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "251"
-            endingLineNumber = "251"
-            landmarkName = "batesToolbarItemView"
-            landmarkType = "24">
-         </BreakpointContent>
-      </BreakpointProxy>
       <BreakpointProxy
          BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
          <BreakpointContent
@@ -1228,5 +1228,117 @@
             </Locations>
          </BreakpointContent>
       </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            uuid = "63F38FE3-C2A1-4CB7-8753-F05BEC217B1E"
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "PDF Master/Class/Purchase/DMG/KMPurchaseCompareDMGWindowController.m"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "657"
+            endingLineNumber = "657"
+            landmarkName = "-recommondInfoUpdateNoti:"
+            landmarkType = "7">
+            <Locations>
+               <Location
+                  uuid = "63F38FE3-C2A1-4CB7-8753-F05BEC217B1E - d71baf1b9283ea06"
+                  shouldBeEnabled = "Yes"
+                  ignoreCount = "0"
+                  continueAfterRunningActions = "No"
+                  symbolName = "__64-[KMPurchaseCompareDMGWindowController recommondInfoUpdateNoti:]_block_invoke"
+                  moduleName = "PDF Reader Pro"
+                  usesParentBreakpointCondition = "Yes"
+                  urlString = "file:///Users/kdanmobile/Documents/Git/PDF_Office/PDF%20Office/PDF%20Master/Class/Purchase/DMG/KMPurchaseCompareDMGWindowController.m"
+                  startingColumnNumber = "9223372036854775807"
+                  endingColumnNumber = "9223372036854775807"
+                  startingLineNumber = "657"
+                  endingLineNumber = "657"
+                  offsetFromSymbolStart = "232">
+               </Location>
+               <Location
+                  uuid = "63F38FE3-C2A1-4CB7-8753-F05BEC217B1E - d71baf1b9283ea06"
+                  shouldBeEnabled = "Yes"
+                  ignoreCount = "0"
+                  continueAfterRunningActions = "No"
+                  symbolName = "__64-[KMPurchaseCompareDMGWindowController recommondInfoUpdateNoti:]_block_invoke"
+                  moduleName = "PDF Reader Pro"
+                  usesParentBreakpointCondition = "Yes"
+                  urlString = "file:///Users/kdanmobile/Documents/Git/PDF_Office/PDF%20Office/PDF%20Master/Class/Purchase/DMG/KMPurchaseCompareDMGWindowController.m"
+                  startingColumnNumber = "9223372036854775807"
+                  endingColumnNumber = "9223372036854775807"
+                  startingLineNumber = "657"
+                  endingLineNumber = "657"
+                  offsetFromSymbolStart = "508">
+               </Location>
+            </Locations>
+         </BreakpointContent>
+      </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            uuid = "AAF4E0A5-1802-4C80-87F4-0625C7F562BA"
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "PDF Master/Class/KMAdvertisement/Model/KMAdvertisementModel.swift"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "54"
+            endingLineNumber = "54"
+            landmarkName = "Image"
+            landmarkType = "3">
+         </BreakpointContent>
+      </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            uuid = "A8DE7045-9832-4A2E-8B7C-85929A43E4DF"
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "PDF Master/Class/KMAdvertisement/View/View/KMAdvertisementShowView.swift"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "68"
+            endingLineNumber = "68"
+            landmarkName = "reloadData()"
+            landmarkType = "7">
+            <Locations>
+               <Location
+                  uuid = "A8DE7045-9832-4A2E-8B7C-85929A43E4DF - 2c86e5b9c9e928e9"
+                  shouldBeEnabled = "Yes"
+                  ignoreCount = "0"
+                  continueAfterRunningActions = "No"
+                  symbolName = "PDF_Reader_Pro.KMAdvertisementShowView.reloadData() -&gt; ()"
+                  moduleName = "PDF Reader Pro"
+                  usesParentBreakpointCondition = "Yes"
+                  urlString = "file:///Users/kdanmobile/Documents/Git/PDF_Office/PDF%20Office/PDF%20Master/Class/KMAdvertisement/View/View/KMAdvertisementShowView.swift"
+                  startingColumnNumber = "9223372036854775807"
+                  endingColumnNumber = "9223372036854775807"
+                  startingLineNumber = "68"
+                  endingLineNumber = "68"
+                  offsetFromSymbolStart = "928">
+               </Location>
+               <Location
+                  uuid = "A8DE7045-9832-4A2E-8B7C-85929A43E4DF - 61ccfd90f88c2f1f"
+                  shouldBeEnabled = "Yes"
+                  ignoreCount = "0"
+                  continueAfterRunningActions = "No"
+                  symbolName = "closure #1 (__C.NSImage) -&gt; () in PDF_Reader_Pro.KMAdvertisementShowView.reloadData() -&gt; ()"
+                  moduleName = "PDF Reader Pro"
+                  usesParentBreakpointCondition = "Yes"
+                  urlString = "file:///Users/kdanmobile/Documents/Git/PDF_Office/PDF%20Office/PDF%20Master/Class/KMAdvertisement/View/View/KMAdvertisementShowView.swift"
+                  startingColumnNumber = "9223372036854775807"
+                  endingColumnNumber = "9223372036854775807"
+                  startingLineNumber = "68"
+                  endingLineNumber = "68"
+                  offsetFromSymbolStart = "68">
+               </Location>
+            </Locations>
+         </BreakpointContent>
+      </BreakpointProxy>
    </Breakpoints>
 </Bucket>