From 749e6e033bc0c5d0e5416ad52df6e8f93e3cb9ef Mon Sep 17 00:00:00 2001 From: Mustafa Merza <mustafa.merza95@gmail.com> Date: Sun, 21 Jul 2024 12:11:27 +0300 Subject: [PATCH] - Moved used system ui images to image's extension. --- MiniScanner/Extensions/UIImage+Images.swift | 12 ++++++++++++ .../Settings/Presentation/SettingsViewModel.swift | 5 +---- .../DocumentPreviewViewController.swift | 4 ++-- .../Documents/DocumentsTableViewController.swift | 9 +++------ .../Frameworks/FSPager/FSPagerViewCell.swift | 4 ++-- 5 files changed, 20 insertions(+), 14 deletions(-) diff --git a/MiniScanner/Extensions/UIImage+Images.swift b/MiniScanner/Extensions/UIImage+Images.swift index db08654..255f457 100644 --- a/MiniScanner/Extensions/UIImage+Images.swift +++ b/MiniScanner/Extensions/UIImage+Images.swift @@ -16,4 +16,16 @@ extension UIImage { // MARK: - Common system images and icons extension UIImage { + static let chevronLeft = UIImage(systemName: "chevron.left") + static let chevronRight = UIImage(systemName: "chevron.right") + + static let trash = UIImage(systemName: "trash") + static let trashFill = UIImage(systemName: "trash.fill") + + static let squareAndPencil = UIImage(systemName: "square.and.pencil") + + static let eye = UIImage(systemName: "eye") + + static let camera = UIImage(systemName: "camera") + static let photo = UIImage(systemName: "photo") } diff --git a/MiniScanner/Features/Settings/Presentation/SettingsViewModel.swift b/MiniScanner/Features/Settings/Presentation/SettingsViewModel.swift index ba32961..bc62fb3 100644 --- a/MiniScanner/Features/Settings/Presentation/SettingsViewModel.swift +++ b/MiniScanner/Features/Settings/Presentation/SettingsViewModel.swift @@ -102,10 +102,7 @@ extension SettingsViewModel2 { let navigationController = coordinator.navigationController - let chevronLeft = UIImage(systemName: "chevron.left") - let chevronRight = UIImage(systemName: "chevron.right") - - let backImage = SupportedLanguage.currentLanguage.layoutDirection == .leftToRight ? chevronLeft : chevronRight + let backImage: UIImage? = SupportedLanguage.currentLanguage.layoutDirection == .leftToRight ? .chevronLeft : .chevronRight navigationController.navigationBar.backIndicatorImage = backImage navigationController.navigationBar.backIndicatorTransitionMaskImage = backImage diff --git a/MiniScanner/Modules/DocumentPreview/DocumentPreviewViewController.swift b/MiniScanner/Modules/DocumentPreview/DocumentPreviewViewController.swift index c8364cc..7b3b977 100644 --- a/MiniScanner/Modules/DocumentPreview/DocumentPreviewViewController.swift +++ b/MiniScanner/Modules/DocumentPreview/DocumentPreviewViewController.swift @@ -104,11 +104,11 @@ final class DocumentPreviewViewController: UIViewController { }) alertController.addAction(cameraAction) - cameraAction.setValue(UIImage(systemName: "camera"), forKey: "image") + cameraAction.setValue(UIImage.camera, forKey: "image") cameraAction.setValue(CATextLayerAlignmentMode.left, forKey: "titleTextAlignment") alertController.addAction(galleryAction) - galleryAction.setValue(UIImage(systemName: "photo"), forKey: "image") + galleryAction.setValue(UIImage.photo, forKey: "image") galleryAction.setValue(CATextLayerAlignmentMode.left, forKey: "titleTextAlignment") alertController.addAction(UIAlertAction(title: .cancel.localized, style: .cancel, handler: nil)) diff --git a/MiniScanner/Modules/Documents/DocumentsTableViewController.swift b/MiniScanner/Modules/Documents/DocumentsTableViewController.swift index df7b684..bf853e9 100644 --- a/MiniScanner/Modules/Documents/DocumentsTableViewController.swift +++ b/MiniScanner/Modules/Documents/DocumentsTableViewController.swift @@ -260,7 +260,7 @@ final class DocumentsTableViewController: UIViewController, UITableViewDelegate, completionHandler(true) } trash.backgroundColor = .systemRed - trash.image = UIImage(systemName: "trash")?.tint(with: .white) + trash.image = .trash?.tint(with: .white) // Rename action let rename = UIContextualAction(style: .normal, @@ -269,7 +269,7 @@ final class DocumentsTableViewController: UIViewController, UITableViewDelegate, completionHandler(true) } rename.backgroundColor = UIColor.black.withAlphaComponent(0.5) - rename.image = UIImage(systemName: "square.and.pencil")?.tint(with: .white) + rename.image = .squareAndPencil?.tint(with: .white) let move = UIContextualAction(style: .normal, title: .move.localized) { [weak self] (_, _, completionHandler) in @@ -635,10 +635,7 @@ extension DocumentsTableViewController { let navigationController = navigationController! - let chevronLeft = UIImage(systemName: "chevron.left") - let chevronRight = UIImage(systemName: "chevron.right") - - let backImage = SupportedLanguage.currentLanguage.layoutDirection == .leftToRight ? chevronLeft : chevronRight + let backImage: UIImage? = SupportedLanguage.currentLanguage.layoutDirection == .leftToRight ? .chevronLeft : .chevronRight navigationController.navigationBar.backIndicatorImage = backImage navigationController.navigationBar.backIndicatorTransitionMaskImage = backImage diff --git a/MiniScanner/Supporting Files/Frameworks/FSPager/FSPagerViewCell.swift b/MiniScanner/Supporting Files/Frameworks/FSPager/FSPagerViewCell.swift index 0f42136..27a03d1 100644 --- a/MiniScanner/Supporting Files/Frameworks/FSPager/FSPagerViewCell.swift +++ b/MiniScanner/Supporting Files/Frameworks/FSPager/FSPagerViewCell.swift @@ -99,7 +99,7 @@ open class FSPagerViewCell: UICollectionViewCell { trashButton = UIButton(frame: CGRect(x: xPosition, y: Int(yPosition), width: 50, height: 50)) // Adjust frame as needed self.contentView.addSubview(trashButton) // Add the button to the cell's contentView - trashButton.setImage(UIImage(systemName: "trash.fill"), for: .normal) + trashButton.setImage(.trashFill, for: .normal) trashButton.addTarget(self, action: #selector(topLeftButtonTapped), for: .touchUpInside) // Set the button action trashButton.tintColor = .red @@ -109,7 +109,7 @@ open class FSPagerViewCell: UICollectionViewCell { previewButton = UIButton(frame: CGRect(x: Int(previewXPosition), y: Int(previewYPosition), width: 50, height: 50)) // Adjust frame as needed self.contentView.addSubview(previewButton) // Add the button to the cell's contentView - previewButton.setImage(UIImage(systemName: "eye"), for: .normal) + previewButton.setImage(.eye, for: .normal) previewButton.addTarget(self, action: #selector(imagePreview), for: .touchUpInside) // Set the button action previewButton.tintColor = .red imageView.contentMode = .scaleAspectFit -- GitLab