blob: ff8a5ec97e426ec2394c622c7c5f28b903426eb0 [file] [log] [blame]
//
// Created by Jesse Squires
// http://www.jessesquires.com
//
//
// Documentation
// http://cocoadocs.org/docsets/JSQMessagesViewController
//
//
// GitHub
// https://github.com/jessesquires/JSQMessagesViewController
//
//
// License
// Copyright (c) 2014 Jesse Squires
// Released under an MIT license: http://opensource.org/licenses/MIT
//
#import "JSQMessagesCellTextView.h"
@implementation JSQMessagesCellTextView
- (void)awakeFromNib
{
[super awakeFromNib];
self.textColor = [UIColor whiteColor];
self.editable = NO;
self.selectable = YES;
self.userInteractionEnabled = YES;
self.dataDetectorTypes = UIDataDetectorTypeNone;
self.showsHorizontalScrollIndicator = NO;
self.showsVerticalScrollIndicator = NO;
self.scrollEnabled = NO;
self.backgroundColor = [UIColor clearColor];
self.contentInset = UIEdgeInsetsZero;
self.scrollIndicatorInsets = UIEdgeInsetsZero;
self.contentOffset = CGPointZero;
self.textContainerInset = UIEdgeInsetsZero;
self.textContainer.lineFragmentPadding = 0;
self.linkTextAttributes = @{ NSForegroundColorAttributeName : [UIColor whiteColor],
NSUnderlineStyleAttributeName : @(NSUnderlineStyleSingle | NSUnderlinePatternSolid) };
}
- (void)setSelectedRange:(NSRange)selectedRange
{
// attempt to prevent selecting text
[super setSelectedRange:NSMakeRange(NSNotFound, 0)];
}
- (NSRange)selectedRange
{
// attempt to prevent selecting text
return NSMakeRange(NSNotFound, NSNotFound);
}
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer
{
// ignore double-tap to prevent copy/define/etc. menu from showing
if ([gestureRecognizer isKindOfClass:[UITapGestureRecognizer class]]) {
UITapGestureRecognizer *tap = (UITapGestureRecognizer *)gestureRecognizer;
if (tap.numberOfTapsRequired == 2) {
return NO;
}
}
return YES;
}
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
// ignore double-tap to prevent copy/define/etc. menu from showing
if ([gestureRecognizer isKindOfClass:[UITapGestureRecognizer class]]) {
UITapGestureRecognizer *tap = (UITapGestureRecognizer *)gestureRecognizer;
if (tap.numberOfTapsRequired == 2) {
return NO;
}
}
return YES;
}
@end