Skip to content

Commit a87d6f3

Browse files
Simone Manganellirentzsch
Simone Manganelli
authored andcommitted
whitelist table now auto-updates when a CtF view adds something to the whitelist
Signed-off-by: Jonathan 'Wolf' Rentzsch <[email protected]>
1 parent 2a7423a commit a87d6f3

File tree

4 files changed

+54
-33
lines changed

4 files changed

+54
-33
lines changed

Plugin/CTFUserDefaultsController.m

100755100644
+16-1
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,17 @@ - (id)init;
3838
return self;
3939
}
4040

41+
- (id)initWithCoder:(NSCoder *)decoder;
42+
{
43+
if (! sharedInstance) {
44+
if ((self = [super init])) {
45+
hasInited = YES;
46+
}
47+
}
48+
49+
return self;
50+
}
51+
4152
- (void)dealloc;
4253
{
4354
[userDefaultsDict release];
@@ -50,9 +61,11 @@ - (void)setUpExternalPrefsDictionary;
5061
selector:@selector(pluginDefaultsDidChange:)
5162
name:@"ClickToFlashPluginDefaultsDidChange"
5263
object:nil];
64+
[[NSUserDefaults standardUserDefaults] addSuiteNamed:@"com.github.rentzsch.clicktoflash"];
5365
[self setValues:[CTFPreferencesDictionary dictionaryWithDictionary:
5466
[[NSUserDefaults standardUserDefaults] persistentDomainForName:@"com.github.rentzsch.clicktoflash"]]
5567
];
68+
[[NSUserDefaults standardUserDefaults] removeSuiteNamed:@"com.github.rentzsch.clicktoflash"];
5669
}
5770

5871
- (CTFPreferencesDictionary *)values;
@@ -78,9 +91,11 @@ - (CTFPreferencesDictionary *)dictionaryRepresentation;
7891

7992
- (void)setValues:(CTFPreferencesDictionary *)newUserDefaultsDict;
8093
{
94+
CTFPreferencesDictionary *newDictCopy = [newUserDefaultsDict copy];
8195
if (! userDefaultsDict) userDefaultsDict = [[CTFPreferencesDictionary alloc] init];
8296
[userDefaultsDict removeAllObjects];
83-
[userDefaultsDict addEntriesFromDictionary:newUserDefaultsDict];
97+
[userDefaultsDict addEntriesFromDictionary:newDictCopy];
98+
[newDictCopy release];
8499
}
85100

86101
- (void)pluginDefaultsDidChange:(NSNotification *)notification;

Plugin/CTFWhitelist.m

+5-1
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,11 @@ - (void) _addHostToWhitelist
180180
{
181181
NSMutableArray *siteInfo = [self _mutableSiteInfo];
182182
[siteInfo addObject: whitelistItemForSite([self host])];
183-
[[CTFUserDefaultsController standardUserDefaults] setObject: siteInfo forKey: sHostSiteInfoDefaultsKey];
183+
184+
[[CTFUserDefaultsController standardUserDefaults] setValue:siteInfo forKeyPath:@"values.siteInfo"];
185+
//[values setObject:siteInfo forKey:sHostSiteInfoDefaultsKey];
186+
//[[CTFUserDefaultsController standardUserDefaults] setValues:values];
187+
184188
[[NSNotificationCenter defaultCenter] postNotificationName: sCTFWhitelistAdditionMade object: self];
185189
}
186190

Plugin/English.lproj/WhitelistPanel.xib

