Index: ios/web/crw_network_activity_indicator_manager.mm |
diff --git a/ios/web/crw_network_activity_indicator_manager.mm b/ios/web/crw_network_activity_indicator_manager.mm |
deleted file mode 100644 |
index 36be81b950b659fd830943b66a45311082a5f325..0000000000000000000000000000000000000000 |
--- a/ios/web/crw_network_activity_indicator_manager.mm |
+++ /dev/null |
@@ -1,116 +0,0 @@ |
-// Copyright 2014 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#import "ios/web/crw_network_activity_indicator_manager.h" |
- |
-#import <UIKit/UIKit.h> |
- |
-#include "base/logging.h" |
-#include "base/mac/scoped_nsobject.h" |
-#include "base/threading/thread_checker.h" |
- |
-#if !defined(__has_feature) || !__has_feature(objc_arc) |
-#error "This file requires ARC support." |
-#endif |
- |
-@interface CRWNetworkActivityIndicatorManager () { |
- base::scoped_nsobject<NSMutableDictionary> _groupCounts; |
- NSUInteger _totalCount; |
- base::ThreadChecker _threadChecker; |
-} |
- |
-@end |
- |
-@implementation CRWNetworkActivityIndicatorManager |
- |
-+ (CRWNetworkActivityIndicatorManager*)sharedInstance { |
- static CRWNetworkActivityIndicatorManager* instance = |
- [[CRWNetworkActivityIndicatorManager alloc] init]; |
- return instance; |
-} |
- |
-- (instancetype)init { |
- self = [super init]; |
- if (self) { |
- _groupCounts.reset([[NSMutableDictionary alloc] init]); |
- _totalCount = 0; |
- } |
- return self; |
-} |
- |
-- (void)startNetworkTaskForGroup:(NSString*)group { |
- [self startNetworkTasks:1 forGroup:group]; |
-} |
- |
-- (void)stopNetworkTaskForGroup:(NSString*)group { |
- [self stopNetworkTasks:1 forGroup:group]; |
-} |
- |
-- (void)startNetworkTasks:(NSUInteger)numTasks forGroup:(NSString*)group { |
- DCHECK(_threadChecker.CalledOnValidThread()); |
- DCHECK(group); |
- DCHECK_GT(numTasks, 0U); |
- NSUInteger count = 0; |
- NSNumber* number = [_groupCounts objectForKey:group]; |
- if (number) { |
- count = [number unsignedIntegerValue]; |
- DCHECK_GT(count, 0U); |
- } |
- count += numTasks; |
- [_groupCounts setObject:@(count) forKey:group]; |
- _totalCount += numTasks; |
- if (_totalCount == numTasks) { |
- [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES]; |
- } |
-} |
- |
-- (void)stopNetworkTasks:(NSUInteger)numTasks forGroup:(NSString*)group { |
- DCHECK(_threadChecker.CalledOnValidThread()); |
- DCHECK(group); |
- DCHECK_GT(numTasks, 0U); |
- NSNumber* number = [_groupCounts objectForKey:group]; |
- DCHECK(number); |
- NSUInteger count = [number unsignedIntegerValue]; |
- DCHECK(count >= numTasks); |
- count -= numTasks; |
- if (count == 0) { |
- [_groupCounts removeObjectForKey:group]; |
- } else { |
- [_groupCounts setObject:@(count) forKey:group]; |
- } |
- _totalCount -= numTasks; |
- if (_totalCount == 0) { |
- [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO]; |
- } |
-} |
- |
-- (NSUInteger)clearNetworkTasksForGroup:(NSString*)group { |
- DCHECK(_threadChecker.CalledOnValidThread()); |
- DCHECK(group); |
- NSNumber* number = [_groupCounts objectForKey:group]; |
- if (!number) { |
- return 0; |
- } |
- NSUInteger count = [number unsignedIntegerValue]; |
- DCHECK_GT(count, 0U); |
- [self stopNetworkTasks:count forGroup:group]; |
- return count; |
-} |
- |
-- (NSUInteger)numNetworkTasksForGroup:(NSString*)group { |
- DCHECK(_threadChecker.CalledOnValidThread()); |
- DCHECK(group); |
- NSNumber* number = [_groupCounts objectForKey:group]; |
- if (!number) { |
- return 0; |
- } |
- return [number unsignedIntegerValue]; |
-} |
- |
-- (NSUInteger)numTotalNetworkTasks { |
- DCHECK(_threadChecker.CalledOnValidThread()); |
- return _totalCount; |
-} |
- |
-@end |