forked from etc/pineapple-src
early-access version 3875
This commit is contained in:
parent
873a74b74f
commit
0aafabe39c
5 changed files with 32 additions and 14 deletions
|
@ -1,7 +1,7 @@
|
|||
yuzu emulator early access
|
||||
=============
|
||||
|
||||
This is the source code for early-access 3874.
|
||||
This is the source code for early-access 3875.
|
||||
|
||||
## Legal Notice
|
||||
|
||||
|
|
|
@ -5,6 +5,9 @@ package org.yuzu.yuzu_emu.fragments
|
|||
|
||||
import android.app.Dialog
|
||||
import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.Toast
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.fragment.app.DialogFragment
|
||||
|
@ -21,22 +24,40 @@ import org.yuzu.yuzu_emu.model.TaskViewModel
|
|||
class IndeterminateProgressDialogFragment : DialogFragment() {
|
||||
private val taskViewModel: TaskViewModel by activityViewModels()
|
||||
|
||||
private lateinit var binding: DialogProgressBarBinding
|
||||
|
||||
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
|
||||
val titleId = requireArguments().getInt(TITLE)
|
||||
|
||||
val progressBinding = DialogProgressBarBinding.inflate(layoutInflater)
|
||||
progressBinding.progressBar.isIndeterminate = true
|
||||
binding = DialogProgressBarBinding.inflate(layoutInflater)
|
||||
binding.progressBar.isIndeterminate = true
|
||||
val dialog = MaterialAlertDialogBuilder(requireContext())
|
||||
.setTitle(titleId)
|
||||
.setView(progressBinding.root)
|
||||
.setView(binding.root)
|
||||
.create()
|
||||
dialog.setCanceledOnTouchOutside(false)
|
||||
|
||||
if (!taskViewModel.isRunning.value) {
|
||||
taskViewModel.runTask()
|
||||
}
|
||||
return dialog
|
||||
}
|
||||
|
||||
override fun onCreateView(
|
||||
inflater: LayoutInflater,
|
||||
container: ViewGroup?,
|
||||
savedInstanceState: Bundle?
|
||||
): View {
|
||||
return binding.root
|
||||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
viewLifecycleOwner.lifecycleScope.launch {
|
||||
repeatOnLifecycle(Lifecycle.State.CREATED) {
|
||||
taskViewModel.isComplete.collect {
|
||||
if (it) {
|
||||
dialog.dismiss()
|
||||
dismiss()
|
||||
when (val result = taskViewModel.result.value) {
|
||||
is String -> Toast.makeText(requireContext(), result, Toast.LENGTH_LONG)
|
||||
.show()
|
||||
|
@ -51,11 +72,6 @@ class IndeterminateProgressDialogFragment : DialogFragment() {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!taskViewModel.isRunning.value) {
|
||||
taskViewModel.runTask()
|
||||
}
|
||||
return dialog
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
|
|
@ -27,12 +27,12 @@ u32 CommandProcessingTimeEstimatorVersion1::Estimate(
|
|||
|
||||
u32 CommandProcessingTimeEstimatorVersion1::Estimate(
|
||||
const AdpcmDataSourceVersion1Command& command) const {
|
||||
return static_cast<u32>(command.pitch * 0.25f * 1.2f);
|
||||
return static_cast<u32>(command.pitch * 0.46f * 1.2f);
|
||||
}
|
||||
|
||||
u32 CommandProcessingTimeEstimatorVersion1::Estimate(
|
||||
const AdpcmDataSourceVersion2Command& command) const {
|
||||
return static_cast<u32>(command.pitch * 0.25f * 1.2f);
|
||||
return static_cast<u32>(command.pitch * 0.46f * 1.2f);
|
||||
}
|
||||
|
||||
u32 CommandProcessingTimeEstimatorVersion1::Estimate(
|
||||
|
|
|
@ -684,11 +684,11 @@ u64 System::GenerateCommand(std::span<u8> in_command_buffer,
|
|||
sink_context, splitter_context, perf_manager};
|
||||
|
||||
voice_context.SortInfo();
|
||||
command_generator.GenerateVoiceCommands();
|
||||
|
||||
const auto start_estimated_time{drop_voice_param *
|
||||
static_cast<f32>(command_buffer.estimated_process_time)};
|
||||
|
||||
command_generator.GenerateVoiceCommands();
|
||||
command_generator.GenerateSubMixCommands();
|
||||
command_generator.GenerateFinalMixCommands();
|
||||
command_generator.GenerateSinkCommands();
|
||||
|
|
|
@ -752,7 +752,9 @@ bool RegisteredCache::RemoveExistingEntry(u64 title_id) const {
|
|||
for (u8 i = 0; i < 0x10; i++) {
|
||||
const auto meta_dir = dir->CreateDirectoryRelative("yuzu_meta");
|
||||
const auto filename = GetCNMTName(TitleType::Update, title_id + i);
|
||||
removed_data |= meta_dir->DeleteFile(filename);
|
||||
if (meta_dir->GetFile(filename)) {
|
||||
removed_data |= meta_dir->DeleteFile(filename);
|
||||
}
|
||||
}
|
||||
|
||||
return removed_data;
|
||||
|
|
Loading…
Reference in a new issue