Browse Source

clean repo

MOS-7
Andreas Buff 2 years ago
parent
commit
9a63dc82f0
20 changed files with 0 additions and 1349 deletions
  1. +0
    -644
      pEpNotifications/pEpNotifications.xcodeproj/project.pbxproj
  2. +0
    -7
      pEpNotifications/pEpNotifications.xcodeproj/project.xcworkspace/contents.xcworkspacedata
  3. +0
    -8
      pEpNotifications/pEpNotifications.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
  4. +0
    -98
      pEpNotifications/pEpNotifications.xcodeproj/xcshareddata/xcschemes/p≡p updates.xcscheme
  5. +0
    -238
      pEpNotifications/pEpNotifications/AppDelegate.swift
  6. BIN
      pEpNotifications/pEpNotifications/Assets.xcassets/AppIcon.appiconset/AppStore1024x1024-2.png
  7. +0
    -59
      pEpNotifications/pEpNotifications/Assets.xcassets/AppIcon.appiconset/Contents.json
  8. +0
    -6
      pEpNotifications/pEpNotifications/Assets.xcassets/Contents.json
  9. +0
    -70
      pEpNotifications/pEpNotifications/Base.lproj/Main.storyboard
  10. +0
    -40
      pEpNotifications/pEpNotifications/Info.plist
  11. +0
    -6
      pEpNotifications/pEpNotifications/Preview Content/Preview Assets.xcassets/Contents.json
  12. BIN
      pEpNotifications/pEpNotifications/de.lproj/Localizable.strings
  13. +0
    -22
      pEpNotifications/pEpNotifications/de.lproj/Main.strings
  14. BIN
      pEpNotifications/pEpNotifications/en.lproj/Localizable.strings
  15. +0
    -18
      pEpNotifications/pEpNotifications/en.lproj/Main.strings
  16. +0
    -12
      pEpNotifications/pEpNotifications/pEpNotifications.entitlements
  17. +0
    -22
      pEpNotifications/pEpNotificationsTests/Info.plist
  18. +0
    -34
      pEpNotifications/pEpNotificationsTests/pEpNotificationsTests.swift
  19. +0
    -22
      pEpNotifications/pEpNotificationsUITests/Info.plist
  20. +0
    -43
      pEpNotifications/pEpNotificationsUITests/pEpNotificationsUITests.swift

+ 0
- 644
pEpNotifications/pEpNotifications.xcodeproj/project.pbxproj View File

