Skip to content

Commit d1873e2

Browse files
Fix French localization and Airbnb failing to relaunch.
1 parent d45bb28 commit d1873e2

File tree

8 files changed

+67
-42
lines changed

8 files changed

+67
-42
lines changed

PixelPerfect/PixelPerfect.xcodeproj/project.pbxproj

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
044A72B629D0E14D00933A0C /* BundleExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044A72B529D0E14D00933A0C /* BundleExtension.swift */; };
1717
044A72B829D0E20400933A0C /* SupportPath.plist in Resources */ = {isa = PBXBuildFile; fileRef = 044A72B729D0E20400933A0C /* SupportPath.plist */; };
1818
044A72C329D11E6100933A0C /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 044A72C229D11E6100933A0C /* Credits.rtf */; };
19+
04907C9B2A1C71C7003AC2BE /* SystemHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 04907C9A2A1C71C7003AC2BE /* SystemHelper.m */; };
1920
04ACE2E429CFADD5005C3648 /* ExceptionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04ACE2E329CFADD5005C3648 /* ExceptionViewController.swift */; };
2021
04ACE2E729CFADEB005C3648 /* AppExceptionTableCellView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04ACE2E529CFADEB005C3648 /* AppExceptionTableCellView.swift */; };
2122
04ACE2EC29CFADF7005C3648 /* NSColor+RIUAlternatingColor.m in Sources */ = {isa = PBXBuildFile; fileRef = 04ACE2EB29CFADF7005C3648 /* NSColor+RIUAlternatingColor.m */; };
@@ -154,6 +155,8 @@
154155
044A72B729D0E20400933A0C /* SupportPath.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = SupportPath.plist; sourceTree = "<group>"; };
155156
044A72C229D11E6100933A0C /* Credits.rtf */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.rtf; path = Credits.rtf; sourceTree = "<group>"; };
156157
0460F83529CFD7B600092897 /* PixelPerfect-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "PixelPerfect-Info.plist"; path = "PixelPerfect/Support/PixelPerfect-Info.plist"; sourceTree = SOURCE_ROOT; };
158+
04907C992A1C71C7003AC2BE /* SystemHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SystemHelper.h; sourceTree = "<group>"; };
159+
04907C9A2A1C71C7003AC2BE /* SystemHelper.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SystemHelper.m; sourceTree = "<group>"; };
157160
04ACE2E329CFADD5005C3648 /* ExceptionViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExceptionViewController.swift; sourceTree = "<group>"; };
158161
04ACE2E529CFADEB005C3648 /* AppExceptionTableCellView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppExceptionTableCellView.swift; sourceTree = "<group>"; };
159162
04ACE2E929CFADF6005C3648 /* PixelPerfect-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "PixelPerfect-Bridging-Header.h"; sourceTree = "<group>"; };
@@ -184,6 +187,8 @@
184187
children = (
185188
0448377A29CFBC1D005BD085 /* Constants.swift */,
186189
0448377C29CFBC1D005BD085 /* iOSAppBundle.swift */,
190+
04907C992A1C71C7003AC2BE /* SystemHelper.h */,
191+
04907C9A2A1C71C7003AC2BE /* SystemHelper.m */,
187192
044A72B329D0E0A800933A0C /* SystemInformation.swift */,
188193
);
189194
path = Tools;
@@ -382,6 +387,7 @@
382387
0448375B29CFAE4B005BD085 /* StringExtension.swift in Sources */,
383388
04ACE2E729CFADEB005C3648 /* AppExceptionTableCellView.swift in Sources */,
384389
0448375D29CFB175005BD085 /* WindowController.swift in Sources */,
390+
04907C9B2A1C71C7003AC2BE /* SystemHelper.m in Sources */,
385391
044A72B429D0E0A800933A0C /* SystemInformation.swift in Sources */,
386392
04ACE2EC29CFADF7005C3648 /* NSColor+RIUAlternatingColor.m in Sources */,
387393
04B2265529CFAD100085F092 /* AppDelegate.swift in Sources */,
@@ -662,7 +668,7 @@
662668
CODE_SIGN_ENTITLEMENTS = PixelPerfect/Support/PixelPerfect.entitlements;
663669
CODE_SIGN_STYLE = Automatic;
664670
COMBINE_HIDPI_IMAGES = YES;
665-
CURRENT_PROJECT_VERSION = 1;
671+
CURRENT_PROJECT_VERSION = 2;
666672
GENERATE_INFOPLIST_FILE = YES;
667673
INFOPLIST_FILE = "PixelPerfect/Support/PixelPerfect-Info.plist";
668674
INFOPLIST_KEY_CFBundleDisplayName = "$(PRODUCT_NAME)";
@@ -675,7 +681,7 @@
675681
"@executable_path/../Frameworks",
676682
);
677683
MACOSX_DEPLOYMENT_TARGET = 11.0;
678-
MARKETING_VERSION = 1.0;
684+
MARKETING_VERSION = 1.1;
679685
ONLY_ACTIVE_ARCH = NO;
680686
PRODUCT_BUNDLE_IDENTIFIER = com.mac.PixelPerfect;
681687
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -695,7 +701,7 @@
695701
CODE_SIGN_ENTITLEMENTS = PixelPerfect/Support/PixelPerfect.entitlements;
696702
CODE_SIGN_STYLE = Automatic;
697703
COMBINE_HIDPI_IMAGES = YES;
698-
CURRENT_PROJECT_VERSION = 1;
704+
CURRENT_PROJECT_VERSION = 2;
699705
GENERATE_INFOPLIST_FILE = YES;
700706
INFOPLIST_FILE = "PixelPerfect/Support/PixelPerfect-Info.plist";
701707
INFOPLIST_KEY_CFBundleDisplayName = "$(PRODUCT_NAME)";
@@ -708,7 +714,7 @@
708714
"@executable_path/../Frameworks",
709715
);
710716
MACOSX_DEPLOYMENT_TARGET = 11.0;
711-
MARKETING_VERSION = 1.0;
717+
MARKETING_VERSION = 1.1;
712718
PRODUCT_BUNDLE_IDENTIFIER = com.mac.PixelPerfect;
713719
PRODUCT_NAME = "$(TARGET_NAME)";
714720
SWIFT_EMIT_LOC_STRINGS = YES;

