Skip to content

Commit b224861

Browse files
Patrickrentzsch
Patrick
authored andcommitted
Added option to disable ClickToFlash globally. Re: Ticket #94
Signed-off-by: Jonathan 'Wolf' Rentzsch <[email protected]>
1 parent b19cf32 commit b224861

File tree

2 files changed

+105
-15
lines changed

2 files changed

+105
-15
lines changed

Plugin/English.lproj/WhitelistPanel.xib

+91-12
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,29 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.02">
2+
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.03">
33
<data>
44
<int key="IBDocument.SystemTarget">1050</int>
55
<string key="IBDocument.SystemVersion">9G55</string>
6-
<string key="IBDocument.InterfaceBuilderVersion">672</string>
6+
<string key="IBDocument.InterfaceBuilderVersion">677</string>
77
<string key="IBDocument.AppKitVersion">949.43</string>
88
<string key="IBDocument.HIToolboxVersion">353.00</string>
99
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
1010
<bool key="EncodedWithXMLCoder">YES</bool>
11-
<integer value="2"/>
11+
<integer value="42"/>
1212
</object>
1313
<object class="NSArray" key="IBDocument.PluginDependencies">
1414
<bool key="EncodedWithXMLCoder">YES</bool>
1515
<string>com.apple.InterfaceBuilderKit</string>
1616
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
1717
</object>
18+
<object class="NSMutableDictionary" key="IBDocument.Metadata">
19+
<bool key="EncodedWithXMLCoder">YES</bool>
20+
<object class="NSArray" key="dict.sortedKeys">
21+
<bool key="EncodedWithXMLCoder">YES</bool>
22+
</object>
23+
<object class="NSMutableArray" key="dict.values">
24+
<bool key="EncodedWithXMLCoder">YES</bool>
25+
</object>
26+
</object>
1827
<object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
1928
<bool key="EncodedWithXMLCoder">YES</bool>
2029
<object class="NSCustomObject" id="1001">
@@ -279,7 +288,7 @@
279288
<object class="NSButton" id="619486495">
280289
<reference key="NSNextResponder" ref="235344690"/>
281290
<int key="NSvFlags">268</int>
282-
<string key="NSFrame">{{93, 169}, {286, 18}}</string>
291+
<string key="NSFrame">{{93, 149}, {286, 18}}</string>
283292
<reference key="NSSuperview" ref="235344690"/>
284293
<bool key="NSEnabled">YES</bool>
285294
<object class="NSButtonCell" key="NSCell" id="356052318">
@@ -310,7 +319,7 @@
310319
<object class="NSButton" id="90714319">
311320
<reference key="NSNextResponder" ref="235344690"/>
312321
<int key="NSvFlags">268</int>
313-
<string key="NSFrame">{{93, 149}, {286, 18}}</string>
322+
<string key="NSFrame">{{93, 129}, {286, 18}}</string>
314323
<reference key="NSSuperview" ref="235344690"/>
315324
<bool key="NSEnabled">YES</bool>
316325
<object class="NSButtonCell" key="NSCell" id="688316371">
@@ -348,7 +357,7 @@
348357
<object class="NSMatrix" id="211748724">
349358
<reference key="NSNextResponder" ref="235344690"/>
350359
<int key="NSvFlags">268</int>
351-
<string key="NSFrame">{{93, 74}, {285, 58}}</string>
360+
<string key="NSFrame">{{93, 58}, {285, 58}}</string>
352361
<reference key="NSSuperview" ref="235344690"/>
353362
<bool key="NSEnabled">YES</bool>
354363
<int key="NSNumRows">3</int>
@@ -619,7 +628,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
619628
<object class="NSTextField" id="1020124743">
620629
<reference key="NSNextResponder" ref="235344690"/>
621630
<int key="NSvFlags">268</int>
622-
<string key="NSFrame">{{17, 115}, {67, 17}}</string>
631+
<string key="NSFrame">{{17, 99}, {67, 17}}</string>
623632
<reference key="NSSuperview" ref="235344690"/>
624633
<bool key="NSEnabled">YES</bool>
625634
<object class="NSTextFieldCell" key="NSCell" id="393278813">
@@ -635,7 +644,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
635644
<object class="NSTextField" id="800069556">
636645
<reference key="NSNextResponder" ref="235344690"/>
637646
<int key="NSvFlags">268</int>
638-
<string key="NSFrame">{{17, 44}, {67, 17}}</string>
647+
<string key="NSFrame">{{17, 28}, {67, 17}}</string>
639648
<reference key="NSSuperview" ref="235344690"/>
640649
<bool key="NSEnabled">YES</bool>
641650
<object class="NSTextFieldCell" key="NSCell" id="345893571">
@@ -651,7 +660,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
651660
<object class="NSButton" id="124868638">
652661
<reference key="NSNextResponder" ref="235344690"/>
653662
<int key="NSvFlags">268</int>
654-
<string key="NSFrame">{{93, 43}, {287, 18}}</string>
663+
<string key="NSFrame">{{93, 27}, {287, 18}}</string>
655664
<reference key="NSSuperview" ref="235344690"/>
656665
<bool key="NSEnabled">YES</bool>
657666
<object class="NSButtonCell" key="NSCell" id="548281549">
@@ -673,7 +682,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
673682
<object class="NSButton" id="912083957">
674683
<reference key="NSNextResponder" ref="235344690"/>
675684
<int key="NSvFlags">268</int>
676-
<string key="NSFrame">{{117, 13}, {86, 28}}</string>
685+
<string key="NSFrame">{{117, -3}, {86, 28}}</string>
677686
<reference key="NSSuperview" ref="235344690"/>
678687
<bool key="NSEnabled">YES</bool>
679688
<object class="NSButtonCell" key="NSCell" id="613643996">
@@ -690,6 +699,28 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
690699
<int key="NSPeriodicInterval">25</int>
691700
</object>
692701
</object>
702+
<object class="NSButton" id="596693856">
703+
<reference key="NSNextResponder" ref="235344690"/>
704+
<int key="NSvFlags">268</int>
705+
<string key="NSFrame">{{93, 169}, {286, 18}}</string>
706+
<reference key="NSSuperview" ref="235344690"/>
707+
<bool key="NSEnabled">YES</bool>
708+
<object class="NSButtonCell" key="NSCell" id="410759951">
709+
<int key="NSCellFlags">-2080244224</int>
710+
<int key="NSCellFlags2">0</int>
711+
<string key="NSContents">Enable ClickToFlash</string>
712+
<reference key="NSSupport" ref="906693409"/>
713+
<reference key="NSControlView" ref="596693856"/>
714+
<int key="NSButtonFlags">1211912703</int>
715+
<int key="NSButtonFlags2">130</int>
716+
<reference key="NSNormalImage" ref="1064838318"/>
717+
<reference key="NSAlternateImage" ref="664243181"/>
718+
<string key="NSAlternateContents"/>
719+
<string key="NSKeyEquivalent"/>
720+
<int key="NSPeriodicDelay">200</int>
721+
<int key="NSPeriodicInterval">25</int>
722+
</object>
723+
</object>
693724
</object>
694725
<string key="NSFrame">{{65, 224}, {397, 207}}</string>
695726
<reference key="NSSuperview" ref="1006"/>
@@ -705,6 +736,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
705736
<string key="NSFrameAutosaveName">ClickToFlash_settingsWindow</string>
706737
</object>
707738
<object class="NSUserDefaultsController" id="913882380">
739+
<object class="NSMutableArray" key="NSDeclaredKeys">
740+
<bool key="EncodedWithXMLCoder">YES</bool>
741+
<string>ClickToFlash_pluginEnabled</string>
742+
</object>
708743
<bool key="NSSharedInstance">YES</bool>
709744
</object>
710745
<object class="NSArrayController" id="258102979">
@@ -895,6 +930,22 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
895930
</object>
896931
<int key="connectionID">148</int>
897932
</object>
933+
<object class="IBConnectionRecord">
934+
<object class="IBBindingConnection" key="connection">
935+
<string key="label">value: values.ClickToFlash_pluginEnabled</string>
936+
<reference key="source" ref="596693856"/>
937+
<reference key="destination" ref="913882380"/>
938+
<object class="NSNibBindingConnector" key="connector">
939+
<reference key="NSSource" ref="596693856"/>
940+
<reference key="NSDestination" ref="913882380"/>
941+
<string key="NSLabel">value: values.ClickToFlash_pluginEnabled</string>
942+
<string key="NSBinding">value</string>
943+
<string key="NSKeyPath">values.ClickToFlash_pluginEnabled</string>
944+
<int key="NSNibBindingConnectorVersion">2</int>
945+
</object>
946+
</object>
947+
<int key="connectionID">155</int>
948+
</object>
898949
</object>
899950
<object class="IBMutableOrderedSet" key="objectRecords">
900951
<object class="NSArray" key="orderedObjects">
@@ -1063,6 +1114,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
10631114
<reference ref="800069556"/>
10641115
<reference ref="912083957"/>
10651116
<reference ref="124868638"/>
1117+
<reference ref="596693856"/>
10661118
</object>
10671119
<reference key="parent" ref="1006"/>
10681120
</object>
@@ -1196,6 +1248,20 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
11961248
<reference key="object" ref="613643996"/>
11971249
<reference key="parent" ref="912083957"/>
11981250
</object>
1251+
<object class="IBObjectRecord">
1252+
<int key="objectID">149</int>
1253+
<reference key="object" ref="596693856"/>
1254+
<object class="NSMutableArray" key="children">
1255+
<bool key="EncodedWithXMLCoder">YES</bool>
1256+
<reference ref="410759951"/>
1257+
</object>
1258+
<reference key="parent" ref="235344690"/>
1259+
</object>
1260+
<object class="IBObjectRecord">
1261+
<int key="objectID">150</int>
1262+
<reference key="object" ref="410759951"/>
1263+
<reference key="parent" ref="596693856"/>
1264+
</object>
11991265
</object>
12001266
</object>
12011267
<object class="NSMutableDictionary" key="flattenedProperties">
@@ -1240,6 +1306,9 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
12401306
<string>143.IBAttributePlaceholdersKey</string>
12411307
<string>143.IBPluginDependency</string>
12421308
<string>144.IBPluginDependency</string>
1309+
<string>149.IBAttributePlaceholdersKey</string>
1310+
<string>149.IBPluginDependency</string>
1311+
<string>150.IBPluginDependency</string>
12431312
<string>17.IBPluginDependency</string>
12441313
<string>2.IBPluginDependency</string>
12451314
<string>20.IBPluginDependency</string>
@@ -1261,7 +1330,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
12611330
<string>com.apple.InterfaceBuilderKit</string>
12621331
<string>{{65, 235}, {527, 427}}</string>
12631332
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
1264-
<integer value="0"/>
1333+
<reference ref="8"/>
12651334
<string>{{65, 235}, {527, 427}}</string>
12661335
<reference ref="5"/>
12671336
<string>{196, 240}</string>
@@ -1329,6 +1398,16 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
13291398
</object>
13301399
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
13311400
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
1401+
<object class="NSMutableDictionary">
1402+
<string key="NS.key.0">ToolTip</string>
1403+
<object class="IBToolTipAttribute" key="NS.object.0">
1404+
<string key="name">ToolTip</string>
1405+
<reference key="object" ref="596693856"/>
1406+
<string key="toolTip">Automatically load Flash views that are smaller than 8x8 pixels.</string>
1407+
</object>
1408+
</object>
1409+
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
1410+
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
13321411
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
13331412
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
13341413
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -1371,7 +1450,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA</bytes>
13711450
</object>
13721451
</object>
13731452
<nil key="sourceID"/>
1374-
<int key="maxID">148</int>
1453+
<int key="maxID">155</int>
13751454
</object>
13761455
<object class="IBClassDescriber" key="IBDocument.Classes">
13771456
<object class="NSMutableArray" key="referencedPartialClassDescriptions">

