Skip to content

Commit

Permalink
Merge pull request #24 from Clipy/v1.0.6
Browse files Browse the repository at this point in the history
v1.0.6
  • Loading branch information
Econa77 committed Oct 28, 2015
2 parents 460c704 + 89c205a commit c322a19
Show file tree
Hide file tree
Showing 12 changed files with 298 additions and 170 deletions.
4 changes: 4 additions & 0 deletions Clipy.xcodeproj/project.pbxproj
Expand Up @@ -48,6 +48,7 @@
FAC43E6D1B35EC8900C06102 /* CPYHotKeyManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAC43E6C1B35EC8900C06102 /* CPYHotKeyManager.swift */; };
FAC43E701B35F51F00C06102 /* CPYConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAC43E6F1B35F51F00C06102 /* CPYConstants.swift */; };
FAC43E721B36D0A600C06102 /* CPYUtilities.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAC43E711B36D0A600C06102 /* CPYUtilities.swift */; };
FADAF7BA1BD946E8006DB2D0 /* NSImage+AssetCatalog.swift in Sources */ = {isa = PBXBuildFile; fileRef = FADAF7B91BD946E8006DB2D0 /* NSImage+AssetCatalog.swift */; settings = {ASSET_TAGS = (); }; };
FAF1DA0A1B41888F00E15D16 /* CPYPreferenceWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = FAF1DA0C1B41888F00E15D16 /* CPYPreferenceWindowController.xib */; };
/* End PBXBuildFile section */

Expand Down Expand Up @@ -132,6 +133,7 @@
FAC43E6C1B35EC8900C06102 /* CPYHotKeyManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CPYHotKeyManager.swift; sourceTree = "<group>"; };
FAC43E6F1B35F51F00C06102 /* CPYConstants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CPYConstants.swift; sourceTree = "<group>"; };
FAC43E711B36D0A600C06102 /* CPYUtilities.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CPYUtilities.swift; sourceTree = "<group>"; };
FADAF7B91BD946E8006DB2D0 /* NSImage+AssetCatalog.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "NSImage+AssetCatalog.swift"; sourceTree = "<group>"; };
FAF1DA0B1B41888F00E15D16 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CPYPreferenceWindowController.xib; sourceTree = "<group>"; };
FAF1DA0F1B41889800E15D16 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CPYPreferenceWindowController.xib; sourceTree = "<group>"; };
/* End PBXFileReference section */
Expand Down Expand Up @@ -226,6 +228,7 @@
isa = PBXGroup;
children = (
FA8B8E671B65193F00AA65AF /* NSImage+Resize.swift */,
FADAF7B91BD946E8006DB2D0 /* NSImage+AssetCatalog.swift */,
);
path = Categories;
sourceTree = "<group>";
Expand Down Expand Up @@ -542,6 +545,7 @@
FAC43E621B35EA4E00C06102 /* CPYFolder.swift in Sources */,
FA3B96061B3FD4BA00B61FF0 /* CPYFolderTableView.swift in Sources */,
FAC43E671B35EC5400C06102 /* CPYMenuManager.swift in Sources */,
FADAF7BA1BD946E8006DB2D0 /* NSImage+AssetCatalog.swift in Sources */,
FAC43E641B35EA6800C06102 /* CPYSnippet.swift in Sources */,
FAC43E701B35F51F00C06102 /* CPYConstants.swift in Sources */,
FAC43E5E1B35E1C300C06102 /* CPYClip.swift in Sources */,
Expand Down
3 changes: 2 additions & 1 deletion Clipy/CPYConstants.swift
Expand Up @@ -58,7 +58,8 @@ let kCPYPrefSuppressAlertForLoginItemKey = "suppressAlertForLoginI
let kCPYPrefShowStatusItemKey = "kCPYPrefShowStatusItemKey"
let kCPYPrefThumbnailWidthKey = "thumbnailWidth"
let kCPYPrefThumbnailHeightKey = "thumbnailHeight"
let kCPYPrefOverwriteSameHistroy = "kCPYPrefOverwriteSameHistroy"
let kCPYPrefOverwriteSameHistroyKey = "kCPYPrefOverwriteSameHistroy"
let kCPYPrefCopySameHistroyKey = "kCPYPrefCopySameHistroy"

// SnippetEditor
let kCPYSnippetEditorWillCloseNotification = "kCPYSnippetEditorWillCloseNotification"
Expand Down
35 changes: 35 additions & 0 deletions Clipy/Categories/NSImage+AssetCatalog.swift
@@ -0,0 +1,35 @@
//
// NSImage+AssetCatalog.swift
// Clipy
//
// Created by 古林俊佑 on 2015/10/23.
// Copyright © 2015年 Shunsuke Furubayashi. All rights reserved.
//

