Improvements to UI cleanup, confirm new master passwords, texts updates.
[FIXED] Immediately open the application on the password entry view if the key is forgotten instead of revealing the internals in a blink. [FIXED] Clean up the UI better when switching between master passwords. [ADDED] Ask spelling confirmation when a master password is used that doesn't have any known sites yet. [ADDED] iPad HD quality icon. [IMPROVED] Artworks re-generated, downscale improved, convertImages improved. [IMPROVED] Small guide text improvements. [UPDATED] Help texts updated for current operation and UI.
BIN
Default.png
Before Width: | Height: | Size: 64 KiB |
BIN
Default@2x.png
Before Width: | Height: | Size: 185 KiB |
2
External/Pearl
vendored
@ -1 +1 @@
|
|||||||
Subproject commit faeeab4f7ec32369c2a239e4a0dfe2aedb828999
|
Subproject commit c35cf7d1a0e4156644fad113d5c580eddabe8c99
|
@ -8,6 +8,16 @@
|
|||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
DA04E33E14B1E70400ECA4F3 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA04E33D14B1E70400ECA4F3 /* MobileCoreServices.framework */; };
|
DA04E33E14B1E70400ECA4F3 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA04E33D14B1E70400ECA4F3 /* MobileCoreServices.framework */; };
|
||||||
|
DA0A1D0515690A9A0092735D /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = DA0A1D0315690A9A0092735D /* Default.png */; };
|
||||||
|
DA0A1D0615690A9A0092735D /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DA0A1D0415690A9A0092735D /* Default@2x.png */; };
|
||||||
|
DA0A1D0D15690AD40092735D /* tip_arrow_banana.png in Resources */ = {isa = PBXBuildFile; fileRef = DA0A1D0715690AD40092735D /* tip_arrow_banana.png */; };
|
||||||
|
DA0A1D0E15690AD40092735D /* tip_arrow_black.png in Resources */ = {isa = PBXBuildFile; fileRef = DA0A1D0815690AD40092735D /* tip_arrow_black.png */; };
|
||||||
|
DA0A1D0F15690AD40092735D /* tip_arrow_gray.png in Resources */ = {isa = PBXBuildFile; fileRef = DA0A1D0915690AD40092735D /* tip_arrow_gray.png */; };
|
||||||
|
DA0A1D1015690AD40092735D /* tip_arrow_mercury.png in Resources */ = {isa = PBXBuildFile; fileRef = DA0A1D0A15690AD40092735D /* tip_arrow_mercury.png */; };
|
||||||
|
DA0A1D1115690AD40092735D /* tip_arrow_teal.png in Resources */ = {isa = PBXBuildFile; fileRef = DA0A1D0B15690AD40092735D /* tip_arrow_teal.png */; };
|
||||||
|
DA0A1D1215690AD40092735D /* tip_arrow_wood.png in Resources */ = {isa = PBXBuildFile; fileRef = DA0A1D0C15690AD40092735D /* tip_arrow_wood.png */; };
|
||||||
|
DA0A1D1515690AF40092735D /* Icon-72@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DA0A1D1315690AF30092735D /* Icon-72@2x.png */; };
|
||||||
|
DA0A1D1615690AF40092735D /* Icon-Small-50@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DA0A1D1415690AF40092735D /* Icon-Small-50@2x.png */; };
|
||||||
DA4425CC1557BED40052177D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
DA4425CC1557BED40052177D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
||||||
DA4426001557BF260052177D /* UbiquityStoreManager.h in Headers */ = {isa = PBXBuildFile; fileRef = DA4425F11557BF260052177D /* UbiquityStoreManager.h */; };
|
DA4426001557BF260052177D /* UbiquityStoreManager.h in Headers */ = {isa = PBXBuildFile; fileRef = DA4425F11557BF260052177D /* UbiquityStoreManager.h */; };
|
||||||
DA4426011557BF260052177D /* UbiquityStoreManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DA4425F21557BF260052177D /* UbiquityStoreManager.m */; };
|
DA4426011557BF260052177D /* UbiquityStoreManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DA4425F21557BF260052177D /* UbiquityStoreManager.m */; };
|
||||||
@ -25,8 +35,6 @@
|
|||||||
DA600C2815056428008E9AB6 /* MPConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = DA600C2715056427008E9AB6 /* MPConfig.m */; };
|
DA600C2815056428008E9AB6 /* MPConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = DA600C2715056427008E9AB6 /* MPConfig.m */; };
|
||||||
DA672D2F14F92C6B004A189C /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = DA672D2E14F92C6B004A189C /* libz.dylib */; };
|
DA672D2F14F92C6B004A189C /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = DA672D2E14F92C6B004A189C /* libz.dylib */; };
|
||||||
DA672D3014F9413D004A189C /* libPearl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DAC77CAD148291A600BCF976 /* libPearl.a */; };
|
DA672D3014F9413D004A189C /* libPearl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DAC77CAD148291A600BCF976 /* libPearl.a */; };
|
||||||
DA6E49F7155CF62C00CFF2D5 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = DA6E49F6155CF62C00CFF2D5 /* Default.png */; };
|
|
||||||
DA6E49F9155CF63B00CFF2D5 /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DA6E49F8155CF63A00CFF2D5 /* Default@2x.png */; };
|
|
||||||
DA95D59D14DF063C008D1B94 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
DA95D59D14DF063C008D1B94 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DA5BFA4A147E415C00F98B1E /* Foundation.framework */; };
|
||||||
DA95D5CF14DF0691008D1B94 /* IASKAppSettingsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = DA95D5A814DF0691008D1B94 /* IASKAppSettingsViewController.h */; };
|
DA95D5CF14DF0691008D1B94 /* IASKAppSettingsViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = DA95D5A814DF0691008D1B94 /* IASKAppSettingsViewController.h */; };
|
||||||
DA95D5D014DF0691008D1B94 /* IASKAppSettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DA95D5A914DF0691008D1B94 /* IASKAppSettingsViewController.m */; };
|
DA95D5D014DF0691008D1B94 /* IASKAppSettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DA95D5A914DF0691008D1B94 /* IASKAppSettingsViewController.m */; };
|
||||||
@ -115,7 +123,6 @@
|
|||||||
DAB8D71715036BF600CED3BC /* ui_list_last@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D48E15036BF600CED3BC /* ui_list_last@2x.png */; };
|
DAB8D71715036BF600CED3BC /* ui_list_last@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D48E15036BF600CED3BC /* ui_list_last@2x.png */; };
|
||||||
DAB8D71815036BF600CED3BC /* ui_list_middle.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D48F15036BF600CED3BC /* ui_list_middle.png */; };
|
DAB8D71815036BF600CED3BC /* ui_list_middle.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D48F15036BF600CED3BC /* ui_list_middle.png */; };
|
||||||
DAB8D71915036BF600CED3BC /* ui_list_middle@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D49015036BF600CED3BC /* ui_list_middle@2x.png */; };
|
DAB8D71915036BF600CED3BC /* ui_list_middle@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D49015036BF600CED3BC /* ui_list_middle@2x.png */; };
|
||||||
DAB8D71A15036BF600CED3BC /* ui_navbar@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D49115036BF600CED3BC /* ui_navbar@2x.png */; };
|
|
||||||
DAB8D71B15036BF600CED3BC /* ui_navbar_back.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D49215036BF600CED3BC /* ui_navbar_back.png */; };
|
DAB8D71B15036BF600CED3BC /* ui_navbar_back.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D49215036BF600CED3BC /* ui_navbar_back.png */; };
|
||||||
DAB8D71C15036BF600CED3BC /* ui_navbar_back@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D49315036BF600CED3BC /* ui_navbar_back@2x.png */; };
|
DAB8D71C15036BF600CED3BC /* ui_navbar_back@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D49315036BF600CED3BC /* ui_navbar_back@2x.png */; };
|
||||||
DAB8D71D15036BF600CED3BC /* ui_navbar_button.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D49415036BF600CED3BC /* ui_navbar_button.png */; };
|
DAB8D71D15036BF600CED3BC /* ui_navbar_button.png in Resources */ = {isa = PBXBuildFile; fileRef = DAB8D49415036BF600CED3BC /* ui_navbar_button.png */; };
|
||||||
@ -869,6 +876,16 @@
|
|||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
DA04E33D14B1E70400ECA4F3 /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = System/Library/Frameworks/MobileCoreServices.framework; sourceTree = SDKROOT; };
|
DA04E33D14B1E70400ECA4F3 /* MobileCoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileCoreServices.framework; path = System/Library/Frameworks/MobileCoreServices.framework; sourceTree = SDKROOT; };
|
||||||
|
DA0A1D0315690A9A0092735D /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Default.png; path = Resources/Default.png; sourceTree = SOURCE_ROOT; };
|
||||||
|
DA0A1D0415690A9A0092735D /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "Default@2x.png"; path = "Resources/Default@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||||
|
DA0A1D0715690AD40092735D /* tip_arrow_banana.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = tip_arrow_banana.png; path = Resources/Tooltips/tip_arrow_banana.png; sourceTree = SOURCE_ROOT; };
|
||||||
|
DA0A1D0815690AD40092735D /* tip_arrow_black.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = tip_arrow_black.png; path = Resources/Tooltips/tip_arrow_black.png; sourceTree = SOURCE_ROOT; };
|
||||||
|
DA0A1D0915690AD40092735D /* tip_arrow_gray.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = tip_arrow_gray.png; path = Resources/Tooltips/tip_arrow_gray.png; sourceTree = SOURCE_ROOT; };
|
||||||
|
DA0A1D0A15690AD40092735D /* tip_arrow_mercury.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = tip_arrow_mercury.png; path = Resources/Tooltips/tip_arrow_mercury.png; sourceTree = SOURCE_ROOT; };
|
||||||
|
DA0A1D0B15690AD40092735D /* tip_arrow_teal.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = tip_arrow_teal.png; path = Resources/Tooltips/tip_arrow_teal.png; sourceTree = SOURCE_ROOT; };
|
||||||
|
DA0A1D0C15690AD40092735D /* tip_arrow_wood.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = tip_arrow_wood.png; path = Resources/Tooltips/tip_arrow_wood.png; sourceTree = SOURCE_ROOT; };
|
||||||
|
DA0A1D1315690AF30092735D /* Icon-72@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-72@2x.png"; sourceTree = "<group>"; };
|
||||||
|
DA0A1D1415690AF40092735D /* Icon-Small-50@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-Small-50@2x.png"; sourceTree = "<group>"; };
|
||||||
DA4425CB1557BED40052177D /* libiCloudStoreManager.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libiCloudStoreManager.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
DA4425CB1557BED40052177D /* libiCloudStoreManager.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libiCloudStoreManager.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
DA4425F11557BF260052177D /* UbiquityStoreManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UbiquityStoreManager.h; sourceTree = "<group>"; };
|
DA4425F11557BF260052177D /* UbiquityStoreManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UbiquityStoreManager.h; sourceTree = "<group>"; };
|
||||||
DA4425F21557BF260052177D /* UbiquityStoreManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UbiquityStoreManager.m; sourceTree = "<group>"; };
|
DA4425F21557BF260052177D /* UbiquityStoreManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UbiquityStoreManager.m; sourceTree = "<group>"; };
|
||||||
@ -886,8 +903,6 @@
|
|||||||
DA600C2615056427008E9AB6 /* MPConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MPConfig.h; path = MasterPassword/MPConfig.h; sourceTree = SOURCE_ROOT; };
|
DA600C2615056427008E9AB6 /* MPConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MPConfig.h; path = MasterPassword/MPConfig.h; sourceTree = SOURCE_ROOT; };
|
||||||
DA600C2715056427008E9AB6 /* MPConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MPConfig.m; path = MasterPassword/MPConfig.m; sourceTree = SOURCE_ROOT; };
|
DA600C2715056427008E9AB6 /* MPConfig.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MPConfig.m; path = MasterPassword/MPConfig.m; sourceTree = SOURCE_ROOT; };
|
||||||
DA672D2E14F92C6B004A189C /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };
|
DA672D2E14F92C6B004A189C /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };
|
||||||
DA6E49F6155CF62C00CFF2D5 /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Default.png; path = ../../Default.png; sourceTree = "<group>"; };
|
|
||||||
DA6E49F8155CF63A00CFF2D5 /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "Default@2x.png"; path = "../../Default@2x.png"; sourceTree = "<group>"; };
|
|
||||||
DA79A9BB1557DB6F00BAA07A /* libscryptenc-ios.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libscryptenc-ios.a"; sourceTree = "<group>"; };
|
DA79A9BB1557DB6F00BAA07A /* libscryptenc-ios.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libscryptenc-ios.a"; sourceTree = "<group>"; };
|
||||||
DA79A9BD1557DDC700BAA07A /* scrypt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = scrypt.xcodeproj; path = External/Pearl/External/iOSPorts/ports/security/scrypt/scrypt.xcodeproj; sourceTree = "<group>"; };
|
DA79A9BD1557DDC700BAA07A /* scrypt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = scrypt.xcodeproj; path = External/Pearl/External/iOSPorts/ports/security/scrypt/scrypt.xcodeproj; sourceTree = "<group>"; };
|
||||||
DA95D59C14DF063C008D1B94 /* libInAppSettingsKit.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libInAppSettingsKit.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
DA95D59C14DF063C008D1B94 /* libInAppSettingsKit.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libInAppSettingsKit.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
@ -990,7 +1005,6 @@
|
|||||||
DAB8D48E15036BF600CED3BC /* ui_list_last@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ui_list_last@2x.png"; sourceTree = "<group>"; };
|
DAB8D48E15036BF600CED3BC /* ui_list_last@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ui_list_last@2x.png"; sourceTree = "<group>"; };
|
||||||
DAB8D48F15036BF600CED3BC /* ui_list_middle.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ui_list_middle.png; sourceTree = "<group>"; };
|
DAB8D48F15036BF600CED3BC /* ui_list_middle.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ui_list_middle.png; sourceTree = "<group>"; };
|
||||||
DAB8D49015036BF600CED3BC /* ui_list_middle@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ui_list_middle@2x.png"; sourceTree = "<group>"; };
|
DAB8D49015036BF600CED3BC /* ui_list_middle@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ui_list_middle@2x.png"; sourceTree = "<group>"; };
|
||||||
DAB8D49115036BF600CED3BC /* ui_navbar@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ui_navbar@2x.png"; sourceTree = "<group>"; };
|
|
||||||
DAB8D49215036BF600CED3BC /* ui_navbar_back.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ui_navbar_back.png; sourceTree = "<group>"; };
|
DAB8D49215036BF600CED3BC /* ui_navbar_back.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ui_navbar_back.png; sourceTree = "<group>"; };
|
||||||
DAB8D49315036BF600CED3BC /* ui_navbar_back@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ui_navbar_back@2x.png"; sourceTree = "<group>"; };
|
DAB8D49315036BF600CED3BC /* ui_navbar_back@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ui_navbar_back@2x.png"; sourceTree = "<group>"; };
|
||||||
DAB8D49415036BF600CED3BC /* ui_navbar_button.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ui_navbar_button.png; sourceTree = "<group>"; };
|
DAB8D49415036BF600CED3BC /* ui_navbar_button.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ui_navbar_button.png; sourceTree = "<group>"; };
|
||||||
@ -1993,12 +2007,14 @@
|
|||||||
DAB8D4F515036BF600CED3BC /* Fonts */,
|
DAB8D4F515036BF600CED3BC /* Fonts */,
|
||||||
DAB8D4FF15036BF600CED3BC /* Guide */,
|
DAB8D4FF15036BF600CED3BC /* Guide */,
|
||||||
DAB8D50F15036BF600CED3BC /* help.html */,
|
DAB8D50F15036BF600CED3BC /* help.html */,
|
||||||
DAB8D51015036BF600CED3BC /* Icon-72.png */,
|
|
||||||
DAB8D51115036BF600CED3BC /* Icon-Small-50.png */,
|
|
||||||
DAB8D51215036BF600CED3BC /* Icon-Small.png */,
|
|
||||||
DAB8D51315036BF600CED3BC /* Icon-Small@2x.png */,
|
|
||||||
DAB8D51415036BF600CED3BC /* Icon.png */,
|
DAB8D51415036BF600CED3BC /* Icon.png */,
|
||||||
DAB8D51515036BF600CED3BC /* Icon@2x.png */,
|
DAB8D51515036BF600CED3BC /* Icon@2x.png */,
|
||||||
|
DAB8D51015036BF600CED3BC /* Icon-72.png */,
|
||||||
|
DA0A1D1315690AF30092735D /* Icon-72@2x.png */,
|
||||||
|
DAB8D51215036BF600CED3BC /* Icon-Small.png */,
|
||||||
|
DAB8D51315036BF600CED3BC /* Icon-Small@2x.png */,
|
||||||
|
DAB8D51115036BF600CED3BC /* Icon-Small-50.png */,
|
||||||
|
DA0A1D1415690AF40092735D /* Icon-Small-50@2x.png */,
|
||||||
DAB8D51615036BF600CED3BC /* Insignia */,
|
DAB8D51615036BF600CED3BC /* Insignia */,
|
||||||
DAB8D6A915036BF600CED3BC /* iTunesArtwork.png */,
|
DAB8D6A915036BF600CED3BC /* iTunesArtwork.png */,
|
||||||
DAB8D6AB15036BF600CED3BC /* jquery-1.6.1.min.js */,
|
DAB8D6AB15036BF600CED3BC /* jquery-1.6.1.min.js */,
|
||||||
@ -2044,7 +2060,6 @@
|
|||||||
DAB8D48E15036BF600CED3BC /* ui_list_last@2x.png */,
|
DAB8D48E15036BF600CED3BC /* ui_list_last@2x.png */,
|
||||||
DAB8D48F15036BF600CED3BC /* ui_list_middle.png */,
|
DAB8D48F15036BF600CED3BC /* ui_list_middle.png */,
|
||||||
DAB8D49015036BF600CED3BC /* ui_list_middle@2x.png */,
|
DAB8D49015036BF600CED3BC /* ui_list_middle@2x.png */,
|
||||||
DAB8D49115036BF600CED3BC /* ui_navbar@2x.png */,
|
|
||||||
DAB8D49215036BF600CED3BC /* ui_navbar_back.png */,
|
DAB8D49215036BF600CED3BC /* ui_navbar_back.png */,
|
||||||
DAB8D49315036BF600CED3BC /* ui_navbar_back@2x.png */,
|
DAB8D49315036BF600CED3BC /* ui_navbar_back@2x.png */,
|
||||||
DAB8D49415036BF600CED3BC /* ui_navbar_button.png */,
|
DAB8D49415036BF600CED3BC /* ui_navbar_button.png */,
|
||||||
@ -2622,6 +2637,12 @@
|
|||||||
DAB8D6B715036BF600CED3BC /* Tooltips */ = {
|
DAB8D6B715036BF600CED3BC /* Tooltips */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
DA0A1D0715690AD40092735D /* tip_arrow_banana.png */,
|
||||||
|
DA0A1D0815690AD40092735D /* tip_arrow_black.png */,
|
||||||
|
DA0A1D0915690AD40092735D /* tip_arrow_gray.png */,
|
||||||
|
DA0A1D0A15690AD40092735D /* tip_arrow_mercury.png */,
|
||||||
|
DA0A1D0B15690AD40092735D /* tip_arrow_teal.png */,
|
||||||
|
DA0A1D0C15690AD40092735D /* tip_arrow_wood.png */,
|
||||||
DAB8D6B815036BF600CED3BC /* tip_alert_banana.png */,
|
DAB8D6B815036BF600CED3BC /* tip_alert_banana.png */,
|
||||||
DAB8D6B915036BF600CED3BC /* tip_alert_banana@2x.png */,
|
DAB8D6B915036BF600CED3BC /* tip_alert_banana@2x.png */,
|
||||||
DAB8D6BA15036BF600CED3BC /* tip_alert_black.png */,
|
DAB8D6BA15036BF600CED3BC /* tip_alert_black.png */,
|
||||||
@ -2695,8 +2716,8 @@
|
|||||||
DAB8D9B11503757D00CED3BC /* Supporting Files */ = {
|
DAB8D9B11503757D00CED3BC /* Supporting Files */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
DA6E49F8155CF63A00CFF2D5 /* Default@2x.png */,
|
DA0A1D0315690A9A0092735D /* Default.png */,
|
||||||
DA6E49F6155CF62C00CFF2D5 /* Default.png */,
|
DA0A1D0415690A9A0092735D /* Default@2x.png */,
|
||||||
DAB8D43F15036BCF00CED3BC /* InfoPlist.strings */,
|
DAB8D43F15036BCF00CED3BC /* InfoPlist.strings */,
|
||||||
DAB8D44115036BCF00CED3BC /* main.m */,
|
DAB8D44115036BCF00CED3BC /* main.m */,
|
||||||
DAB8D44315036BCF00CED3BC /* MasterPassword-Info.plist */,
|
DAB8D44315036BCF00CED3BC /* MasterPassword-Info.plist */,
|
||||||
@ -3258,7 +3279,6 @@
|
|||||||
DAB8D71715036BF600CED3BC /* ui_list_last@2x.png in Resources */,
|
DAB8D71715036BF600CED3BC /* ui_list_last@2x.png in Resources */,
|
||||||
DAB8D71815036BF600CED3BC /* ui_list_middle.png in Resources */,
|
DAB8D71815036BF600CED3BC /* ui_list_middle.png in Resources */,
|
||||||
DAB8D71915036BF600CED3BC /* ui_list_middle@2x.png in Resources */,
|
DAB8D71915036BF600CED3BC /* ui_list_middle@2x.png in Resources */,
|
||||||
DAB8D71A15036BF600CED3BC /* ui_navbar@2x.png in Resources */,
|
|
||||||
DAB8D71B15036BF600CED3BC /* ui_navbar_back.png in Resources */,
|
DAB8D71B15036BF600CED3BC /* ui_navbar_back.png in Resources */,
|
||||||
DAB8D71C15036BF600CED3BC /* ui_navbar_back@2x.png in Resources */,
|
DAB8D71C15036BF600CED3BC /* ui_navbar_back@2x.png in Resources */,
|
||||||
DAB8D71D15036BF600CED3BC /* ui_navbar_button.png in Resources */,
|
DAB8D71D15036BF600CED3BC /* ui_navbar_button.png in Resources */,
|
||||||
@ -3867,8 +3887,16 @@
|
|||||||
DAD3126815528C9C00A3F9ED /* Crashlytics.plist in Resources */,
|
DAD3126815528C9C00A3F9ED /* Crashlytics.plist in Resources */,
|
||||||
DAD3126C15528C9C00A3F9ED /* TestFlight.plist in Resources */,
|
DAD3126C15528C9C00A3F9ED /* TestFlight.plist in Resources */,
|
||||||
DAD3129015528D1600A3F9ED /* Localytics.plist in Resources */,
|
DAD3129015528D1600A3F9ED /* Localytics.plist in Resources */,
|
||||||
DA6E49F7155CF62C00CFF2D5 /* Default.png in Resources */,
|
DA0A1D0515690A9A0092735D /* Default.png in Resources */,
|
||||||
DA6E49F9155CF63B00CFF2D5 /* Default@2x.png in Resources */,
|
DA0A1D0615690A9A0092735D /* Default@2x.png in Resources */,
|
||||||
|
DA0A1D0D15690AD40092735D /* tip_arrow_banana.png in Resources */,
|
||||||
|
DA0A1D0E15690AD40092735D /* tip_arrow_black.png in Resources */,
|
||||||
|
DA0A1D0F15690AD40092735D /* tip_arrow_gray.png in Resources */,
|
||||||
|
DA0A1D1015690AD40092735D /* tip_arrow_mercury.png in Resources */,
|
||||||
|
DA0A1D1115690AD40092735D /* tip_arrow_teal.png in Resources */,
|
||||||
|
DA0A1D1215690AD40092735D /* tip_arrow_wood.png in Resources */,
|
||||||
|
DA0A1D1515690AF40092735D /* Icon-72@2x.png in Resources */,
|
||||||
|
DA0A1D1615690AF40092735D /* Icon-Small-50@2x.png in Resources */,
|
||||||
);
|
);
|
||||||
runOnlyForDeploymentPostprocessing = 0;
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
};
|
};
|
||||||
@ -4215,13 +4243,14 @@
|
|||||||
);
|
);
|
||||||
GCC_PREFIX_HEADER = "MasterPassword/iOS/MasterPassword-Prefix.pch";
|
GCC_PREFIX_HEADER = "MasterPassword/iOS/MasterPassword-Prefix.pch";
|
||||||
INFOPLIST_FILE = "MasterPassword/iOS/MasterPassword-Info.plist";
|
INFOPLIST_FILE = "MasterPassword/iOS/MasterPassword-Info.plist";
|
||||||
|
IPHONEOS_DEPLOYMENT_TARGET = 5.0;
|
||||||
LIBRARY_SEARCH_PATHS = (
|
LIBRARY_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"\"$(SRCROOT)/TestFlight\"",
|
"\"$(SRCROOT)/TestFlight\"",
|
||||||
"\"$(SRCROOT)/External/Pearl/Pearl-Crypto\"",
|
"\"$(SRCROOT)/External/Pearl/Pearl-Crypto\"",
|
||||||
);
|
);
|
||||||
SKIP_INSTALL = NO;
|
SKIP_INSTALL = NO;
|
||||||
TARGETED_DEVICE_FAMILY = 1;
|
TARGETED_DEVICE_FAMILY = "1,2";
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
};
|
};
|
||||||
@ -4236,13 +4265,14 @@
|
|||||||
);
|
);
|
||||||
GCC_PREFIX_HEADER = "MasterPassword/iOS/MasterPassword-Prefix.pch";
|
GCC_PREFIX_HEADER = "MasterPassword/iOS/MasterPassword-Prefix.pch";
|
||||||
INFOPLIST_FILE = "MasterPassword/iOS/MasterPassword-Info.plist";
|
INFOPLIST_FILE = "MasterPassword/iOS/MasterPassword-Info.plist";
|
||||||
|
IPHONEOS_DEPLOYMENT_TARGET = 5.0;
|
||||||
LIBRARY_SEARCH_PATHS = (
|
LIBRARY_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"\"$(SRCROOT)/TestFlight\"",
|
"\"$(SRCROOT)/TestFlight\"",
|
||||||
"\"$(SRCROOT)/External/Pearl/Pearl-Crypto\"",
|
"\"$(SRCROOT)/External/Pearl/Pearl-Crypto\"",
|
||||||
);
|
);
|
||||||
SKIP_INSTALL = NO;
|
SKIP_INSTALL = NO;
|
||||||
TARGETED_DEVICE_FAMILY = 1;
|
TARGETED_DEVICE_FAMILY = "1,2";
|
||||||
};
|
};
|
||||||
name = AdHoc;
|
name = AdHoc;
|
||||||
};
|
};
|
||||||
@ -4336,13 +4366,14 @@
|
|||||||
);
|
);
|
||||||
GCC_PREFIX_HEADER = "MasterPassword/iOS/MasterPassword-Prefix.pch";
|
GCC_PREFIX_HEADER = "MasterPassword/iOS/MasterPassword-Prefix.pch";
|
||||||
INFOPLIST_FILE = "MasterPassword/iOS/MasterPassword-Info.plist";
|
INFOPLIST_FILE = "MasterPassword/iOS/MasterPassword-Info.plist";
|
||||||
|
IPHONEOS_DEPLOYMENT_TARGET = 5.0;
|
||||||
LIBRARY_SEARCH_PATHS = (
|
LIBRARY_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"\"$(SRCROOT)/TestFlight\"",
|
"\"$(SRCROOT)/TestFlight\"",
|
||||||
"\"$(SRCROOT)/External/Pearl/Pearl-Crypto\"",
|
"\"$(SRCROOT)/External/Pearl/Pearl-Crypto\"",
|
||||||
);
|
);
|
||||||
SKIP_INSTALL = NO;
|
SKIP_INSTALL = NO;
|
||||||
TARGETED_DEVICE_FAMILY = 1;
|
TARGETED_DEVICE_FAMILY = "1,2";
|
||||||
};
|
};
|
||||||
name = AppStore;
|
name = AppStore;
|
||||||
};
|
};
|
||||||
|
@ -62,6 +62,11 @@
|
|||||||
|
|
||||||
if (!self.key)
|
if (!self.key)
|
||||||
// Ask the user to set the key through his master password.
|
// Ask the user to set the key through his master password.
|
||||||
|
if ([NSThread isMainThread])
|
||||||
|
[self.navigationController presentViewController:
|
||||||
|
[self.navigationController.storyboard instantiateViewControllerWithIdentifier:@"MPUnlockViewController"]
|
||||||
|
animated:animated completion:nil];
|
||||||
|
else
|
||||||
dispatch_async(dispatch_get_main_queue(), ^{
|
dispatch_async(dispatch_get_main_queue(), ^{
|
||||||
[self.navigationController presentViewController:
|
[self.navigationController presentViewController:
|
||||||
[self.navigationController.storyboard instantiateViewControllerWithIdentifier:@"MPUnlockViewController"]
|
[self.navigationController.storyboard instantiateViewControllerWithIdentifier:@"MPUnlockViewController"]
|
||||||
@ -206,7 +211,7 @@
|
|||||||
[UIColor colorWithRed:1.0f green:1.0f blue:1.0f alpha:1.0f], UITextAttributeTextColor,
|
[UIColor colorWithRed:1.0f green:1.0f blue:1.0f alpha:1.0f], UITextAttributeTextColor,
|
||||||
[UIColor colorWithRed:0.0f green:0.0f blue:0.0f alpha:0.8f], UITextAttributeTextShadowColor,
|
[UIColor colorWithRed:0.0f green:0.0f blue:0.0f alpha:0.8f], UITextAttributeTextShadowColor,
|
||||||
[NSValue valueWithUIOffset:UIOffsetMake(0, -1)], UITextAttributeTextShadowOffset,
|
[NSValue valueWithUIOffset:UIOffsetMake(0, -1)], UITextAttributeTextShadowOffset,
|
||||||
[UIFont fontWithName:@"Helvetica-Neue" size:0.0f], UITextAttributeFont,
|
[UIFont fontWithName:@"Exo-Bold" size:20.0f], UITextAttributeFont,
|
||||||
nil]];
|
nil]];
|
||||||
|
|
||||||
UIImage *navBarButton = [[UIImage imageNamed:@"ui_navbar_button"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 5, 0, 5)];
|
UIImage *navBarButton = [[UIImage imageNamed:@"ui_navbar_button"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 5, 0, 5)];
|
||||||
@ -380,8 +385,10 @@
|
|||||||
|
|
||||||
[self saveContext];
|
[self saveContext];
|
||||||
|
|
||||||
if (![[MPiOSConfig get].rememberKey boolValue])
|
if (![[MPiOSConfig get].rememberKey boolValue]) {
|
||||||
[self updateKey:nil];
|
[self updateKey:nil];
|
||||||
|
[self loadKey:NO];
|
||||||
|
}
|
||||||
|
|
||||||
[TestFlight passCheckpoint:MPTestFlightCheckpointDeactivated];
|
[TestFlight passCheckpoint:MPTestFlightCheckpointDeactivated];
|
||||||
}
|
}
|
||||||
|
@ -74,6 +74,10 @@
|
|||||||
|
|
||||||
self.searchTipContainer.hidden = NO;
|
self.searchTipContainer.hidden = NO;
|
||||||
|
|
||||||
|
if (![self.activeElement.keyID isEqualToData:[MPAppDelegate get].keyID])
|
||||||
|
self.activeElement = nil;
|
||||||
|
self.searchDisplayController.searchBar.text = nil;
|
||||||
|
|
||||||
if (!self.activeElement.name)
|
if (!self.activeElement.name)
|
||||||
[UIView animateWithDuration:animated? 0.2f: 0 animations:^{
|
[UIView animateWithDuration:animated? 0.2f: 0 animations:^{
|
||||||
self.searchTipContainer.alpha = 1;
|
self.searchTipContainer.alpha = 1;
|
||||||
@ -111,12 +115,6 @@
|
|||||||
toView:self.searchTipContainer.superview];
|
toView:self.searchTipContainer.superview];
|
||||||
}
|
}
|
||||||
|
|
||||||
[[NSNotificationCenter defaultCenter] addObserverForName:UIApplicationWillResignActiveNotification object:nil queue:[NSOperationQueue mainQueue]
|
|
||||||
usingBlock:^(NSNotification *note) {
|
|
||||||
self.activeElement = nil;
|
|
||||||
[self updateWasAnimated:NO];
|
|
||||||
}];
|
|
||||||
|
|
||||||
self.alertBody.text = nil;
|
self.alertBody.text = nil;
|
||||||
self.contentTipEditIcon.hidden = YES;
|
self.contentTipEditIcon.hidden = YES;
|
||||||
|
|
||||||
|
@ -131,10 +131,9 @@
|
|||||||
- (void)update {
|
- (void)update {
|
||||||
|
|
||||||
assert(self.query);
|
assert(self.query);
|
||||||
assert([MPAppDelegate get].keyID);
|
|
||||||
|
|
||||||
self.fetchedResultsController.fetchRequest.predicate = [NSPredicate predicateWithFormat:@"(%@ == '' OR name BEGINSWITH[cd] %@) AND keyID == %@",
|
self.fetchedResultsController.fetchRequest.predicate = [NSPredicate predicateWithFormat:@"(%@ == '' OR name BEGINSWITH[cd] %@) AND keyID == %@",
|
||||||
self.query, self.query, [MPAppDelegate get].keyID];
|
self.query, self.query, NilToNull([MPAppDelegate get].keyID)];
|
||||||
|
|
||||||
NSError *error;
|
NSError *error;
|
||||||
if (![self.fetchedResultsController performFetch:&error])
|
if (![self.fetchedResultsController performFetch:&error])
|
||||||
@ -142,16 +141,14 @@
|
|||||||
[self.searchDisplayController.searchResultsTableView reloadData];
|
[self.searchDisplayController.searchResultsTableView reloadData];
|
||||||
|
|
||||||
NSArray *subviews = self.searchDisplayController.searchBar.superview.subviews;
|
NSArray *subviews = self.searchDisplayController.searchBar.superview.subviews;
|
||||||
UIView *overlay = [subviews objectAtIndex:[subviews indexOfObject:self.searchDisplayController.searchBar] + 1];
|
NSUInteger overlayIndex = [subviews indexOfObject:self.searchDisplayController.searchBar] + 1;
|
||||||
if (self.tipView.superview != overlay && overlay != self.searchDisplayController.searchResultsTableView) {
|
UIView *overlay = [subviews count] > overlayIndex? [subviews objectAtIndex:overlayIndex]: nil;
|
||||||
|
if (overlay == self.searchDisplayController.searchResultsTableView || ![overlay isKindOfClass:[UIControl class]])
|
||||||
|
overlay = nil;
|
||||||
|
if (self.tipView.superview != overlay) {
|
||||||
[self.tipView removeFromSuperview];
|
[self.tipView removeFromSuperview];
|
||||||
[overlay addSubview:self.tipView];
|
[overlay addSubview:self.tipView];
|
||||||
}
|
}
|
||||||
|
|
||||||
//dbg(@"Superviews of superview:");
|
|
||||||
//[self.searchDisplayController.searchBar.superview printSuperHierarchy];
|
|
||||||
//dbg(@"Subviews of superview:");
|
|
||||||
//[self.searchDisplayController.searchBar.superview printChildHierarchy];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// See MP-14, also crashes easily on internal assertions etc..
|
// See MP-14, also crashes easily on internal assertions etc..
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
#import "MPUnlockViewController.h"
|
#import "MPUnlockViewController.h"
|
||||||
#import "MPAppDelegate.h"
|
#import "MPAppDelegate.h"
|
||||||
#import "MPAppDelegate_Key.h"
|
#import "MPAppDelegate_Key.h"
|
||||||
|
#import "MPAppDelegate_Store.h"
|
||||||
|
#import "MPElementEntity.h"
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
MPLockscreenIdle,
|
MPLockscreenIdle,
|
||||||
@ -174,9 +176,39 @@ typedef enum {
|
|||||||
dispatch_async(dispatch_get_main_queue(), ^{
|
dispatch_async(dispatch_get_main_queue(), ^{
|
||||||
[self showMessage:@"Success!" state:MPLockscreenSuccess];
|
[self showMessage:@"Success!" state:MPLockscreenSuccess];
|
||||||
|
|
||||||
|
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:NSStringFromClass([MPElementEntity class])];
|
||||||
|
fetchRequest.predicate = [NSPredicate predicateWithFormat:@"keyID == %@", [MPAppDelegate get].keyID];
|
||||||
|
fetchRequest.fetchLimit = 1;
|
||||||
|
BOOL keyIDHasElements = [[[MPAppDelegate managedObjectContext] executeFetchRequest:fetchRequest error:nil] count] > 0;
|
||||||
|
if (keyIDHasElements)
|
||||||
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (long)(NSEC_PER_SEC * 1.5f)), dispatch_get_main_queue(), ^{
|
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (long)(NSEC_PER_SEC * 1.5f)), dispatch_get_main_queue(), ^{
|
||||||
[self dismissModalViewControllerAnimated:YES];
|
[self dismissModalViewControllerAnimated:YES];
|
||||||
});
|
});
|
||||||
|
else {
|
||||||
|
[PearlAlert showAlertWithTitle:@"New Master Password"
|
||||||
|
message:
|
||||||
|
@"Please confirm the spelling of this new master password."
|
||||||
|
viewStyle:UIAlertViewStyleSecureTextInput
|
||||||
|
tappedButtonBlock:^(UIAlertView *alert, NSInteger buttonIndex) {
|
||||||
|
if (buttonIndex == [alert cancelButtonIndex]) {
|
||||||
|
[[MPAppDelegate get] updateKey:nil];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (![[alert textFieldAtIndex:0].text isEqualToString:textField.text]) {
|
||||||
|
[PearlAlert showAlertWithTitle:@"Incorrect Master Password"
|
||||||
|
message:
|
||||||
|
@"The password you entered doesn't match with the master password you tried to use. "
|
||||||
|
@"You've probably mistyped one of them.\n\n"
|
||||||
|
@"Give it another try."
|
||||||
|
viewStyle:UIAlertViewStyleDefault tappedButtonBlock:nil
|
||||||
|
cancelTitle:[PearlStrings get].commonButtonOkay otherTitles:nil];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
[self dismissModalViewControllerAnimated:YES];
|
||||||
|
}
|
||||||
|
cancelTitle:[PearlStrings get].commonButtonCancel
|
||||||
|
otherTitles:[PearlStrings get].commonButtonContinue, nil];
|
||||||
|
}
|
||||||
});
|
});
|
||||||
else
|
else
|
||||||
dispatch_async(dispatch_get_main_queue(), ^{
|
dispatch_async(dispatch_get_main_queue(), ^{
|
||||||
|
@ -32,8 +32,7 @@
|
|||||||
<string>Icon.png</string>
|
<string>Icon.png</string>
|
||||||
<string>Icon@2x.png</string>
|
<string>Icon@2x.png</string>
|
||||||
<string>Icon-72.png</string>
|
<string>Icon-72.png</string>
|
||||||
<string>Default.png</string>
|
<string>Icon-72@2x.png</string>
|
||||||
<string>Default@2x.png</string>
|
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundleIcons</key>
|
<key>CFBundleIcons</key>
|
||||||
<dict>
|
<dict>
|
||||||
@ -44,8 +43,7 @@
|
|||||||
<string>Icon.png</string>
|
<string>Icon.png</string>
|
||||||
<string>Icon@2x.png</string>
|
<string>Icon@2x.png</string>
|
||||||
<string>Icon-72.png</string>
|
<string>Icon-72.png</string>
|
||||||
<string>Default.png</string>
|
<string>Icon-72@2x.png</string>
|
||||||
<string>Default@2x.png</string>
|
|
||||||
</array>
|
</array>
|
||||||
<key>UIPrerenderedIcon</key>
|
<key>UIPrerenderedIcon</key>
|
||||||
<true/>
|
<true/>
|
||||||
|
Before Width: | Height: | Size: 1023 B After Width: | Height: | Size: 1007 B |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1009 B |
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.2 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 3.5 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 3.5 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.0 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 3.5 KiB |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 4.0 KiB After Width: | Height: | Size: 4.0 KiB |
Before Width: | Height: | Size: 5.9 KiB After Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 2.8 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.0 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 4.0 KiB After Width: | Height: | Size: 3.9 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |