forked from eden-emu/eden
		
	android: Support dynamic app shortcuts
This commit is contained in:
		
							parent
							
								
									c9d85211fe
								
							
						
					
					
						commit
						6cd58e9bd3
					
				
					 1 changed files with 21 additions and 0 deletions
				
			
		|  | @ -3,6 +3,8 @@ | |||
| 
 | ||||
| package org.yuzu.yuzu_emu.adapters | ||||
| 
 | ||||
| import android.content.Intent | ||||
| import android.graphics.drawable.BitmapDrawable | ||||
| import android.net.Uri | ||||
| import android.text.TextUtils | ||||
| import android.view.LayoutInflater | ||||
|  | @ -11,6 +13,9 @@ import android.view.ViewGroup | |||
| import android.widget.ImageView | ||||
| import android.widget.Toast | ||||
| import androidx.appcompat.app.AppCompatActivity | ||||
| import androidx.core.content.pm.ShortcutInfoCompat | ||||
| import androidx.core.content.pm.ShortcutManagerCompat | ||||
| import androidx.core.graphics.drawable.IconCompat | ||||
| import androidx.documentfile.provider.DocumentFile | ||||
| import androidx.lifecycle.ViewModelProvider | ||||
| import androidx.navigation.findNavController | ||||
|  | @ -22,6 +27,7 @@ import androidx.recyclerview.widget.RecyclerView | |||
| import org.yuzu.yuzu_emu.HomeNavigationDirections | ||||
| import org.yuzu.yuzu_emu.R | ||||
| import org.yuzu.yuzu_emu.YuzuApplication | ||||
| import org.yuzu.yuzu_emu.activities.EmulationActivity | ||||
| import org.yuzu.yuzu_emu.adapters.GameAdapter.GameViewHolder | ||||
| import org.yuzu.yuzu_emu.databinding.CardGameBinding | ||||
| import org.yuzu.yuzu_emu.model.Game | ||||
|  | @ -77,6 +83,21 @@ class GameAdapter(private val activity: AppCompatActivity) : | |||
|             ) | ||||
|             .apply() | ||||
| 
 | ||||
|         val openIntent = Intent(YuzuApplication.appContext, EmulationActivity::class.java).apply { | ||||
|             action = Intent.ACTION_VIEW | ||||
|             data = Uri.parse(holder.game.path) | ||||
|         } | ||||
|         val shortcut = ShortcutInfoCompat.Builder(YuzuApplication.appContext, holder.game.path) | ||||
|             .setShortLabel(holder.game.title) | ||||
|             .setIcon( | ||||
|                 IconCompat.createWithBitmap( | ||||
|                     (holder.binding.imageGameScreen.drawable as BitmapDrawable).bitmap | ||||
|                 ) | ||||
|             ) | ||||
|             .setIntent(openIntent) | ||||
|             .build() | ||||
|         ShortcutManagerCompat.pushDynamicShortcut(YuzuApplication.appContext, shortcut) | ||||
| 
 | ||||
|         val action = HomeNavigationDirections.actionGlobalEmulationActivity(holder.game) | ||||
|         view.findNavController().navigate(action) | ||||
|     } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Charles Lombardo
						Charles Lombardo