import Foundation

extension NSImage {

// MARK: - Enum Value
enum AssetIdentifier: String {
// Icons
case IconFolder = "icon_folder"
case IconText = "icon_text"

// MenuIcons
case MenuBlack = "statusbar_menu_black"
case MenuWhite = "statusbar_menu_white"

// SettingTabIcons
case Menu = "Menu"
case IconApplication = "icon_application"
case IconKeyboard = "PTKeyboardIcon"
case IconSparkle = "SparkleIcon"
}

// MARK: - Initialize
convenience init!(assetIdentifier: AssetIdentifier) {
self.init(named: assetIdentifier.rawValue)
}

}
4 changes: 2 additions & 2 deletions Clipy/Info.plist
Expand Up @@ -17,11 +17,11 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0.5</string>
<string>1.0.6</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0.5</string>
<string>1.0.6</string>
<key>LSMinimumSystemVersion</key>
<string>$(MACOSX_DEPLOYMENT_TARGET)</string>
<key>LSUIElement</key>
Expand Down
16 changes: 10 additions & 6 deletions Clipy/Managers/CPYClipManager.swift
Expand Up @@ -67,7 +67,8 @@ class CPYClipManager: NSObject {
}

func loadSortedClips() -> RLMResults {
return CPYClip.allObjects().sortedResultsUsingProperty("updateTime", ascending: false)
let ascending = !NSUserDefaults.standardUserDefaults().boolForKey(kCPYPrefReorderClipsAfterPasting)
return CPYClip.allObjects().sortedResultsUsingProperty("updateTime", ascending: ascending)
}

