forked from eden-emu/eden
		
	android: Release touch on input overlay when opening in-game menu
This commit is contained in:
		
							parent
							
								
									43334d6afb
								
							
						
					
					
						commit
						87f3232ae9
					
				
					 1 changed files with 28 additions and 0 deletions
				
			
		|  | @ -15,6 +15,7 @@ import android.net.Uri | ||||||
| import android.os.Bundle | import android.os.Bundle | ||||||
| import android.os.Handler | import android.os.Handler | ||||||
| import android.os.Looper | import android.os.Looper | ||||||
|  | import android.os.SystemClock | ||||||
| import android.view.* | import android.view.* | ||||||
| import android.widget.TextView | import android.widget.TextView | ||||||
| import android.widget.Toast | import android.widget.Toast | ||||||
|  | @ -25,6 +26,7 @@ import androidx.core.graphics.Insets | ||||||
| import androidx.core.view.ViewCompat | import androidx.core.view.ViewCompat | ||||||
| import androidx.core.view.WindowInsetsCompat | import androidx.core.view.WindowInsetsCompat | ||||||
| import androidx.drawerlayout.widget.DrawerLayout | import androidx.drawerlayout.widget.DrawerLayout | ||||||
|  | import androidx.drawerlayout.widget.DrawerLayout.DrawerListener | ||||||
| import androidx.fragment.app.Fragment | import androidx.fragment.app.Fragment | ||||||
| import androidx.fragment.app.activityViewModels | import androidx.fragment.app.activityViewModels | ||||||
| import androidx.lifecycle.Lifecycle | import androidx.lifecycle.Lifecycle | ||||||
|  | @ -156,6 +158,32 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback { | ||||||
|         binding.showFpsText.setTextColor(Color.YELLOW) |         binding.showFpsText.setTextColor(Color.YELLOW) | ||||||
|         binding.doneControlConfig.setOnClickListener { stopConfiguringControls() } |         binding.doneControlConfig.setOnClickListener { stopConfiguringControls() } | ||||||
| 
 | 
 | ||||||
|  |         binding.drawerLayout.addDrawerListener(object : DrawerListener { | ||||||
|  |             override fun onDrawerSlide(drawerView: View, slideOffset: Float) { | ||||||
|  |                 binding.surfaceInputOverlay.dispatchTouchEvent( | ||||||
|  |                     MotionEvent.obtain( | ||||||
|  |                         SystemClock.uptimeMillis(), | ||||||
|  |                         SystemClock.uptimeMillis() + 100, | ||||||
|  |                         MotionEvent.ACTION_UP, | ||||||
|  |                         0f, | ||||||
|  |                         0f, | ||||||
|  |                         0 | ||||||
|  |                     ) | ||||||
|  |                 ) | ||||||
|  |             } | ||||||
|  | 
 | ||||||
|  |             override fun onDrawerOpened(drawerView: View) { | ||||||
|  |                 // No op | ||||||
|  |             } | ||||||
|  | 
 | ||||||
|  |             override fun onDrawerClosed(drawerView: View) { | ||||||
|  |                 // No op | ||||||
|  |             } | ||||||
|  | 
 | ||||||
|  |             override fun onDrawerStateChanged(newState: Int) { | ||||||
|  |                 // No op | ||||||
|  |             } | ||||||
|  |         }) | ||||||
|         binding.drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED) |         binding.drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED) | ||||||
|         binding.inGameMenu.getHeaderView(0).findViewById<TextView>(R.id.text_game_title).text = |         binding.inGameMenu.getHeaderView(0).findViewById<TextView>(R.id.text_game_title).text = | ||||||
|             game.title |             game.title | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Charles Lombardo
						Charles Lombardo