@ -1,644 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 50;
objects = {
/* Begin PBXBuildFile section */
3527B2B224802F84007A6276 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3527B2B124802F84007A6276 /* AppDelegate.swift */; };
3527B2B624802F87007A6276 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 3527B2B524802F87007A6276 /* Assets.xcassets */; };
3527B2B924802F87007A6276 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 3527B2B824802F87007A6276 /* Preview Assets.xcassets */; };
3527B2C824802F87007A6276 /* pEpNotificationsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3527B2C724802F87007A6276 /* pEpNotificationsTests.swift */; };
3527B2D324802F87007A6276 /* pEpNotificationsUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3527B2D224802F87007A6276 /* pEpNotificationsUITests.swift */; };
3594303F2483011000DCBD65 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 3594303D2483011000DCBD65 /* Main.storyboard */; };
359430482483264F00DCBD65 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 3594304A2483264F00DCBD65 /* Localizable.strings */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
3527B2C424802F87007A6276 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 3527B2A624802F84007A6276 /* Project object */;
proxyType = 1;
remoteGlobalIDString = 3527B2AD24802F84007A6276;
remoteInfo = pEpNotifications;
};
3527B2CF24802F87007A6276 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 3527B2A624802F84007A6276 /* Project object */;
proxyType = 1;
remoteGlobalIDString = 3527B2AD24802F84007A6276;
remoteInfo = pEpNotifications;
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
3527B2AE24802F84007A6276 /* p≡p updates.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "p≡p updates.app"; sourceTree = BUILT_PRODUCTS_DIR; };
3527B2B124802F84007A6276 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
3527B2B524802F87007A6276 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
3527B2B824802F87007A6276 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = "<group>"; };
3527B2BD24802F87007A6276 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
3527B2BE24802F87007A6276 /* pEpNotifications.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = pEpNotifications.entitlements; sourceTree = "<group>"; };
3527B2C324802F87007A6276 /* pEpNotificationsTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = pEpNotificationsTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
3527B2C724802F87007A6276 /* pEpNotificationsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = pEpNotificationsTests.swift; sourceTree = "<group>"; };
3527B2C924802F87007A6276 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
3527B2CE24802F87007A6276 /* pEpNotificationsUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = pEpNotificationsUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
3527B2D224802F87007A6276 /* pEpNotificationsUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = pEpNotificationsUITests.swift; sourceTree = "<group>"; };
3527B2D424802F87007A6276 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
3594303E2483011000DCBD65 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
359430432483081B00DCBD65 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Main.strings; sourceTree = "<group>"; };
35943044248309BE00DCBD65 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Main.strings; sourceTree = "<group>"; };
359430492483264F00DCBD65 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = "<group>"; };
3594304B2483266200DCBD65 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
3527B2AB24802F84007A6276 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
3527B2C024802F87007A6276 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
3527B2CB24802F87007A6276 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
3527B2A524802F84007A6276 = {
isa = PBXGroup;
children = (
3527B2B024802F84007A6276 /* pEpNotifications */,
3527B2C624802F87007A6276 /* pEpNotificationsTests */,
3527B2D124802F87007A6276 /* pEpNotificationsUITests */,
3527B2AF24802F84007A6276 /* Products */,
);
sourceTree = "<group>";
};
3527B2AF24802F84007A6276 /* Products */ = {
isa = PBXGroup;
children = (
3527B2AE24802F84007A6276 /* p≡p updates.app */,
3527B2C324802F87007A6276 /* pEpNotificationsTests.xctest */,
3527B2CE24802F87007A6276 /* pEpNotificationsUITests.xctest */,
);
name = Products;
sourceTree = "<group>";
};
3527B2B024802F84007A6276 /* pEpNotifications */ = {
isa = PBXGroup;
children = (
3594304A2483264F00DCBD65 /* Localizable.strings */,
3594303D2483011000DCBD65 /* Main.storyboard */,
3527B2B124802F84007A6276 /* AppDelegate.swift */,
3527B2B524802F87007A6276 /* Assets.xcassets */,
3527B2BD24802F87007A6276 /* Info.plist */,
3527B2BE24802F87007A6276 /* pEpNotifications.entitlements */,
3527B2B724802F87007A6276 /* Preview Content */,
);
path = pEpNotifications;
sourceTree = "<group>";
};
3527B2B724802F87007A6276 /* Preview Content */ = {
isa = PBXGroup;
children = (
3527B2B824802F87007A6276 /* Preview Assets.xcassets */,
);
path = "Preview Content";
sourceTree = "<group>";
};
3527B2C624802F87007A6276 /* pEpNotificationsTests */ = {
isa = PBXGroup;
children = (
3527B2C724802F87007A6276 /* pEpNotificationsTests.swift */,
3527B2C924802F87007A6276 /* Info.plist */,
);
path = pEpNotificationsTests;
sourceTree = "<group>";
};
3527B2D124802F87007A6276 /* pEpNotificationsUITests */ = {
isa = PBXGroup;
children = (
3527B2D224802F87007A6276 /* pEpNotificationsUITests.swift */,
3527B2D424802F87007A6276 /* Info.plist */,
);
path = pEpNotificationsUITests;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
3527B2AD24802F84007A6276 /* p≡p updates */ = {
isa = PBXNativeTarget;
buildConfigurationList = 3527B2D724802F87007A6276 /* Build configuration list for PBXNativeTarget "p≡p updates" */;
buildPhases = (
3527B2AA24802F84007A6276 /* Sources */,
3527B2AB24802F84007A6276 /* Frameworks */,
3527B2AC24802F84007A6276 /* Resources */,
1583472A24FFFA7E007EB7DA /* Copy pEp Updates App for pEp4Thunderbird Installer */,
);
buildRules = (
);
dependencies = (
);
name = "p≡p updates";
productName = pEpNotifications;
productReference = 3527B2AE24802F84007A6276 /* p≡p updates.app */;
productType = "com.apple.product-type.application";
};
3527B2C224802F87007A6276 /* pEpNotificationsTests */ = {
isa = PBXNativeTarget;
buildConfigurationList = 3527B2DA24802F87007A6276 /* Build configuration list for PBXNativeTarget "pEpNotificationsTests" */;
buildPhases = (
3527B2BF24802F87007A6276 /* Sources */,
3527B2C024802F87007A6276 /* Frameworks */,
3527B2C124802F87007A6276 /* Resources */,
);
buildRules = (
);
dependencies = (
3527B2C524802F87007A6276 /* PBXTargetDependency */,
);
name = pEpNotificationsTests;
productName = pEpNotificationsTests;
productReference = 3527B2C324802F87007A6276 /* pEpNotificationsTests.xctest */;
productType = "com.apple.product-type.bundle.unit-test";
};
3527B2CD24802F87007A6276 /* pEpNotificationsUITests */ = {
isa = PBXNativeTarget;
buildConfigurationList = 3527B2DD24802F87007A6276 /* Build configuration list for PBXNativeTarget "pEpNotificationsUITests" */;
buildPhases = (
3527B2CA24802F87007A6276 /* Sources */,
3527B2CB24802F87007A6276 /* Frameworks */,
3527B2CC24802F87007A6276 /* Resources */,
);
buildRules = (
);
dependencies = (
3527B2D024802F87007A6276 /* PBXTargetDependency */,
);
name = pEpNotificationsUITests;
productName = pEpNotificationsUITests;
productReference = 3527B2CE24802F87007A6276 /* pEpNotificationsUITests.xctest */;
productType = "com.apple.product-type.bundle.ui-testing";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
3527B2A624802F84007A6276 /* Project object */ = {
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 1150;
LastUpgradeCheck = 1150;
ORGANIZATIONNAME = "p≡p foundation";
TargetAttributes = {
3527B2AD24802F84007A6276 = {
CreatedOnToolsVersion = 11.5;
};
3527B2C224802F87007A6276 = {
CreatedOnToolsVersion = 11.5;
TestTargetID = 3527B2AD24802F84007A6276;
};
3527B2CD24802F87007A6276 = {
CreatedOnToolsVersion = 11.5;
TestTargetID = 3527B2AD24802F84007A6276;
};
};
};
buildConfigurationList = 3527B2A924802F84007A6276 /* Build configuration list for PBXProject "pEpNotifications" */;
compatibilityVersion = "Xcode 9.3";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
Base,
de,
);
mainGroup = 3527B2A524802F84007A6276;
productRefGroup = 3527B2AF24802F84007A6276 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
3527B2AD24802F84007A6276 /* p≡p updates */,
3527B2C224802F87007A6276 /* pEpNotificationsTests */,
3527B2CD24802F87007A6276 /* pEpNotificationsUITests */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
3527B2AC24802F84007A6276 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
3594303F2483011000DCBD65 /* Main.storyboard in Resources */,
359430482483264F00DCBD65 /* Localizable.strings in Resources */,
3527B2B924802F87007A6276 /* Preview Assets.xcassets in Resources */,
3527B2B624802F87007A6276 /* Assets.xcassets in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
3527B2C124802F87007A6276 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
3527B2CC24802F87007A6276 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
1583472A24FFFA7E007EB7DA /* Copy pEp Updates App for pEp4Thunderbird Installer */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Copy pEp Updates App for pEp4Thunderbird Installer";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "FOR_TB_DIR=${PROJECT_DIR}/../../local/apps\nmkdir -p ${FOR_TB_DIR}\ncp -r \"${BUILD_DIR}/Release/p≡p updates.app\" ${FOR_TB_DIR}\n";
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
3527B2AA24802F84007A6276 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
3527B2B224802F84007A6276 /* AppDelegate.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
3527B2BF24802F87007A6276 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
3527B2C824802F87007A6276 /* pEpNotificationsTests.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
3527B2CA24802F87007A6276 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
3527B2D324802F87007A6276 /* pEpNotificationsUITests.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
3527B2C524802F87007A6276 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 3527B2AD24802F84007A6276 /* p≡p updates */;
targetProxy = 3527B2C424802F87007A6276 /* PBXContainerItemProxy */;
};
3527B2D024802F87007A6276 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 3527B2AD24802F84007A6276 /* p≡p updates */;
targetProxy = 3527B2CF24802F87007A6276 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
3594303D2483011000DCBD65 /* Main.storyboard */ = {
isa = PBXVariantGroup;
children = (
3594303E2483011000DCBD65 /* Base */,
359430432483081B00DCBD65 /* en */,
35943044248309BE00DCBD65 /* de */,
);
name = Main.storyboard;
sourceTree = "<group>";
};
3594304A2483264F00DCBD65 /* Localizable.strings */ = {
isa = PBXVariantGroup;
children = (
359430492483264F00DCBD65 /* de */,
3594304B2483266200DCBD65 /* en */,
);
name = Localizable.strings;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
3527B2D524802F87007A6276 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.8;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
PRODUCT_MODULE_NAME = pEp_updater;
PRODUCT_NAME = "p≡p updater";
SDKROOT = macosx;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
SWIFT_OBJC_BRIDGING_HEADER = "";
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
};
name = Debug;
};
3527B2D624802F87007A6276 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_INJECT_BASE_ENTITLEMENTS = NO;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.8;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
PRODUCT_MODULE_NAME = pEp_updater;
PRODUCT_NAME = "p≡p updater";
SDKROOT = macosx;
SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_OBJC_BRIDGING_HEADER = "";
SWIFT_OPTIMIZATION_LEVEL = "-O";
};
name = Release;
};
3527B2D824802F87007A6276 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = pEpNotifications/pEpNotifications.entitlements;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_ASSET_PATHS = "\"pEpNotifications/Preview Content\"";
DEVELOPMENT_TEAM = NQLYU6MGPN;
ENABLE_PREVIEWS = YES;
INFOPLIST_FILE = pEpNotifications/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.10;
PRODUCT_BUNDLE_IDENTIFIER = pEp.foundation.Notifications;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
VALID_ARCHS = x86_64;
};
name = Debug;
};
3527B2D924802F87007A6276 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = pEpNotifications/pEpNotifications.entitlements;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
DEVELOPMENT_ASSET_PATHS = "\"pEpNotifications/Preview Content\"";
DEVELOPMENT_TEAM = NQLYU6MGPN;
ENABLE_PREVIEWS = YES;
INFOPLIST_FILE = pEpNotifications/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.10;
PRODUCT_BUNDLE_IDENTIFIER = pEp.foundation.Notifications;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
VALID_ARCHS = x86_64;
};
name = Release;
};
3527B2DB24802F87007A6276 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
INFOPLIST_FILE = pEpNotificationsTests/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@loader_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.15;
PRODUCT_BUNDLE_IDENTIFIER = pEp.foundation.pEpNotificationsTests;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/pEpNotifications.app/Contents/MacOS/pEpNotifications";
};
name = Debug;
};
3527B2DC24802F87007A6276 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
INFOPLIST_FILE = pEpNotificationsTests/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@loader_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.15;
PRODUCT_BUNDLE_IDENTIFIER = pEp.foundation.pEpNotificationsTests;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/pEpNotifications.app/Contents/MacOS/pEpNotifications";
};
name = Release;
};
3527B2DE24802F87007A6276 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
INFOPLIST_FILE = pEpNotificationsUITests/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@loader_path/../Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = pEp.foundation.pEpNotificationsUITests;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
TEST_TARGET_NAME = pEpNotifications;
};
name = Debug;
};
3527B2DF24802F87007A6276 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
INFOPLIST_FILE = pEpNotificationsUITests/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@loader_path/../Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = pEp.foundation.pEpNotificationsUITests;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
TEST_TARGET_NAME = pEpNotifications;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
3527B2A924802F84007A6276 /* Build configuration list for PBXProject "pEpNotifications" */ = {
isa = XCConfigurationList;
buildConfigurations = (
3527B2D524802F87007A6276 /* Debug */,
3527B2D624802F87007A6276 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
3527B2D724802F87007A6276 /* Build configuration list for PBXNativeTarget "p≡p updates" */ = {
isa = XCConfigurationList;
buildConfigurations = (
3527B2D824802F87007A6276 /* Debug */,
3527B2D924802F87007A6276 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
3527B2DA24802F87007A6276 /* Build configuration list for PBXNativeTarget "pEpNotificationsTests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
3527B2DB24802F87007A6276 /* Debug */,
3527B2DC24802F87007A6276 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
3527B2DD24802F87007A6276 /* Build configuration list for PBXNativeTarget "pEpNotificationsUITests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
3527B2DE24802F87007A6276 /* Debug */,
3527B2DF24802F87007A6276 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 3527B2A624802F84007A6276 /* Project object */;
}

+ 0
- 7
pEpNotifications/pEpNotifications.xcodeproj/project.xcworkspace/contents.xcworkspacedata View File

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
version = "1.0">
<FileRef
location = "self:">
</FileRef>
</Workspace>

+ 0
- 8
pEpNotifications/pEpNotifications.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IDEDidComputeMac32BitWarning</key>
<true/>
</dict>
</plist>

+ 0
- 98
pEpNotifications/pEpNotifications.xcodeproj/xcshareddata/xcschemes/p≡p updates.xcscheme View File

@ -1,98 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1150"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3527B2AD24802F84007A6276"
BuildableName = "p&#x2261;p updates.app"
BlueprintName = "p&#x2261;p updates"
ReferencedContainer = "container:pEpNotifications.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3527B2C224802F87007A6276"
BuildableName = "pEpNotificationsTests.xctest"
BlueprintName = "pEpNotificationsTests"
ReferencedContainer = "container:pEpNotifications.xcodeproj">
</BuildableReference>
</TestableReference>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3527B2CD24802F87007A6276"
BuildableName = "pEpNotificationsUITests.xctest"
BlueprintName = "pEpNotificationsUITests"
ReferencedContainer = "container:pEpNotifications.xcodeproj">
</BuildableReference>
</TestableReference>
</Testables>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3527B2AD24802F84007A6276"
BuildableName = "p&#x2261;p updates.app"
BlueprintName = "p&#x2261;p updates"
ReferencedContainer = "container:pEpNotifications.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "3527B2AD24802F84007A6276"
BuildableName = "p&#x2261;p updates.app"
BlueprintName = "p&#x2261;p updates"
ReferencedContainer = "container:pEpNotifications.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

+ 0
- 238
pEpNotifications/pEpNotifications/AppDelegate.swift View File

@ -1,238 +0,0 @@
//
// AppDelegate.swift
// pEpNotifications
//
// Created by Volker Birk on 28.05.20.
// Copyright © 2020 pp foundation. All rights reserved.
// This file is under GNU General Public License 3.0
//
import Cocoa
import SwiftUI
enum DNType : Int { case ready = 0, downloading, downloadArrived, noDownloadAvailable }
@objc(pEpNotificationProtocol) protocol pEpNotificationProtocol {
func notifyDownload(_ type: Int, withName: NSString, withFilename: NSString)
}
@objc(pEpMacOSAdapterProtocol) protocol pEpMacOSAdapterProtocol {
func subscribeForUpdate(_ endpoint: NSXPCListenerEndpoint?)
func unsubscribeForUpdate()
func updateNow()
func scheduleUpdates()
func stopUpdates()
}
@objc class pEpNotification : NSObject, pEpNotificationProtocol {
var delegate: pEpNotificationProtocol!
func notifyDownload(_ type: Int, withName: NSString, withFilename: NSString) {
NSLog("notifyDownload");
delegate?.notifyDownload(type, withName: withName, withFilename: withFilename)
}
}
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate, NSUserNotificationCenterDelegate, NSXPCListenerDelegate, pEpNotificationProtocol {
@IBOutlet weak var pEpMenu: NSMenu!
@IBOutlet weak var statusText: NSMenuItem!
@IBOutlet weak var _updateNow: NSMenuItem!
@IBOutlet weak var _scheduleUpdates: NSMenuItem!
@IBOutlet weak var _alwaysShowThisMenu: NSMenuItem!
var statusBarItem: NSStatusItem? = nil
var connection: NSXPCConnection!
var service: pEpMacOSAdapterProtocol!
var nc = NSUserNotificationCenter.default
var clientListener: NSXPCListener!
var receiver: pEpNotification!
@objc func installMenuExtra() {
if statusBarItem == nil {
statusBarItem = NSStatusBar.system.statusItem(withLength: NSStatusItem.squareLength)
statusBarItem?.button?.title = "p≡p"
statusBarItem?.menu = NSApp.menu?.item(at: 0)?.submenu
_updateNow.action = #selector(updateNow)
}
}
func uninstallMenuExtra() {
if (statusBarItem != nil && !UserDefaults.standard.bool(forKey: "AlwaysShowThisMenu")) {
NSStatusBar.system.removeStatusItem(statusBarItem!)
statusBarItem = nil
}
}
func setDownloadState(_ text: String, _ product: Dictionary<String, Any>? = nil) {
if product == nil {
statusText.title = NSLocalizedString(text, comment: "")
statusText.isEnabled = false
}
else {
let name = product?["name"] as! String
statusText.title = NSString.localizedStringWithFormat(NSLocalizedString(text, comment: "") as NSString, name) as String
statusText.isEnabled = true
}
statusText.representedObject = product
}
@IBAction func scheduleUpdates(_ sender: NSMenuItem) {
if sender.state == NSControl.StateValue.on {
sender.state = NSControl.StateValue.off
UserDefaults.standard.set(false, forKey: "ScheduleUpdates")
service.stopUpdates()
}
else {
sender.state = NSControl.StateValue.on
UserDefaults.standard.set(true, forKey: "ScheduleUpdates")
service.scheduleUpdates()
}
}
@IBAction func alwaysShowThisMenu(_ sender: NSMenuItem) {
if sender.state == NSControl.StateValue.on {
sender.state = NSControl.StateValue.off
UserDefaults.standard.set(false, forKey: "AlwaysShowThisMenu")
if statusText.representedObject == nil {
uninstallMenuExtra()
}
}
else {
sender.state = NSControl.StateValue.on
UserDefaults.standard.set(true, forKey: "AlwaysShowThisMenu")
}
}
@IBAction func installNow(_ sender: NSMenuItem) {
uninstallMenuExtra()
let product = sender.representedObject as! Dictionary<String, Any>
let un = product["notification"] as! NSUserNotification
nc.removeDeliveredNotification(un)
NSLog("pEpNotifications: installNow clicked for %@", product["name"] as! String)
NSWorkspace.shared.openFile(product["filename"] as! String)
sender.representedObject = nil
setDownloadState("Connected.")
}
func notifyDownload(_ type: Int, withName: NSString, withFilename: NSString)
{
let _type = DNType.init(rawValue: type)
switch _type {
case .downloading:
NSLog("pEpNotifications: downloading")
setDownloadState(String(format: NSLocalizedString("Downloading update for %@…", comment: ""), withName))
self.performSelector(onMainThread: #selector(installMenuExtra), with:nil, waitUntilDone: false)
case .downloadArrived:
let un = NSUserNotification()
un.title = NSLocalizedString("Update available", comment: "")
un.informativeText = String(format: NSLocalizedString("A new update for %@ is ready to be installed.", comment: ""), withName)
un.actionButtonTitle = NSLocalizedString("Install", comment: "")
un.hasActionButton = true
un.otherButtonTitle = NSLocalizedString("Not now", comment: "")
un.soundName = NSUserNotificationDefaultSoundName
let installTitle : String = NSLocalizedString("Install", comment: "")
un.additionalActions = [NSUserNotificationAction(identifier: "install", title: installTitle)]
un.setValue(true, forKey: "_showsButtons")
un.userInfo = ["name": withName, "filename": withFilename]
nc.deliver(un)
setDownloadState("New version of %@ available", ["name": withName, "filename": withFilename, "notification": un])
case .noDownloadAvailable:
NSLog("pEpNotifications: no download available")
setDownloadState("The software is up to date.")
case .ready:
NSLog("pEpNotifications: ready.")
setDownloadState("Connected.")
case .none:
break;
}
}
@objc func updateNow() {
nc.removeAllDeliveredNotifications()
service.updateNow()
}
@objc func userNotificationCenter(_ : NSUserNotificationCenter, didActivate: NSUserNotification) {
if didActivate.activationType == NSUserNotification.ActivationType.actionButtonClicked {
uninstallMenuExtra()
let filename : String = didActivate.userInfo?["filename"] as! String;
NSLog("pEpNotifications: actionButtonClicked for %@", filename)
NSWorkspace.shared.openFile(filename)
setDownloadState("Connected.")
}
}
func proxyErrorHandler(err: Error) -> Void {
NSLog("%@", err.localizedDescription)
setDownloadState("Connection failed")
}
@objc func listener(_ listener: NSXPCListener, shouldAcceptNewConnection newConnection: NSXPCConnection) -> Bool {
newConnection.exportedInterface = NSXPCInterface.init(with: pEpNotificationProtocol.self)
let obj = pEpNotification()
obj.delegate = self
newConnection.exportedObject = obj;
newConnection.resume()
return true
}
func applicationDidFinishLaunching(_ aNotification: Notification) {
// preference defaults
let appDefaults = ["ScheduleUpdates": true, "AlwaysShowThisMenu": false]
UserDefaults.standard.register(defaults: appDefaults)
if UserDefaults.standard.bool(forKey: "AlwaysShowThisMenu") {
_alwaysShowThisMenu.state = NSControl.StateValue.on
installMenuExtra()
}
else {
_alwaysShowThisMenu.state = NSControl.StateValue.off
}
setDownloadState("Connecting…")
// connect to XPC service
connection = NSXPCConnection.init(machServiceName: "foundation.pEp.adapter.macOS")
if connection != nil {
connection.remoteObjectInterface = NSXPCInterface.init(with: pEpMacOSAdapterProtocol.self)
connection.resume()
service = connection.remoteObjectProxyWithErrorHandler(proxyErrorHandler) as? pEpMacOSAdapterProtocol
// init client callback service
clientListener = NSXPCListener.anonymous()
clientListener.delegate = self
clientListener.resume()
// subscribe and schedule updates
service.subscribeForUpdate(clientListener.endpoint)
if UserDefaults.standard.bool(forKey: "ScheduleUpdates") {
service.scheduleUpdates()
_scheduleUpdates.state = NSControl.StateValue.on
}
else {
service.stopUpdates()
_scheduleUpdates.state = NSControl.StateValue.off
}
service.updateNow()
}
else {
NSLog("pEpNotifications: %@", "cannot connect to pEp.foundation.adapter.macOS")
}
nc.removeAllDeliveredNotifications()
nc.delegate = self
}
func applicationWillTerminate(_ aNotification: Notification) {
service.unsubscribeForUpdate()
connection?.invalidate()
}
}

BIN
pEpNotifications/pEpNotifications/Assets.xcassets/AppIcon.appiconset/AppStore1024x1024-2.png View File

Before After
Width: 1024  |  Height: 1024  |  Size: 14 KiB

+ 0
- 59
pEpNotifications/pEpNotifications/Assets.xcassets/AppIcon.appiconset/Contents.json View File

@ -1,59 +0,0 @@
{
"images" : [
{
"idiom" : "mac",
"scale" : "1x",
"size" : "16x16"
},
{
"idiom" : "mac",
"scale" : "2x",
"size" : "16x16"
},
{
"idiom" : "mac",
"scale" : "1x",
"size" : "32x32"
},
{
"idiom" : "mac",
"scale" : "2x",
"size" : "32x32"
},
{
"idiom" : "mac",
"scale" : "1x",
"size" : "128x128"
},
{
"idiom" : "mac",
"scale" : "2x",
"size" : "128x128"
},
{
"idiom" : "mac",
"scale" : "1x",
"size" : "256x256"
},
{
"idiom" : "mac",
"scale" : "2x",
"size" : "256x256"
},
{
"idiom" : "mac",
"scale" : "1x",
"size" : "512x512"
},
{
"filename" : "AppStore1024x1024-2.png",
"idiom" : "mac",
"scale" : "2x",
"size" : "512x512"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

+ 0
- 6
pEpNotifications/pEpNotifications/Assets.xcassets/Contents.json View File

@ -1,6 +0,0 @@
{
"info" : {
"author" : "xcode",
"version" : 1
}
}

+ 0
- 70
pEpNotifications/pEpNotifications/Base.lproj/Main.storyboard View File

@ -1,70 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.Storyboard.XIB" version="3.0" toolsVersion="16097" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="16097"/>
</dependencies>
<scenes>
<!--Application-->
<scene sceneID="JPo-4y-FX3">
<objects>
<application id="hnw-xV-0zn" sceneMemberID="viewController">
<menu key="mainMenu" title="Main Menu" systemMenu="main" id="AYu-sK-qS6">
<items>
<menuItem title="pEpNotifications" id="1Xt-HY-uBw">
<modifierMask key="keyEquivalentModifierMask"/>
<menu key="submenu" title="pEpNotifications" systemMenu="apple" autoenablesItems="NO" id="uQy-DD-JDr">
<items>
<menuItem title="Starting…" enabled="NO" id="D45-AS-mhG">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="installNow:" target="Voe-Tx-rLC" id="ESa-58-lKy"/>
</connections>
</menuItem>
<menuItem title="Update now" id="aUJ-VR-2jH">
<modifierMask key="keyEquivalentModifierMask"/>
</menuItem>
<menuItem isSeparatorItem="YES" id="vo5-AO-stB"/>
<menuItem title="Schedule updates" id="y9Y-ru-Qxs" userLabel="Schedule updates">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="scheduleUpdates:" target="Voe-Tx-rLC" id="H5q-dk-4ys"/>
</connections>
</menuItem>
<menuItem title="Always show this menu" id="u5e-3R-3lT">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="alwaysShowThisMenu:" target="Voe-Tx-rLC" id="fty-fL-gSf"/>
</connections>
</menuItem>
<menuItem title="Quit p≡p" hidden="YES" id="4sb-4s-VLi" userLabel="Quit p≡p">
<modifierMask key="keyEquivalentModifierMask"/>
<connections>
<action selector="terminate:" target="Ady-hI-5gd" id="Te7-pn-YzF"/>
</connections>
</menuItem>
</items>
</menu>
</menuItem>
</items>
</menu>
<connections>
<outlet property="delegate" destination="Voe-Tx-rLC" id="6Zd-0P-iS4"/>
</connections>
</application>
<customObject id="Voe-Tx-rLC" customClass="AppDelegate" customModule="pEp_updater" customModuleProvider="target">
<connections>
<outlet property="_alwaysShowThisMenu" destination="u5e-3R-3lT" id="cw9-oL-BVd"/>
<outlet property="_scheduleUpdates" destination="y9Y-ru-Qxs" id="JEY-Hx-pbv"/>
<outlet property="_updateNow" destination="aUJ-VR-2jH" id="34x-R2-L4V"/>
<outlet property="pEpMenu" destination="uQy-DD-JDr" id="SSj-Qs-zAq"/>
<outlet property="statusText" destination="D45-AS-mhG" id="PNv-G8-o8P"/>
</connections>
</customObject>
<customObject id="YLy-65-1bz" customClass="NSFontManager"/>
<customObject id="Ady-hI-5gd" userLabel="First Responder" customClass="NSResponder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="75" y="0.0"/>
</scene>
</scenes>
</document>

+ 0
- 40
pEpNotifications/pEpNotifications/Info.plist View File

@ -1,40 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>LSBackgroundOnly</key>
<true/>
<key>LSMinimumSystemVersion</key>
<string>$(MACOSX_DEPLOYMENT_TARGET)</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2020 p≡p foundation. All rights reserved.</string>
<key>NSMainStoryboardFile</key>
<string>Main</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>NSSupportsAutomaticTermination</key>
<true/>
<key>NSSupportsSuddenTermination</key>
<true/>
<key>NSUserNotificationAlertStyle</key>
<string>alert</string>
</dict>
</plist>

+ 0
- 6
pEpNotifications/pEpNotifications/Preview Content/Preview Assets.xcassets/Contents.json View File

@ -1,6 +0,0 @@
{
"info" : {
"author" : "xcode",
"version" : 1
}
}

BIN
pEpNotifications/pEpNotifications/de.lproj/Localizable.strings View File


+ 0
- 22
pEpNotifications/pEpNotifications/de.lproj/Main.strings View File

@ -1,22 +0,0 @@
/* Class = "NSMenuItem"; title = "pEpNotifications"; ObjectID = "1Xt-HY-uBw"; */
"1Xt-HY-uBw.title" = "p≡p updates";
/* Class = "NSMenuItem"; title = "Quit p≡p"; ObjectID = "4sb-4s-VLi"; */
"4sb-4s-VLi.title" = "p≡p beenden";
/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */
"AYu-sK-qS6.title" = "Main Menu";
/* Class = "NSMenuItem"; title = "Starting…"; ObjectID = "D45-AS-mhG"; */
"D45-AS-mhG.title" = "Starten…";
/* Class = "NSMenu"; title = "pEpNotifications"; ObjectID = "uQy-DD-JDr"; */
"uQy-DD-JDr.title" = "p≡p updates";
"aUJ-VR-2jH.title" = "Jetzt nach Updates suchen";
"2ca-qV-RUD.title" = "Dieses Menü ausblenden falls kein Update vorhanden";
"y9Y-ru-Qxs.title" = "Automatische Updates";
"u5e-3R-3lT.title" = "Dieses Menü immer anzeigen";

BIN
pEpNotifications/pEpNotifications/en.lproj/Localizable.strings View File


+ 0
- 18
pEpNotifications/pEpNotifications/en.lproj/Main.strings View File

@ -1,18 +0,0 @@
/* Class = "NSMenuItem"; title = "pEpNotifications"; ObjectID = "1Xt-HY-uBw"; */
"1Xt-HY-uBw.title" = "p≡p updates";
/* Class = "NSMenuItem"; title = "Quit p≡p"; ObjectID = "4sb-4s-VLi"; */
"4sb-4s-VLi.title" = "Quit p≡p";
/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */
"AYu-sK-qS6.title" = "Main Menu";
/* Class = "NSMenuItem"; title = "Starting…"; ObjectID = "D45-AS-mhG"; */
"D45-AS-mhG.title" = "Starting…";
/* Class = "NSMenu"; title = "pEpNotifications"; ObjectID = "uQy-DD-JDr"; */
"uQy-DD-JDr.title" = "p≡p updates";
"aUJ-VR-2jH.title" = "Update now";
"y9Y-ru-Qxs.title" = "Keep software up to date";

+ 0
- 12
pEpNotifications/pEpNotifications/pEpNotifications.entitlements View File

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.app-sandbox</key>
<false/>
<key>com.apple.security.temporary-exception.mach-lookup.global-name</key>
<array>
<string>foundation.pEp.adapter.macOS</string>
</array>
</dict>
</plist>

+ 0
- 22
pEpNotifications/pEpNotificationsTests/Info.plist View File

@ -1,22 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1</string>
</dict>
</plist>

+ 0
- 34
pEpNotifications/pEpNotificationsTests/pEpNotificationsTests.swift View File

@ -1,34 +0,0 @@
//
// pEpNotificationsTests.swift
// pEpNotificationsTests
//
// Created by Volker Birk on 28.05.20.
// Copyright © 2020 pp foundation. All rights reserved.
//
import XCTest
@testable import pEpNotifications
class pEpNotificationsTests: XCTestCase {
override func setUpWithError() throws {
// Put setup code here. This method is called before the invocation of each test method in the class.
}
override func tearDownWithError() throws {
// Put teardown code here. This method is called after the invocation of each test method in the class.
}
func testExample() throws {
// This is an example of a functional test case.
// Use XCTAssert and related functions to verify your tests produce the correct results.
}
func testPerformanceExample() throws {
// This is an example of a performance test case.
self.measure {
// Put the code you want to measure the time of here.
}
}
}

+ 0
- 22
pEpNotifications/pEpNotificationsUITests/Info.plist View File

@ -1,22 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1</string>
</dict>
</plist>

+ 0
- 43
pEpNotifications/pEpNotificationsUITests/pEpNotificationsUITests.swift View File

@ -1,43 +0,0 @@
//
// pEpNotificationsUITests.swift
// pEpNotificationsUITests
//
// Created by Volker Birk on 28.05.20.
// Copyright © 2020 pp foundation. All rights reserved.
//
import XCTest
class pEpNotificationsUITests: XCTestCase {
override func setUpWithError() throws {
// Put setup code here. This method is called before the invocation of each test method in the class.
// In UI tests it is usually best to stop immediately when a failure occurs.
continueAfterFailure = false
// In UI tests its important to set the initial state - such as interface orientation - required for your tests before they run. The setUp method is a good place to do this.
}
override func tearDownWithError() throws {
// Put teardown code here. This method is called after the invocation of each test method in the class.
}
func testExample() throws {
// UI tests must launch the application that they test.
let app = XCUIApplication()
app.launch()
// Use recording to get started writing UI tests.
// Use XCTAssert and related functions to verify your tests produce the correct results.
}
func testLaunchPerformance() throws {
if #available(macOS 10.15, iOS 13.0, tvOS 13.0, *) {
// This measures how long it takes to launch your application.
measure(metrics: [XCTOSSignpostMetric.applicationLaunch]) {
XCUIApplication().launch()
}
}
}
}

Loading…
Cancel
Save