You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
//
|
|
|
|
// Copyright (c) 2018 Open Whisper Systems. All rights reserved.
|
|
|
|
//
|
|
|
|
|
|
|
|
#import "OWSUnreadIndicator.h"
|
|
|
|
|
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
|
|
|
|
@implementation OWSUnreadIndicator
|
|
|
|
|
|
|
|
- (instancetype)initWithFirstUnseenSortId:(uint64_t)firstUnseenSortId
|
|
|
|
hasMoreUnseenMessages:(BOOL)hasMoreUnseenMessages
|
|
|
|
missingUnseenSafetyNumberChangeCount:(NSUInteger)missingUnseenSafetyNumberChangeCount
|
|
|
|
unreadIndicatorPosition:(NSInteger)unreadIndicatorPosition
|
|
|
|
{
|
|
|
|
self = [super init];
|
|
|
|
|
|
|
|
if (!self) {
|
|
|
|
return self;
|
|
|
|
}
|
|
|
|
|
|
|
|
_firstUnseenSortId = firstUnseenSortId;
|
|
|
|
_hasMoreUnseenMessages = hasMoreUnseenMessages;
|
|
|
|
_missingUnseenSafetyNumberChangeCount = missingUnseenSafetyNumberChangeCount;
|
|
|
|
_unreadIndicatorPosition = unreadIndicatorPosition;
|
|
|
|
|
|
|
|
return self;
|
|
|
|
}
|
|
|
|
|
|
|
|
- (BOOL)isEqual:(id)object
|
|
|
|
{
|
|
|
|
if (self == object) {
|
|
|
|
return YES;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (![object isKindOfClass:[OWSUnreadIndicator class]]) {
|
|
|
|
return NO;
|
|
|
|
}
|
|
|
|
|
|
|
|
OWSUnreadIndicator *other = object;
|
|
|
|
return (self.firstUnseenSortId == other.firstUnseenSortId
|
|
|
|
&& self.hasMoreUnseenMessages == other.hasMoreUnseenMessages
|
|
|
|
&& self.missingUnseenSafetyNumberChangeCount == other.missingUnseenSafetyNumberChangeCount
|
|
|
|
&& self.unreadIndicatorPosition == other.unreadIndicatorPosition);
|
|
|
|
}
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
NS_ASSUME_NONNULL_END
|