Procházet zdrojové kódy

Improve preferences

master
lint před 4 roky
rodič
revize
470c651166
26 změnil soubory, kde provedl 76 přidání a 1 odebrání
  1. +55
    -1
      prefs/Resources/Root.plist
  2. binární
      prefs/Resources/app_icons/AlienBlue.png
  3. binární
      prefs/Resources/app_icons/AlienBlue@2x.png
  4. binární
      prefs/Resources/app_icons/AlienBlue@3x.png
  5. binární
      prefs/Resources/app_icons/Antenna.png
  6. binární
      prefs/Resources/app_icons/Antenna@2x.png
  7. binární
      prefs/Resources/app_icons/Antenna@3x.png
  8. binární
      prefs/Resources/app_icons/Apollo.png
  9. binární
      prefs/Resources/app_icons/Apollo@2x.png
  10. binární
      prefs/Resources/app_icons/Apollo@3x.png
  11. binární
      prefs/Resources/app_icons/BaconReader.png
  12. binární
      prefs/Resources/app_icons/BaconReader@2x.png
  13. binární
      prefs/Resources/app_icons/BaconReader@3x.png
  14. binární
      prefs/Resources/app_icons/Beam.png
  15. binární
      prefs/Resources/app_icons/Beam@2x.png
  16. binární
      prefs/Resources/app_icons/Beam@3x.png
  17. binární
      prefs/Resources/app_icons/Narwhal.png
  18. binární
      prefs/Resources/app_icons/Narwhal@2x.png
  19. binární
      prefs/Resources/app_icons/Narwhal@3x.png
  20. binární
      prefs/Resources/app_icons/Reddit.png
  21. binární
      prefs/Resources/app_icons/Reddit@2x.png
  22. binární
      prefs/Resources/app_icons/Reddit@3x.png
  23. binární
      prefs/Resources/app_icons/Slide.png
  24. binární
      prefs/Resources/app_icons/Slide@2x.png
  25. binární
      prefs/Resources/app_icons/Slide@3x.png
  26. +21
    -0
      prefs/TFDTSRootListController.m

+ 55
- 1
prefs/Resources/Root.plist Zobrazit soubor

@@ -8,10 +8,32 @@
<key>cell</key>
<string>PSGroupCell</string>
<key>footerText</key>
<string>To enable/disable, restart the app.</string>
<string>Fully enable/disable the tweak.</string>
<key>label</key>
<string>Enabled</string>
</dict>
<dict>
<key>PostNotification</key>
<string>com.lint.undelete.prefs.changed</string>
<key>cell</key>
<string>PSSwitchCell</string>
<key>default</key>
<true/>
<key>defaults</key>
<string>com.lint.undelete.prefs</string>
<key>key</key>
<string>isEnabled</string>
<key>label</key>
<string>Enabled</string>
</dict>
<dict>
<key>cell</key>
<string>PSGroupCell</string>
<key>label</key>
<string>Enabled Applications</string>
<key>footerText</key>
<string>To enable/disable, restart the app.</string>
</dict>
<dict>
<key>PostNotification</key>
<string>com.lint.undelete.prefs.changed</string>
@@ -25,6 +47,10 @@
<string>isAlienBlueEnabled</string>
<key>label</key>
<string>Enable Alien Blue</string>
<key>hasIcon</key>
<true/>
<key>icon</key>
<string>app_icons/AlienBlue.png</string>
</dict>
<dict>
<key>PostNotification</key>
@@ -39,6 +65,10 @@
<string>isAntennaEnabled</string>
<key>label</key>
<string>Enable Antenna</string>
<key>hasIcon</key>
<true/>
<key>icon</key>
<string>app_icons/Antenna.png</string>
</dict>
<dict>
<key>PostNotification</key>
@@ -53,6 +83,10 @@
<string>isApolloEnabled</string>
<key>label</key>
<string>Enable Apollo</string>
<key>hasIcon</key>
<true/>
<key>icon</key>
<string>app_icons/Apollo.png</string>
</dict>
<dict>
<key>PostNotification</key>
@@ -67,6 +101,10 @@
<string>isBaconReaderEnabled</string>
<key>label</key>
<string>Enable BaconReader</string>
<key>hasIcon</key>
<true/>
<key>icon</key>
<string>app_icons/BaconReader.png</string>
</dict>
<dict>
<key>PostNotification</key>
@@ -81,6 +119,10 @@
<string>isBeamEnabled</string>
<key>label</key>
<string>Enable Beam</string>
<key>hasIcon</key>
<true/>
<key>icon</key>
<string>app_icons/Beam.png</string>
</dict>
<dict>
<key>PostNotification</key>
@@ -95,6 +137,10 @@
<string>isNarwhalEnabled</string>
<key>label</key>
<string>Enable Narwhal</string>
<key>hasIcon</key>
<true/>
<key>icon</key>
<string>app_icons/Narwhal.png</string>
</dict>
<dict>
<key>PostNotification</key>
@@ -109,6 +155,10 @@
<string>isRedditEnabled</string>
<key>label</key>
<string>Enable Reddit</string>
<key>hasIcon</key>
<true/>
<key>icon</key>
<string>app_icons/Reddit.png</string>
</dict>
<dict>
<key>PostNotification</key>
@@ -123,6 +173,10 @@
<string>isSlideEnabled</string>
<key>label</key>
<string>Enable Slide</string>
<key>hasIcon</key>
<true/>
<key>icon</key>
<string>app_icons/Slide.png</string>
</dict>
<dict>
<key>cell</key>

binární
prefs/Resources/app_icons/AlienBlue.png Zobrazit soubor

Před Za
Šířka: 29  |  Výška: 29  |  Velikost: 4.7KB

