Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 5903e34

Browse files
author
dzenbot
committed
Disables autocorrection on iOS7 when enabling autocompletion mode
1 parent 4de5393 commit 5903e34

5 files changed

Lines changed: 25 additions & 7 deletions

File tree

Examples/Messenger/Messenger-Shared/MessageViewController.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ - (id)init
3333
self = [super initWithTableViewStyle:UITableViewStylePlain];
3434
if (self) {
3535

36-
self.users = @[@"Anna", @"Alicia", @"Arnold", @"Armando", @"Antonio", @"Brad", @"Catalaya", @"Christoph", @"Emerson", @"Eric", @"Everyone"];
36+
self.users = @[@"Allen", @"Anna", @"Alicia", @"Arnold", @"Armando", @"Antonio", @"Brad", @"Catalaya", @"Christoph", @"Emerson", @"Eric", @"Everyone"];
3737
self.channels = @[@"General", @"Random", @"iOS", @"Bugs", @"Sports", @"Android", @"UI", @"SSB"];
3838
self.emojis = @[@"m", @"man", @"machine", @"block-a", @"block-b", @"bowtie", @"boar", @"boat", @"book", @"bookmark", @"neckbeard", @"metal", @"fu", @"feelsgood"];
3939
}

Examples/Messenger/Messenger.xcodeproj/project.pbxproj

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -327,6 +327,9 @@
327327
LastUpgradeCheck = 0510;
328328
ORGANIZATIONNAME = "Slack Technologies, Inc.";
329329
TargetAttributes = {
330+
4F3EDB48199ED00F004C15D6 = {
331+
DevelopmentTeam = BQR82RBBHL;
332+
};
330333
4F86BF6419F011D0007A3D4A = {
331334
CreatedOnToolsVersion = 6.0.1;
332335
};
@@ -565,7 +568,7 @@
565568
CLANG_WARN_INT_CONVERSION = YES;
566569
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
567570
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
568-
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
571+
CODE_SIGN_IDENTITY = "iPhone Developer";
569572
COPY_PHASE_STRIP = NO;
570573
GCC_C_LANGUAGE_STANDARD = gnu99;
571574
GCC_DYNAMIC_NO_PIC = NO;
@@ -604,7 +607,7 @@
604607
CLANG_WARN_INT_CONVERSION = YES;
605608
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
606609
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
607-
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
610+
CODE_SIGN_IDENTITY = "iPhone Developer";
608611
COPY_PHASE_STRIP = YES;
609612
ENABLE_NS_ASSERTIONS = NO;
610613
GCC_C_LANGUAGE_STANDARD = gnu99;
@@ -627,10 +630,13 @@
627630
buildSettings = {
628631
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
629632
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
633+
CODE_SIGN_IDENTITY = "iPhone Developer";
634+
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
630635
GCC_PRECOMPILE_PREFIX_HEADER = YES;
631636
GCC_PREFIX_HEADER = "";
632637
INFOPLIST_FILE = "Messenger-Programatic/Info.plist";
633638
PRODUCT_NAME = Messenger;
639+
PROVISIONING_PROFILE = "";
634640
WRAPPER_EXTENSION = app;
635641
};
636642
name = Debug;
@@ -641,10 +647,13 @@
641647
buildSettings = {
642648
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
643649
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
650+
CODE_SIGN_IDENTITY = "iPhone Developer";
651+
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
644652
GCC_PRECOMPILE_PREFIX_HEADER = YES;
645653
GCC_PREFIX_HEADER = "";
646654
INFOPLIST_FILE = "Messenger-Programatic/Info.plist";
647655
PRODUCT_NAME = Messenger;
656+
PROVISIONING_PROFILE = "";
648657
WRAPPER_EXTENSION = app;
649658
};
650659
name = Release;
@@ -656,6 +665,7 @@
656665
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
657666
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
658667
CLANG_WARN_UNREACHABLE_CODE = YES;
668+
CODE_SIGN_IDENTITY = "iPhone Developer";
659669
ENABLE_STRICT_OBJC_MSGSEND = YES;
660670
GCC_PREPROCESSOR_DEFINITIONS = (
661671
"DEBUG=1",
@@ -676,6 +686,7 @@
676686
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
677687
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
678688
CLANG_WARN_UNREACHABLE_CODE = YES;
689+
CODE_SIGN_IDENTITY = "iPhone Developer";
679690
ENABLE_STRICT_OBJC_MSGSEND = YES;
680691
INFOPLIST_FILE = "Messenger-Storyboard/Info.plist";
681692
IPHONEOS_DEPLOYMENT_TARGET = 7.0;
@@ -691,6 +702,7 @@
691702
buildSettings = {
692703
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
693704
CLANG_WARN_UNREACHABLE_CODE = YES;
705+
CODE_SIGN_IDENTITY = "iPhone Developer";
694706
ENABLE_STRICT_OBJC_MSGSEND = YES;
695707
GCC_PREPROCESSOR_DEFINITIONS = (
696708
"DEBUG=1",
@@ -712,6 +724,7 @@
712724
buildSettings = {
713725
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
714726
CLANG_WARN_UNREACHABLE_CODE = YES;
727+
CODE_SIGN_IDENTITY = "iPhone Developer";
715728
ENABLE_STRICT_OBJC_MSGSEND = YES;
716729
INFOPLIST_FILE = "Messenger-Swift/Info.plist";
717730
IPHONEOS_DEPLOYMENT_TARGET = 7.0;

Source/Additions/SLKUIConstants.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
typedef NS_ENUM(NSUInteger, SLKQuicktypeBarMode) {
2828
SLKQuicktypeBarModeHidden,
2929
SLKQuicktypeBarModeCollapsed,
30-
SLKQuicktypeBarModeExpanded ,
30+
SLKQuicktypeBarModeExpanded,
3131
};
3232

3333
inline static CGFloat minimumKeyboardHeight()

Source/Classes/SLKTextView.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ typedef NS_OPTIONS(NSUInteger, SLKPastableMediaType) {
6868

6969
/**
7070
Disables iOS8's Quick Type bar.
71-
The cleanest hack so far is to disable auto-correction and spellingCheck momentarily, while calling -refreshFirstResponder if -isFirstResponder to be able to reflect the property changes in the text view.
71+
The cleanest hack so far is to disable autocorrection and spelling check momentarily, while calling -refreshFirstResponder if isFirstResponder to be able to reflect the property changes in the text view, whitout dismissing the keyboard and tiggering keyboard notifications.
7272
7373
@param disable YES if the bar should be disabled.
7474
*/

Source/Classes/SLKTextViewController.m

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -489,6 +489,10 @@ - (void)setAutoCompleting:(BOOL)autoCompleting
489489
if (UI_IS_IOS8_AND_HIGHER) {
490490
[self updateQuicktypeBarMode];
491491
}
492+
// On iOS7, it should always disable auto-correction and spell checking if autocompletion is enabled.
493+
else {
494+
[self.textView disableQuicktypeBar:autoCompleting];
495+
}
492496
}
493497

494498
- (void)updateQuicktypeBarMode
@@ -503,14 +507,15 @@ - (void)setQuicktypeBarMode:(SLKQuicktypeBarMode)quicktypeBarMode
503507
{
504508
_quicktypeBarMode = quicktypeBarMode;
505509

506-
BOOL shouldHide = quicktypeBarMode == SLKQuicktypeBarModeExpanded && self.autoCompleting;
510+
BOOL shouldHide = (quicktypeBarMode == SLKQuicktypeBarModeExpanded && self.autoCompleting) ? YES : NO;
507511

508512
// Skips if the QuickType Bar is minimised
509513
if (quicktypeBarMode == SLKQuicktypeBarModeCollapsed) {
510514
return;
511515
}
512516

513-
// Hides the iOS8 QuicktypeBar if visible and auto-completing mode is on
517+
// When predictive mode is enabled, the QuicktypeBar is hidden
518+
// Spelling check is also disabled
514519
[self.textView disableQuicktypeBar:shouldHide];
515520
}
516521

0 commit comments

Comments
 (0)