summaryrefslogtreecommitdiff
path: root/Source
AgeCommit message (Collapse)Author
2026-05-19Game digest progress dialogTom Pratt
We just about get away with using a StateFlow in NetplaySession since the host sends AbortGameDigest when closing their own dialog. Without that it would be harder for the UI to distinguish between subsequent dialogs. If that wasn't the case then NetplaySession might need to expose the individual progress and result updates and have the view model assemble it into the overall GameDigestProgress.
2026-05-19Handle desync messagesTom Pratt
Show them in the chat window and also in a toast during game play.
2026-05-19Make NetplaySession not a singletonTom Pratt
Create a new NetplaySession each time we try to join a netplay game. Hold onto it in NetplayManager so its available to the different activities that need to access it. Close the session when backing out of the netplay UI. Some guardrails in case things go out of sync: creating a session closes the old one if it is still around for some reason, finalizer in NetplaySession to release native resources if not closed explicitly for some reason. Profiling done to ensure all kotlin and native objects are successfully cleared / garbage collected.
2026-05-19Use existing settings API instead of custom jni callsTom Pratt
2026-05-19Show save transfer progressTom Pratt
When transferring saves from the host. Equivalent of ChunkedProgressDialog in QT.
2026-05-19Dont try to load temporary save states when launching netplayTom Pratt
An orientation change can trigger this code path immediately when a game starts. e.g. dolphin is portrait when launching the game but settings force gameplay to landscape. We want to avoid this and continue to the netplay launch code below. If the user backgrounds dolphin during netplay and then resumes after the process has died it will actually resume from the save state in single player mode, not sure if thats good or bad but fine for now. Netplay doesnt handle rotation very well, seems to go more and more out of sync the more rotations.
2026-05-19Release boot session data during Netplay cleanupTom Pratt
Boot session data is already handled when the game is booted so this is just fallback in case the game launch fails in some weird way. Add missing @Keep annotations to functions called from C++
2026-05-19Implement OnConnectionLost, show a dialog on the main netplay screen forcing ↵Tom Pratt
the user to exit
2026-05-19Implement StopGame callback and use it to finish the emulation activityTom Pratt
2026-05-19Settings refactorTom Pratt
Remove the big saveSetup function and set individual settings immediately after being changed in the UI. Group them all under Netplay.Settings
2026-05-19Max bufferTom Pratt
2026-05-19Put players table in an OutlinedBox, makes the UI look more consistent.Tom Pratt
2026-05-19Implement more NetPlayUICallbacksTom Pratt
Includes chat, game changes, pad buffer changes and host input authority. Merges them all into the chat window.
2026-05-19Netplay chat UITom Pratt
2026-05-19Implement player listTom Pratt
2026-05-19Reorder netplay classTom Pratt
Put all the boring settings at the bottom to reduce scrolling!
2026-05-19Add mostly empty Netplay screen, equivalent of NetPlayDialog in QT.Tom Pratt
All it can do at this point is quit the current netplay session when backing out of this screen.
2026-05-19Move NetplaySetupScreen to its own fileTom Pratt
2026-05-19Show client connection errors and handle connection resultTom Pratt
If result is a success sent event to launch the next netplay screen. if it fails, clear up the netplay client
2026-05-19Store netplay BootSessionData and use it to run the netplay gameTom Pratt
2026-05-19Pass game list to NetPlayUICallbacks and implement OnMsgChangeGame, ↵Tom Pratt
OnMsgStartGame, FindGameFile
2026-05-19Add NetPlayClient join and stub NetPlayUICallbacksTom Pratt
2026-05-19Add Netplay settings JNI layer and wire up NetplaySetupViewModelTom Pratt
2026-05-19Netplay setup UITom Pratt
Only for connecting, no hosting yet.
2026-05-19Add compose dependencies for Android and empty NetplaySetupActivityTom Pratt
Derive compose colour theming from the existing XML styles already set at the activity level.
2026-05-15IOS/Network: reduce log verbosity of SO_EAGAIN to info levelTillmann Karras
Otherwise IOCTL_SO_ACCEPT is very noisy until a client connects.
2026-05-14AudioCommon: Add individual Wiimote audio mixerWeston Heard
Also incremented STATE_VERSION.
2026-05-13fixes: make dolreader validate section addresses and sizesDacoTaco
IOS and IPL reject non-32byte aligned sections
2026-05-12Merge pull request #14635 from JosJuice/android-panic-log-crashDentomologist
Android: Move alert message log from Kotlin to C++
2026-05-12PPCAnalyst: Split "in use" analysis into reads and writesJosJuice
If the last write to a register comes before the last read of it, we can write the register to ppcState after the last write instead of after the last read. This will hopefully help spread out m_ppc_state writes across a code block, improving pipelining. Also, if there's a conditional branch that's after the last write but before the last read, instead of needing to emit one m_ppc_state write on each side of the branch, we now only need to emit one m_ppc_state write. A note about the changes made to stmw and mfcr: These instructions don't write to any GPRs or CRs respectively – they only read from them. With this commit, there are no longer any cases where registers get written back to m_ppc_state after an instruction that just reads from them, so we can get rid of all STP logic from these two instructions. lmw still needs its STP logic, since that one does write to registers.
2026-05-11Merge pull request #14592 from jordan-woyak/memcard-manager-scrollingAdmiral H. Curtiss
DolphinQt/GCMemcardManager: Set ScrollMode::ScrollPerPixel to make scrolling behavior less annoying.
2026-05-11Merge pull request #14613 from JosJuice/wad-tmd-checksAdmiral H. Curtiss
DiscIO: Add extra IsValid checks for VolumeWAD::m_tmd
2026-05-08Android: Move alert message log from Kotlin to C++JosJuice
For some reason, NativeLibrary.kt calling Log for the alert message text makes Dolphin die with a JNI error. Supposedly the jstring passed to the logging function is invalid. I don't understand why, because the dialog that we show right afterwards is able to read the string just fine. The error happens even if I pass the string directly to Log without prepending any extra text. There's no real downside to having the logging in C++ instead of Kotlin, so let's move it to C++ to avoid the JNI error.
2026-05-07Merge pull request #14634 from JosJuice/jitarm64-msr-dr-bitDentomologist
JitArm64: Fix DR check in MSRUpdated
2026-05-07Merge pull request #14629 from Simonx22/android/convert-tvutil-to-kotlinDentomologist
Android: Convert TvUtil to Kotlin
2026-05-07Merge pull request #14645 from ↵JosJuice
Dentomologist/msghandler_use_more_suitable_log_levels MsgHandler: Use LogLevel matching MsgType for alerts
2026-05-07Core: Implement automatic symbol demanglingAmber Brault
2026-05-06Merge pull request #14644 from tom-pratt/fix_do_all_players_have_gameDentomologist
DoAllPlayersHaveSameGame returns correct result instead of always true
2026-05-06Merge pull request #14632 from vladfi1/upstream-pipe-inputs-fixDentomologist
Unconditionally lock in ControllerInterface::UpdateInput
2026-05-06Unconditionally lock in ControllerInterface::UpdateInput.Vlad Firoiu
2026-05-06MsgHandler: Use log level matching MsgType for alertsDentomologist
When calling `ShowMessageAlert` with a given `MsgType`, log the alert with a `LogLevel` matching the `MsgType` instead of always using `LogLevel::LERROR`.
2026-05-06DoAllPlayersHaveSameGame returns correct result instead of always trueTom Pratt
SendGameStatus() was writing SyncIdentifierComparison as a u32 but the server reads it as a u8 enum, so the server always gets 0 (SameGame). This bug was introduced in commit 66276ac.
2026-05-05Merge pull request #14532 from Dentomologist/autoupdatechecker_fix_edge_casesDentomologist
AutoUpdateChecker: Fix Edge Cases
2026-05-05Merge pull request #14642 from SuperSamus/cpp-move-fixup-nocubebJordan Woyak
Fixup #14565 (compilation with `-DENABLE_CUBEB=OFF`)
2026-05-05Fixup #14565 (compilation with `-DENABLE_CUBEB=OFF`)Martino Fontana
2026-05-03Replace some [[maybe_unused]] annotations with commented namesDentomologist
Remove the [[maybe_unused]] annotation from various parameters that are unconditionally unused and comment out their names instead. This makes it unambiguous that the variables are unused, while making the remaining [[maybe_unused]] annotations more reliable indicators that those variables are in fact used in some contexts. These parameters are mostly in overridden functions where the override doesn't need that particular variable.
2026-05-01Merge pull request #14628 from JosJuice/android-remove-hostthreadlockJordan Woyak
Android: Remove HostThreadLock
2026-05-01JitArm64: Fix DR check in MSRUpdatedJosJuice
TBZ takes the index of the bit to test, not a LogicalImm.
2026-04-30Merge pull request #14384 from ethanuppal/editdsuserversJordan Woyak
Config: Add Edit button to DSU server menu
2026-04-30Android: Convert DirectoryInitialization to KotlinSimonx22