diff --git a/PVLibrary/PVLibrary/Configuration/PVEmulatorConfiguration+Frameworks.swift b/PVLibrary/PVLibrary/Configuration/PVEmulatorConfiguration+Frameworks.swift index dabdd09cc7..e2576b3d11 100644 --- a/PVLibrary/PVLibrary/Configuration/PVEmulatorConfiguration+Frameworks.swift +++ b/PVLibrary/PVLibrary/Configuration/PVEmulatorConfiguration+Frameworks.swift @@ -103,7 +103,7 @@ public extension PVEmulatorConfiguration { } class func updateSystems(fromPlists plists: [URL]) { - typealias SystemPlistEntries = [SytemPlistEntry] + typealias SystemPlistEntries = [SystemPlistEntry] let database = RomDatabase.sharedInstance let decoder = PropertyListDecoder() @@ -150,7 +150,7 @@ public extension PVEmulatorConfiguration { } } - class func setPropertiesTo(pvSystem: PVSystem, fromSystemPlistEntry system: SytemPlistEntry) { + class func setPropertiesTo(pvSystem: PVSystem, fromSystemPlistEntry system: SystemPlistEntry) { pvSystem.openvgDatabaseID = Int(system.PVDatabaseID) ?? -1 pvSystem.requiresBIOS = system.PVRequiresBIOS ?? false pvSystem.manufacturer = system.PVManufacturer diff --git a/PVLibrary/PVLibrary/Configuration/PVEmulatorConfiguration.swift b/PVLibrary/PVLibrary/Configuration/PVEmulatorConfiguration.swift index 426cc94058..77397cf597 100644 --- a/PVLibrary/PVLibrary/Configuration/PVEmulatorConfiguration.swift +++ b/PVLibrary/PVLibrary/Configuration/PVEmulatorConfiguration.swift @@ -703,12 +703,12 @@ public extension PVEmulatorConfiguration { @objc class func m3uFile(forGame game: PVGame) -> URL? { let gamePath = path(forGame: game) - return m3uFile(forURL: gamePath, indentifier: game.system.identifier) + return m3uFile(forURL: gamePath, identifier: game.system.identifier) } @objc - class func m3uFile(forURL gamePath: URL, indentifier: String) -> URL? { - let gameDirectory = romDirectory(forSystemIdentifier: indentifier) + class func m3uFile(forURL gamePath: URL, identifier: String) -> URL? { + let gameDirectory = romDirectory(forSystemIdentifier: identifier) let filenameWithoutExtension = stripDiscNames(fromFilename: gamePath.deletingPathExtension().lastPathComponent) do { diff --git a/PVLibrary/PVLibrary/Domain/BIOS.swift b/PVLibrary/PVLibrary/Domain/BIOS.swift index 9ef4382b7f..063e23a120 100644 --- a/PVLibrary/PVLibrary/Domain/BIOS.swift +++ b/PVLibrary/PVLibrary/Domain/BIOS.swift @@ -8,7 +8,7 @@ import Foundation -public typealias BIOSExpectationsInfoProvider = ExpectedMD5Provider & ExpectedFilenameProvider & ExpectedSizeProvider & ExpectedExistantInfoProvider +public typealias BIOSExpectationsInfoProvider = ExpectedMD5Provider & ExpectedFilenameProvider & ExpectedSizeProvider & ExpectedExistentInfoProvider public protocol BIOSInfoProvider: BIOSExpectationsInfoProvider { var descriptionText: String { get } @@ -97,7 +97,7 @@ public struct BIOSStatus: Codable { } public enum State: Codable { - public enum CodingError: Error { case uknownRawValue(Int) } + public enum CodingError: Error { case unknownRawValue(Int) } case missing case mismatch([Mismatch]) @@ -124,7 +124,7 @@ public struct BIOSStatus: Codable { self = .match return default: - throw CodingError.uknownRawValue(rawValue) + throw CodingError.unknownRawValue(rawValue) } } else { fatalError("No known decode") diff --git a/PVLibrary/PVLibrary/Domain/PlistDataModels.swift b/PVLibrary/PVLibrary/Domain/PlistDataModels.swift index 7bc9930c3e..4e787bf79a 100644 --- a/PVLibrary/PVLibrary/Domain/PlistDataModels.swift +++ b/PVLibrary/PVLibrary/Domain/PlistDataModels.swift @@ -62,12 +62,12 @@ public extension ControlLayoutEntry { let dictionary = try JSONSerialization.jsonObject(with: data, options: .allowFragments) as? [String: Any] return dictionary! } catch { - fatalError("Bad serialzied data") + fatalError("Bad serialized data") } } } -public struct SytemPlistEntry: Codable, Equatable, Hashable { +public struct SystemPlistEntry: Codable, Equatable, Hashable { public private(set) var PVSystemIdentifier: String public private(set) var PVDatabaseID: String public private(set) var PVRequiresBIOS: Bool? diff --git a/PVLibrary/PVLibrary/Domain/Protocols/FileInfoProvider.swift b/PVLibrary/PVLibrary/Domain/Protocols/FileInfoProvider.swift index 306ff07700..2a60f47f68 100644 --- a/PVLibrary/PVLibrary/Domain/Protocols/FileInfoProvider.swift +++ b/PVLibrary/PVLibrary/Domain/Protocols/FileInfoProvider.swift @@ -146,6 +146,6 @@ public protocol ExpectedSizeProvider { var expectedSize: Int { get } } -public protocol ExpectedExistantInfoProvider { +public protocol ExpectedExistentInfoProvider { var optional: Bool { get } } diff --git a/PVLibrary/PVLibrary/Domain/System.swift b/PVLibrary/PVLibrary/Domain/System.swift index f7867d20e6..96a8012761 100644 --- a/PVLibrary/PVLibrary/Domain/System.swift +++ b/PVLibrary/PVLibrary/Domain/System.swift @@ -28,7 +28,7 @@ public enum SystemGeneration: UInt, Codable { case sixth case seventh case eighth - case nineth + case ninth case tenth } diff --git a/PVLibrary/PVLibrary/Importer/Services/GameImporter.swift b/PVLibrary/PVLibrary/Importer/Services/GameImporter.swift index c73e13a03d..4f0b9cc3af 100644 --- a/PVLibrary/PVLibrary/Importer/Services/GameImporter.swift +++ b/PVLibrary/PVLibrary/Importer/Services/GameImporter.swift @@ -608,7 +608,7 @@ public extension GameImporter { if games.count > 1 { // TODO: Prompt use for which one? or change all, or all where custom artwork isn't set but only if tehre's at least one that isn't? =jm - WLOG("There were mutliple matches for \(gamePartialPath)! #\(games.count). Going with first for now until we make better code to prompt user.") + WLOG("There were multiple matches for \(gamePartialPath)! #\(games.count). Going with first for now until we make better code to prompt user.") } let game = games.first! @@ -667,7 +667,7 @@ public extension GameImporter { #if canImport(UIKit) // Create new Data from scaled image guard let coverArtScaledData = coverArtScaledImage.jpegData(compressionQuality: 0.85) else { - ELOG("Failed to create data respresentation of scaled image") + ELOG("Failed to create data representation of scaled image") return nil } #else @@ -779,7 +779,7 @@ public extension GameImporter { try FileManager.default.removeItem(at: path) ILOG("Deleted empty import folder \(path.path)") } else { - ILOG("Found non-empty folder in improts dir. Will iterate subcontents for import") + ILOG("Found non-empty folder in imports dir. Will iterate subcontents for import") subContents.forEach { subFile in self.workQueue.addOperation { self._handlePath(path: subFile, userChosenSystem: nil) @@ -876,7 +876,7 @@ public extension GameImporter { let similarName = RomDatabase.sharedInstance.altName(path, systemIdentifier: system.identifier) if let existingGame = maybeGame ?? // found a match above? RomDatabase.sharedInstance.getGamesCache()[partialPath] ?? - RomDatabase.sharedInstance.getGamesCache()[similiarName], + RomDatabase.sharedInstance.getGamesCache()[similarName], system.identifier == existingGame.systemIdentifier { //database.all(PVGame.self, filter: NSPredicate(format: "romPath CONTAINS[c] %@", argumentArray: [partialPath])).first ?? // Exact filename match @@ -1384,7 +1384,7 @@ extension GameImporter { */ public func moveCDROM(toAppropriateSubfolder candidateFile: ImportCandidateFile) -> [URL]? { guard let systemsForExtension = systemIDsForRom(at: candidateFile.filePath) else { - WLOG("No sytem found for import candidate file \(candidateFile.filePath.lastPathComponent)") + WLOG("No system found for import candidate file \(candidateFile.filePath.lastPathComponent)") return nil } @@ -1433,7 +1433,7 @@ extension GameImporter { var relatedFiles: [URL]? // moved the .cue, now move .bins .imgs etc to the destination dir (conflicts or system dir, decided above) - if var paths = moveFiles(similiarToFile: candidateFile.filePath, toDirectory: newDirectory, cuesheet: newCDFilePath) { + if var paths = moveFiles(similarToFile: candidateFile.filePath, toDirectory: newDirectory, cuesheet: newCDFilePath) { paths.append(newCDFilePath) relatedFiles = paths } @@ -1447,7 +1447,7 @@ extension GameImporter { return relatedFiles } - public func biosEntryMatcing(candidateFile: ImportCandidateFile) -> PVBIOS? { + public func biosEntryMatching(candidateFile: ImportCandidateFile) -> PVBIOS? { // Check if BIOS by filename - should possibly just only check MD5? if let bios = PVEmulatorConfiguration.biosEntry(forFilename: candidateFile.filePath.lastPathComponent) { return bios @@ -1477,8 +1477,8 @@ extension GameImporter { } // Check first if known BIOS - if let biosEntry = biosEntryMatcing(candidateFile: candidateFile) { - ILOG("Candiate file matches as a known BIOS") + if let biosEntry = biosEntryMatching(candidateFile: candidateFile) { + ILOG("Candidate file matches as a known BIOS") // We have a BIOS file match let destinationPath = biosEntry.expectedPath let biosDirectory = biosEntry.system.biosDirectory @@ -1521,15 +1521,15 @@ extension GameImporter { // Check if .m3u if extensionLowercased == "m3u" { let cueFilenameWithoutExtension = filePath.deletingPathExtension().lastPathComponent - let similiarFile = PVEmulatorConfiguration.stripDiscNames(fromFilename: cueFilenameWithoutExtension) + let similarFile = PVEmulatorConfiguration.stripDiscNames(fromFilename: cueFilenameWithoutExtension) - var foundGameMaybe = RomDatabase.sharedInstance.all(PVGame.self, filter: NSPredicate(format: "romPath CONTAINS[c] %@", argumentArray: [similiarFile])).first + var foundGameMaybe = RomDatabase.sharedInstance.all(PVGame.self, filter: NSPredicate(format: "romPath CONTAINS[c] %@", argumentArray: [similarFile])).first // If don't find by the m3u partial file name matching a filename, try to see if the first line of the m3u matches any games filenames partially if foundGameMaybe == nil, let m3uContents = try? String(contentsOf: filePath, encoding: .utf8) { if var firstLine = m3uContents.components(separatedBy: .newlines).first { firstLine = PVEmulatorConfiguration.stripDiscNames(fromFilename: firstLine) - if let game = RomDatabase.sharedInstance.all(PVGame.self, filter: NSPredicate(format: "romPath CONTAINS[c] %@", argumentArray: [similiarFile])).first { + if let game = RomDatabase.sharedInstance.all(PVGame.self, filter: NSPredicate(format: "romPath CONTAINS[c] %@", argumentArray: [similarFile])).first { foundGameMaybe = game } } @@ -1631,7 +1631,7 @@ extension GameImporter { if let s = systemID, let f = systemToPathMap[s] { subfolderPathMaybe = f } else { - ELOG("Didn't expecte any nils here") + ELOG("Didn't expect any nils here") return nil } } else { @@ -1651,7 +1651,7 @@ extension GameImporter { if let s = systemID, let f = systemToPathMap[s] { subfolderPathMaybe = f } else { - ELOG("Didn't expecte any nils here") + ELOG("Didn't expect any nils here") return nil } } @@ -1729,8 +1729,8 @@ extension GameImporter { return newPath } - public func moveFiles(similiarToFile inputFile: URL, toDirectory: URL, cuesheet cueSheetPath: URL) -> [URL]? { - ILOG("Move files files similiar to \(inputFile.lastPathComponent) to directory \(toDirectory.lastPathComponent) from cue sheet \(cueSheetPath.lastPathComponent)") + public func moveFiles(similarToFile inputFile: URL, toDirectory: URL, cuesheet cueSheetPath: URL) -> [URL]? { + ILOG("Move files files similar to \(inputFile.lastPathComponent) to directory \(toDirectory.lastPathComponent) from cue sheet \(cueSheetPath.lastPathComponent)") let relatedFileName: String = PVEmulatorConfiguration.stripDiscNames(fromFilename: inputFile.deletingPathExtension().lastPathComponent) let contents: [URL] @@ -1770,7 +1770,7 @@ extension GameImporter { } if filenameWithoutExtension.contains(relatedFileName) { - DLOG("<\(file.lastPathComponent)> was found to be similiar to <\(cueSheetPath.lastPathComponent)>") + DLOG("<\(file.lastPathComponent)> was found to be similar to <\(cueSheetPath.lastPathComponent)>") // Before moving the file, make sure the cue sheet's reference uses the same case. if !cueSheetPath.path.isEmpty { do { diff --git a/PVLibrary/PVLibrary/Importer/iCloudSync.swift b/PVLibrary/PVLibrary/Importer/iCloudSync.swift index b3955f8ab3..fcc6027572 100644 --- a/PVLibrary/PVLibrary/Importer/iCloudSync.swift +++ b/PVLibrary/PVLibrary/Importer/iCloudSync.swift @@ -162,7 +162,7 @@ extension SyncFileToiCloud where Self: LocalFileInfoProvider { } do { - ILOG("Trying to set Ubiquitious from local (\(url.path)) to ICloud (\(destinationURL.path))") + ILOG("Trying to set ubiquitous from local (\(url.path)) to iCloud (\(destinationURL.path))") try fm.setUbiquitous(true, itemAt: url, destinationURL: destinationURL) completionHandler(.success) } catch { @@ -267,7 +267,7 @@ public final class iCloudSync { } public static func importNewSaves() { - if !RomDatabase.databaseInitilized { + if !RomDatabase.databaseInitialized { // Keep trying // TODO: Add a notification for this // instead of dumb loop DispatchQueue.main.asyncAfter(deadline: .now() + 2.0) { @@ -289,8 +289,8 @@ public final class iCloudSync { try? fm.contentsOfDirectory(at: $0, includingPropertiesForKeys: nil, options: .skipsHiddenFiles) }.joined() let jsonFiles = saveFiles.filter { $0.pathExtension == "json" } - let jsonDecorder = JSONDecoder() - jsonDecorder.dataDecodingStrategy = .deferredToData + let jsonDecoder = JSONDecoder() + jsonDecoder.dataDecodingStrategy = .deferredToData let legacySubDirs: [URL]? do { @@ -342,7 +342,7 @@ public final class iCloudSync { } DLOG("Data read \(String(data: data, encoding: .utf8) ?? "Nil")") - let save = try jsonDecorder.decode(SaveState.self, from: data) + let save = try jsonDecoder.decode(SaveState.self, from: data) DLOG("Read JSON data at (\(json.absoluteString)") let existing = realm.object(ofType: PVSaveState.self, forPrimaryKey: save.id) diff --git a/PVLibrary/PVLibrary/RealmPlatform/RomDatabase.swift b/PVLibrary/PVLibrary/RealmPlatform/RomDatabase.swift index 238350216d..cfe60c5f8d 100644 --- a/PVLibrary/PVLibrary/RealmPlatform/RomDatabase.swift +++ b/PVLibrary/PVLibrary/RealmPlatform/RomDatabase.swift @@ -202,7 +202,7 @@ public extension Thread { public typealias RomDB = RomDatabase public final class RomDatabase { - public private(set) static var databaseInitilized = false + public private(set) static var databaseInitialized = false static var gamesCache: [String: PVGame]? static var systemCache: [String: PVSystem]? static var coreCache: [String: PVCore]? @@ -212,7 +212,7 @@ public final class RomDatabase { static var artFileNameToMD5Cache:[String:String]? public class func initDefaultDatabase() throws { - if !databaseInitilized { + if !databaseInitialized { RealmConfiguration.setDefaultRealmConfig() try _sharedInstance = RomDatabase() @@ -226,7 +226,7 @@ public final class RomDatabase { createInitialLocalLibrary() } - databaseInitilized = true + databaseInitialized = true } } @@ -680,9 +680,9 @@ public extension RomDatabase { RomDatabase.gamesCache=addGameCache(game, cache: RomDatabase.gamesCache ?? [:]) } func altName(_ romPath:URL, systemIdentifier:String) -> String { - var similiarName = romPath.deletingPathExtension().lastPathComponent - similiarName = PVEmulatorConfiguration.stripDiscNames(fromFilename: similiarName) - return (systemIdentifier as NSString).appendingPathComponent(similiarName) + var similarName = romPath.deletingPathExtension().lastPathComponent + similarName = PVEmulatorConfiguration.stripDiscNames(fromFilename: similarName) + return (systemIdentifier as NSString).appendingPathComponent(similarName) } func getGamesCache() -> [String:PVGame] { if RomDatabase.gamesCache == nil { diff --git a/PVSupport/Sources/PVLibRetro/PVLibRetroCore.m b/PVSupport/Sources/PVLibRetro/PVLibRetroCore.m index e5a53660d4..7356326d07 100644 --- a/PVSupport/Sources/PVLibRetro/PVLibRetroCore.m +++ b/PVSupport/Sources/PVLibRetro/PVLibRetroCore.m @@ -1325,7 +1325,7 @@ extern bool video_pixel_frame_scale(const void *data, void video_driver_frame(const void *data, unsigned width, unsigned height, size_t pitch) { - NAssert(@"Shouldn't be here, or need to impliment"); + NAssert(@"Shouldn't be here, or need to implement"); // static char video_driver_msg[256]; // unsigned output_width = 0; // unsigned output_height = 0; diff --git a/PVSupport/Sources/PVSupport/Controller/HapticsManager.swift b/PVSupport/Sources/PVSupport/Controller/HapticsManager.swift index 6e1faab535..af799ce0de 100644 --- a/PVSupport/Sources/PVSupport/Controller/HapticsManager.swift +++ b/PVSupport/Sources/PVSupport/Controller/HapticsManager.swift @@ -166,7 +166,7 @@ public final class HapticsManager { try engine.playPattern(from: url) } catch { // Engine startup errors - ELOG("An error occured playing \(filename): \(error).") + ELOG("An error occurred playing \(filename): \(error).") } } } diff --git a/PVSupport/Sources/PVSupport/Controller/PVGameControllerUtilities.swift b/PVSupport/Sources/PVSupport/Controller/PVGameControllerUtilities.swift index 2a351d9998..8d962fedfb 100644 --- a/PVSupport/Sources/PVSupport/Controller/PVGameControllerUtilities.swift +++ b/PVSupport/Sources/PVSupport/Controller/PVGameControllerUtilities.swift @@ -10,7 +10,7 @@ import Foundation @_exported import GameController import simd -private let thumbstickSensitivty: Float = 0.2 +private let thumbstickSensitivity: Float = 0.2 @objc public enum PVControllerAxisDirection : UInt, CustomDebugStringConvertible { @@ -44,7 +44,7 @@ public enum PVControllerAxisDirection : UInt, CustomDebugStringConvertible { let xValue = fabsf(thumbstick.xAxis.value) let yValue = fabsf(thumbstick.yAxis.value) - if xValue <= thumbstickSensitivty && yValue <= thumbstickSensitivty { + if xValue <= thumbstickSensitivity && yValue <= thumbstickSensitivity { self = .None return } diff --git a/PVSupport/Sources/PVSupport/Performance/PerformanceView.swift b/PVSupport/Sources/PVSupport/Performance/PerformanceView.swift index 572c2ad904..cc7a30a623 100644 --- a/PVSupport/Sources/PVSupport/Performance/PerformanceView.swift +++ b/PVSupport/Sources/PVSupport/Performance/PerformanceView.swift @@ -4,7 +4,7 @@ internal class PerformanceView: UIWindow, PerformanceViewConfigurator { // MARK: Structs private struct Constants { - static let prefferedHeight: CGFloat = 20.0 + static let preferredHeight: CGFloat = 20.0 static let borderWidth: CGFloat = 1.0 static let cornerRadius: CGFloat = 5.0 static let pointSize: CGFloat = 8.0 @@ -50,7 +50,7 @@ internal class PerformanceView: UIWindow, PerformanceViewConfigurator { // MARK: Init Methods & Superclass Overriders required internal init() { - super.init(frame: PerformanceView.windowFrame(withPrefferedHeight: Constants.prefferedHeight)) + super.init(frame: PerformanceView.windowFrame(withPreferredHeight: Constants.preferredHeight)) self.windowScene = PerformanceView.keyWindowScene() self.configureWindow() @@ -157,21 +157,21 @@ private extension PerformanceView { } func configureStaticInformation() { - var staticInformations: [String] = [] + var staticInformation: [String] = [] if self.options.contains(.application) { let applicationVersion = self.applicationVersion() - staticInformations.append(applicationVersion) + staticInformation.append(applicationVersion) } if self.options.contains(.device) { let deviceModel = self.deviceModel() - staticInformations.append(deviceModel) + staticInformation.append(deviceModel) } if self.options.contains(.system) { let systemVersion = self.systemVersion() - staticInformations.append(systemVersion) + staticInformation.append(systemVersion) } - self.staticInformation = (staticInformations.count > 0 ? staticInformations.joined(separator: ", ") : nil) + self.staticInformation = (staticInformation.count > 0 ? staticInformation.joined(separator: ", ") : nil) } func configureUserInformation() { @@ -236,7 +236,7 @@ private extension PerformanceView { // MARK: Layout View private extension PerformanceView { func layoutWindow() { - self.frame = PerformanceView.windowFrame(withPrefferedHeight: self.monitoringTextLabel.bounds.height) + self.frame = PerformanceView.windowFrame(withPreferredHeight: self.monitoringTextLabel.bounds.height) self.layoutMonitoringLabel() } @@ -246,7 +246,7 @@ private extension PerformanceView { let labelSize = self.monitoringTextLabel.sizeThatFits(CGSize(width: windowWidth, height: CGFloat.greatestFiniteMagnitude)) if windowHeight != labelSize.height { - self.frame = PerformanceView.windowFrame(withPrefferedHeight: self.monitoringTextLabel.bounds.height) + self.frame = PerformanceView.windowFrame(withPreferredHeight: self.monitoringTextLabel.bounds.height) } self.monitoringTextLabel.frame = CGRect(x: (windowWidth - labelSize.width) / 2.0, y: (windowHeight - labelSize.height) / 2.0, width: labelSize.width, height: labelSize.height) @@ -305,7 +305,7 @@ private extension PerformanceView { // MARK: Class Methods private extension PerformanceView { - class func windowFrame(withPrefferedHeight height: CGFloat) -> CGRect { + class func windowFrame(withPreferredHeight height: CGFloat) -> CGRect { guard let window = PerformanceView.keyWindow() else { return .zero } diff --git a/Provenance/Emulator/PVEmulatorVC/PVEmulatorViewController+Saves.swift b/Provenance/Emulator/PVEmulatorVC/PVEmulatorViewController+Saves.swift index 5f35fc48d4..9bbfff27ce 100644 --- a/Provenance/Emulator/PVEmulatorVC/PVEmulatorViewController+Saves.swift +++ b/Provenance/Emulator/PVEmulatorVC/PVEmulatorViewController+Saves.swift @@ -230,7 +230,7 @@ extension PVEmulatorViewController { let message = """ Save State is not valid - Please try anonther save state + Please try another save state """ presentWarning(message, source: self.view, completion: loadOk) return diff --git a/Provenance/Emulator/PVEmulatorVC/PVEmulatorViewController.swift b/Provenance/Emulator/PVEmulatorVC/PVEmulatorViewController.swift index 292b1c9f22..59db985990 100644 --- a/Provenance/Emulator/PVEmulatorVC/PVEmulatorViewController.swift +++ b/Provenance/Emulator/PVEmulatorVC/PVEmulatorViewController.swift @@ -167,7 +167,7 @@ final class PVEmulatorViewController: PVEmulatorViewControllerRootClass, PVAudio core.removeObserver(self, forKeyPath: "isRunning") } - private func initNotifcationObservers() { + private func initNotificationObservers() { NotificationCenter.default.addObserver(self, selector: #selector(PVEmulatorViewController.appWillEnterForeground(_:)), name: UIApplication.willEnterForegroundNotification, object: nil) NotificationCenter.default.addObserver(self, selector: #selector(PVEmulatorViewController.appDidEnterBackground(_:)), name: UIApplication.didEnterBackgroundNotification, object: nil) NotificationCenter.default.addObserver(self, selector: #selector(PVEmulatorViewController.appWillResignActive(_:)), name: UIApplication.willResignActiveNotification, object: nil) @@ -341,7 +341,7 @@ final class PVEmulatorViewController: PVEmulatorViewControllerRootClass, PVAudio app.emulator = self } - initNotifcationObservers() + initNotificationObservers() initCore() // Load now. Moved here becauase Mednafen needed to know what kind of game it's working with in order diff --git a/Provenance/Game Library/UI/Game Library/CollectionViewController/PVGameLibraryViewController.swift b/Provenance/Game Library/UI/Game Library/CollectionViewController/PVGameLibraryViewController.swift index 4c4e91721d..99c7dd1747 100644 --- a/Provenance/Game Library/UI/Game Library/CollectionViewController/PVGameLibraryViewController.swift +++ b/Provenance/Game Library/UI/Game Library/CollectionViewController/PVGameLibraryViewController.swift @@ -132,7 +132,7 @@ final class PVGameLibraryViewController: GCEventViewController, UITextFieldDeleg struct Section: SectionModelType { let header: String let items: [Item] - let collapsable: Collapsable? + let collapsible: Collapsible? enum Item { case game(PVGame) @@ -141,19 +141,19 @@ final class PVGameLibraryViewController: GCEventViewController, UITextFieldDeleg case recents([PVRecentGame]) } - enum Collapsable { + enum Collapsible { case collapsed(systemToken: String) case notCollapsed(systemToken: String) } - init(header: String, items: [Item], collapsable: Collapsable?) { + init(header: String, items: [Item], collapsible: Collapsible?) { self.header = header self.items = items - self.collapsable = collapsable + self.collapsible = collapsible } init(original: PVGameLibraryViewController.Section, items: [Item]) { - self.init(header: original.header, items: items, collapsable: original.collapsable) + self.init(header: original.header, items: items, collapsible: original.collapsible) } } @@ -332,17 +332,17 @@ final class PVGameLibraryViewController: GCEventViewController, UITextFieldDeleg let header = collectionView.dequeueReusableSupplementaryView(ofKind: kind, withReuseIdentifier: PVGameLibraryHeaderViewIdentifier, for: indexPath) as! PVGameLibrarySectionHeaderView let section = dataSource.sectionModels[indexPath.section] let collapsed: Bool = { - if case .collapsed = section.collapsable { + if case .collapsed = section.collapsible { return true } return false }() - header.viewModel = .init(title: section.header, collapsable: section.collapsable != nil, collapsed: collapsed) + header.viewModel = .init(title: section.header, collapsible: section.collapsible != nil, collapsed: collapsed) #if os(iOS) header.collapseButton.rx.tap .withLatestFrom(self.collapsedSystems) .map({ (collapsedSystems: Set) in - switch section.collapsable { + switch section.collapsible { case .collapsed(let token): return collapsedSystems.subtracting([token]) case .notCollapsed(let token): @@ -358,7 +358,7 @@ final class PVGameLibraryViewController: GCEventViewController, UITextFieldDeleg header.collapseButton.rx.primaryAction .withLatestFrom(self.collapsedSystems) .map({ (collapsedSystems: Set) in - switch section.collapsable { + switch section.collapsible { case .collapsed(let token): return collapsedSystems.subtracting([token]) case .notCollapsed(let token): @@ -379,13 +379,13 @@ final class PVGameLibraryViewController: GCEventViewController, UITextFieldDeleg } } let favoritesSection = gameLibrary.favorites - .map { favorites in favorites.isEmpty ? nil : Section(header: "Favorites", items: [.favorites(favorites)], collapsable: nil)} + .map { favorites in favorites.isEmpty ? nil : Section(header: "Favorites", items: [.favorites(favorites)], collapsible: nil)} let saveStateSection = Observable.combineLatest(showSaveStates, gameLibrary.saveStates) { $0 ? $1.filter { FileManager.default.fileExists(atPath: $0.file.url.path) } : [] } - .map { saveStates in saveStates.isEmpty ? nil : Section(header: "Recently Saved", items: [.saves(saveStates)], collapsable: nil) } + .map { saveStates in saveStates.isEmpty ? nil : Section(header: "Recently Saved", items: [.saves(saveStates)], collapsible: nil) } let recentsSection = Observable.combineLatest(showRecentGames, gameLibrary.recents) { $0 ? $1 : [] } - .map { recentGames in recentGames.isEmpty ? nil : Section(header: "Recently Played", items: [.recents(recentGames)], collapsable: nil) } + .map { recentGames in recentGames.isEmpty ? nil : Section(header: "Recently Played", items: [.recents(recentGames)], collapsible: nil) } let topSections = Observable.combineLatest(favoritesSection, saveStateSection, recentsSection) { [$0, $1, $2] } @@ -398,7 +398,7 @@ final class PVGameLibraryViewController: GCEventViewController, UITextFieldDeleg }) .map({ games -> Section? in guard let games = games else { return nil } - return Section(header: "Search Results", items: games.map { .game($0) }, collapsable: nil) + return Section(header: "Search Results", items: games.map { .game($0) }, collapsible: nil) }) .startWith(nil) let hideBios:[String:Bool] = RomDatabase.sharedInstance.getBIOSCache().values.joined() @@ -423,7 +423,7 @@ final class PVGameLibraryViewController: GCEventViewController, UITextFieldDeleg let items = isCollapsed ? [] : system.sortedGames.filter{ !$0.isInvalidated && $0.genres != "hidden" && hideBios[$0.romPath.lowercased()] != true }.map { Section.Item.game($0) } return Section(header: header, items: items, - collapsable: isCollapsed ? .collapsed(systemToken: system.identifier) : .notCollapsed(systemToken: system.identifier)) + collapsible: isCollapsed ? .collapsed(systemToken: system.identifier) : .notCollapsed(systemToken: system.identifier)) }) let nonSearchSections = Observable.combineLatest(topSections, systemSections) { $0 + $1 } // Remove empty sections @@ -710,7 +710,7 @@ final class PVGameLibraryViewController: GCEventViewController, UITextFieldDeleg #endif } - guard RomDatabase.databaseInitilized else { + guard RomDatabase.databaseInitialized else { return } @@ -1393,7 +1393,7 @@ final class PVGameLibraryViewController: GCEventViewController, UITextFieldDeleg imagePickerActionSheet.popoverPresentationController?.barButtonItem = navigationItem.leftBarButtonItem let cameraIsAvailable: Bool = UIImagePickerController.isSourceTypeAvailable(.camera) - let photoLibraryIsAvaialble: Bool = UIImagePickerController.isSourceTypeAvailable(.photoLibrary) + let photoLibraryIsAvailable: Bool = UIImagePickerController.isSourceTypeAvailable(.photoLibrary) let cameraAction = UIAlertAction(title: "Take Photo", style: .default, handler: { action in self.gameForCustomArt = game @@ -1439,11 +1439,11 @@ final class PVGameLibraryViewController: GCEventViewController, UITextFieldDeleg })) } - if cameraIsAvailable || photoLibraryIsAvaialble { + if cameraIsAvailable || photoLibraryIsAvailable { if cameraIsAvailable { imagePickerActionSheet.addAction(cameraAction) } - if photoLibraryIsAvaialble { + if photoLibraryIsAvailable { imagePickerActionSheet.addAction(libraryAction) } } diff --git a/Provenance/Game Library/UI/Game Library/Reusable Views/Base.lproj/PVGameLibraryCollectionViewCell.xib b/Provenance/Game Library/UI/Game Library/Reusable Views/Base.lproj/PVGameLibraryCollectionViewCell.xib index 63165aaded..fe1d54f578 100644 --- a/Provenance/Game Library/UI/Game Library/Reusable Views/Base.lproj/PVGameLibraryCollectionViewCell.xib +++ b/Provenance/Game Library/UI/Game Library/Reusable Views/Base.lproj/PVGameLibraryCollectionViewCell.xib @@ -169,7 +169,7 @@ - + diff --git a/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibraryCollectionViewCell.swift b/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibraryCollectionViewCell.swift index 343a74797d..651c6753e3 100644 --- a/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibraryCollectionViewCell.swift +++ b/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibraryCollectionViewCell.swift @@ -409,9 +409,9 @@ final class PVGameLibraryCollectionViewCell: UICollectionViewCell { } } - @IBOutlet var waringSignLabel: UIImageView! { + @IBOutlet var warningSignLabel: UIImageView! { didSet { - // waringSignLabel.layer.compositingFilter = BlendModes.screenBlendMode.rawValue //"colorDodgeBlendMode" + // warningSignLabel.layer.compositingFilter = BlendModes.screenBlendMode.rawValue //"colorDodgeBlendMode" } } @@ -420,8 +420,8 @@ final class PVGameLibraryCollectionViewCell: UICollectionViewCell { // @IBOutlet weak var topRightBadgeWidthConstraint: NSLayoutConstraint? @IBOutlet var discCountTrailingConstraint: NSLayoutConstraint? @IBOutlet var discCountBottomConstraint: NSLayoutConstraint? - @IBOutlet var missingFileWidthContraint: NSLayoutConstraint? - @IBOutlet var missingFileHeightContraint: NSLayoutConstraint? + @IBOutlet var missingFileWidthConstraint: NSLayoutConstraint? + @IBOutlet var missingFileHeightConstraint: NSLayoutConstraint? @IBOutlet var titleLabelHeightConstraint: NSLayoutConstraint? @IBOutlet var deleteActionView: UIView? { didSet { @@ -458,7 +458,7 @@ final class PVGameLibraryCollectionViewCell: UICollectionViewCell { } } - private func updateImageBageConstraints() {} + private func updateImageBagConstraints() {} private func setup(with game: PVGame) { let artworkURL: String = game.customArtworkURL @@ -876,8 +876,8 @@ final class PVGameLibraryCollectionViewCell: UICollectionViewCell { discCountTrailingConstraint?.constant = trailingConstant discCountBottomConstraint?.constant = bottomConstant - missingFileWidthContraint?.constant = imageContentFrame.width - missingFileHeightContraint?.constant = imageContentFrame.height + missingFileWidthConstraint?.constant = imageContentFrame.width + missingFileHeightConstraint?.constant = imageContentFrame.height roundDiscCountCorners() } diff --git a/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibraryCollectionViewCell~tvOS.xib b/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibraryCollectionViewCell~tvOS.xib index 0b7bd009d4..10c77ff50f 100644 --- a/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibraryCollectionViewCell~tvOS.xib +++ b/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibraryCollectionViewCell~tvOS.xib @@ -146,7 +146,7 @@ - + diff --git a/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibrarySectionHeaderView.swift b/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibrarySectionHeaderView.swift index 9e3e85906a..fa2ca66a3a 100644 --- a/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibrarySectionHeaderView.swift +++ b/Provenance/Game Library/UI/Game Library/Reusable Views/PVGameLibrarySectionHeaderView.swift @@ -10,7 +10,7 @@ import RxSwift internal struct GameLibrarySectionViewModel { internal let title: String - internal let collapsable: Bool + internal let collapsible: Bool internal let collapsed: Bool // internal init(title : String, collapsable: Bool, collapsed: Bool) { @@ -46,14 +46,14 @@ final class PVGameLibrarySectionHeaderView: UICollectionReusableView { titleLabel.text = viewModel.title.uppercased() titleLabel.font = UIFont.boldSystemFont(ofSize: 12) #endif - collapseButton.isHidden = !viewModel.collapsable + collapseButton.isHidden = !viewModel.collapsible collapseButton.imageView?.transform = viewModel.collapsed ? CGAffineTransform(rotationAngle: CGFloat.pi / 2.0) : .identity setNeedsDisplay() } } override init(frame: CGRect) { - viewModel = GameLibrarySectionViewModel(title: "", collapsable: false, collapsed: false) + viewModel = GameLibrarySectionViewModel(title: "", collapsible: false, collapsed: false) super.init(frame: frame) #if os(tvOS) titleLabel.frame = CGRect(x: 90, y: 0, width: (bounds.size.width / 2.0) - 90.0, height: bounds.size.height) diff --git a/Provenance/Game Library/UI/GameLaunchingViewController.swift b/Provenance/Game Library/UI/GameLaunchingViewController.swift index 2fffbf189a..a3b2a3d34b 100644 --- a/Provenance/Game Library/UI/GameLaunchingViewController.swift +++ b/Provenance/Game Library/UI/GameLaunchingViewController.swift @@ -413,7 +413,7 @@ extension GameLaunchingViewController where Self: UIViewController { func presentCoreSelection(forGame game: PVGame, sender: Any?) { guard let system = game.system else { - ELOG("No sytem for game \(game.title)") + ELOG("No system for game \(game.title)") return } @@ -475,7 +475,7 @@ extension GameLaunchingViewController where Self: UIViewController { self.presentEMU(withCore: core, forGame: game, source: sender as? UIView ?? self.view) }) - let alwaysThisSytemAction = UIAlertAction(title: "Always for this system", style: .default, handler: { [unowned self] _ in + let alwaysThisSystemAction = UIAlertAction(title: "Always for this system", style: .default, handler: { [unowned self] _ in try! RomDatabase.sharedInstance.writeTransaction { system.userPreferredCoreID = core.identifier } @@ -484,7 +484,7 @@ extension GameLaunchingViewController where Self: UIViewController { alwaysUseAlert.addAction(thisTimeOnlyAction) alwaysUseAlert.addAction(alwaysThisGameAction) - alwaysUseAlert.addAction(alwaysThisSytemAction) + alwaysUseAlert.addAction(alwaysThisSystemAction) self.present(alwaysUseAlert, animated: true) } diff --git a/Provenance/Game Library/UI/SubtleVolume.swift b/Provenance/Game Library/UI/SubtleVolume.swift index 4c57958212..684a0b3d26 100755 --- a/Provenance/Game Library/UI/SubtleVolume.swift +++ b/Provenance/Game Library/UI/SubtleVolume.swift @@ -139,7 +139,7 @@ public enum SubtleVolumeError: Error { /// /// - Parameter delta: the volume increase. The volume goes from 0 to 1, delta must be a Double in that range /// - Throws: `SubtleVolumeError.unableToChangeVolumeLevel` - @objc public func increseVolume(by step: Double = DefaultVolumeStep, animated: Bool = false) throws { + @objc public func increaseVolume(by step: Double = DefaultVolumeStep, animated: Bool = false) throws { try setVolumeLevel(volumeLevel + step, animated: animated) } diff --git a/Provenance/JIT/CodeSignatureUtils.m b/Provenance/JIT/CodeSignatureUtils.m index d5ea3e6671..4012840111 100644 --- a/Provenance/JIT/CodeSignatureUtils.m +++ b/Provenance/JIT/CodeSignatureUtils.m @@ -132,7 +132,7 @@ bool HasValidCodeSignature() char error[128]; sprintf(error, "CodeDirectory version is 0x%x. Should be 0x20400 or higher.", version); - [[DOLJitManager sharedManager] setAuxillaryError:CToFoundationString(error)]; + [[DOLJitManager sharedManager] setAuxiliaryError:CToFoundationString(error)]; continue; } @@ -142,7 +142,7 @@ bool HasValidCodeSignature() char error[128]; sprintf(error, "CS_EXECSEG_ALLOW_UNSIGNED is not set. The current executable segment flags are 0x%llx.", execSegmentFlags); - [[DOLJitManager sharedManager] setAuxillaryError:CToFoundationString(error)]; + [[DOLJitManager sharedManager] setAuxiliaryError:CToFoundationString(error)]; continue; } @@ -153,7 +153,7 @@ bool HasValidCodeSignature() if (entitlementsData == nil) { - [[DOLJitManager sharedManager] setAuxillaryError:@"Could not find entitlements data within the code signature."]; + [[DOLJitManager sharedManager] setAuxiliaryError:@"Could not find entitlements data within the code signature."]; return false; } @@ -167,14 +167,14 @@ bool HasValidCodeSignature() if (ent_error) { NSString* error_str = [NSString stringWithFormat:@"Entitlement data parsing failed with error \"%@\".", [ent_error localizedDescription]]; - [[DOLJitManager sharedManager] setAuxillaryError:error_str]; + [[DOLJitManager sharedManager] setAuxiliaryError:error_str]; return false; } if (![[entitlements objectForKey:@"get-task-allow"] boolValue]) { - [[DOLJitManager sharedManager] setAuxillaryError:@"get-task-allow entitlement is not set to true."]; + [[DOLJitManager sharedManager] setAuxiliaryError:@"get-task-allow entitlement is not set to true."]; return false; } diff --git a/Provenance/JIT/DOLJitManager.h b/Provenance/JIT/DOLJitManager.h index 6f4730f7a0..11a137d662 100644 --- a/Provenance/JIT/DOLJitManager.h +++ b/Provenance/JIT/DOLJitManager.h @@ -32,7 +32,7 @@ NS_ASSUME_NONNULL_BEGIN - (void)attemptToAcquireJitByJitStreamer; - (DOLJitType)jitType; - (bool)appHasAcquiredJit; -- (void)setAuxillaryError:(NSString*)error; +- (void)setAuxiliaryError:(NSString*)error; - (nullable NSString*)getAuxiliaryError; @end diff --git a/Provenance/JIT/DOLJitManager.m b/Provenance/JIT/DOLJitManager.m index 87c871bde7..5ceff66f7e 100644 --- a/Provenance/JIT/DOLJitManager.m +++ b/Provenance/JIT/DOLJitManager.m @@ -82,7 +82,7 @@ - (bool)canAcquireJitByUnsigned { if (cpu_architecture == nil) { - [self setAuxillaryError:@"CPU architecture check failed."]; + [self setAuxiliaryError:@"CPU architecture check failed."]; return false; } else if (![cpu_architecture isEqualToString:@"arm64e"]) @@ -315,7 +315,7 @@ - (BOOL)appHasAcquiredJit { return _m_has_acquired_jit; } -- (void)setAuxillaryError:(NSString*)error { +- (void)setAuxiliaryError:(NSString*)error { self->_m_aux_error = error; } diff --git a/Provenance/JIT/DebuggerUtils.m b/Provenance/JIT/DebuggerUtils.m index 6895c4d59a..85ce5c56af 100644 --- a/Provenance/JIT/DebuggerUtils.m +++ b/Provenance/JIT/DebuggerUtils.m @@ -69,7 +69,7 @@ bool SetProcessDebuggedWithDaemon() CFMessagePortRef port = CFMessagePortCreateRemote(kCFAllocatorDefault, CFSTR("me.oatmealdome.csdbgd-port")); if (port == NULL) { - [[DOLJitManager sharedManager] setAuxillaryError:@"Unable to open port"]; + [[DOLJitManager sharedManager] setAuxiliaryError:@"Unable to open port"]; return false; } @@ -77,7 +77,7 @@ bool SetProcessDebuggedWithDaemon() SInt32 ret = CFMessagePortSendRequest(port, 1, (__bridge CFDataRef)data, 1000, 0, NULL, NULL); if (ret != kCFMessagePortSuccess) { - [[DOLJitManager sharedManager] setAuxillaryError:@"Failed to send message through port"]; + [[DOLJitManager sharedManager] setAuxiliaryError:@"Failed to send message through port"]; return false; } @@ -85,7 +85,7 @@ bool SetProcessDebuggedWithDaemon() bool success = WaitUntilProcessDebugged(5); if (!success) { - [[DOLJitManager sharedManager] setAuxillaryError:@"csdbgd timed out"]; + [[DOLJitManager sharedManager] setAuxiliaryError:@"csdbgd timed out"]; } return success; @@ -112,7 +112,7 @@ bool SetProcessDebuggedWithJailbreakd() void* dylib_handle = LoadLibJailbreak(); if (!dylib_handle) { - [[DOLJitManager sharedManager] setAuxillaryError:CToFoundationString(dlerror())]; + [[DOLJitManager sharedManager] setAuxiliaryError:CToFoundationString(dlerror())]; return false; } @@ -122,7 +122,7 @@ bool SetProcessDebuggedWithJailbreakd() if (!ptr) { - [[DOLJitManager sharedManager] setAuxillaryError:CToFoundationString(dlerror())]; + [[DOLJitManager sharedManager] setAuxiliaryError:CToFoundationString(dlerror())]; dlclose(dylib_handle); return false; diff --git a/Provenance/JIT/JitAcquisitionUtils.h b/Provenance/JIT/JitAcquisitionUtils.h index 836547584b..2d269be9b5 100644 --- a/Provenance/JIT/JitAcquisitionUtils.h +++ b/Provenance/JIT/JitAcquisitionUtils.h @@ -32,7 +32,7 @@ void AcquireJit(void); bool HasJit(void); bool HasJitWithPTrace(void); bool HasJitWithPsychicpaper(void); -DOLJitError GetJitAcqusitionError(void); +DOLJitError GetJitAcquisitionError(void); char* GetJitAcquisitionErrorMessage(void); void SetJitAcquisitionErrorMessage(char* error); diff --git a/Provenance/JIT/JitAcquisitionUtils.m b/Provenance/JIT/JitAcquisitionUtils.m index 31acaa9a33..d54f5eabf8 100644 --- a/Provenance/JIT/JitAcquisitionUtils.m +++ b/Provenance/JIT/JitAcquisitionUtils.m @@ -144,7 +144,7 @@ bool HasJitWithPTrace() return s_has_jit_with_ptrace; } -DOLJitError GetJitAcqusitionError() +DOLJitError GetJitAcquisitionError() { return s_acquisition_error; } diff --git a/Provenance/PVAppDelegate+AppCenter.swift b/Provenance/PVAppDelegate+AppCenter.swift index a08696214d..2a5b205c67 100644 --- a/Provenance/PVAppDelegate+AppCenter.swift +++ b/Provenance/PVAppDelegate+AppCenter.swift @@ -25,7 +25,7 @@ extension PVAppDelegate { if AppCenter.isConfigured { AppCenter.startService(Analytics.self) //AppCenter.startService(Crashes.self) - ILOG("AppCenter initilized.") + ILOG("AppCenter initialized.") } else { ELOG("AppCenter not configured.") } diff --git a/Provenance/PVAppDelegate+Helpers.swift b/Provenance/PVAppDelegate+Helpers.swift index c515794968..2f0f7f145b 100644 --- a/Provenance/PVAppDelegate+Helpers.swift +++ b/Provenance/PVAppDelegate+Helpers.swift @@ -13,9 +13,9 @@ import PVLogging // MARK: - Helpers extension PVAppDelegate { - func isWebDavServerEnviromentVariableSet() -> Bool { // Start optional always on WebDav server using enviroment variable // See XCode run scheme enviroment varialbes settings. + func isWebDavServerEnvironmentVariableSet() -> Bool { // Note: ENV variables are only passed when when from XCode scheme. // Users clicking the app icon won't be passed this variable when run outside of XCode let buildConfiguration = ProcessInfo.processInfo.environment["ALWAYS_ON_WEBDAV"] @@ -24,7 +24,7 @@ extension PVAppDelegate { func startOptionalWebDavServer() { // Check if the user setting is set or the optional ENV variable - if PVSettingsModel.shared.webDavAlwaysOn || isWebDavServerEnviromentVariableSet() { + if PVSettingsModel.shared.webDavAlwaysOn || isWebDavServerEnvironmentVariableSet() { PVWebServer.shared.startWebDavServer() } } diff --git a/Provenance/Settings/PVSettingsViewController.swift b/Provenance/Settings/PVSettingsViewController.swift index 6937fbd59e..ead2d7c04c 100644 --- a/Provenance/Settings/PVSettingsViewController.swift +++ b/Provenance/Settings/PVSettingsViewController.swift @@ -202,7 +202,7 @@ final class PVSettingsViewController: QuickTableViewController { key: \PVSettingsModel.metalFilter, options: shaders) - // MARK -- Section : Controler + // MARK -- Section : Controller var controllerRows = [TableRow]() @@ -210,7 +210,7 @@ final class PVSettingsViewController: QuickTableViewController { controllerRows.append(PVSettingsSliderRow(text: NSLocalizedString("Opacity", comment: "Opacity"), detailText: .subtitle("Transparency amount of on-screen controls overlays."), valueLimits: (min: 0.0, max: 1.0), valueImages: (.sfSymbol("sun.min"), .sfSymbol("sun.max")), key: \PVSettingsModel.controllerOpacity)) controllerRows.append(contentsOf: [ - PVSettingsSwitchRow(text: NSLocalizedString("Button Colors", comment: "Button Colors"), detailText: .subtitle("Color the on-screen controls to be similiar to their original system controller colors where applicable."), key: \PVSettingsModel.buttonTints, icon: .sfSymbol("paintpalette")), + PVSettingsSwitchRow(text: NSLocalizedString("Button Colors", comment: "Button Colors"), detailText: .subtitle("Color the on-screen controls to be similar to their original system controller colors where applicable."), key: \PVSettingsModel.buttonTints, icon: .sfSymbol("paintpalette")), PVSettingsSwitchRow(text: NSLocalizedString("All-Right Shoulders", comment: "All-Right Shoulders"), detailText: .subtitle("Moves L1, L2 & Z to right side"), key: \PVSettingsModel.allRightShoulders, icon: .sfSymbol("l.joystick.tilt.right")), PVSettingsSwitchRow(text: NSLocalizedString("Haptic Feedback", comment: "Haptic Feedback"), detailText: .subtitle("Vibrate on button push and force feedback on iPhone and controllers where applicable."), key: \PVSettingsModel.buttonVibration, icon: .sfSymbol("hand.point.up.braille")), PVSettingsSwitchRow(text: NSLocalizedString("Enable 8BitDo M30 Mapping", comment: "Enable 8BitDo M30 Mapping"), detailText: .subtitle("For use with Sega Genesis/Mega Drive, Sega/Mega CD, 32X, Saturn and the PC Engine."), key: \PVSettingsModel.use8BitdoM30, icon: .sfSymbol("arrow.triangle.swap")), @@ -477,7 +477,7 @@ final class PVSettingsViewController: QuickTableViewController { ) let blogRow = NavigationRow( text: NSLocalizedString("Blog", comment: ""), - detailText: .subtitle("Release annoucements and full changelogs and screenshots posted to our blog."), + detailText: .subtitle("Release announcements and full changelogs and screenshots posted to our blog."), icon: .sfSymbol("square.and.pencil"), customization: { cell, row in guard let detailTextLabel = cell.detailTextLabel else { return } diff --git a/Provenance/User Interface/Base.lproj/Provenance.storyboard b/Provenance/User Interface/Base.lproj/Provenance.storyboard index ec39fa754a..aa94edebb8 100644 --- a/Provenance/User Interface/Base.lproj/Provenance.storyboard +++ b/Provenance/User Interface/Base.lproj/Provenance.storyboard @@ -405,7 +405,7 @@ - + diff --git a/Provenance/Utilities/PVLogViewController.m b/Provenance/Utilities/PVLogViewController.m index b25cd05840..d6bc7f142e 100644 --- a/Provenance/Utilities/PVLogViewController.m +++ b/Provenance/Utilities/PVLogViewController.m @@ -416,13 +416,13 @@ - (NSString *) tmpFileWithName:(nonnull NSString*)name BOOL isDirectory; if (![[NSFileManager defaultManager] fileExistsAtPath:temporaryDirectory isDirectory:&isDirectory]) { - ILOG(@"Not temporay directory at path <%@>. Creating.", temporaryDirectory); + ILOG(@"Not temporary directory at path <%@>. Creating.", temporaryDirectory); NSError *error; if ([[NSFileManager defaultManager] createDirectoryAtPath:temporaryDirectory withIntermediateDirectories:YES attributes:@{} error:&error]) { - ILOG(@"Created temporay directory"); + ILOG(@"Created temporary directory"); } else { ELOG(@"Couldn't create temp directory: %@", error.localizedDescription); } diff --git a/Provenance/http/GCDWebDAVServer/GCDWebDAVServer.m b/Provenance/http/GCDWebDAVServer/GCDWebDAVServer.m index cf0273ecd7..f18fc3044f 100644 --- a/Provenance/http/GCDWebDAVServer/GCDWebDAVServer.m +++ b/Provenance/http/GCDWebDAVServer/GCDWebDAVServer.m @@ -194,7 +194,7 @@ - (GCDWebServerResponse*)performGET:(GCDWebServerRequest*)request { NSString* itemName = [absolutePath lastPathComponent]; if (([itemName hasPrefix:@"."] && !_allowHiddenItems) || (!isDirectory && ![self _checkFileExtension:itemName])) { - return [GCDWebServerErrorResponse responseWithClientError:kGCDWebServerHTTPStatusCode_Forbidden message:@"Downlading item name \"%@\" is not allowed", itemName]; + return [GCDWebServerErrorResponse responseWithClientError:kGCDWebServerHTTPStatusCode_Forbidden message:@"Downloading item name \"%@\" is not allowed", itemName]; } // Because HEAD requests are mapped to GET ones, we need to handle directories but it's OK to return nothing per http://webdav.org/specs/rfc4918.html#rfc.section.9.4 diff --git a/Provenance/http/GCDWebUploader/GCDWebUploader.m b/Provenance/http/GCDWebUploader/GCDWebUploader.m index cd27cd66fb..f4d37f2ff6 100644 --- a/Provenance/http/GCDWebUploader/GCDWebUploader.m +++ b/Provenance/http/GCDWebUploader/GCDWebUploader.m @@ -280,7 +280,7 @@ - (GCDWebServerResponse*)downloadFile:(GCDWebServerRequest*)request { NSString* fileName = [absolutePath lastPathComponent]; if (([fileName hasPrefix:@"."] && !_allowHiddenItems) || ![self _checkFileExtension:fileName]) { - return [GCDWebServerErrorResponse responseWithClientError:kGCDWebServerHTTPStatusCode_Forbidden message:@"Downlading file name \"%@\" is not allowed", fileName]; + return [GCDWebServerErrorResponse responseWithClientError:kGCDWebServerHTTPStatusCode_Forbidden message:@"Downloading file name \"%@\" is not allowed", fileName]; } if ([self.delegate respondsToSelector:@selector(webUploader:didDownloadFileAtPath:)]) {