diff --git a/MacPass.xcodeproj/project.pbxproj b/MacPass.xcodeproj/project.pbxproj index bff728b4..a497e2f7 100644 --- a/MacPass.xcodeproj/project.pbxproj +++ b/MacPass.xcodeproj/project.pbxproj @@ -19,6 +19,7 @@ 4C2E382616D1470200037A9D /* MPViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C2E382516D1470200037A9D /* MPViewController.m */; }; 4C37A84015B8B474005EF8EE /* MPOutlineDataSource.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C37A83F15B8B474005EF8EE /* MPOutlineDataSource.m */; }; 4C3BD51516D276F800389F1F /* MPToolbarDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C3BD51416D276F800389F1F /* MPToolbarDelegate.m */; }; + 4C3CD2A8175570C9005F911C /* DMSplitView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C3CD2A7175570C9005F911C /* DMSplitView.m */; }; 4C3FFD9E16DAF60600DF9186 /* FilterBar.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C3FFD9D16DAF60600DF9186 /* FilterBar.xib */; }; 4C40AC5C170782730073D1C3 /* MPAbstractSettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C40AC5B170782730073D1C3 /* MPAbstractSettingsViewController.m */; }; 4C431BCD16E2A82800700A81 /* MPPasteBoardController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C431BCC16E2A82700700A81 /* MPPasteBoardController.m */; }; @@ -139,6 +140,8 @@ 4C37A83F15B8B474005EF8EE /* MPOutlineDataSource.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPOutlineDataSource.m; sourceTree = ""; }; 4C3BD51316D276F800389F1F /* MPToolbarDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPToolbarDelegate.h; sourceTree = ""; }; 4C3BD51416D276F800389F1F /* MPToolbarDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPToolbarDelegate.m; sourceTree = ""; }; + 4C3CD2A6175570C9005F911C /* DMSplitView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DMSplitView.h; sourceTree = ""; }; + 4C3CD2A7175570C9005F911C /* DMSplitView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DMSplitView.m; sourceTree = ""; }; 4C3FFD9D16DAF60600DF9186 /* FilterBar.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = FilterBar.xib; sourceTree = ""; }; 4C40AC581707819A0073D1C3 /* MPAbstractSettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPAbstractSettingsViewController.h; sourceTree = ""; }; 4C40AC5B170782730073D1C3 /* MPAbstractSettingsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPAbstractSettingsViewController.m; sourceTree = ""; }; @@ -421,6 +424,16 @@ name = Model; sourceTree = ""; }; + 4C3CD2A5175570C9005F911C /* DMSplitView */ = { + isa = PBXGroup; + children = ( + 4C3CD2A6175570C9005F911C /* DMSplitView.h */, + 4C3CD2A7175570C9005F911C /* DMSplitView.m */, + ); + name = DMSplitView; + path = DMSplitView/DMSplitView; + sourceTree = ""; + }; 4C46B8821706397A0046109A /* Security Additions */ = { isa = PBXGroup; children = ( @@ -551,8 +564,9 @@ 4C77E35715B84A240093A587 = { isa = PBXGroup; children = ( + 4C3CD2A5175570C9005F911C /* DMSplitView */, 4C669B2D16760ED100DD0774 /* MiniKeePassLib */, - 4CAD745115B887FD00104512 /* KissXML */, + 4CAD745415B887FD00104512 /* KissXML */, 4C77E36C15B84A240093A587 /* MacPass */, 4C77E36515B84A240093A587 /* Frameworks */, 4C77E36315B84A240093A587 /* Products */, @@ -668,14 +682,6 @@ name = General; sourceTree = ""; }; - 4CAD745115B887FD00104512 /* KissXML */ = { - isa = PBXGroup; - children = ( - 4CAD745415B887FD00104512 /* KissXML */, - ); - path = KissXML; - sourceTree = ""; - }; 4CAD745415B887FD00104512 /* KissXML */ = { isa = PBXGroup; children = ( @@ -690,7 +696,8 @@ 4CAD746115B887FD00104512 /* DDXMLNode.m */, 4CAD746215B887FD00104512 /* Private */, ); - path = KissXML; + name = KissXML; + path = KissXML/KissXML; sourceTree = ""; }; 4CAD745515B887FD00104512 /* Additions */ = { @@ -950,6 +957,7 @@ 4CE5B54B173AFBA700207B39 /* MPDocument.m in Sources */, 4CCF9754173EFBA500460BD2 /* KdbEntry+Undo.m in Sources */, 4C22040D1746ED160054C916 /* KdbGroup+Undo.m in Sources */, + 4C3CD2A8175570C9005F911C /* DMSplitView.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/MacPass/DocumentWindow.xib b/MacPass/DocumentWindow.xib index 70a57954..b36c5d14 100644 --- a/MacPass/DocumentWindow.xib +++ b/MacPass/DocumentWindow.xib @@ -55,7 +55,7 @@ - 268 + 12 {200, 449} @@ -110,7 +110,7 @@ - {{0, 0}, {1920, 1058}} + {{0, 0}, {1680, 1028}} {400, 422} {10000000000000, 10000000000000} YES diff --git a/MacPass/MPDocumentWindowController.m b/MacPass/MPDocumentWindowController.m index c6ef34f9..4ceab7a1 100644 --- a/MacPass/MPDocumentWindowController.m +++ b/MacPass/MPDocumentWindowController.m @@ -15,6 +15,7 @@ #import "MPOutlineViewController.h" #import "MPInspectorTabViewController.h" #import "MPAppDelegate.h" +#import "DMSplitView.h" @interface MPDocumentWindowController () { @private @@ -47,7 +48,7 @@ @implementation MPDocumentWindowController -(id)init { - self = [super initWithWindowNibName:@"MainWindow" owner:self]; + self = [super initWithWindowNibName:@"DocumentWindow" owner:self]; if( self ) { _needsDecryption = NO; _toolbarDelegate = [[MPToolbarDelegate alloc] init]; @@ -86,17 +87,16 @@ [self.splitView setTranslatesAutoresizingMaskIntoConstraints:NO]; /* Add outlineview */ - //const NSRect outlineFrame = [self.outlineView frame]; - //[self.outlineViewController.view setFrame:outlineFrame]; - //[self.outlineViewController.view setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable]; + const NSRect outlineFrame = [self.outlineView frame]; + [self.outlineViewController.view setFrame:outlineFrame]; + [self.outlineViewController.view setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable]; [self.splitView replaceSubview:self.outlineView with:[self.outlineViewController view]]; [self.outlineViewController updateResponderChain]; /* Add inspector view */ - //const NSRect inspectorFrame = [self.inspectorView frame]; - //[self.inspectorTabViewController.view setFrame:inspectorFrame]; - //[self.inspectorTabViewController.view setAutoresizesSubviews:NSViewWidthSizable | NSViewHeightSizable ]; - [self.splitView replaceSubview:self.inspectorView with:[self.inspectorTabViewController view]]; + const NSRect inspectorFrame = [self.inspectorView frame]; + [self.inspectorTabViewController.view setFrame:inspectorFrame]; + //[self.splitView replaceSubview:self.inspectorView with:[self.inspectorTabViewController view]]; [self.inspectorTabViewController updateResponderChain]; [self _setOutlineVisible:NO]; @@ -150,19 +150,17 @@ #pragma mark Actions - (void)toggleInspector:(id)sender { - if(self.inspectorTabViewController) { - [self.inspectorTabViewController toggleVisible]; - } + //if(self.inspectorTabViewController) { + // [self.inspectorTabViewController toggleVisible]; + //} } - (void)performFindPanelAction:(id)sender { [self.entryViewController showFilter:sender]; } - - - (void)toggleOutlineView:(id)sender { - [self _setOutlineVisible:!self.outlineViewController.isVisible]; + } - (BOOL)validateMenuItem:(NSMenuItem *)menuItem { diff --git a/MacPass/MPOutlineViewController.m b/MacPass/MPOutlineViewController.m index c9f45ad8..67de12db 100644 --- a/MacPass/MPOutlineViewController.m +++ b/MacPass/MPOutlineViewController.m @@ -20,8 +20,8 @@ @property (retain) MPOutlineDataSource *datasource; @property (retain) MPOutlineViewDelegate *outlineDelegate; @property (retain) NSMenu *menu; -@property (retain) NSLayoutConstraint *showConstraint; -@property (retain) NSLayoutConstraint *hideConstraint; +@property (retain) NSArray *showConstraints; +@property (retain) NSArray *hideConstraints; - (void)_didUpdateData:(NSNotification *)notification; @@ -74,22 +74,17 @@ [self.outlineView setMenu:[self _contextMenu]]; [self.outlineView setAllowsEmptySelection:YES]; - self.showConstraint = [NSLayoutConstraint constraintWithItem:[self view] - attribute:NSLayoutAttributeWidth - relatedBy:NSLayoutRelationGreaterThanOrEqual - toItem:nil - attribute:NSLayoutAttributeNotAnAttribute - multiplier:1 - constant:200]; - - self.hideConstraint = [NSLayoutConstraint constraintWithItem:[self view] - attribute:NSLayoutAttributeWidth - relatedBy:NSLayoutRelationEqual - toItem:nil - attribute:NSLayoutAttributeNotAnAttribute - multiplier:1 - constant:0]; - [[self view] addConstraint:self.showConstraint]; + NSView *myView = [self view]; + self.showConstraints = [NSLayoutConstraint constraintsWithVisualFormat:@"H:[myView(>=100,<=250)]" + options:0 + metrics:nil + views:NSDictionaryOfVariableBindings(myView)]; + + self.hideConstraints = [NSLayoutConstraint constraintsWithVisualFormat:@"H:[myView(==0)]" + options:0 + metrics:nil + views:NSDictionaryOfVariableBindings(myView)]; + [[self view] addConstraints:_showConstraints]; } @@ -107,8 +102,8 @@ if(_isVisible == isVisible) { return; // nichts zu tun } - [[self view] removeConstraint:(isVisible ? self.hideConstraint : self.showConstraint)]; - [[self view] addConstraint:(isVisible ? self.showConstraint : self.hideConstraint)]; + [[self view] removeConstraints:(isVisible ? self.hideConstraints : self.showConstraints)]; + [[self view] addConstraints:(isVisible ? self.showConstraints : self.hideConstraints)]; _isVisible = isVisible; } diff --git a/MacPass/MacPass-Info.plist b/MacPass/MacPass-Info.plist index 81363ac3..3c56ec72 100644 --- a/MacPass/MacPass-Info.plist +++ b/MacPass/MacPass-Info.plist @@ -46,7 +46,7 @@ CFBundleSignature ???? CFBundleVersion - 6F7 + 725 LSMinimumSystemVersion ${MACOSX_DEPLOYMENT_TARGET} NSHumanReadableCopyright diff --git a/MacPass/OutlineView.xib b/MacPass/OutlineView.xib index 81a7ca55..0471944f 100644 --- a/MacPass/OutlineView.xib +++ b/MacPass/OutlineView.xib @@ -13,6 +13,7 @@ IBNSLayoutConstraint NSCustomObject + NSCustomView NSImageCell NSImageView NSOutlineView @@ -40,183 +41,194 @@ NSApplication - + 268 - - - 2304 + + + 268 - - - 256 - - {139, 231} - - - - _NS:13 - YES - NO - YES - - - -2147483392 - {{224, 0}, {16, 17}} - _NS:16 - - - - AutomaticTableColumnIdentifier.0 - 136 - 16 - 1000 - - 75497536 - 2048 - - - LucidaGrande - 11 - 3100 + + + 2304 + + + + 256 + + {191, 299} + + + + _NS:13 + YES + NO + YES + + + -2147483392 + {{224, 0}, {16, 17}} + _NS:16 + + + + AutomaticTableColumnIdentifier.0 + 188 + 16 + 1000 + + 75497536 + 2048 + + + LucidaGrande + 11 + 3100 + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + 3 + MAA + + + + + 337641536 + 2048 + Text Cell + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + 3 + YES + YES + - + + 3 + 0.0 + + 6 + System + _sourceListBackgroundColor + + 6 + System + alternateSelectedControlColor + + 1 + MCAwIDEAA + + + + + 6 + System + gridColor + 3 - MC4zMzMzMzI5ODU2AA - - - 6 - System - headerTextColor - - 3 - MAA - + MC41AA - - 337641536 - 2048 - Text Cell - - LucidaGrande - 13 - 1044 - - - - 6 - System - controlBackgroundColor - - 3 - MC42NjY2NjY2NjY3AA - - - - 6 - System - controlTextColor - - - - 3 - YES - YES - + 24 + -767557632 + + + 4 + 15 + 0 + YES + 1 + 1 + 1 + -1 + NO + 14 - 3 - 0.0 - - 6 - System - _sourceListBackgroundColor - - 6 - System - alternateSelectedControlColor - - 1 - MCAwIDEAA - - - - - 6 - System - gridColor - - 3 - MC41AA - - - 24 - -767557632 - - - 4 - 15 - 0 - YES - 1 - 1 - 1 - -1 - NO - 14 + {191, 299} + + + + _NS:11 + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + + _NS:15 + NO + + _doScroller: + 0.99749373433583954 + + + + -2147483392 + {{1, 119}, {238, 15}} + + + _NS:60 + NO + 1 + + _doScroller: + 0.99328859060402686 - {139, 231} - + {191, 299} + - - _NS:11 - - - 4 - - - - -2147483392 - {{224, 17}, {15, 102}} - - - - _NS:15 - NO - - _doScroller: - 0.99749373433583954 - - - - -2147483392 - {{1, 119}, {238, 15}} - - - _NS:60 - NO - 1 - - _doScroller: - 0.99328859060402686 + + _NS:9 + 133680 + + + + QSAAAEEgAABBwAAAQcAAAA + 0.25 + 4 + 1 - {139, 231} + {191, 299} - _NS:9 - 133680 - - - - QSAAAEEgAABBwAAAQcAAAA - 0.25 - 4 - 1 + NSView @@ -233,9 +245,9 @@ view - + - 181 + 201 @@ -247,7 +259,7 @@ 266 - {{0, 1}, {136, 14}} + {{0, 1}, {188, 14}} _NS:101 @@ -277,7 +289,7 @@ NO - {{1, 0}, {136, 17}} + {{1, 0}, {188, 17}} HeaderCell @@ -327,7 +339,7 @@ 266 - {{25, 0}, {111, 17}} + {{25, 0}, {163, 17}} _NS:80 @@ -345,7 +357,7 @@ NO - {{1, 17}, {136, 17}} + {{1, 17}, {188, 17}} DataCell @@ -388,15 +400,97 @@ Application + + 196 + + + + + 4 + 0 + + 4 + 1 + + 0.0 + + 1000 + + 8 + 29 + 3 + + + + 6 + 0 + + 6 + 1 + + 0.0 + + 1000 + + 8 + 29 + 3 + + + + 5 + 0 + + 5 + 1 + + 0.0 + + 1000 + + 8 + 29 + 3 + + + + 3 + 0 + + 3 + 1 + + 0.0 + + 1000 + + 8 + 29 + 3 + + + + + 66 - - + + - + + + + 69 + + + + + 68 + + 67 @@ -406,147 +500,26 @@ - - 68 - - - - - 69 - - - 70 - - + + - - 71 - - - - - 76 - - - - - - 5 - 0 - - 5 - 1 - - 3 - - 1000 - - 8 - 29 - 3 - - - - 10 - 0 - - 10 - 1 - - 0.0 - - 1000 - - 5 - 22 - 2 - - - - 6 - 0 - - 6 - 1 - - 3 - - 1000 - - 8 - 29 - 3 - - - - 79 - - - - - 5 - 0 - - 6 - 1 - - 8 - - 1000 - - 6 - 24 - 3 - - - - 10 - 0 - - 10 - 1 - - 0.0 - - 1000 - - 5 - 22 - 2 - - - - 6 - 0 - - 6 - 1 - - 3 - - 1000 - - 8 - 29 - 3 - - + - 4 + 3 0 - 4 + 3 1 0.0 @@ -573,12 +546,12 @@ 29 3 - + - 3 + 4 0 - 3 + 4 1 0.0 @@ -589,14 +562,190 @@ 24 2 + + + 6 + 0 + + 6 + 1 + + 3 + + 1000 + + 8 + 29 + 3 + + + + 10 + 0 + + 10 + 1 + + 0.0 + + 1000 + + 5 + 22 + 2 + + + + 5 + 0 + + 6 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + + 76 + + + + + 6 + 0 + + 6 + 1 + + 3 + + 1000 + + 8 + 29 + 3 + + + + 10 + 0 + + 10 + 1 + + 0.0 + + 1000 + + 5 + 22 + 2 + + + + 5 + 0 + + 5 + 1 + + 3 + + 1000 + + 8 + 29 + 3 + + + + + + + 71 + + + + + 87 + + + + + 88 + + + + + 89 + + + + + 77 + + + + + + + + 78 + + + + + 92 + + + + + 94 + + + + + 95 + + + + + 90 + + + + + 91 + + + + + 93 + + + + + 82 + + + + + + 80 - 7 @@ -613,89 +762,44 @@ 9 1 + - - 82 - - - - - - - - 93 - - - - - 91 - - - - - 90 - - - - - 95 - - - - - 94 - - - - - 92 - - - - - 83 - - - - - 81 - - - 96 - 77 - - - - - + 81 + + - 89 - - + 83 + + - 88 - - + 219 + + - 87 - - + 220 + + - 78 - - + 222 + + + + + 223 + + @@ -703,6 +807,18 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -759,7 +875,7 @@ - 195 + 223 diff --git a/MacPass/OverlayWindow.xib b/MacPass/OverlayWindow.xib index 21bca22a..b7c61bcb 100644 --- a/MacPass/OverlayWindow.xib +++ b/MacPass/OverlayWindow.xib @@ -2,10 +2,10 @@ 1080 - 12C3103 + 12D78 3084 - 1187.34 - 625.00 + 1187.37 + 626.00 com.apple.InterfaceBuilder.CocoaPlugin 3084 diff --git a/MacPass/PasswordCreatorWindow.xib b/MacPass/PasswordCreatorWindow.xib index 9e2bdadc..28a2d725 100644 --- a/MacPass/PasswordCreatorWindow.xib +++ b/MacPass/PasswordCreatorWindow.xib @@ -47,9 +47,8 @@ {300, 350} - - {{0, 0}, {1920, 1058}} + {{0, 0}, {1680, 1028}} {10000000000000, 10000000000000} YES @@ -114,7 +113,7 @@ com.apple.InterfaceBuilder.CocoaPlugin {{357, 418}, {480, 270}} - + com.apple.InterfaceBuilder.CocoaPlugin @@ -129,15 +128,10 @@ MPAppDelegate NSObject - id id id - - showMainWindow: - id - showPasswordCreator: id diff --git a/MacPass/PasswordInputView.xib b/MacPass/PasswordInputView.xib index 0a2f644b..7bc03951 100644 --- a/MacPass/PasswordInputView.xib +++ b/MacPass/PasswordInputView.xib @@ -252,7 +252,6 @@ 268 {{209, 50}, {74, 32}} - _NS:9 {250, 250} YES