Video avatar fixes

This commit is contained in:
Ilya Laktyushin 2020-07-03 14:24:22 +03:00
parent 4e563ce105
commit 71fc6c67d6
2 changed files with 75 additions and 64 deletions

View File

@ -1155,6 +1155,10 @@
{ {
[currentController removeFromParentViewController]; [currentController removeFromParentViewController];
[currentController.view removeFromSuperview]; [currentController.view removeFromSuperview];
if ([self presentedForAvatarCreation] && tab == TGPhotoEditorCropTab) {
_previewView.transform = CGAffineTransformIdentity;
}
}]; }];
transitionReferenceFrame = [currentController transitionOutReferenceFrame]; transitionReferenceFrame = [currentController transitionOutReferenceFrame];
@ -1343,8 +1347,8 @@
if (strongSelf == nil) if (strongSelf == nil)
return; return;
if (strongSelf->_currentTabController.finishedTransitionIn != nil) strongSelf->_fullPaintingView.hidden = true;
{ if (strongSelf->_currentTabController.finishedTransitionIn != nil) {
strongSelf->_currentTabController.finishedTransitionIn(); strongSelf->_currentTabController.finishedTransitionIn();
strongSelf->_currentTabController.finishedTransitionIn = nil; strongSelf->_currentTabController.finishedTransitionIn = nil;
} }
@ -1455,7 +1459,6 @@
case TGPhotoEditorPaintTab: case TGPhotoEditorPaintTab:
{ {
_fullPaintingView.hidden = true;
TGPhotoPaintController *paintController = [[TGPhotoPaintController alloc] initWithContext:_context photoEditor:_photoEditor previewView:_previewView]; TGPhotoPaintController *paintController = [[TGPhotoPaintController alloc] initWithContext:_context photoEditor:_photoEditor previewView:_previewView];
paintController.stickersContext = _stickersContext; paintController.stickersContext = _stickersContext;
paintController.toolbarLandscapeSize = TGPhotoEditorToolbarSize; paintController.toolbarLandscapeSize = TGPhotoEditorToolbarSize;

View File

@ -431,6 +431,7 @@ const CGFloat TGPhotoPaintStickerKeyboardSize = 260.0f;
- (void)setupCanvas - (void)setupCanvas
{ {
if (_canvasView == nil) {
__weak TGPhotoPaintController *weakSelf = self; __weak TGPhotoPaintController *weakSelf = self;
_canvasView = [[TGPaintCanvas alloc] initWithFrame:CGRectZero]; _canvasView = [[TGPaintCanvas alloc] initWithFrame:CGRectZero];
_canvasView.pointInsideContainer = ^bool(CGPoint point) _canvasView.pointInsideContainer = ^bool(CGPoint point)
@ -493,6 +494,7 @@ const CGFloat TGPhotoPaintStickerKeyboardSize = 260.0f;
[_canvasView setBrush:_brushes.firstObject]; [_canvasView setBrush:_brushes.firstObject];
[self setCurrentSwatch:_portraitSettingsView.swatch sender:nil]; [self setCurrentSwatch:_portraitSettingsView.swatch sender:nil];
[_paintingWrapperView addSubview:_canvasView]; [_paintingWrapperView addSubview:_canvasView];
}
_canvasView.hidden = false; _canvasView.hidden = false;
[self.view setNeedsLayout]; [self.view setNeedsLayout];
@ -1801,6 +1803,11 @@ const CGFloat TGPhotoPaintStickerKeyboardSize = 260.0f;
_portraitSettingsView.layer.shouldRasterize = false; _portraitSettingsView.layer.shouldRasterize = false;
_landscapeSettingsView.layer.shouldRasterize = false; _landscapeSettingsView.layer.shouldRasterize = false;
}]; }];
if (self.presentedForAvatarCreation) {
_canvasView.hidden = true;
_entitiesContainerView.hidden = true;
}
} }
+ (CGRect)photoContainerFrameForParentViewFrame:(CGRect)parentViewFrame toolbarLandscapeSize:(CGFloat)toolbarLandscapeSize orientation:(UIInterfaceOrientation)orientation panelSize:(CGFloat)panelSize hasOnScreenNavigation:(bool)hasOnScreenNavigation + (CGRect)photoContainerFrameForParentViewFrame:(CGRect)parentViewFrame toolbarLandscapeSize:(CGFloat)toolbarLandscapeSize orientation:(UIInterfaceOrientation)orientation panelSize:(CGFloat)panelSize hasOnScreenNavigation:(bool)hasOnScreenNavigation
@ -1847,6 +1854,7 @@ const CGFloat TGPhotoPaintStickerKeyboardSize = 260.0f;
} }
[self setupCanvas]; [self setupCanvas];
_entitiesContainerView.hidden = false;
TGPhotoEditorPreviewView *previewView = _previewView; TGPhotoEditorPreviewView *previewView = _previewView;
[previewView setPaintingHidden:true]; [previewView setPaintingHidden:true];