mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-22 22:25:57 +00:00
Move common implementations to macros
This commit is contained in:
@@ -14,43 +14,13 @@
|
|||||||
NSInteger _visibilityDepth;
|
NSInteger _visibilityDepth;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)didMoveToParentViewController:(UIViewController *)parent
|
ASVisibilityDidMoveToParentViewController;
|
||||||
{
|
|
||||||
[super didMoveToParentViewController:parent];
|
|
||||||
[self visibilityDepthDidChange];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)viewWillAppear:(BOOL)animated
|
ASVisibilityViewWillAppear;
|
||||||
{
|
|
||||||
[super viewWillAppear:animated];
|
|
||||||
|
|
||||||
if (_parentManagesVisibilityDepth == NO) {
|
ASVisibilityViewDidDisappearImplementation;
|
||||||
_visibilityDepth = 0;
|
|
||||||
[self visibilityDepthDidChange];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)viewDidDisappear:(BOOL)animated
|
ASVisibilityDepthImplementation;
|
||||||
{
|
|
||||||
[super viewDidDisappear:animated];
|
|
||||||
|
|
||||||
if (_parentManagesVisibilityDepth == NO) {
|
|
||||||
_visibilityDepth = 1;
|
|
||||||
[self visibilityDepthDidChange];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- (NSInteger)visibilityDepth
|
|
||||||
{
|
|
||||||
if (self.parentViewController && _parentManagesVisibilityDepth == NO) {
|
|
||||||
_parentManagesVisibilityDepth = [self.parentViewController conformsToProtocol:@protocol(ASManagesChildVisibilityDepth)];
|
|
||||||
}
|
|
||||||
|
|
||||||
if (_parentManagesVisibilityDepth) {
|
|
||||||
return [(id <ASManagesChildVisibilityDepth>)self.parentViewController visibilityDepthOfChildViewController:self];
|
|
||||||
}
|
|
||||||
return _visibilityDepth;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)visibilityDepthDidChange
|
- (void)visibilityDepthDidChange
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -14,43 +14,13 @@
|
|||||||
NSInteger _visibilityDepth;
|
NSInteger _visibilityDepth;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)didMoveToParentViewController:(UIViewController *)parent
|
ASVisibilityDidMoveToParentViewController;
|
||||||
{
|
|
||||||
[super didMoveToParentViewController:parent];
|
|
||||||
[self visibilityDepthDidChange];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)viewWillAppear:(BOOL)animated
|
ASVisibilityViewWillAppear;
|
||||||
{
|
|
||||||
[super viewWillAppear:animated];
|
|
||||||
|
|
||||||
if (_parentManagesVisibilityDepth == NO) {
|
|
||||||
_visibilityDepth = 0;
|
|
||||||
[self visibilityDepthDidChange];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)viewDidDisappear:(BOOL)animated
|
ASVisibilityViewDidDisappearImplementation;
|
||||||
{
|
|
||||||
[super viewDidDisappear:animated];
|
|
||||||
|
|
||||||
if (_parentManagesVisibilityDepth == NO) {
|
|
||||||
_visibilityDepth = 1;
|
|
||||||
[self visibilityDepthDidChange];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- (NSInteger)visibilityDepth
|
ASVisibilityDepthImplementation;
|
||||||
{
|
|
||||||
if (self.parentViewController && _parentManagesVisibilityDepth == NO) {
|
|
||||||
_parentManagesVisibilityDepth = [self.parentViewController conformsToProtocol:@protocol(ASManagesChildVisibilityDepth)];
|
|
||||||
}
|
|
||||||
|
|
||||||
if (_parentManagesVisibilityDepth) {
|
|
||||||
return [(id <ASManagesChildVisibilityDepth>)self.parentViewController visibilityDepthOfChildViewController:self];
|
|
||||||
}
|
|
||||||
return _visibilityDepth;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)visibilityDepthDidChange
|
- (void)visibilityDepthDidChange
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -85,11 +85,7 @@
|
|||||||
[super viewDidLayoutSubviews];
|
[super viewDidLayoutSubviews];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)didMoveToParentViewController:(UIViewController *)parent
|
ASVisibilityDidMoveToParentViewController;
|
||||||
{
|
|
||||||
[super didMoveToParentViewController:parent];
|
|
||||||
[self visibilityDepthDidChange];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)viewWillAppear:(BOOL)animated
|
- (void)viewWillAppear:(BOOL)animated
|
||||||
{
|
{
|
||||||
@@ -104,27 +100,9 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)viewDidDisappear:(BOOL)animated
|
ASVisibilityViewDidDisappearImplementation;
|
||||||
{
|
|
||||||
[super viewDidDisappear:animated];
|
|
||||||
|
|
||||||
if (_parentManagesVisibilityDepth == NO) {
|
|
||||||
_visibilityDepth = 1;
|
|
||||||
[self visibilityDepthDidChange];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
- (NSInteger)visibilityDepth
|
ASVisibilityDepthImplementation;
|
||||||
{
|
|
||||||
if (self.parentViewController && _parentManagesVisibilityDepth == NO) {
|
|
||||||
_parentManagesVisibilityDepth = [self.parentViewController conformsToProtocol:@protocol(ASManagesChildVisibilityDepth)];
|
|
||||||
}
|
|
||||||
|
|
||||||
if (_parentManagesVisibilityDepth) {
|
|
||||||
return [(id <ASManagesChildVisibilityDepth>)self.parentViewController visibilityDepthOfChildViewController:self];
|
|
||||||
}
|
|
||||||
return _visibilityDepth;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)visibilityDepthDidChange
|
- (void)visibilityDepthDidChange
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -43,3 +43,45 @@ ASLayoutRangeMode ASLayoutRangeModeForVisibilityDepth(NSUInteger visibilityDepth
|
|||||||
- (NSInteger)visibilityDepthOfChildViewController:(UIViewController *)childViewController;
|
- (NSInteger)visibilityDepthOfChildViewController:(UIViewController *)childViewController;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
#define ASVisibilityDepthImplementation \
|
||||||
|
- (NSInteger)visibilityDepth \
|
||||||
|
{ \
|
||||||
|
if (self.parentViewController && _parentManagesVisibilityDepth == NO) { \
|
||||||
|
_parentManagesVisibilityDepth = [self.parentViewController conformsToProtocol:@protocol(ASManagesChildVisibilityDepth)]; \
|
||||||
|
} \
|
||||||
|
\
|
||||||
|
if (_parentManagesVisibilityDepth) { \
|
||||||
|
return [(id <ASManagesChildVisibilityDepth>)self.parentViewController visibilityDepthOfChildViewController:self]; \
|
||||||
|
} \
|
||||||
|
return _visibilityDepth; \
|
||||||
|
}
|
||||||
|
|
||||||
|
#define ASVisibilityViewDidDisappearImplementation \
|
||||||
|
- (void)viewDidDisappear:(BOOL)animated \
|
||||||
|
{ \
|
||||||
|
[super viewDidDisappear:animated]; \
|
||||||
|
\
|
||||||
|
if (_parentManagesVisibilityDepth == NO) { \
|
||||||
|
_visibilityDepth = 1; \
|
||||||
|
[self visibilityDepthDidChange]; \
|
||||||
|
} \
|
||||||
|
}
|
||||||
|
|
||||||
|
#define ASVisibilityViewWillAppear \
|
||||||
|
- (void)viewWillAppear:(BOOL)animated \
|
||||||
|
{ \
|
||||||
|
[super viewWillAppear:animated]; \
|
||||||
|
\
|
||||||
|
if (_parentManagesVisibilityDepth == NO) { \
|
||||||
|
_visibilityDepth = 0; \
|
||||||
|
[self visibilityDepthDidChange]; \
|
||||||
|
} \
|
||||||
|
}
|
||||||
|
|
||||||
|
#define ASVisibilityDidMoveToParentViewController \
|
||||||
|
- (void)didMoveToParentViewController:(UIViewController *)parent \
|
||||||
|
{ \
|
||||||
|
[super didMoveToParentViewController:parent]; \
|
||||||
|
[self visibilityDepthDidChange]; \
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user