+31-31
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<string key="IBDocument.HIToolboxVersion">353.00</string>
99
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
1010
<bool key="EncodedWithXMLCoder">YES</bool>
11-
<integer value="9"/>
11+
<integer value="12"/>
1212
</object>
1313
<object class="NSArray" key="IBDocument.PluginDependencies">
1414
<bool key="EncodedWithXMLCoder">YES</bool>
@@ -1245,35 +1245,6 @@ dG8gdW5pbnN0YWxsIENsaWNrVG9GbGFzaC4</string>
12451245
</object>
12461246
<int key="connectionID">115</int>
12471247
</object>
1248-
<object class="IBConnectionRecord">
1249-
<object class="IBBindingConnection" key="connection">
1250-
<string key="label">value: arrangedObjects.site</string>
1251-
<reference key="source" ref="360546441"/>
1252-
<reference key="destination" ref="258102979"/>
1253-
<object class="NSNibBindingConnector" key="connector">
1254-
<reference key="NSSource" ref="360546441"/>
1255-
<reference key="NSDestination" ref="258102979"/>
1256-
<string key="NSLabel">value: arrangedObjects.site</string>
1257-
<string key="NSBinding">value</string>
1258-
<string key="NSKeyPath">arrangedObjects.site</string>
1259-
<object class="NSDictionary" key="NSOptions">
1260-
<bool key="EncodedWithXMLCoder">YES</bool>
1261-
<object class="NSMutableArray" key="dict.sortedKeys">
1262-
<bool key="EncodedWithXMLCoder">YES</bool>
1263-
<string>NSAllowsEditingMultipleValuesSelection</string>
1264-
<string>NSNullPlaceholder</string>
1265-
</object>
1266-
<object class="NSMutableArray" key="dict.values">
1267-
<bool key="EncodedWithXMLCoder">YES</bool>
1268-
<reference ref="8"/>
1269-
<string>double-click to set</string>
1270-
</object>
1271-
</object>
1272-
<int key="NSNibBindingConnectorVersion">2</int>
1273-
</object>
1274-
</object>
1275-
<int key="connectionID">130</int>
1276-
</object>
12771248
<object class="IBConnectionRecord">
12781249
<object class="IBActionConnection" key="connection">
12791250
<string key="label">checkForUpdates:</string>
@@ -1490,6 +1461,35 @@ dG8gdW5pbnN0YWxsIENsaWNrVG9GbGFzaC4</string>
14901461
</object>
14911462
<int key="connectionID">251</int>
14921463
</object>
1464+
<object class="IBConnectionRecord">
1465+
<object class="IBBindingConnection" key="connection">
1466+
<string key="label">value: arrangedObjects.site</string>
1467+
<reference key="source" ref="360546441"/>
1468+
<reference key="destination" ref="258102979"/>
1469+
<object class="NSNibBindingConnector" key="connector">
1470+
<reference key="NSSource" ref="360546441"/>
1471+
<reference key="NSDestination" ref="258102979"/>
1472+
<string key="NSLabel">value: arrangedObjects.site</string>
1473+
<string key="NSBinding">value</string>
1474+
<string key="NSKeyPath">arrangedObjects.site</string>
1475+
<object class="NSDictionary" key="NSOptions">
1476+
<bool key="EncodedWithXMLCoder">YES</bool>
1477+
<object class="NSMutableArray" key="dict.sortedKeys">
1478+
<bool key="EncodedWithXMLCoder">YES</bool>
1479+
<string>NSAllowsEditingMultipleValuesSelection</string>
1480+
<string>NSNullPlaceholder</string>
1481+
</object>
1482+
<object class="NSMutableArray" key="dict.values">
1483+
<bool key="EncodedWithXMLCoder">YES</bool>
1484+
<reference ref="6"/>
1485+
<string>double-click to set</string>
1486+
</object>
1487+
</object>
1488+
<int key="NSNibBindingConnectorVersion">2</int>
1489+
</object>
1490+
</object>
1491+
<int key="connectionID">256</int>
1492+
</object>
14931493
</object>
14941494
<object class="IBMutableOrderedSet" key="objectRecords">
14951495
<object class="NSArray" key="orderedObjects">
@@ -2461,7 +2461,7 @@ dG8gdW5pbnN0YWxsIENsaWNrVG9GbGFzaC4</string>
24612461
</object>
24622462
</object>
24632463
<nil key="sourceID"/>
2464-
<int key="maxID">252</int>
2464+
<int key="maxID">256</int>
24652465
</object>
24662466
<object class="IBClassDescriber" key="IBDocument.Classes">
24672467
<object class="NSMutableArray" key="referencedPartialClassDescriptions">

Plugin/Plugin.m

+2
Original file line numberDiff line numberDiff line change
@@ -417,6 +417,7 @@ - (void) _migratePrefsToExternalFile
417417

418418
NSMutableDictionary *externalFileDefaults = [[CTFUserDefaultsController standardUserDefaults] dictionaryRepresentation];
419419

420+
[[NSUserDefaults standardUserDefaults] addSuiteNamed:@"com.github.rentzsch.clicktoflash"];
420421
unsigned int i;
421422
for (i = 0; i < [parasiticDefaultsNameArray count]; i++) {
422423
NSString *currentParasiticDefault = [parasiticDefaultsNameArray objectAtIndex:i];
@@ -440,6 +441,7 @@ - (void) _migratePrefsToExternalFile
440441
[[NSUserDefaults standardUserDefaults] removeObjectForKey:currentParasiticDefault];
441442
}
442443
}
444+
[[NSUserDefaults standardUserDefaults] removeSuiteNamed:@"com.github.rentzsch.clicktoflash"];
443445
}
444446

445447
- (void) _addApplicationWhitelistArrayToPrefsFile

0 commit comments

Comments
 (0)