PixelPerfect/PixelPerfect/Localized/fr.lproj/Main.strings

Lines changed: 30 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -3,103 +3,100 @@
33
"1Xt-HY-uBw.title" = "Pixel Parfait";
44

55
/* Class = "NSMenuItem"; title = "Enter Full Screen"; ObjectID = "4J7-dP-txa"; */
6-
"4J7-dP-txa.title" = "Koko näyttö";
6+
"4J7-dP-txa.title" = "Passer en plein écran";
77

88
/* Class = "NSMenuItem"; title = "Quit Pixel Perfect"; ObjectID = "4sb-4s-VLi"; */
9-
"4sb-4s-VLi.title" = "Sulje Pixel Parfait";
9+
"4sb-4s-VLi.title" = "Quitter Pixel Parfait";
1010

1111
/* Class = "NSMenuItem"; title = "About Pixel Perfect"; ObjectID = "5kV-Vb-QxS"; */
12-
"5kV-Vb-QxS.title" = "Tietoja Pixel Parfaitista";
12+
"5kV-Vb-QxS.title" = "À propos de Pixel Parfait";
1313

1414
/* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */
15-
"AYu-sK-qS6.title" = "Päävalikko";
15+
"AYu-sK-qS6.title" = "Menu principal";
1616

1717
/* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */
18-
"DVo-aG-piG.title" = "Sulje";
18+
"DVo-aG-piG.title" = "Fermer";
1919

2020
/* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */
21-
"F2S-fz-NVQ.title" = "Ohje";
21+
"F2S-fz-NVQ.title" = "Aide";
2222

2323
/* Class = "NSMenuItem"; title = "Pixel Perfect Help"; ObjectID = "FKE-Sm-Kum"; */
24-
"FKE-Sm-Kum.title" = "Pixel Parfait -ohje";
24+
"FKE-Sm-Kum.title" = "Aide de Pixel Parfait";
2525

2626
/* Class = "NSMenuItem"; title = "View"; ObjectID = "H8h-7b-M4v"; */
27-
"H8h-7b-M4v.title" = "Näkymä";
27+
"H8h-7b-M4v.title" = "Affichage";
2828

2929
/* Class = "NSMenu"; title = "View"; ObjectID = "HyV-fh-RgO"; */
30-
"HyV-fh-RgO.title" = "Näkymä";
30+
"HyV-fh-RgO.title" = "Affichage";
3131

