mirror of
https://github.com/ish-app/ish.git
synced 2026-05-28 21:10:35 +00:00
Reland "Add a menu where you can choose the app icon"
Last attempt didn't work out because it inadvertently removed the
ASSETCATALOG_COMPILER_APPICON_NAME from the xcodeproj.
This reverts commit c65cc4bfa7.
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// IconViewController.h
|
||||
// iSH
|
||||
//
|
||||
// Created by Theodore Dubois on 12/13/19.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface AltIconViewController : UIViewController <UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout>
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
@@ -0,0 +1,151 @@
|
||||
//
|
||||
// IconViewController.m
|
||||
// iSH
|
||||
//
|
||||
// Created by Theodore Dubois on 12/13/19.
|
||||
//
|
||||
|
||||
#import "AltIconViewController.h"
|
||||
#import "UIApplication+OpenURL.h"
|
||||
|
||||
@interface AltIconViewController ()
|
||||
|
||||
@property (weak) IBOutlet UICollectionView *collectionView;
|
||||
|
||||
@property NSDictionary<NSString *, NSDictionary *> *altIcons;
|
||||
@property NSArray<NSString *> *altIconNames;
|
||||
|
||||
@end
|
||||
|
||||
@interface AltIconCell : UICollectionViewCell
|
||||
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *imageView;
|
||||
@property (weak, nonatomic) IBOutlet UIImageView *checkboxImageView;
|
||||
@property (weak, nonatomic) IBOutlet UILabel *descriptionLabel;
|
||||
@property (weak, nonatomic) IBOutlet UIButton *authorButton;
|
||||
|
||||
@property (nonatomic) NSString *link;
|
||||
|
||||
- (void)updateImage:(UIImage *)image description:(NSString *)description author:(NSString *)author link:(NSURL *)link;
|
||||
|
||||
@end
|
||||
|
||||
@implementation AltIconViewController
|
||||
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
|
||||
self.altIcons = [NSDictionary dictionaryWithContentsOfURL:
|
||||
[NSBundle.mainBundle URLForResource:@"Icons"
|
||||
withExtension:@"plist"]];
|
||||
self.altIconNames = [self.altIcons.allKeys sortedArrayUsingSelector:@selector(compare:)];
|
||||
|
||||
NSString *iconName = UIApplication.sharedApplication.alternateIconName;
|
||||
if (iconName == nil)
|
||||
iconName = @"";
|
||||
NSIndexPath *indexPath = [NSIndexPath indexPathForItem:[self.altIconNames indexOfObject:iconName]
|
||||
inSection:0];
|
||||
[self.collectionView selectItemAtIndexPath:indexPath
|
||||
animated:NO
|
||||
scrollPosition:UICollectionViewScrollPositionTop];
|
||||
// UICollectionViewFlowLayout *layout = self.collectionView.collectionViewLayout;
|
||||
// layout.sectionFootersPinToVisibleBounds = YES;
|
||||
}
|
||||
|
||||
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
|
||||
return self.altIconNames.count;
|
||||
}
|
||||
|
||||
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath {
|
||||
return [collectionView dequeueReusableSupplementaryViewOfKind:kind withReuseIdentifier:@"footer" forIndexPath:indexPath];
|
||||
}
|
||||
|
||||
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
|
||||
AltIconCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"icon" forIndexPath:indexPath];
|
||||
NSString *iconName = self.altIconNames[indexPath.item];
|
||||
[cell updateImage:[UIImage imageNamed:iconName.length == 0 ? @"icon" : iconName]
|
||||
description:self.altIcons[iconName][@"description"]
|
||||
author:self.altIcons[iconName][@"author"]
|
||||
link:self.altIcons[iconName][@"link"]];
|
||||
return cell;
|
||||
}
|
||||
|
||||
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
|
||||
NSString *iconName = self.altIconNames[indexPath.item];
|
||||
if (iconName.length == 0)
|
||||
iconName = nil;
|
||||
[UIApplication.sharedApplication setAlternateIconName:iconName completionHandler:^(NSError *err) {
|
||||
if (err != nil)
|
||||
NSLog(@"%@", err);
|
||||
}];
|
||||
}
|
||||
|
||||
- (IBAction)openSubmissions:(id)sender {
|
||||
[UIApplication openURL:@"https://github.com/tbodt/ish/issues/578"];
|
||||
}
|
||||
|
||||
- (CGFloat)sideInset:(UICollectionViewFlowLayout *)layout {
|
||||
// For maximum aesthetics, there should be a decent amount of spacing between cells
|
||||
static const CGFloat kMinSpacer = 20;
|
||||
// The insets should be somewhat smaller than the spacer
|
||||
static const CGFloat kInsetToSpacerRatio = 0.75;
|
||||
|
||||
CGFloat total = layout.collectionView.frame.size.width;
|
||||
CGFloat item = layout.itemSize.width;
|
||||
NSUInteger count = (int) (total / item);
|
||||
CGFloat spacer;
|
||||
CGFloat inset;
|
||||
do {
|
||||
CGFloat slack = total - (item * count);
|
||||
spacer = slack / (2 * kInsetToSpacerRatio + count - 1);
|
||||
inset = spacer * kInsetToSpacerRatio;
|
||||
count--;
|
||||
} while (spacer < kMinSpacer);
|
||||
return inset;
|
||||
}
|
||||
- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewFlowLayout *)layout insetForSectionAtIndex:(NSInteger)section {
|
||||
CGFloat sideInset = [self sideInset:layout];
|
||||
return UIEdgeInsetsMake(sideInset, sideInset, 20, sideInset);
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@implementation AltIconCell
|
||||
|
||||
- (void)awakeFromNib {
|
||||
[super awakeFromNib];
|
||||
|
||||
CAShapeLayer *iconMask = [CAShapeLayer new];
|
||||
iconMask.frame = self.imageView.bounds;
|
||||
iconMask.path = [UIBezierPath bezierPathWithRoundedRect:self.imageView.bounds
|
||||
cornerRadius:self.imageView.bounds.size.width * 0.225].CGPath;
|
||||
self.imageView.layer.mask = iconMask;
|
||||
self.imageView.layer.minificationFilter = kCAFilterTrilinear;
|
||||
|
||||
if (@available(iOS 13, *)) {
|
||||
self.checkboxImageView.image = UIImage.checkmarkImage;
|
||||
} else {
|
||||
// self.checkboxImageView.backgroundColor = UIColor.whiteColor;
|
||||
// self.checkboxImageView.layer.cornerRadius = self.checkboxImageView.bounds.size.width / 2;
|
||||
}
|
||||
|
||||
self.authorButton.titleLabel.adjustsFontForContentSizeCategory = YES;
|
||||
}
|
||||
|
||||
- (void)updateImage:(UIImage *)image description:(NSString *)description author:(NSString *)author link:(NSString *)url {
|
||||
self.imageView.image = image;
|
||||
self.descriptionLabel.text = description;
|
||||
[self.authorButton setTitle:[NSString stringWithFormat:@"by %@", author] forState:UIControlStateNormal];
|
||||
self.link = url;
|
||||
}
|
||||
|
||||
- (IBAction)openSource:(id)sender {
|
||||
[UIApplication openURL:self.link];
|
||||
}
|
||||
|
||||
- (void)setSelected:(BOOL)selected {
|
||||
[super setSelected:selected];
|
||||
self.checkboxImageView.hidden = !selected;
|
||||
}
|
||||
|
||||
@end
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"filename" : "checkbox.pdf"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
},
|
||||
"properties" : {
|
||||
"template-rendering-intent" : "template",
|
||||
"preserves-vector-representation" : true
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
%PDF-1.7
|
||||
|
||||
1 0 obj
|
||||
<< >>
|
||||
endobj
|
||||
|
||||
2 0 obj
|
||||
<< /Length 3 0 R >>
|
||||
stream
|
||||
/DeviceRGB CS
|
||||
/DeviceRGB cs
|
||||
q
|
||||
1.000000 0.000000 -0.000000 1.000000 8.740234 9.239258 cm
|
||||
0.000000 0.000000 0.000000 scn
|
||||
49.804668 -0.000031 m
|
||||
77.050766 -0.000031 99.609772 22.558578 99.609772 49.804672 c
|
||||
99.609772 77.001968 77.001968 99.609375 49.755871 99.609375 c
|
||||
22.558571 99.609375 0.000000 77.001968 0.000000 49.804672 c
|
||||
0.000000 22.558578 22.607468 -0.000031 49.804668 -0.000031 c
|
||||
h
|
||||
43.115269 24.755875 m
|
||||
41.455070 24.755875 40.136768 25.488274 38.769569 27.148476 c
|
||||
24.658169 44.531273 l
|
||||
23.925768 45.458973 23.486370 46.630875 23.486370 47.705074 c
|
||||
23.486370 49.999973 25.292969 51.757774 27.490269 51.757774 c
|
||||
28.857470 51.757774 30.078169 51.220673 31.201168 49.706974 c
|
||||
42.871071 34.619171 l
|
||||
65.576172 70.996078 l
|
||||
66.503868 72.509773 67.773476 73.242172 69.091774 73.242172 c
|
||||
71.240273 73.242172 73.290970 71.826172 73.290970 69.482376 c
|
||||
73.290970 68.408173 72.656273 67.236275 72.070274 66.259773 c
|
||||
47.216770 27.148476 l
|
||||
46.142570 25.537079 44.775368 24.755875 43.115269 24.755875 c
|
||||
h
|
||||
f
|
||||
n
|
||||
Q
|
||||
|
||||
endstream
|
||||
endobj
|
||||
|
||||
3 0 obj
|
||||
1002
|
||||
endobj
|
||||
|
||||
4 0 obj
|
||||
<< /MediaBox [ 0.000000 0.000000 117.000000 119.000000 ]
|
||||
/Resources 1 0 R
|
||||
/Contents 2 0 R
|
||||
/Parent 5 0 R
|
||||
/Type /Page
|
||||
>>
|
||||
endobj
|
||||
|
||||
5 0 obj
|
||||
<< /Kids [ 4 0 R ]
|
||||
/Count 1
|
||||
/Type /Pages
|
||||
>>
|
||||
endobj
|
||||
|
||||
6 0 obj
|
||||
<< /Type /Catalog
|
||||
/Pages 5 0 R
|
||||
>>
|
||||
endobj
|
||||
|
||||
xref
|
||||
0 7
|
||||
0000000000 65535 f
|
||||
0000000010 00000 n
|
||||
0000000034 00000 n
|
||||
0000001092 00000 n
|
||||
0000001115 00000 n
|
||||
0000001274 00000 n
|
||||
0000001348 00000 n
|
||||
trailer
|
||||
<< /ID [ (some) (id) ]
|
||||
/Root 6 0 R
|
||||
/Size 7
|
||||
>>
|
||||
startxref
|
||||
1407
|
||||
%%EOF
|
||||
+178
-14
@@ -4,6 +4,8 @@
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="16087"/>
|
||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||
<capability name="collection view cell content view" minToolsVersion="11.0"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
@@ -58,9 +60,29 @@
|
||||
<segue destination="Zzy-IN-laJ" kind="show" id="3W3-8y-gVF"/>
|
||||
</connections>
|
||||
</tableViewCell>
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="none" indentationWidth="10" id="3CC-Gj-X6f" userLabel="Disable Dimming">
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="6Qv-kp-ISr" style="IBUITableViewCellStyleDefault" id="LVQ-SX-dAA" userLabel="Caps Lock">
|
||||
<rect key="frame" x="0.0" y="143.5" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="LVQ-SX-dAA" id="plU-fp-Ybd">
|
||||
<rect key="frame" x="0.0" y="0.0" width="293" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<subviews>
|
||||
<label opaque="NO" multipleTouchEnabled="YES" contentMode="left" insetsLayoutMarginsFromSafeArea="NO" text="App Icon" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="6Qv-kp-ISr">
|
||||
<rect key="frame" x="16" y="0.0" width="269" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
</tableViewCellContentView>
|
||||
<connections>
|
||||
<segue destination="cfv-rk-mN1" kind="show" id="0jv-rd-adN"/>
|
||||
</connections>
|
||||
</tableViewCell>
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="none" indentationWidth="10" id="3CC-Gj-X6f" userLabel="Disable Dimming">
|
||||
<rect key="frame" x="0.0" y="187.5" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="3CC-Gj-X6f" id="6Sy-Y9-UdH">
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
@@ -91,7 +113,7 @@
|
||||
<tableViewSection id="u3N-3a-97w">
|
||||
<cells>
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="dVs-7k-zeJ" style="IBUITableViewCellStyleDefault" id="HHU-Ju-BtM">
|
||||
<rect key="frame" x="0.0" y="223.5" width="320" height="44"/>
|
||||
<rect key="frame" x="0.0" y="267.5" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="HHU-Ju-BtM" id="CqF-qp-HgQ">
|
||||
<rect key="frame" x="0.0" y="0.0" width="293" height="44"/>
|
||||
@@ -115,7 +137,7 @@
|
||||
<tableViewSection footerTitle="" id="DVR-sH-TdL">
|
||||
<cells>
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="none" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="g6W-FX-yYa" style="IBUITableViewCellStyleDefault" id="gMm-4C-5X3">
|
||||
<rect key="frame" x="0.0" y="303.5" width="320" height="44"/>
|
||||
<rect key="frame" x="0.0" y="347.5" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="gMm-4C-5X3" id="mVT-2h-5kM">
|
||||
<rect key="frame" x="0.0" y="0.0" width="293" height="44"/>
|
||||
@@ -132,7 +154,7 @@
|
||||
</tableViewCellContentView>
|
||||
</tableViewCell>
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="Fe5-tr-fWm" style="IBUITableViewCellStyleDefault" id="F4i-eC-hQ6">
|
||||
<rect key="frame" x="0.0" y="347.5" width="320" height="44"/>
|
||||
<rect key="frame" x="0.0" y="391.5" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="F4i-eC-hQ6" id="gU6-0E-hOf">
|
||||
<rect key="frame" x="0.0" y="0.0" width="293" height="44"/>
|
||||
@@ -149,7 +171,7 @@
|
||||
</tableViewCellContentView>
|
||||
</tableViewCell>
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="xMw-wC-igF" style="IBUITableViewCellStyleDefault" id="K5r-jy-Dzl">
|
||||
<rect key="frame" x="0.0" y="391.5" width="320" height="44"/>
|
||||
<rect key="frame" x="0.0" y="435.5" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="K5r-jy-Dzl" id="UIr-IB-yu1">
|
||||
<rect key="frame" x="0.0" y="0.0" width="293" height="44"/>
|
||||
@@ -166,7 +188,7 @@
|
||||
</tableViewCellContentView>
|
||||
</tableViewCell>
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" textLabel="wyO-AY-ccm" style="IBUITableViewCellStyleDefault" id="bge-GA-6p8">
|
||||
<rect key="frame" x="0.0" y="435.5" width="320" height="44"/>
|
||||
<rect key="frame" x="0.0" y="479.5" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="bge-GA-6p8" id="JXA-Ff-hkB">
|
||||
<rect key="frame" x="0.0" y="0.0" width="293" height="44"/>
|
||||
@@ -187,20 +209,20 @@
|
||||
<tableViewSection headerTitle="Secret Advanced Debugging Options" footerTitle="Warning: Changing these can break everything! If that happens, there's a reset switch in the Settings app." id="d0T-DL-SuP">
|
||||
<cells>
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="none" indentationWidth="10" id="RKb-ed-FOs" userLabel="Init Command">
|
||||
<rect key="frame" x="0.0" y="547" width="320" height="44"/>
|
||||
<rect key="frame" x="0.0" y="591" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="RKb-ed-FOs" id="I4F-81-mWS">
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<subviews>
|
||||
<label opaque="NO" multipleTouchEnabled="YES" contentMode="left" horizontalHuggingPriority="1000" insetsLayoutMarginsFromSafeArea="NO" text="Launch cmd" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="G8D-8d-aOp">
|
||||
<rect key="frame" x="16" y="11.5" width="94.5" height="21"/>
|
||||
<rect key="frame" x="8" y="11.5" width="94.5" height="21"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="/bin/login -f root" adjustsFontSizeToFit="NO" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="gDx-hv-hhV">
|
||||
<rect key="frame" x="122.5" y="13" width="181.5" height="18"/>
|
||||
<rect key="frame" x="114.5" y="13" width="197.5" height="18"/>
|
||||
<fontDescription key="fontDescription" name="Menlo-Regular" family="Menlo" pointSize="14"/>
|
||||
<textInputTraits key="textInputTraits" autocorrectionType="no" spellCheckingType="no" keyboardType="alphabet" returnKeyType="done" smartDashesType="no" smartInsertDeleteType="no" smartQuotesType="no"/>
|
||||
<connections>
|
||||
@@ -219,7 +241,7 @@
|
||||
</tableViewCellContentView>
|
||||
</tableViewCell>
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="none" indentationWidth="10" id="Xc7-9V-RXm" userLabel="Boot Command">
|
||||
<rect key="frame" x="0.0" y="591" width="320" height="44"/>
|
||||
<rect key="frame" x="0.0" y="635" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="Xc7-9V-RXm" id="IEt-PC-8fZ">
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
|
||||
@@ -251,7 +273,7 @@
|
||||
</tableViewCellContentView>
|
||||
</tableViewCell>
|
||||
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" selectionStyle="blue" indentationWidth="10" textLabel="83j-2z-XRR" style="IBUITableViewCellStyleDefault" id="OIE-9g-Btx" userLabel="Export">
|
||||
<rect key="frame" x="0.0" y="635" width="320" height="44"/>
|
||||
<rect key="frame" x="0.0" y="679" width="320" height="44"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" tableViewCell="OIE-9g-Btx" id="uY3-tT-dwz">
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
|
||||
@@ -473,7 +495,145 @@
|
||||
</tableViewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="XlH-jX-0dL" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="1073" y="-15"/>
|
||||
<point key="canvasLocation" x="1058" y="430"/>
|
||||
</scene>
|
||||
<!--App Icon-->
|
||||
<scene sceneID="jc8-Gv-xpK">
|
||||
<objects>
|
||||
<viewController title="App Icon" id="cfv-rk-mN1" customClass="AltIconViewController" sceneMemberID="viewController">
|
||||
<view key="view" contentMode="scaleToFill" id="bZC-Ac-YDX">
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="548"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" dataMode="prototypes" translatesAutoresizingMaskIntoConstraints="NO" id="wGQ-0K-Rcg">
|
||||
<rect key="frame" x="0.0" y="56" width="320" height="492"/>
|
||||
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
|
||||
<collectionViewFlowLayout key="collectionViewLayout" automaticEstimatedItemSize="YES" minimumLineSpacing="20" minimumInteritemSpacing="0.0" id="zz1-Bs-CFW">
|
||||
<size key="itemSize" width="120" height="120"/>
|
||||
<size key="headerReferenceSize" width="0.0" height="0.0"/>
|
||||
<size key="footerReferenceSize" width="50" height="50"/>
|
||||
<inset key="sectionInset" minX="30" minY="30" maxX="30" maxY="30"/>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="boolean" keyPath="sectionFootersPinToVisibleBounds" value="YES"/>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</collectionViewFlowLayout>
|
||||
<cells>
|
||||
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="icon" id="S3m-Be-XtT" customClass="AltIconCell">
|
||||
<rect key="frame" x="30" y="30" width="120" height="175.5"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
<collectionViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" id="IWa-a1-skf">
|
||||
<rect key="frame" x="0.0" y="0.0" width="120" height="175.5"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon.png" translatesAutoresizingMaskIntoConstraints="NO" id="9aw-Kk-k95">
|
||||
<rect key="frame" x="0.0" y="0.0" width="120" height="120"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="120" id="2sn-wy-ZoN"/>
|
||||
<constraint firstAttribute="height" constant="120" id="Zde-qc-BM8"/>
|
||||
</constraints>
|
||||
</imageView>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Description" textAlignment="center" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontForContentSizeCategory="YES" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="L8N-WR-seO">
|
||||
<rect key="frame" x="0.0" y="128" width="120" height="20.5"/>
|
||||
<fontDescription key="fontDescription" style="UICTFontTextStyleHeadline"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<imageView hidden="YES" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Checkbox" translatesAutoresizingMaskIntoConstraints="NO" id="cAC-0O-uY6">
|
||||
<rect key="frame" x="74" y="74" width="38" height="38"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="38" id="WO8-mB-47S"/>
|
||||
<constraint firstAttribute="height" constant="38" id="fG2-qK-0uJ"/>
|
||||
</constraints>
|
||||
</imageView>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="WNa-qg-ZN5">
|
||||
<rect key="frame" x="0.0" y="148.5" width="120" height="27"/>
|
||||
<fontDescription key="fontDescription" style="UICTFontTextStyleCaption1"/>
|
||||
<state key="normal" title="by @author"/>
|
||||
<connections>
|
||||
<action selector="openSource:" destination="S3m-Be-XtT" eventType="primaryActionTriggered" id="YSV-x5-8bZ"/>
|
||||
</connections>
|
||||
</button>
|
||||
</subviews>
|
||||
<constraints>
|
||||
<constraint firstItem="9aw-Kk-k95" firstAttribute="bottom" secondItem="cAC-0O-uY6" secondAttribute="bottom" constant="8" id="1Nx-lw-WeM"/>
|
||||
<constraint firstAttribute="trailing" secondItem="WNa-qg-ZN5" secondAttribute="trailing" id="1QP-qJ-bqg"/>
|
||||
<constraint firstItem="9aw-Kk-k95" firstAttribute="top" secondItem="IWa-a1-skf" secondAttribute="top" id="79p-Wm-2JF"/>
|
||||
<constraint firstItem="L8N-WR-seO" firstAttribute="leading" secondItem="IWa-a1-skf" secondAttribute="leading" id="7aw-Xv-bcY"/>
|
||||
<constraint firstItem="WNa-qg-ZN5" firstAttribute="top" secondItem="L8N-WR-seO" secondAttribute="bottom" id="B7h-4W-Kad"/>
|
||||
<constraint firstAttribute="trailing" secondItem="L8N-WR-seO" secondAttribute="trailing" id="Itz-cf-WxT"/>
|
||||
<constraint firstItem="L8N-WR-seO" firstAttribute="top" secondItem="9aw-Kk-k95" secondAttribute="bottom" constant="8" symbolic="YES" id="P1X-sO-yLj"/>
|
||||
<constraint firstItem="9aw-Kk-k95" firstAttribute="leading" secondItem="IWa-a1-skf" secondAttribute="leading" id="aFx-qK-TC2"/>
|
||||
<constraint firstAttribute="bottom" secondItem="WNa-qg-ZN5" secondAttribute="bottom" id="aGh-9T-AGA"/>
|
||||
<constraint firstItem="WNa-qg-ZN5" firstAttribute="leading" secondItem="IWa-a1-skf" secondAttribute="leading" id="cdk-fK-xdr"/>
|
||||
<constraint firstAttribute="trailing" secondItem="9aw-Kk-k95" secondAttribute="trailing" id="jeT-pz-ZFy"/>
|
||||
<constraint firstAttribute="trailing" secondItem="cAC-0O-uY6" secondAttribute="trailing" constant="8" id="l0V-Kb-Ul1"/>
|
||||
</constraints>
|
||||
</collectionViewCellContentView>
|
||||
<connections>
|
||||
<outlet property="authorButton" destination="WNa-qg-ZN5" id="3mb-95-R06"/>
|
||||
<outlet property="checkboxImageView" destination="cAC-0O-uY6" id="9Jd-uf-T9P"/>
|
||||
<outlet property="descriptionLabel" destination="L8N-WR-seO" id="4Ku-3c-ZsI"/>
|
||||
<outlet property="imageView" destination="9aw-Kk-k95" id="tW1-tN-k8G"/>
|
||||
</connections>
|
||||
</collectionViewCell>
|
||||
</cells>
|
||||
<collectionReusableView key="sectionFooterView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" reuseIdentifier="footer" id="lNw-1e-UqP">
|
||||
<rect key="frame" x="0.0" y="235.5" width="320" height="50"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<subviews>
|
||||
<visualEffectView opaque="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="L98-Nf-4Wv">
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="50"/>
|
||||
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" insetsLayoutMarginsFromSafeArea="NO" id="qL6-vf-qc3">
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="50"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="E9e-hb-zQw">
|
||||
<rect key="frame" x="8" y="8" width="304" height="34"/>
|
||||
<state key="normal" title="Submit your own icon!"/>
|
||||
<connections>
|
||||
<action selector="openSubmissions:" destination="cfv-rk-mN1" eventType="primaryActionTriggered" id="d9r-k6-6Vz"/>
|
||||
</connections>
|
||||
</button>
|
||||
</subviews>
|
||||
<constraints>
|
||||
<constraint firstItem="E9e-hb-zQw" firstAttribute="leading" secondItem="qL6-vf-qc3" secondAttribute="leading" constant="8" id="07g-r1-yQe"/>
|
||||
<constraint firstAttribute="bottom" secondItem="E9e-hb-zQw" secondAttribute="bottom" constant="8" id="1Nw-tH-oGL"/>
|
||||
<constraint firstAttribute="trailing" secondItem="E9e-hb-zQw" secondAttribute="trailing" constant="8" id="Mr4-0C-09T"/>
|
||||
<constraint firstItem="E9e-hb-zQw" firstAttribute="top" secondItem="qL6-vf-qc3" secondAttribute="top" constant="8" id="wcu-3V-6BT"/>
|
||||
</constraints>
|
||||
</view>
|
||||
<blurEffect style="regular"/>
|
||||
</visualEffectView>
|
||||
</subviews>
|
||||
<constraints>
|
||||
<constraint firstItem="L98-Nf-4Wv" firstAttribute="leading" secondItem="lNw-1e-UqP" secondAttribute="leading" id="6Rs-ht-afI"/>
|
||||
<constraint firstAttribute="trailing" secondItem="L98-Nf-4Wv" secondAttribute="trailing" id="F9n-YU-6bs"/>
|
||||
<constraint firstItem="L98-Nf-4Wv" firstAttribute="top" secondItem="lNw-1e-UqP" secondAttribute="top" id="b2D-gK-294"/>
|
||||
<constraint firstAttribute="bottom" secondItem="L98-Nf-4Wv" secondAttribute="bottom" id="yy8-dN-Lqd"/>
|
||||
</constraints>
|
||||
</collectionReusableView>
|
||||
<connections>
|
||||
<outlet property="dataSource" destination="cfv-rk-mN1" id="Ejj-y8-k4C"/>
|
||||
<outlet property="delegate" destination="cfv-rk-mN1" id="LaN-3H-ht3"/>
|
||||
</connections>
|
||||
</collectionView>
|
||||
</subviews>
|
||||
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
|
||||
<constraints>
|
||||
<constraint firstItem="wGQ-0K-Rcg" firstAttribute="top" secondItem="G6v-G0-r5a" secondAttribute="top" id="ECg-8n-6xl"/>
|
||||
<constraint firstItem="wGQ-0K-Rcg" firstAttribute="trailing" secondItem="G6v-G0-r5a" secondAttribute="trailing" id="JXu-0v-zd6"/>
|
||||
<constraint firstItem="wGQ-0K-Rcg" firstAttribute="leading" secondItem="G6v-G0-r5a" secondAttribute="leading" id="o7s-il-U4s"/>
|
||||
<constraint firstItem="G6v-G0-r5a" firstAttribute="bottom" secondItem="wGQ-0K-Rcg" secondAttribute="bottom" id="pTK-0F-HyJ"/>
|
||||
</constraints>
|
||||
<viewLayoutGuide key="safeArea" id="G6v-G0-r5a"/>
|
||||
</view>
|
||||
<connections>
|
||||
<outlet property="collectionView" destination="wGQ-0K-Rcg" id="GJB-nY-8gE"/>
|
||||
</connections>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="wE1-cE-kl7" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="1057.5" y="1132.3943661971832"/>
|
||||
</scene>
|
||||
<!--Appearance-->
|
||||
<scene sceneID="Sh1-9Z-h4V">
|
||||
@@ -579,7 +739,7 @@
|
||||
</tableViewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="qup-pC-GMP" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="1058" y="725"/>
|
||||
<point key="canvasLocation" x="1058" y="-274"/>
|
||||
</scene>
|
||||
<!--Font-->
|
||||
<scene sceneID="qlT-r4-5Rb">
|
||||
@@ -615,7 +775,7 @@
|
||||
</tableViewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="LW4-gI-8cW" userLabel="First Responder" customClass="UIResponder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="1770" y="725"/>
|
||||
<point key="canvasLocation" x="1766" y="-275"/>
|
||||
</scene>
|
||||
<!--About Navigation Controller-->
|
||||
<scene sceneID="Vga-Xh-1SC">
|
||||
@@ -649,4 +809,8 @@
|
||||
<point key="canvasLocation" x="292" y="641"/>
|
||||
</scene>
|
||||
</scenes>
|
||||
<resources>
|
||||
<image name="Checkbox" width="117" height="119"/>
|
||||
<image name="icon.png" width="1024" height="1024"/>
|
||||
</resources>
|
||||
</document>
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key></key>
|
||||
<dict>
|
||||
<key>description</key>
|
||||
<string>Default</string>
|
||||
<key>author</key>
|
||||
<string>@tbodt</string>
|
||||
<key>link</key>
|
||||
<string>https://twitter.com/tblodt</string>
|
||||
</dict>
|
||||
<key>ihash1</key>
|
||||
<dict>
|
||||
<key>description</key>
|
||||
<string>i#</string>
|
||||
<key>author</key>
|
||||
<string>@01010101lzy</string>
|
||||
<key>link</key>
|
||||
<string>https://github.com/tbodt/ish/issues/578#issuecomment-562960935</string>
|
||||
</dict>
|
||||
<key>uninspired</key>
|
||||
<dict>
|
||||
<key>description</key>
|
||||
<string>uninspired</string>
|
||||
<key>author</key>
|
||||
<string>@saagarjha</string>
|
||||
<key>link</key>
|
||||
<string>https://github.com/tbodt/ish/issues/578#issuecomment-562906800</string>
|
||||
</dict>
|
||||
<key>pydann2</key>
|
||||
<dict>
|
||||
<key>description</key>
|
||||
<string>>| Light</string>
|
||||
<key>author</key>
|
||||
<string>@PyDann</string>
|
||||
<key>link</key>
|
||||
<string>https://github.com/tbodt/ish/issues/578#issuecomment-562897067</string>
|
||||
</dict>
|
||||
<key>pydann1</key>
|
||||
<dict>
|
||||
<key>description</key>
|
||||
<string>>| Dark</string>
|
||||
<key>author</key>
|
||||
<string>@PyDann</string>
|
||||
<key>link</key>
|
||||
<string>https://github.com/tbodt/ish/issues/578#issuecomment-562897067</string>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 2.3 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 11 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 36 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 33 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 30 KiB |
+79
-4
@@ -6,6 +6,81 @@
|
||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIcons</key>
|
||||
<dict>
|
||||
<key>CFBundleAlternateIcons</key>
|
||||
<dict>
|
||||
<key>ihash1</key>
|
||||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>ihash1</string>
|
||||
</array>
|
||||
</dict>
|
||||
<key>pydann1</key>
|
||||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>pydann1</string>
|
||||
</array>
|
||||
</dict>
|
||||
<key>pydann2</key>
|
||||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>pydann2</string>
|
||||
</array>
|
||||
</dict>
|
||||
<key>uninspired</key>
|
||||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>uninspired</string>
|
||||
</array>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>CFBundlePrimaryIcon</key>
|
||||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>icon</string>
|
||||
</array>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>CFBundleIcons~ipad</key>
|
||||
<dict>
|
||||
<key>CFBundleAlternateIcons</key>
|
||||
<dict>
|
||||
<key>ihash1</key>
|
||||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>ihash1</string>
|
||||
</array>
|
||||
</dict>
|
||||
<key>pydann1</key>
|
||||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>pydann1</string>
|
||||
</array>
|
||||
</dict>
|
||||
<key>pydann2</key>
|
||||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>pydann2</string>
|
||||
</array>
|
||||
</dict>
|
||||
<key>uninspired</key>
|
||||
<dict>
|
||||
<key>CFBundleIconFiles</key>
|
||||
<array>
|
||||
<string>uninspired</string>
|
||||
</array>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
@@ -32,6 +107,8 @@
|
||||
</array>
|
||||
<key>UIApplicationSceneManifest</key>
|
||||
<dict>
|
||||
<key>UIApplicationSupportsMultipleScenes</key>
|
||||
<true/>
|
||||
<key>UISceneConfigurations</key>
|
||||
<dict>
|
||||
<key>UIWindowSceneSessionRoleApplication</key>
|
||||
@@ -39,17 +116,15 @@
|
||||
<dict>
|
||||
<key>UISceneClassName</key>
|
||||
<string>UIWindowScene</string>
|
||||
<key>UISceneDelegateClassName</key>
|
||||
<string>SceneDelegate</string>
|
||||
<key>UISceneConfigurationName</key>
|
||||
<string>Main App</string>
|
||||
<key>UISceneDelegateClassName</key>
|
||||
<string>SceneDelegate</string>
|
||||
<key>UISceneStoryboardFile</key>
|
||||
<string>Terminal</string>
|
||||
</dict>
|
||||
</array>
|
||||
</dict>
|
||||
<key>UIApplicationSupportsMultipleScenes</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>UIBackgroundModes</key>
|
||||
<array>
|
||||
|
||||
@@ -11,6 +11,11 @@
|
||||
650B337422EA235C00B4C03E /* PasteboardDevice.m in Sources */ = {isa = PBXBuildFile; fileRef = 650B337322EA235C00B4C03E /* PasteboardDevice.m */; };
|
||||
8632A7BF219A59FB00F02325 /* UserPreferences.m in Sources */ = {isa = PBXBuildFile; fileRef = 8632A7BE219A59FB00F02325 /* UserPreferences.m */; };
|
||||
9A28E4EA219A8B670073D200 /* AboutAppearanceViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 9A28E4E9219A8B670073D200 /* AboutAppearanceViewController.m */; };
|
||||
BB0F552E239F8A790032A2A1 /* Icons.plist in Resources */ = {isa = PBXBuildFile; fileRef = BB0F552D239F8A790032A2A1 /* Icons.plist */; };
|
||||
BB0F5530239F8B360032A2A1 /* uninspired.png in Resources */ = {isa = PBXBuildFile; fileRef = BB0F552F239F8B360032A2A1 /* uninspired.png */; };
|
||||
BB0F553223A0AB9C0032A2A1 /* pydann1.png in Resources */ = {isa = PBXBuildFile; fileRef = BB0F553123A0AB9B0032A2A1 /* pydann1.png */; };
|
||||
BB0F553423A0AC760032A2A1 /* ihash1.png in Resources */ = {isa = PBXBuildFile; fileRef = BB0F553323A0AC760032A2A1 /* ihash1.png */; };
|
||||
BB0F553623A0ACFC0032A2A1 /* pydann2.png in Resources */ = {isa = PBXBuildFile; fileRef = BB0F553523A0ACFC0032A2A1 /* pydann2.png */; };
|
||||
BB0FC5921F980A6C00803272 /* Terminal.m in Sources */ = {isa = PBXBuildFile; fileRef = BB0FC5911F980A6B00803272 /* Terminal.m */; };
|
||||
BB101B382364CF57000A93BC /* FontPickerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BB101B372364CF57000A93BC /* FontPickerViewController.m */; };
|
||||
BB10E5C3248DBA7B009C7A74 /* fakefsify.c in Sources */ = {isa = PBXBuildFile; fileRef = BB10E5C2248DBA7B009C7A74 /* fakefsify.c */; };
|
||||
@@ -19,10 +24,12 @@
|
||||
BB10E5D0248DC21D009C7A74 /* Roots.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = BB10E5CF248DC21D009C7A74 /* Roots.storyboard */; };
|
||||
BB10E5D3248DCFEA009C7A74 /* RootsTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BB10E5D2248DCFEA009C7A74 /* RootsTableViewController.m */; };
|
||||
BB13F7EA200ADCED003D1C4D /* libish.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BB13F7DC200AD81D003D1C4D /* libish.a */; };
|
||||
BB1B9A4323A5E96900414052 /* icon.png in Resources */ = {isa = PBXBuildFile; fileRef = BB1B9A4223A5E96900414052 /* icon.png */; };
|
||||
BB1D9D93234A8FE100F364E8 /* AboutNavigationController.m in Sources */ = {isa = PBXBuildFile; fileRef = BB1D9D92234A8FE100F364E8 /* AboutNavigationController.m */; };
|
||||
BB235534235D488500139E00 /* LocationDevice.m in Sources */ = {isa = PBXBuildFile; fileRef = BB235533235D488400139E00 /* LocationDevice.m */; };
|
||||
BB235537235D49B300139E00 /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BB235536235D49B300139E00 /* CoreLocation.framework */; };
|
||||
BB23F58D231E1D1400585522 /* ScrollbarView.m in Sources */ = {isa = PBXBuildFile; fileRef = BB23F58C231E1D1400585522 /* ScrollbarView.m */; };
|
||||
BB267FA623A48F1500ED7CAF /* AltIconViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = BB267FA523A48F1500ED7CAF /* AltIconViewController.m */; };
|
||||
BB2B4DAC231D94C300CB578B /* hterm_all.js in Resources */ = {isa = PBXBuildFile; fileRef = BB2B4DAB231D94C300CB578B /* hterm_all.js */; };
|
||||
BB2B4DAD231D998300CB578B /* term.js in Resources */ = {isa = PBXBuildFile; fileRef = BB4A539C1FAA490C00A72ACE /* term.js */; };
|
||||
BB2B4DAE231D998300CB578B /* term.css in Resources */ = {isa = PBXBuildFile; fileRef = BB4A53AF1FAA787900A72ACE /* term.css */; };
|
||||
@@ -139,6 +146,11 @@
|
||||
8632A7BE219A59FB00F02325 /* UserPreferences.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = UserPreferences.m; sourceTree = "<group>"; };
|
||||
9A28E4E8219A8B670073D200 /* AboutAppearanceViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AboutAppearanceViewController.h; sourceTree = "<group>"; };
|
||||
9A28E4E9219A8B670073D200 /* AboutAppearanceViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AboutAppearanceViewController.m; sourceTree = "<group>"; };
|
||||
BB0F552D239F8A790032A2A1 /* Icons.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Icons.plist; sourceTree = "<group>"; };
|
||||
BB0F552F239F8B360032A2A1 /* uninspired.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = uninspired.png; sourceTree = "<group>"; };
|
||||
BB0F553123A0AB9B0032A2A1 /* pydann1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = pydann1.png; sourceTree = "<group>"; };
|
||||
BB0F553323A0AC760032A2A1 /* ihash1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ihash1.png; sourceTree = "<group>"; };
|
||||
BB0F553523A0ACFC0032A2A1 /* pydann2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = pydann2.png; sourceTree = "<group>"; };
|
||||
BB0FC5901F980A6B00803272 /* Terminal.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Terminal.h; sourceTree = "<group>"; };
|
||||
BB0FC5911F980A6B00803272 /* Terminal.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Terminal.m; sourceTree = "<group>"; };
|
||||
BB101B362364CF57000A93BC /* FontPickerViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FontPickerViewController.h; sourceTree = "<group>"; };
|
||||
@@ -178,6 +190,7 @@
|
||||
BB13F4DD21C5770000343E17 /* NSError+ISHErrno.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSError+ISHErrno.m"; sourceTree = "<group>"; };
|
||||
BB13F7C8200ACC24003D1C4D /* xcode-meson.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = "xcode-meson.sh"; sourceTree = "<group>"; };
|
||||
BB13F7DC200AD81D003D1C4D /* libish.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libish.a; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
BB1B9A4223A5E96900414052 /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = icon.png; path = app/Icons/icon.png; sourceTree = SOURCE_ROOT; };
|
||||
BB1D9D91234A8FE100F364E8 /* AboutNavigationController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AboutNavigationController.h; sourceTree = "<group>"; };
|
||||
BB1D9D92234A8FE100F364E8 /* AboutNavigationController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AboutNavigationController.m; sourceTree = "<group>"; };
|
||||
BB235533235D488400139E00 /* LocationDevice.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LocationDevice.m; sourceTree = "<group>"; };
|
||||
@@ -185,6 +198,8 @@
|
||||
BB235536235D49B300139E00 /* CoreLocation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreLocation.framework; path = System/Library/Frameworks/CoreLocation.framework; sourceTree = SDKROOT; };
|
||||
BB23F58B231E1D1400585522 /* ScrollbarView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ScrollbarView.h; sourceTree = "<group>"; };
|
||||
BB23F58C231E1D1400585522 /* ScrollbarView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ScrollbarView.m; sourceTree = "<group>"; };
|
||||
BB267FA423A48F1500ED7CAF /* AltIconViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AltIconViewController.h; sourceTree = "<group>"; };
|
||||
BB267FA523A48F1500ED7CAF /* AltIconViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AltIconViewController.m; sourceTree = "<group>"; };
|
||||
BB2B4DAB231D94C300CB578B /* hterm_all.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = hterm_all.js; path = ../../deps/libapps/hterm/dist/js/hterm_all.js; sourceTree = "<group>"; };
|
||||
BB2D71082354244700A10D1E /* darwin.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = darwin.c; sourceTree = "<group>"; };
|
||||
BB2D71092354244700A10D1E /* linux.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = linux.c; sourceTree = "<group>"; };
|
||||
@@ -417,6 +432,19 @@
|
||||
name = Scripts;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
BB1B9A4123A5E92A00414052 /* Icons */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
BB0F552D239F8A790032A2A1 /* Icons.plist */,
|
||||
BB1B9A4223A5E96900414052 /* icon.png */,
|
||||
BB0F552F239F8B360032A2A1 /* uninspired.png */,
|
||||
BB0F553123A0AB9B0032A2A1 /* pydann1.png */,
|
||||
BB0F553523A0ACFC0032A2A1 /* pydann2.png */,
|
||||
BB0F553323A0AC760032A2A1 /* ihash1.png */,
|
||||
);
|
||||
path = Icons;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
BB235532235D472F00139E00 /* Devices */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -516,6 +544,7 @@
|
||||
BBFB557221586C6600DFE6DE /* Utilities */,
|
||||
BBBF7B5B2415CDBB00EC4C14 /* Settings.bundle */,
|
||||
BB792B5C1F96D90D00FFB7A4 /* Assets.xcassets */,
|
||||
BB1B9A4123A5E92A00414052 /* Icons */,
|
||||
BB792B5E1F96D90D00FFB7A4 /* LaunchScreen.storyboard */,
|
||||
BB792B611F96D90D00FFB7A4 /* Info.plist */,
|
||||
BB792B621F96D90D00FFB7A4 /* main.m */,
|
||||
@@ -777,6 +806,8 @@
|
||||
BB101B372364CF57000A93BC /* FontPickerViewController.m */,
|
||||
BB82A7FB21B4C2E8006AA5FD /* AboutExternalKeyboardViewController.h */,
|
||||
BB82A7FC21B4C2E8006AA5FD /* AboutExternalKeyboardViewController.m */,
|
||||
BB267FA423A48F1500ED7CAF /* AltIconViewController.h */,
|
||||
BB267FA523A48F1500ED7CAF /* AltIconViewController.m */,
|
||||
);
|
||||
name = About;
|
||||
sourceTree = "<group>";
|
||||
@@ -975,14 +1006,20 @@
|
||||
BB792B5D1F96D90D00FFB7A4 /* Assets.xcassets in Resources */,
|
||||
BB792B601F96D90D00FFB7A4 /* LaunchScreen.storyboard in Resources */,
|
||||
BBBF7B5C2415CDBB00EC4C14 /* Settings.bundle in Resources */,
|
||||
BB0F553223A0AB9C0032A2A1 /* pydann1.png in Resources */,
|
||||
BBBCE7E321D2F02200CA00B3 /* About.storyboard in Resources */,
|
||||
BB792B5B1F96D90D00FFB7A4 /* Terminal.storyboard in Resources */,
|
||||
BB0F552E239F8A790032A2A1 /* Icons.plist in Resources */,
|
||||
BB0F5530239F8B360032A2A1 /* uninspired.png in Resources */,
|
||||
BB0F553623A0ACFC0032A2A1 /* pydann2.png in Resources */,
|
||||
BB0F553423A0AC760032A2A1 /* ihash1.png in Resources */,
|
||||
BB2B4DAF231D998300CB578B /* term.html in Resources */,
|
||||
BB10E5D0248DC21D009C7A74 /* Roots.storyboard in Resources */,
|
||||
BBCE66E2249A807700F45269 /* alpine.tar.gz in Resources */,
|
||||
BB2B4DAC231D94C300CB578B /* hterm_all.js in Resources */,
|
||||
BB2B4DAE231D998300CB578B /* term.css in Resources */,
|
||||
BB2B4DAD231D998300CB578B /* term.js in Resources */,
|
||||
BB1B9A4323A5E96900414052 /* icon.png in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -1050,6 +1087,7 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
9A28E4EA219A8B670073D200 /* AboutAppearanceViewController.m in Sources */,
|
||||
BB267FA623A48F1500ED7CAF /* AltIconViewController.m in Sources */,
|
||||
BB1D9D93234A8FE100F364E8 /* AboutNavigationController.m in Sources */,
|
||||
BB235534235D488500139E00 /* LocationDevice.m in Sources */,
|
||||
BB792B581F96D90D00FFB7A4 /* TerminalViewController.m in Sources */,
|
||||
|
||||
Reference in New Issue
Block a user