binární
prefs/Resources/app_icons/AlienBlue@2x.png Zobrazit soubor

Před Za
Šířka: 58  |  Výška: 58  |  Velikost: 7.4KB

binární
prefs/Resources/app_icons/AlienBlue@3x.png Zobrazit soubor

Před Za
Šířka: 87  |  Výška: 87  |  Velikost: 9.7KB

binární
prefs/Resources/app_icons/Antenna.png Zobrazit soubor

Před Za
Šířka: 29  |  Výška: 29  |  Velikost: 4.8KB

binární
prefs/Resources/app_icons/Antenna@2x.png Zobrazit soubor

Před Za
Šířka: 58  |  Výška: 58  |  Velikost: 8.0KB

binární
prefs/Resources/app_icons/Antenna@3x.png Zobrazit soubor

Před Za
Šířka: 87  |  Výška: 87  |  Velikost: 12KB

binární
prefs/Resources/app_icons/Apollo.png Zobrazit soubor

Před Za
Šířka: 29  |  Výška: 29  |  Velikost: 4.6KB

binární
prefs/Resources/app_icons/Apollo@2x.png Zobrazit soubor

Před Za
Šířka: 58  |  Výška: 58  |  Velikost: 8.0KB

binární
prefs/Resources/app_icons/Apollo@3x.png Zobrazit soubor

Před Za
Šířka: 87  |  Výška: 87  |  Velikost: 11KB

binární
prefs/Resources/app_icons/BaconReader.png Zobrazit soubor

Před Za
Šířka: 29  |  Výška: 29  |  Velikost: 4.5KB

binární
prefs/Resources/app_icons/BaconReader@2x.png Zobrazit soubor

Před Za
Šířka: 58  |  Výška: 58  |  Velikost: 7.4KB

binární
prefs/Resources/app_icons/BaconReader@3x.png Zobrazit soubor

Před Za
Šířka: 87  |  Výška: 87  |  Velikost: 10KB

binární
prefs/Resources/app_icons/Beam.png Zobrazit soubor

Před Za
Šířka: 29  |  Výška: 29  |  Velikost: 4.6KB

binární
prefs/Resources/app_icons/Beam@2x.png Zobrazit soubor

Před Za
Šířka: 58  |  Výška: 58  |  Velikost: 8.0KB

binární
prefs/Resources/app_icons/Beam@3x.png Zobrazit soubor

Před Za
Šířka: 87  |  Výška: 87  |  Velikost: 12KB

binární
prefs/Resources/app_icons/Narwhal.png Zobrazit soubor

Před Za
Šířka: 29  |  Výška: 29  |  Velikost: 4.4KB

binární
prefs/Resources/app_icons/Narwhal@2x.png Zobrazit soubor

Před Za
Šířka: 58  |  Výška: 58  |  Velikost: 6.8KB

binární
prefs/Resources/app_icons/Narwhal@3x.png Zobrazit soubor

Před Za
Šířka: 87  |  Výška: 87  |  Velikost: 8.7KB

binární
prefs/Resources/app_icons/Reddit.png Zobrazit soubor

Před Za
Šířka: 29  |  Výška: 29  |  Velikost: 4.3KB

binární
prefs/Resources/app_icons/Reddit@2x.png Zobrazit soubor

Před Za
Šířka: 58  |  Výška: 58  |  Velikost: 6.5KB

binární
prefs/Resources/app_icons/Reddit@3x.png Zobrazit soubor

Před Za
Šířka: 87  |  Výška: 87  |  Velikost: 8.5KB

binární
prefs/Resources/app_icons/Slide.png Zobrazit soubor

Před Za
Šířka: 29  |  Výška: 29  |  Velikost: 4.0KB

binární
prefs/Resources/app_icons/Slide@2x.png Zobrazit soubor

Před Za
Šířka: 58  |  Výška: 58  |  Velikost: 5.8KB

binární
prefs/Resources/app_icons/Slide@3x.png Zobrazit soubor

Před Za
Šířka: 87  |  Výška: 87  |  Velikost: 7.8KB

+ 21
- 0
prefs/TFDTSRootListController.m Zobrazit soubor

@@ -1,4 +1,5 @@
#include "TFDTSRootListController.h"
#import <Preferences/PSSpecifier.h>

@implementation TFDTSRootListController

@@ -10,4 +11,24 @@
return _specifiers;
}

- (id)readPreferenceValue:(PSSpecifier*)specifier {
NSString *path = [NSString stringWithFormat:@"/User/Library/Preferences/%@.plist", specifier.properties[@"defaults"]];
NSMutableDictionary *settings = [NSMutableDictionary dictionary];
[settings addEntriesFromDictionary:[NSDictionary dictionaryWithContentsOfFile:path]];
return (settings[specifier.properties[@"key"]]) ?: specifier.properties[@"default"];
}

- (void)setPreferenceValue:(id)value specifier:(PSSpecifier*)specifier {
NSString *path = [NSString stringWithFormat:@"/User/Library/Preferences/%@.plist", specifier.properties[@"defaults"]];
NSMutableDictionary *settings = [NSMutableDictionary dictionary];
[settings addEntriesFromDictionary:[NSDictionary dictionaryWithContentsOfFile:path]];
[settings setObject:value forKey:specifier.properties[@"key"]];
[settings writeToFile:path atomically:YES];
CFStringRef notificationName = (__bridge CFStringRef)specifier.properties[@"PostNotification"];

if (notificationName) {
CFNotificationCenterPostNotification(CFNotificationCenterGetDarwinNotifyCenter(), notificationName, NULL, NULL, YES);
}
}

@end

Načítá se…
Zrušit
Uložit