3232
/* Class = "NSTextFieldCell"; title = "Enable iPhone and iPad apps to run at native resolution with pixel-perfect graphics and razor sharp text."; ObjectID = "IAR-Nf-69C"; */
33-
"IAR-Nf-69C.title" = "Mahdollista iPhone- ja iPad-sovellusten suorittaminen alkuperäisessä resoluutiossa pikselintarkalla grafiikalla ja terävällä tekstillä.";
33+
"IAR-Nf-69C.title" = "Permettre aux applications iPhone et iPad de s'exécuter avec une résolution native, des graphismes parfaits et un texte net.";
3434

3535
/* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "IQV-ah-pTq"; */
36-
"IQV-ah-pTq.title" = "Tekstisolu";
36+
"IQV-ah-pTq.title" = "Cellule de texte";
3737

3838
/* Class = "NSWindow"; title = "Pixel Perfect"; ObjectID = "IQv-IB-iLA"; */
3939
"IQv-IB-iLA.title" = "Pixel Parfait";
4040

4141
/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */
42-
"Kd2-mp-pUS.title" = "Näytä kaikki";
42+
"Kd2-mp-pUS.title" = "Tout afficher";
4343

4444
/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */
45-
"LE2-aR-0XJ.title" = "Näytä kaikki edessä";
45+
"LE2-aR-0XJ.title" = "Mettre tout au premier plan";
4646

4747
/* Class = "NSMenuItem"; title = "Reload"; ObjectID = "MES-zl-kn3"; */
48-
"MES-zl-kn3.title" = "Lataa uudelleen";
48+
"MES-zl-kn3.title" = "Recharger";
4949

5050
/* Class = "NSButtonCell"; title = "Add App"; ObjectID = "NBe-PV-Qww"; */
51-
"NBe-PV-Qww.title" = "Lisää sovellus";
51+
"NBe-PV-Qww.title" = "Ajouter une application";
5252

5353
/* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */
54-
"NMo-om-nkz.title" = "Palvelut";
54+
"NMo-om-nkz.title" = "Services";
5555

5656
/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */
57-
"OY7-WF-poV.title" = "Pienennä";
57+
"OY7-WF-poV.title" = "Réduire";
5858

5959
/* Class = "NSMenuItem"; title = "Hide Pixel Perfect"; ObjectID = "Olw-nP-bQN"; */
60-
"Olw-nP-bQN.title" = "Piilota Pixel Parfait";
60+
"Olw-nP-bQN.title" = "Masquer Pixel Parfait";
6161

6262
/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */
63-
"R4o-n2-Eq4.title" = "Zoomaa";
64-
65-
/* Class = "NSTextFieldCell"; title = "Loading applications..."; ObjectID = "REV-t2-qWC"; */
66-
"REV-t2-qWC.title" = "Ladataan sovelluksia...";
63+
"R4o-n2-Eq4.title" = "Zoom";
6764

6865
/* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */
69-
"Td7-aD-5lo.title" = "Ikkuna";
66+
"Td7-aD-5lo.title" = "Fenêtre";
7067

7168
/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */
72-
"Vdr-fp-XzO.title" = "Piilota muut";
69+
"Vdr-fp-XzO.title" = "Masquer les autres";
7370

7471
/* Class = "NSTextFieldCell"; title = "App"; ObjectID = "Wxv-iP-hRi"; */
75-
"Wxv-iP-hRi.title" = "Sovellus";
72+
"Wxv-iP-hRi.title" = "Application";
7673

7774
/* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */
78-
"aUF-d1-5bR.title" = "Ikkuna";
75+
"aUF-d1-5bR.title" = "Fenêtre";
7976

8077
/* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */
81-
"bib-Uj-vzu.title" = "Tiedosto";
78+
"bib-Uj-vzu.title" = "Fichier";
8279

8380
/* Class = "NSButtonCell"; title = "Reset All"; ObjectID = "cOf-V0-dtx"; */
84-
"cOf-V0-dtx.title" = "Palauta kaikki";
81+
"cOf-V0-dtx.title" = "Réinitialiser tout";
8582

8683
/* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */
87-
"dMs-cI-mzQ.title" = "Tiedosto";
84+
"dMs-cI-mzQ.title" = "Fichier";
8885

8986
/* Class = "NSMenuItem"; title = "Show Debug Options"; ObjectID = "dz4-3s-ctT"; */
90-
"dz4-3s-ctT.title" = "Näytä debug-asetukset";
87+
"dz4-3s-ctT.title" = "Afficher les options de débogage";
9188

