From 1569cb9b0c19cab556df85f19a405562cbf92296 Mon Sep 17 00:00:00 2001 From: Tim Bert <5411131+timbms@users.noreply.github.com> Date: Sun, 15 Sep 2024 10:38:03 +0200 Subject: [PATCH 1/2] Revert "Getting rid of blankicon.png as placeholder (#819)" (#820) This reverts commit a70d740da0f8d4f92fdb9fde900b8753663cedb4. --- openHAB/blankicon.png | Bin 0 -> 3701 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 openHAB/blankicon.png diff --git a/openHAB/blankicon.png b/openHAB/blankicon.png new file mode 100644 index 0000000000000000000000000000000000000000..421c16fbaae8c3aa28ce06e11fc6bff3d4b186ba GIT binary patch literal 3701 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 Date: Sun, 15 Sep 2024 10:41:04 +0200 Subject: [PATCH 2/2] Remove blank icon (#821) * Getting rid of blankicon.png as placeholder * Get rid of blankIcon --- openHAB.xcodeproj/project.pbxproj | 4 - .../xcshareddata/swiftpm/Package.resolved | 198 ------------------ openHAB/OpenHABSitemapViewController.swift | 2 +- openHAB/blankicon.png | Bin 3701 -> 0 bytes 4 files changed, 1 insertion(+), 203 deletions(-) delete mode 100644 openHAB/blankicon.png diff --git a/openHAB.xcodeproj/project.pbxproj b/openHAB.xcodeproj/project.pbxproj index 5349b6e2c..1cb31b6c3 100644 --- a/openHAB.xcodeproj/project.pbxproj +++ b/openHAB.xcodeproj/project.pbxproj @@ -152,7 +152,6 @@ DF06F1FC18FEC2020011E7B9 /* ColorPickerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF06F1FB18FEC2020011E7B9 /* ColorPickerViewController.swift */; }; DF1B302D1CF5C667009C921C /* OpenHABNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF1B302C1CF5C667009C921C /* OpenHABNotification.swift */; }; DF4B84041885A53700F34902 /* OpenHABDataObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF4B84031885A53700F34902 /* OpenHABDataObject.swift */; }; - DF4B84071885AE0E00F34902 /* blankicon.png in Resources */ = {isa = PBXBuildFile; fileRef = DF4B84061885AE0E00F34902 /* blankicon.png */; }; DF4B84131886DAC400F34902 /* FrameUITableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF4B84121886DAC400F34902 /* FrameUITableViewCell.swift */; }; DF4B84161886EACA00F34902 /* GenericUITableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF4B84151886EACA00F34902 /* GenericUITableViewCell.swift */; }; DFA13CB418872EBD006355C3 /* SwitchUITableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFA13CB318872EBD006355C3 /* SwitchUITableViewCell.swift */; }; @@ -445,7 +444,6 @@ DF06F1FB18FEC2020011E7B9 /* ColorPickerViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ColorPickerViewController.swift; sourceTree = ""; }; DF1B302C1CF5C667009C921C /* OpenHABNotification.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OpenHABNotification.swift; sourceTree = ""; }; DF4B84031885A53700F34902 /* OpenHABDataObject.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OpenHABDataObject.swift; sourceTree = ""; }; - DF4B84061885AE0E00F34902 /* blankicon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = blankicon.png; sourceTree = ""; }; DF4B84121886DAC400F34902 /* FrameUITableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FrameUITableViewCell.swift; sourceTree = ""; }; DF4B84151886EACA00F34902 /* GenericUITableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GenericUITableViewCell.swift; sourceTree = ""; }; DFA13CB318872EBD006355C3 /* SwitchUITableViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SwitchUITableViewCell.swift; sourceTree = ""; }; @@ -849,7 +847,6 @@ children = ( DFB2624518830A3600D3244D /* Images.xcassets */, DACB636127D3FC6500041931 /* error.png */, - DF4B84061885AE0E00F34902 /* blankicon.png */, ); name = Images; sourceTree = ""; @@ -1283,7 +1280,6 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - DF4B84071885AE0E00F34902 /* blankicon.png in Resources */, 938BF9D024EFCCC000E6B52F /* Localizable.strings in Resources */, DFB2624618830A3600D3244D /* Images.xcassets in Resources */, 6557AF8F2C0241C10094D0C8 /* PrivacyInfo.xcprivacy in Resources */, diff --git a/openHAB.xcworkspace/xcshareddata/swiftpm/Package.resolved b/openHAB.xcworkspace/xcshareddata/swiftpm/Package.resolved index c3802b6ec..8fe2c82b9 100644 --- a/openHAB.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/openHAB.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -1,14 +1,5 @@ { "pins" : [ - { - "identity" : "abseil-cpp-binary", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/abseil-cpp-binary.git", - "state" : { - "revision" : "194a6706acbd25e4ef639bcaddea16e8758a3e27", - "version" : "1.2024011602.0" - } - }, { "identity" : "alamofire", "kind" : "remoteSourceControl", @@ -18,114 +9,6 @@ "version" : "5.9.1" } }, - { - "identity" : "alamofirenetworkactivityindicator", - "kind" : "remoteSourceControl", - "location" : "https://github.com/Alamofire/AlamofireNetworkActivityIndicator.git", - "state" : { - "revision" : "392bed083e8d193aca16bfa684ee24e4bcff0510", - "version" : "3.1.0" - } - }, - { - "identity" : "app-check", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/app-check.git", - "state" : { - "revision" : "3b62f154d00019ae29a71e9738800bb6f18b236d", - "version" : "10.19.2" - } - }, - { - "identity" : "cocoalumberjack", - "kind" : "remoteSourceControl", - "location" : "https://github.com/CocoaLumberjack/CocoaLumberjack.git", - "state" : { - "revision" : "4b8714a7fb84d42393314ce897127b3939885ec3", - "version" : "3.8.5" - } - }, - { - "identity" : "devicekit", - "kind" : "remoteSourceControl", - "location" : "https://github.com/devicekit/DeviceKit.git", - "state" : { - "revision" : "d37e70cb2646666dcf276d7d3d4a9760a41ff8a6", - "version" : "4.9.0" - } - }, - { - "identity" : "firebase-ios-sdk", - "kind" : "remoteSourceControl", - "location" : "https://github.com/firebase/firebase-ios-sdk.git", - "state" : { - "revision" : "eca84fd638116dd6adb633b5a3f31cc7befcbb7d", - "version" : "10.29.0" - } - }, - { - "identity" : "flexcolorpicker", - "kind" : "remoteSourceControl", - "location" : "https://github.com/RastislavMirek/FlexColorPicker.git", - "state" : { - "revision" : "72a5c2c5e28074e6c5f13efe3c98eb780ae2f906", - "version" : "1.4.4" - } - }, - { - "identity" : "googleappmeasurement", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/GoogleAppMeasurement.git", - "state" : { - "revision" : "fe727587518729046fc1465625b9afd80b5ab361", - "version" : "10.28.0" - } - }, - { - "identity" : "googledatatransport", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/GoogleDataTransport.git", - "state" : { - "revision" : "a637d318ae7ae246b02d7305121275bc75ed5565", - "version" : "9.4.0" - } - }, - { - "identity" : "googleutilities", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/GoogleUtilities.git", - "state" : { - "revision" : "57a1d307f42df690fdef2637f3e5b776da02aad6", - "version" : "7.13.3" - } - }, - { - "identity" : "grpc-binary", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/grpc-binary.git", - "state" : { - "revision" : "e9fad491d0673bdda7063a0341fb6b47a30c5359", - "version" : "1.62.2" - } - }, - { - "identity" : "gtm-session-fetcher", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/gtm-session-fetcher.git", - "state" : { - "revision" : "a2ab612cb980066ee56d90d60d8462992c07f24b", - "version" : "3.5.0" - } - }, - { - "identity" : "interop-ios-for-google-sdks", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/interop-ios-for-google-sdks.git", - "state" : { - "revision" : "2d12673670417654f08f5f90fdd62926dc3a2648", - "version" : "100.0.0" - } - }, { "identity" : "kingfisher", "kind" : "remoteSourceControl", @@ -134,87 +17,6 @@ "revision" : "5b92f029fab2cce44386d28588098b5be0824ef5", "version" : "7.11.0" } - }, - { - "identity" : "leveldb", - "kind" : "remoteSourceControl", - "location" : "https://github.com/firebase/leveldb.git", - "state" : { - "revision" : "a0bc79961d7be727d258d33d5a6b2f1023270ba1", - "version" : "1.22.5" - } - }, - { - "identity" : "nanopb", - "kind" : "remoteSourceControl", - "location" : "https://github.com/firebase/nanopb.git", - "state" : { - "revision" : "b7e1104502eca3a213b46303391ca4d3bc8ddec1", - "version" : "2.30910.0" - } - }, - { - "identity" : "promises", - "kind" : "remoteSourceControl", - "location" : "https://github.com/google/promises.git", - "state" : { - "revision" : "540318ecedd63d883069ae7f1ed811a2df00b6ac", - "version" : "2.4.0" - } - }, - { - "identity" : "sfsafesymbols", - "kind" : "remoteSourceControl", - "location" : "https://github.com/SFSafeSymbols/SFSafeSymbols", - "state" : { - "revision" : "e2e28f4e56e1769c2ec3c61c9355fc64eb7a535a", - "version" : "5.3.0" - } - }, - { - "identity" : "sidemenu", - "kind" : "remoteSourceControl", - "location" : "https://github.com/jonkykong/SideMenu.git", - "state" : { - "revision" : "8bd4fd128923cf5494fa726839af8afe12908ad9", - "version" : "6.5.0" - } - }, - { - "identity" : "svgkit", - "kind" : "remoteSourceControl", - "location" : "https://github.com/SVGKit/SVGKit.git", - "state" : { - "branch" : "3.x", - "revision" : "1b8a3cf210ab4681c18fbb62059bbdbb37dd649a" - } - }, - { - "identity" : "swift-log", - "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-log", - "state" : { - "revision" : "9cb486020ebf03bfa5b5df985387a14a98744537", - "version" : "1.6.1" - } - }, - { - "identity" : "swift-protobuf", - "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-protobuf.git", - "state" : { - "revision" : "edb6ed4919f7756157fe02f2552b7e3850a538e5", - "version" : "1.28.1" - } - }, - { - "identity" : "swiftmessages", - "kind" : "remoteSourceControl", - "location" : "https://github.com/SwiftKickMobile/SwiftMessages.git", - "state" : { - "revision" : "62e12e138fc3eedf88c7553dd5d98712aa119f40", - "version" : "9.0.9" - } } ], "version" : 2 diff --git a/openHAB/OpenHABSitemapViewController.swift b/openHAB/OpenHABSitemapViewController.swift index 1fb720e9e..92b79978e 100644 --- a/openHAB/OpenHABSitemapViewController.swift +++ b/openHAB/OpenHABSitemapViewController.swift @@ -684,7 +684,7 @@ extension OpenHABSitemapViewController: UITableViewDelegate, UITableViewDataSour } cell.imageView?.kf.setImage( with: KF.ImageResource(downloadURL: urlc, cacheKey: urlc.path + (urlc.query ?? "")), - placeholder: UIImage(named: "blankicon.png"), + placeholder: nil, options: [.processor(OpenHABImageProcessor())], completionHandler: reportOnResults ) diff --git a/openHAB/blankicon.png b/openHAB/blankicon.png deleted file mode 100644 index 421c16fbaae8c3aa28ce06e11fc6bff3d4b186ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3701 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