mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2026-03-02 14:45:25 +00:00
add feedbackManager delegate that is informed about incoming feedback
fixes #30
This commit is contained in:
@@ -49,7 +49,7 @@ typedef enum {
|
||||
|
||||
|
||||
@class BITFeedbackMessage;
|
||||
|
||||
@class BITFeedbackManagerDelegate;
|
||||
|
||||
/**
|
||||
The feedback module.
|
||||
@@ -96,6 +96,18 @@ typedef enum {
|
||||
|
||||
@interface BITFeedbackManager : BITHockeyBaseManager
|
||||
|
||||
///-----------------------------------------------------------------------------
|
||||
/// @name Delegate
|
||||
///-----------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
Sets the `BITFeedbackManagerDelegate` delegate.
|
||||
|
||||
Can be set to be notified when new feedback is received from the server.
|
||||
*/
|
||||
@property (nonatomic, weak) id<BITFeedbackManagerDelegate> delegate;
|
||||
|
||||
|
||||
///-----------------------------------------------------------------------------
|
||||
/// @name General settings
|
||||
///-----------------------------------------------------------------------------
|
||||
|
||||
@@ -670,17 +670,23 @@
|
||||
BITFeedbackMessage *latestMessage = [self lastMessageHavingID];
|
||||
if (self.userEmail && latestMessage.email && [self.userEmail compare:latestMessage.email] == NSOrderedSame)
|
||||
latestMessageFromUser = YES;
|
||||
|
||||
if (!latestMessageFromUser && self.showAlertOnIncomingMessages && !self.currentFeedbackListViewController && !self.currentFeedbackComposeViewController) {
|
||||
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:BITHockeyLocalizedString(@"HockeyFeedbackNewMessageTitle")
|
||||
message:BITHockeyLocalizedString(@"HockeyFeedbackNewMessageText")
|
||||
delegate:self
|
||||
cancelButtonTitle:BITHockeyLocalizedString(@"HockeyFeedbackIgnore")
|
||||
otherButtonTitles:BITHockeyLocalizedString(@"HockeyFeedbackShow"), nil
|
||||
];
|
||||
[alertView setTag:0];
|
||||
[alertView show];
|
||||
_incomingMessagesAlertShowing = YES;
|
||||
|
||||
if (!latestMessageFromUser) {
|
||||
if([self.delegate respondsToSelector:@selector(feedbackManagerDidReceiveNewFeedback:)]) {
|
||||
[self.delegate feedbackManagerDidReceiveNewFeedback:self];
|
||||
}
|
||||
|
||||
if(self.showAlertOnIncomingMessages && !self.currentFeedbackListViewController && !self.currentFeedbackComposeViewController) {
|
||||
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:BITHockeyLocalizedString(@"HockeyFeedbackNewMessageTitle")
|
||||
message:BITHockeyLocalizedString(@"HockeyFeedbackNewMessageText")
|
||||
delegate:self
|
||||
cancelButtonTitle:BITHockeyLocalizedString(@"HockeyFeedbackIgnore")
|
||||
otherButtonTitles:BITHockeyLocalizedString(@"HockeyFeedbackShow"), nil
|
||||
];
|
||||
[alertView setTag:0];
|
||||
[alertView show];
|
||||
_incomingMessagesAlertShowing = YES;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
29
Classes/BITFeedbackManagerDelegate.h
Normal file
29
Classes/BITFeedbackManagerDelegate.h
Normal file
@@ -0,0 +1,29 @@
|
||||
//
|
||||
// BITFeedbackManagerDelegate.h
|
||||
// HockeySDK
|
||||
//
|
||||
// Created by Stephan Diederich on 26.07.13.
|
||||
//
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@class BITFeedbackManager;
|
||||
|
||||
/**
|
||||
* Delegate protocol which is notified about changes in the feedbackManager
|
||||
* @TODO
|
||||
* * move shouldShowUpdateAlert from feedbackManager here
|
||||
*/
|
||||
@protocol BITFeedbackManagerDelegate <NSObject>
|
||||
|
||||
@optional
|
||||
|
||||
/**
|
||||
* can be implemented to know when new feedback from the server arrived
|
||||
*
|
||||
* @param feedbackManager The feedbackManager which did detect the new messages
|
||||
*/
|
||||
- (void) feedbackManagerDidReceiveNewFeedback:(BITFeedbackManager*) feedbackManager;
|
||||
|
||||
@end
|
||||
@@ -250,6 +250,7 @@
|
||||
|
||||
BITHockeyLog(@"INFO: Setup FeedbackManager");
|
||||
_feedbackManager = [[BITFeedbackManager alloc] initWithAppIdentifier:_appIdentifier isAppStoreEnvironemt:_appStoreEnvironment];
|
||||
_feedbackManager.delegate = _delegate;
|
||||
|
||||
#if JIRA_MOBILE_CONNECT_SUPPORT_ENABLED
|
||||
// Only if JMC is part of the project
|
||||
|
||||
Reference in New Issue
Block a user