Plugin/Plugin.m

+14-3
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ of this software and associated documentation files (the "Software"), to deal
4242
// NSUserDefaults keys
4343
static NSString *sUseYouTubeH264DefaultsKey = @"ClickToFlash_useYouTubeH264";
4444
static NSString *sAutoLoadInvisibleFlashViewsKey = @"ClickToFlash_autoLoadInvisibleViews";
45-
45+
static NSString *sPluginEnabled = @"ClickToFlash_pluginEnabled";
4646

4747
@interface CTFClickToFlashPlugin (Internal)
4848
- (void) _convertTypesForFlashContainer;
@@ -93,7 +93,11 @@ - (id) initWithArguments:(NSDictionary *)arguments
9393
// Default to auto-loading invisible flash views.
9494
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:sAutoLoadInvisibleFlashViewsKey];
9595
}
96-
96+
if (![[NSUserDefaults standardUserDefaults] objectForKey:sPluginEnabled]) {
97+
// Default to enable the plugin
98+
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:sPluginEnabled];
99+
}
100+
97101
self.webView = [[[arguments objectForKey:WebPlugInContainerKey] webFrame] webView];
98102

99103
self.container = [arguments objectForKey:WebPlugInContainingElementKey];
@@ -119,6 +123,12 @@ - (id) initWithArguments:(NSDictionary *)arguments
119123
NSLog( @"arguments = %@", arguments );
120124
NSLog( @"flashvars = %@", _flashVars );
121125
#endif
126+
if ( ![ [ NSUserDefaults standardUserDefaults ] boolForKey: sPluginEnabled ] ) {
127+
// plugin is disabled, load all content as normal
128+
_isLoadingFromWhitelist = YES;
129+
[self _convertTypesForContainer];
130+
return self;
131+
}
122132

123133
_fromYouTube = [self.host isEqualToString:@"www.youtube.com"]
124134
|| ( flashvars != nil && [flashvars rangeOfString: @"www.youtube.com"].location != NSNotFound );
@@ -657,7 +667,8 @@ - (BOOL) _hasH264Version
657667
- (BOOL) _useH264Version
658668
{
659669
return [ self _hasH264Version ]
660-
&& [ [ NSUserDefaults standardUserDefaults ] boolForKey: sUseYouTubeH264DefaultsKey ];
670+
&& [ [ NSUserDefaults standardUserDefaults ] boolForKey: sUseYouTubeH264DefaultsKey ]
671+
&& [ [ NSUserDefaults standardUserDefaults ] boolForKey: sPluginEnabled ];
661672
}
662673

663674
- (void) _convertElementForMP4: (DOMElement*) element

0 commit comments

Comments
 (0)