9289
/* Class = "NSButtonCell"; title = "Enable All"; ObjectID = "fSV-R6-sjR"; */
93-
"fSV-R6-sjR.title" = "Ota kaikki käyttöön";
90+
"fSV-R6-sjR.title" = "Activer tout";
9491

9592
/* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */
96-
"hz9-B4-Xy5.title" = "Palvelut";
93+
"hz9-B4-Xy5.title" = "Services";
9794

9895
/* Class = "NSMenu"; title = "Pixel Perfect"; ObjectID = "uQy-DD-JDr"; */
9996
"uQy-DD-JDr.title" = "Pixel Parfait";
10097

10198
/* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */
102-
"wpr-3q-Mcd.title" = "Ohje";
99+
"wpr-3q-Mcd.title" = "Aide";
103100

104101
/* Class = "NSTextFieldCell"; title = "Pixel Perfect"; ObjectID = "y80-Sh-8yF"; */
105102
"y80-Sh-8yF.title" = "Pixel Parfait";
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1+
#import "SystemHelper.h"
12

PixelPerfect/PixelPerfect/Support/SupportPath.plist

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
<plist version="1.0">
44
<dict>
55
<key>LatestVersionNumber</key>
6-
<string>1.0</string>
6+
<string>1.1</string>
77
<key>LatestBuildNumber</key>
8-
<integer>1</integer>
8+
<integer>2</integer>
99
<key>LatestZIP</key>
1010
<string>https://github.com/cormiertyshawn895/PixelPerfect/releases/download/1.0/PixelPerfect.1.0.zip</string>
1111
<key>SupportPathURL</key>
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#import <Foundation/Foundation.h>
2+
3+
NS_ASSUME_NONNULL_BEGIN
4+
5+
@interface SystemHelper : NSObject
6+
7+
+ (void)killProcessID:(pid_t)processID;
8+
9+
@end
10+
11+
NS_ASSUME_NONNULL_END
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#import "SystemHelper.h"
2+
3+
@implementation SystemHelper
4+
5+
+ (void)killProcessID:(pid_t)processID {
6+
const char *command = [NSString stringWithFormat:@"kill -9 %d", processID].UTF8String;
7+
system(command);
8+
}
9+
10+
@end

PixelPerfect/PixelPerfect/Tools/iOSAppBundle.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ class iOSAppBundle: Bundle {
143143

144144
let runningApps = NSRunningApplication.runningApplications(withBundleIdentifier: bundleIdentifier)
145145
for app in runningApps {
146-
app.forceTerminate()
146+
SystemHelper.killProcessID(app.processIdentifier)
147147
Timer.scheduledTimer(withTimeInterval: 0.1, repeats: false) { timer in
148148
self.openApp()
149149
}

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<a href="https://github.com/cormiertyshawn895/PixelPerfect/releases/download/1.0/PixelPerfect.1.0.zip" alt="Download Pixel Perfect"><img src="PixelPerfect/Screenshots/icon.png" width="150" alt="Pixel Perfect App icon" align="left"/></a>
1+
<a href="https://github.com/cormiertyshawn895/PixelPerfect/releases/download/1.1/PixelPerfect.1.1.zip" alt="Download Pixel Perfect"><img src="PixelPerfect/Screenshots/icon.png" width="150" alt="Pixel Perfect App icon" align="left"/></a>
22

33
<div>
44
<h2>Pixel Perfect</h2>
@@ -7,7 +7,7 @@
77

88

99
<p align="center">
10-
<a href="https://github.com/cormiertyshawn895/PixelPerfect/releases/download/1.0/PixelPerfect.1.0.zip" alt="Download Pixel Perfect"><img width="240" src="PixelPerfect/Screenshots/resources/download-button.png" alt="Download Pixel Perfect"></a>
10+
<a href="https://github.com/cormiertyshawn895/PixelPerfect/releases/download/1.1/PixelPerfect.1.1.zip" alt="Download Pixel Perfect"><img width="240" src="PixelPerfect/Screenshots/resources/download-button.png" alt="Download Pixel Perfect"></a>
1111
<p>
1212
<p align="center">
1313
<a href="https://github.com/cormiertyshawn895/PixelPerfect/releases" alt="View Release Page"><img width="160" src="PixelPerfect/Screenshots/resources/release-button.png" alt="View Release Page"></a>

0 commit comments

Comments
 (0)