Change the user's default type from the Mac UI.
This commit is contained in:
parent
1bd654621c
commit
2279aacb5a
@ -394,7 +394,52 @@
|
|||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (IBAction)changeType:(id)sender {
|
- (IBAction)changeDefaultType:(id)sender {
|
||||||
|
|
||||||
|
MPSiteModel *site = self.selectedSite;
|
||||||
|
MPUserEntity *user = [MPMacAppDelegate get].activeUserForMainThread;
|
||||||
|
NSArray *types = [user.algorithm allTypes];
|
||||||
|
[self.passwordTypesMatrix renewRows:(NSInteger)[types count] columns:1];
|
||||||
|
for (NSUInteger t = 0; t < [types count]; ++t) {
|
||||||
|
MPResultType type = (MPResultType)[types[t] unsignedIntegerValue];
|
||||||
|
NSString *title = [user.algorithm nameOfType:type];
|
||||||
|
if (type & MPResultTypeClassTemplate)
|
||||||
|
title = strf( @"%@ – %@", [user.algorithm mpwTemplateForSiteNamed:site.name?: @"masterpassword.app" ofType:type
|
||||||
|
withCounter:site.counter?: MPCounterValueDefault
|
||||||
|
usingKey:[MPMacAppDelegate get].key], title );
|
||||||
|
|
||||||
|
NSButtonCell *cell = [self.passwordTypesMatrix cellAtRow:(NSInteger)t column:0];
|
||||||
|
cell.tag = type;
|
||||||
|
cell.state = type == site.type? NSOnState: NSOffState;
|
||||||
|
cell.title = title;
|
||||||
|
}
|
||||||
|
|
||||||
|
self.passwordTypesBox.title = strf( @"Choose a password type for new sites of %@:", user.name );
|
||||||
|
|
||||||
|
NSAlert *alert = [NSAlert new];
|
||||||
|
[alert addButtonWithTitle:@"Save"];
|
||||||
|
[alert addButtonWithTitle:@"Cancel"];
|
||||||
|
[alert setMessageText:@"Change Default Type"];
|
||||||
|
[alert setAccessoryView:self.passwordTypesBox];
|
||||||
|
[alert layout];
|
||||||
|
[alert beginSheetModalForWindow:self.window completionHandler:^(NSModalResponse returnCode) {
|
||||||
|
switch (returnCode) {
|
||||||
|
case NSAlertFirstButtonReturn: {
|
||||||
|
// "Save" button.
|
||||||
|
MPResultType type = (MPResultType)[self.passwordTypesMatrix.selectedCell tag];
|
||||||
|
[MPMacAppDelegate managedObjectContextPerformBlock:^(NSManagedObjectContext *context) {
|
||||||
|
[[MPMacAppDelegate get] activeUserInContext:context].defaultType = type;
|
||||||
|
[context saveToStore];
|
||||||
|
}];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (IBAction)changeSiteType:(id)sender {
|
||||||
|
|
||||||
MPSiteModel *site = self.selectedSite;
|
MPSiteModel *site = self.selectedSite;
|
||||||
NSArray *types = [site.algorithm allTypes];
|
NSArray *types = [site.algorithm allTypes];
|
||||||
|
@ -114,7 +114,7 @@
|
|||||||
<color key="color" name="controlLightHighlightColor" catalog="System" colorSpace="catalog"/>
|
<color key="color" name="controlLightHighlightColor" catalog="System" colorSpace="catalog"/>
|
||||||
</shadow>
|
</shadow>
|
||||||
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="center" title="Master Password generates passwords for your sites (and other things)." id="YyD-hd-wi3">
|
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="center" title="Master Password generates passwords for your sites (and other things)." id="YyD-hd-wi3">
|
||||||
<font key="font" metaFont="system" size="14"/>
|
<font key="font" metaFont="menu" size="14"/>
|
||||||
<color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
|
<color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
|
||||||
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
|
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
|
||||||
</textFieldCell>
|
</textFieldCell>
|
||||||
@ -143,11 +143,11 @@
|
|||||||
</shadow>
|
</shadow>
|
||||||
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="left" id="9c4-NI-NM0">
|
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="left" id="9c4-NI-NM0">
|
||||||
<font key="font" metaFont="message" size="11"/>
|
<font key="font" metaFont="message" size="11"/>
|
||||||
<mutableString key="title">⑴ When you create an account on a site, open Master Password to create your account password.
|
<string key="title">⑴ When you create an account on a site, open Master Password to create your account password.
|
||||||
⑵ Consider changing all your existing account passwords to the password Master Password creates for those sites.
|
⑵ Consider changing all your existing account passwords to the password Master Password creates for those sites.
|
||||||
⑶ To get the password for a site, just enter its domain name in the "site name" field (eg. "apple.com").
|
⑶ To get the password for a site, just enter its domain name in the "site name" field (eg. "apple.com").
|
||||||
⑷ When chosing a master password, make it easy but long (eg. a short sentence).
|
⑷ When chosing a master password, make it easy but long (eg. a short sentence).
|
||||||
⑸ Tell *nobody* your master password. It's OK to share your site passwords with people you trust: they can be changed if necessary.</mutableString>
|
⑸ Tell *nobody* your master password. It's OK to share your site passwords with people you trust: they can be changed if necessary.</string>
|
||||||
<color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
|
<color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
|
||||||
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
|
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
|
||||||
</textFieldCell>
|
</textFieldCell>
|
||||||
@ -310,7 +310,7 @@
|
|||||||
</connections>
|
</connections>
|
||||||
</scrollView>
|
</scrollView>
|
||||||
<customView translatesAutoresizingMaskIntoConstraints="NO" id="nM8-O3-spM" customClass="MPGradientView">
|
<customView translatesAutoresizingMaskIntoConstraints="NO" id="nM8-O3-spM" customClass="MPGradientView">
|
||||||
<rect key="frame" x="0.0" y="0.0" width="738" height="212"/>
|
<rect key="frame" x="0.0" y="0.0" width="738" height="238"/>
|
||||||
<userDefinedRuntimeAttributes>
|
<userDefinedRuntimeAttributes>
|
||||||
<userDefinedRuntimeAttribute type="color" keyPath="startingColor">
|
<userDefinedRuntimeAttribute type="color" keyPath="startingColor">
|
||||||
<color key="value" red="0.11764705882352941" green="0.11764705882352941" blue="0.11764705882352941" alpha="0.0" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="value" red="0.11764705882352941" green="0.11764705882352941" blue="0.11764705882352941" alpha="0.0" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
@ -568,7 +568,7 @@ Use the arrows ⇅ to navigate the list or esc ⎋ to exit.</string>
|
|||||||
</connections>
|
</connections>
|
||||||
</textField>
|
</textField>
|
||||||
<stackView distribution="fill" orientation="horizontal" alignment="bottom" horizontalStackHuggingPriority="249.99998474121094" verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" translatesAutoresizingMaskIntoConstraints="NO" id="pHt-gg-ZNX">
|
<stackView distribution="fill" orientation="horizontal" alignment="bottom" horizontalStackHuggingPriority="249.99998474121094" verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" translatesAutoresizingMaskIntoConstraints="NO" id="pHt-gg-ZNX">
|
||||||
<rect key="frame" x="122" y="20" width="495" height="152"/>
|
<rect key="frame" x="122" y="20" width="495" height="178"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="1Qo-iG-CQt">
|
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="1Qo-iG-CQt">
|
||||||
<rect key="frame" x="0.0" y="-1" width="85" height="19"/>
|
<rect key="frame" x="0.0" y="-1" width="85" height="19"/>
|
||||||
@ -591,10 +591,10 @@ Use the arrows ⇅ to navigate the list or esc ⎋ to exit.</string>
|
|||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
<stackView distribution="fill" orientation="vertical" alignment="centerX" horizontalStackHuggingPriority="249.99998474121094" verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" translatesAutoresizingMaskIntoConstraints="NO" id="DT0-RU-3LT">
|
<stackView distribution="fill" orientation="vertical" alignment="centerX" horizontalStackHuggingPriority="249.99998474121094" verticalStackHuggingPriority="249.99998474121094" detachesHiddenViews="YES" translatesAutoresizingMaskIntoConstraints="NO" id="DT0-RU-3LT">
|
||||||
<rect key="frame" x="93" y="0.0" width="177" height="152"/>
|
<rect key="frame" x="93" y="0.0" width="177" height="178"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="uol-dE-I8H">
|
<textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="uol-dE-I8H">
|
||||||
<rect key="frame" x="77" y="138" width="22" height="14"/>
|
<rect key="frame" x="77" y="164" width="22" height="14"/>
|
||||||
<shadow key="shadow" blurRadius="0.5">
|
<shadow key="shadow" blurRadius="0.5">
|
||||||
<size key="offset" width="0.0" height="1"/>
|
<size key="offset" width="0.0" height="1"/>
|
||||||
<color key="color" name="controlLightHighlightColor" catalog="System" colorSpace="catalog"/>
|
<color key="color" name="controlLightHighlightColor" catalog="System" colorSpace="catalog"/>
|
||||||
@ -631,7 +631,7 @@ Use the arrows ⇅ to navigate the list or esc ⎋ to exit.</string>
|
|||||||
</connections>
|
</connections>
|
||||||
</textField>
|
</textField>
|
||||||
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="brI-fg-Kav">
|
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="brI-fg-Kav">
|
||||||
<rect key="frame" x="40" y="111" width="96" height="19"/>
|
<rect key="frame" x="40" y="137" width="96" height="19"/>
|
||||||
<shadow key="shadow">
|
<shadow key="shadow">
|
||||||
<color key="color" name="controlLightHighlightColor" catalog="System" colorSpace="catalog"/>
|
<color key="color" name="controlLightHighlightColor" catalog="System" colorSpace="catalog"/>
|
||||||
</shadow>
|
</shadow>
|
||||||
@ -659,6 +659,35 @@ Use the arrows ⇅ to navigate the list or esc ⎋ to exit.</string>
|
|||||||
</binding>
|
</binding>
|
||||||
</connections>
|
</connections>
|
||||||
</button>
|
</button>
|
||||||
|
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="jl4-sS-xbm">
|
||||||
|
<rect key="frame" x="12" y="111" width="153" height="19"/>
|
||||||
|
<shadow key="shadow">
|
||||||
|
<color key="color" name="controlLightHighlightColor" catalog="System" colorSpace="catalog"/>
|
||||||
|
</shadow>
|
||||||
|
<buttonCell key="cell" type="recessed" title="Default Password Type" bezelStyle="recessed" alignment="center" state="on" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="Ah6-gK-Rm7" customClass="MPNoStateButtonCell">
|
||||||
|
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES" changeBackground="YES" changeGray="YES"/>
|
||||||
|
<font key="font" metaFont="systemBold" size="12"/>
|
||||||
|
<string key="keyEquivalent">p</string>
|
||||||
|
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
|
||||||
|
</buttonCell>
|
||||||
|
<connections>
|
||||||
|
<action selector="changeDefaultType:" target="-2" id="3Qg-xV-ewc"/>
|
||||||
|
<binding destination="-2" name="hidden2" keyPath="alternatePressed" previousBinding="2Mv-lM-iXB" id="6QO-NJ-Uyo">
|
||||||
|
<dictionary key="options">
|
||||||
|
<integer key="NSMultipleValuesPlaceholder" value="-1"/>
|
||||||
|
<integer key="NSNoSelectionPlaceholder" value="-1"/>
|
||||||
|
<integer key="NSNotApplicablePlaceholder" value="-1"/>
|
||||||
|
<integer key="NSNullPlaceholder" value="-1"/>
|
||||||
|
<string key="NSValueTransformerName">NSNegateBoolean</string>
|
||||||
|
</dictionary>
|
||||||
|
</binding>
|
||||||
|
<binding destination="mcS-ik-b0n" name="hidden" keyPath="canRemove" id="2Mv-lM-iXB">
|
||||||
|
<dictionary key="options">
|
||||||
|
<string key="NSValueTransformerName">NSNegateBoolean</string>
|
||||||
|
</dictionary>
|
||||||
|
</binding>
|
||||||
|
</connections>
|
||||||
|
</button>
|
||||||
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="R46-fx-n14">
|
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="R46-fx-n14">
|
||||||
<rect key="frame" x="0.0" y="85" width="177" height="19"/>
|
<rect key="frame" x="0.0" y="85" width="177" height="19"/>
|
||||||
<shadow key="shadow">
|
<shadow key="shadow">
|
||||||
@ -805,7 +834,7 @@ Use the arrows ⇅ to navigate the list or esc ⎋ to exit.</string>
|
|||||||
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
|
<modifierMask key="keyEquivalentModifierMask" command="YES"/>
|
||||||
</buttonCell>
|
</buttonCell>
|
||||||
<connections>
|
<connections>
|
||||||
<action selector="changeType:" target="-2" id="6Jj-7p-da9"/>
|
<action selector="changeSiteType:" target="-2" id="6Jj-7p-da9"/>
|
||||||
<binding destination="mcS-ik-b0n" name="hidden" keyPath="canRemove" id="Hat-GU-hcQ">
|
<binding destination="mcS-ik-b0n" name="hidden" keyPath="canRemove" id="Hat-GU-hcQ">
|
||||||
<dictionary key="options">
|
<dictionary key="options">
|
||||||
<string key="NSValueTransformerName">NSNegateBoolean</string>
|
<string key="NSValueTransformerName">NSNegateBoolean</string>
|
||||||
@ -821,6 +850,7 @@ Use the arrows ⇅ to navigate the list or esc ⎋ to exit.</string>
|
|||||||
<integer value="1000"/>
|
<integer value="1000"/>
|
||||||
<integer value="1000"/>
|
<integer value="1000"/>
|
||||||
<integer value="1000"/>
|
<integer value="1000"/>
|
||||||
|
<integer value="1000"/>
|
||||||
</visibilityPriorities>
|
</visibilityPriorities>
|
||||||
<customSpacing>
|
<customSpacing>
|
||||||
<real value="3.4028234663852886e+38"/>
|
<real value="3.4028234663852886e+38"/>
|
||||||
@ -829,6 +859,7 @@ Use the arrows ⇅ to navigate the list or esc ⎋ to exit.</string>
|
|||||||
<real value="3.4028234663852886e+38"/>
|
<real value="3.4028234663852886e+38"/>
|
||||||
<real value="3.4028234663852886e+38"/>
|
<real value="3.4028234663852886e+38"/>
|
||||||
<real value="3.4028234663852886e+38"/>
|
<real value="3.4028234663852886e+38"/>
|
||||||
|
<real value="3.4028234663852886e+38"/>
|
||||||
</customSpacing>
|
</customSpacing>
|
||||||
</stackView>
|
</stackView>
|
||||||
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="whJ-Bw-pr4">
|
<button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="whJ-Bw-pr4">
|
||||||
|
Loading…
Reference in New Issue
Block a user