disable burger menu in msg mode
This commit is contained in:
		
							parent
							
								
									e135556fa6
								
							
						
					
					
						commit
						dd2abde5b8
					
				@ -129,32 +129,36 @@ struct MainView: View {
 | 
			
		||||
            .gesture(
 | 
			
		||||
                DragGesture()
 | 
			
		||||
                    .onChanged { gesture in
 | 
			
		||||
                        if !isSideMenuPresented && gesture.startLocation.x > 60 { return }
 | 
			
		||||
                        if !isMessengerModeEnabled {
 | 
			
		||||
                            if !isSideMenuPresented && gesture.startLocation.x > 60 { return }
 | 
			
		||||
                            
 | 
			
		||||
                        let translation = gesture.translation.width
 | 
			
		||||
                            let translation = gesture.translation.width
 | 
			
		||||
                            
 | 
			
		||||
                        // Определяем базовое смещение в зависимости от того, открыто меню или нет
 | 
			
		||||
                        let baseOffset = isSideMenuPresented ? menuWidth : 0
 | 
			
		||||
                            // Определяем базовое смещение в зависимости от того, открыто меню или нет
 | 
			
		||||
                            let baseOffset = isSideMenuPresented ? menuWidth : 0
 | 
			
		||||
                            
 | 
			
		||||
                        // Новое смещение — это база плюс текущий свайп
 | 
			
		||||
                        let newOffset = baseOffset + translation
 | 
			
		||||
                            // Новое смещение — это база плюс текущий свайп
 | 
			
		||||
                            let newOffset = baseOffset + translation
 | 
			
		||||
                            
 | 
			
		||||
                        // Жестко ограничиваем итоговое смещение между 0 и шириной меню
 | 
			
		||||
                        self.menuOffset = max(0, min(menuWidth, newOffset))
 | 
			
		||||
                            // Жестко ограничиваем итоговое смещение между 0 и шириной меню
 | 
			
		||||
                            self.menuOffset = max(0, min(menuWidth, newOffset))
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                    .onEnded { gesture in
 | 
			
		||||
                        if !isSideMenuPresented && gesture.startLocation.x > 60 { return }
 | 
			
		||||
                        if !isMessengerModeEnabled {
 | 
			
		||||
                            if !isSideMenuPresented && gesture.startLocation.x > 60 { return }
 | 
			
		||||
                            
 | 
			
		||||
                        let threshold = menuWidth * 0.4
 | 
			
		||||
                            let threshold = menuWidth * 0.4
 | 
			
		||||
                            
 | 
			
		||||
                        withAnimation(.easeInOut) {
 | 
			
		||||
                            if self.menuOffset > threshold {
 | 
			
		||||
                                isSideMenuPresented = true
 | 
			
		||||
                            } else {
 | 
			
		||||
                                isSideMenuPresented = false
 | 
			
		||||
                            withAnimation(.easeInOut) {
 | 
			
		||||
                                if self.menuOffset > threshold {
 | 
			
		||||
                                    isSideMenuPresented = true
 | 
			
		||||
                                } else {
 | 
			
		||||
                                    isSideMenuPresented = false
 | 
			
		||||
                                }
 | 
			
		||||
                                // Устанавливаем финальное смещение после анимации
 | 
			
		||||
                                self.menuOffset = isSideMenuPresented ? menuWidth : 0
 | 
			
		||||
                            }
 | 
			
		||||
                            // Устанавливаем финальное смещение после анимации
 | 
			
		||||
                            self.menuOffset = isSideMenuPresented ? menuWidth : 0
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
            )
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user