mediaplayer from SessionScreen.kt instead of MainActivity.kt
This commit is contained in:
		
							parent
							
								
									addfb7e126
								
							
						
					
					
						commit
						9c105f96a9
					
				
					 2 changed files with 9 additions and 9 deletions
				
			
		|  | @ -48,7 +48,7 @@ class MainActivity : ComponentActivity() { | |||
| 
 | ||||
|     override fun onStop() { | ||||
|         onTimerInvisible = lifecycleScope.launch { | ||||
|             InvisibleSessionManager.updateTimer(mediaPlayer) | ||||
|             InvisibleSessionManager.updateTimer() | ||||
|         } | ||||
|         super.onStop() | ||||
|     } | ||||
|  |  | |||
|  | @ -47,7 +47,7 @@ fun SessionScreen( | |||
|     mediaplayer.isLooping = false | ||||
| 
 | ||||
|     // evt mediaplayer meegeven vanaf hier als reserve oplossing | ||||
|     InvisibleSessionManager.setNewViewModel(viewModel = viewModel) | ||||
|     InvisibleSessionManager.setParameters(viewModel = viewModel, mediaplayer = mediaplayer) | ||||
| 
 | ||||
|     Column( | ||||
|        modifier = Modifier.padding(10.dp) | ||||
|  | @ -153,25 +153,25 @@ private fun Timer(viewModel: SessionViewModel = hiltViewModel(), mediaplayer: Me | |||
| } | ||||
| 
 | ||||
| object InvisibleSessionManager { | ||||
|     lateinit var viewModel: SessionViewModel | ||||
|     private lateinit var viewModel: SessionViewModel | ||||
|     private lateinit var mediaplayer: MediaPlayer | ||||
|     var isSession: Boolean = false | ||||
| 
 | ||||
|     fun setNewViewModel(viewModel: SessionViewModel) { | ||||
|     fun setParameters(viewModel: SessionViewModel, mediaplayer: MediaPlayer) { | ||||
|         isSession = true | ||||
|         this.viewModel = viewModel | ||||
|         this.mediaplayer = mediaplayer | ||||
|     } | ||||
| 
 | ||||
|     suspend fun updateTimer(mediaPlayer: MediaPlayer?) { | ||||
|     suspend fun updateTimer() { | ||||
|         if (isSession) { | ||||
|             while (true) { | ||||
|                 delay(1.seconds) | ||||
|                 viewModel.getTimer().tick() | ||||
|                 if (viewModel.getTimer().hasCurrentCountdownEnded() && !viewModel.getTimer().hasEnded()) { | ||||
|                     mediaPlayer?.start() | ||||
|                     mediaplayer.start() | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
| } | ||||
		Reference in a new issue
	
	 Rune Dyselinck
						Rune Dyselinck