func clearAll() {
Expand Down Expand Up @@ -95,10 +96,6 @@ class CPYClipManager: NSObject {
NSNotificationCenter.defaultCenter().postNotificationName(kCPYChangeContentsNotification, object: nil)
}

func clipAtIndex(index: NSInteger) -> CPYClip {
return self.loadSortedClips().objectAtIndex(UInt(index)) as! CPYClip
}

func copyStringToPasteboard(aString: String) {
let pboard = NSPasteboard.generalPasteboard()
pboard.declareTypes([NSStringPboardType], owner: self)
Expand Down Expand Up @@ -185,7 +182,14 @@ class CPYClipManager: NSObject {
if let clipData = self.makeClipDataFromPasteboard() {

let realm = RLMRealm.defaultRealm()
let isOverwriteHistory = NSUserDefaults.standardUserDefaults().boolForKey(kCPYPrefOverwriteSameHistroy)
let isCopySameHistory = NSUserDefaults.standardUserDefaults().boolForKey(kCPYPrefCopySameHistroyKey)
// Search same history
if let _ = CPYClip(forPrimaryKey: String(clipData.hash)) where !isCopySameHistory {
self.isCopyingPsteboard = false
return
}

let isOverwriteHistory = NSUserDefaults.standardUserDefaults().boolForKey(kCPYPrefOverwriteSameHistroyKey)
let hash: Int
if isOverwriteHistory {
hash = clipData.hash
Expand Down
2 changes: 1 addition & 1 deletion Clipy/Managers/CPYHistoryManager.swift
Expand Up @@ -24,7 +24,7 @@ class CPYHistoryManager: NSObject {
func trimHistorySize() {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), { () -> Void in
let realm = RLMRealm.defaultRealm()
let clips = CPYClipManager.sharedManager.loadSortedClips()
let clips = CPYClip.allObjects().sortedResultsUsingProperty("updateTime", ascending: false)

let maxHistorySize = NSUserDefaults.standardUserDefaults().integerForKey(kCPYPrefMaxHistorySizeKey)
if maxHistorySize < Int(clips.count) {
Expand Down
10 changes: 5 additions & 5 deletions Clipy/Managers/CPYMenuManager.swift
Expand Up @@ -21,8 +21,8 @@ class CPYMenuManager: NSObject {
private var statusItem: NSStatusItem?
private var highlightedMenuItem: NSMenuItem?

var folderIcon = NSImage(named: "icon_folder")
var snippetIcon = NSImage(named: "icon_text")
var folderIcon = NSImage(assetIdentifier: .IconFolder)
var snippetIcon = NSImage(assetIdentifier: .IconText)

private let kMaxKeyEquivalents = 10
private let SHORTEN_SYMBOL = "..."
Expand Down Expand Up @@ -384,11 +384,11 @@ class CPYMenuManager: NSObject {
var statusIcon: NSImage?
switch itemIndex {
case 1:
statusIcon = NSImage(named: "statusbar_menu_black")
statusIcon = NSImage(assetIdentifier: .MenuBlack)
case 2:
statusIcon = NSImage(named: "statusbar_menu_white")
statusIcon = NSImage(assetIdentifier: .MenuWhite)
default:
statusIcon = NSImage(named: "statusbar_menu_black")
statusIcon = NSImage(assetIdentifier: .MenuBlack)
}
statusIcon?.template = true

Expand Down
3 changes: 2 additions & 1 deletion Clipy/Utility/CPYUtilities.swift
Expand Up @@ -40,7 +40,8 @@ class CPYUtilities: NSObject {
defaultValues.updateValue(NSNumber(integer: 200), forKey: kCPYPrefMaxLengthOfToolTipKey)
defaultValues.updateValue(NSNumber(integer: 100), forKey: kCPYPrefThumbnailWidthKey)
defaultValues.updateValue(NSNumber(integer: 32), forKey: kCPYPrefThumbnailHeightKey)
defaultValues.updateValue(NSNumber(bool: true), forKey: kCPYPrefOverwriteSameHistroy)
defaultValues.updateValue(NSNumber(bool: true), forKey: kCPYPrefOverwriteSameHistroyKey)
defaultValues.updateValue(NSNumber(bool: true), forKey: kCPYPrefCopySameHistroyKey)

/* Updates */
defaultValues.updateValue(NSNumber(bool: true), forKey: kCPYEnableAutomaticCheckKey)
Expand Down
4 changes: 2 additions & 2 deletions Clipy/Views/TableViewCell/CPYImageAndTextCell.swift
Expand Up @@ -82,10 +82,10 @@ class CPYImageAndTextCell: NSTextFieldCell {

if self.cellImageType == .Folder {
imageFrame.size = NSMakeSize(15.0, 13.0)
NSImage(named: "icon_folder")?.drawInRect(imageFrame, fromRect: NSZeroRect, operation: NSCompositingOperation.CompositeSourceOver, fraction: 1.0, respectFlipped: true, hints: nil)
NSImage(assetIdentifier: .IconFolder).drawInRect(imageFrame, fromRect: NSZeroRect, operation: NSCompositingOperation.CompositeSourceOver, fraction: 1.0, respectFlipped: true, hints: nil)
} else if self.cellImageType == .File {
imageFrame.size = NSMakeSize(12.0, 13.0)
NSImage(named: "icon_text")?.drawInRect(imageFrame, fromRect: NSZeroRect, operation: NSCompositingOperation.CompositeSourceOver, fraction: 1.0, respectFlipped: true, hints: nil)
NSImage(assetIdentifier: .IconText).drawInRect(imageFrame, fromRect: NSZeroRect, operation: NSCompositingOperation.CompositeSourceOver, fraction: 1.0, respectFlipped: true, hints: nil)
} else if self.cellImageType == .Application {
imageFrame.size = NSMakeSize(16.0, 16.0)
}
Expand Down
8 changes: 4 additions & 4 deletions Clipy/WindowControllers/CPYPreferenceWindowController.swift
Expand Up @@ -55,16 +55,16 @@ class CPYPreferenceWindowController: DBPrefsWindowController, NSWindowDelegate {
if let image = NSImage(named: NSImageNamePreferencesGeneral) {
self.addView(self.generalPreferenceView, label: NSLocalizedString("General", comment: ""), image: image)
}
if let image = NSImage(named: "Menu") {
if let image = NSImage(assetIdentifier: .Menu) {
self.addView(self.menuPreferenceView, label: NSLocalizedString("Menu", comment: ""), image: image)
}
if let image = NSImage(named: "icon_application") {
if let image = NSImage(assetIdentifier: .IconApplication) {
self.addView(self.typePreferenceView, label: NSLocalizedString("Type", comment: ""), image: image)
}
if let image = NSImage(named: "PTKeyboardIcon") {
if let image = NSImage(assetIdentifier: .IconKeyboard) {
self.addView(self.shortcutPreferenceView, label: NSLocalizedString("Shortcuts", comment: ""), image: image)
}
if let image = NSImage(named: "SparkleIcon") {
if let image = NSImage(assetIdentifier: .IconSparkle) {
self.addView(self.updatePreferenceView, label: NSLocalizedString("Updates", comment: ""), image: image)
}

Expand Down

0 comments on commit c322a19

Please sign in to comment.