summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinQt/RenderWidget.cpp
AgeCommit message (Collapse)Author
2026-01-25Remove unused importsMartino Fontana
Yellow squiggly lines begone! Done automatically on .cpp files through `run-clang-tidy`, with manual corrections to the mistakes. If an import is directly used, but is technically unnecessary since it's recursively imported by something else, it is *not* removed. The tool doesn't touch .h files, so I did some of them by hand while fixing errors due to old recursive imports. Not everything is removed, but the cleanup should be substantial enough. Because this done on Linux, code that isn't used on it is mostly untouched. (Hopefully no open PR is depending on these imports...)
2025-05-20DolphinQt/RenderWidget: Grab focus on mouse button press.Jordan Woyak
2024-11-08Replace 'reinterpret_cast' with 'static_cast'Dr. Dystopia
2024-06-21Core: Store current state in less placesJosJuice
Core::GetState reads from four different pieces of state: s_is_stopping, s_hardware_initialized, s_is_booting, and CPUManager::IsStepping. I'm keeping that last one as is for now because there's code in Dolphin that sets it directly, but we can unify the other three to make things easier to reason about. This commit also gets rid of s_is_started. This was previously used in Core::IsRunningAndStarted to ensure true wouldn't be returned until the CPU thread was started, but it wasn't used in Core::GetState, so Core::GetState would happily return State::Running after we had initialized the hardware but before we had initialized the CPU thread. As far as I know, there are no callers that have any real need to know whether the boot process is currently initializing the hardware or the CPU thread. Perhaps once upon a time there was a desire to make the apploader debuggable, but a long time has passed without anyone stepping up to implement it, and the way CBoot::RunApploader is implemented makes it rather difficult. So this commit makes all the functions in Core.cpp consider the core to still be starting until the CPU thread is started.
2024-05-03Core::SetState: Avoid Global System Accessormitaclaw
2024-04-28Remove rounded corners on emulation render windowFiloppi
On Windows 11, when playing windowed in a separate window/widget from the main emulator window, we don't want the window to have rounded corners, as it prevents the corner pixels from being visible
2024-04-08Core::GetState: Avoid Global System Accessormitaclaw
2024-03-01State: Avoid Global System Accessormitaclaw
2024-01-30DolphinQt/RenderWidget: Add comments for SetCursorLocked() on Linux.luc-git
Co-authored-by: Admiral H. Curtiss <pikachu025@gmail.com>
2023-06-11Qt: Send SizeChanged on DPI changesTellowKrinkle
2023-04-03DolphinQt: RenderWidget fix heap-use-after-freeMichael Cook (mackal)
The QByteArray returned by QString::toUtf8() was being freed so the char pointer was pointing to freed memory. Found via ASan, didn't notice any issues during normal runtime. This was triggered after hitting a key combo with alt (ex. toggle fullscreen) probably happens with others
2023-02-09Insert a more solid abstraction between Qt and ImguiScott Mansell
2023-01-31Move Presenting, Dumping and ImGui out of RendererScott Mansell
2022-11-06RenderWidget: Fix random crash due to missing ImGui contextPokechu22
`ImGui::GetIO` performs an assertion that a context exists, and if one doesn't then things will likely crash. Unfortunately this crash is hard to consistently reproduce.
2022-10-25DolphinQt: Fix window focus from unpausing after a manual pause.Jordan Woyak
2022-05-16Merge pull request #8763 from JosJuice/panic-alert-deadlock-gpuAdmiral H. Curtiss
DolphinQt: Fix the panic alert deadlock, dual core edition
2022-05-02Add support for building against Qt 6spycrab
2022-01-13DolphinQt: Fix the panic alert deadlock, GPU thread editionJosJuice
The fix in ef77872 worked for panic alerts from the CPU thread, but there were still problems with panic alerts from the GPU thread in dual core mode. This change attempts to fix those.
2022-01-01RenderWidget: Add include to Windows.hRafaël Kooi
Fixes errors when building with CMake. PCH support is currently broken, however the code shouldn't have a hard dependency on PCH anyway.
2021-12-31Config: Port remaining Interface settings to new config system.Admiral H. Curtiss
2021-12-30Config: Port Input setting to new config system.Admiral H. Curtiss
2021-10-29RenderWidget: Change "imgui.h" to <imgui.h>Pokechu22
This was originally intended to fix https://bugs.dolphin-emu.org/issues/12717 but this ended up not being the issue (instead it seems like files just weren't recompiled when imgui was updated due to MSVC weirdness). Still, using brackets instead of quotes is preferable as this is a library include.
2021-10-12Add option for Never Hide Mouse Cursorsowens99
Instead of having a single GUI checkbox for "Always Hide Mouse Cursor", I have instead opted to use radio buttons so the user can swap between different states of mouse visibility. "Movement" is the default behavior, "Never" will hide the mouse cursor the entire time the game is running, and "Always" will keep the mouse cursor always visible.
2021-10-12Bug: fix unhide on mouse movement only responding to clickssowens99
Previously the unhide of movement mouse_timer reset occurred within case MouseButtonPress. Additionally, there was a redundant expression in the if statement for cursor locking.
2021-10-11Fix switch warning in RenderWidgetFletcher Porter
The compiler was throwing a bunch of `-Wswitch` warnings from RenderWidget because of unhandled branches, so I added a default branch to quiet it.
2021-07-05treewide: convert GPLv2+ license info to SPDX tagsPierre Bourdon
SPDX standardizes how source code conveys its copyright and licensing information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX tags are adopted in many large projects, including things like the Linux kernel.
2021-05-27Implement Cursor Locking and new input focus checks for itFiloppi
2021-03-17RenderWidget: Remove mouse based Free Look since it has moved to the ↵iwubcode
HotkeyScheduler
2020-12-24DolphinQt: Only trigger Free Look mouse movement when the Free Look camera ↵iwubcode
is active
2020-12-16Qt: Fix deprecated use of MidButtonLéo Lam
MidButton has been deprecated since Qt 4.7. The replacement is MiddleButton.
2020-09-15Merge pull request #8819 from JosJuice/panic-alert-deadlock-pause-on-focus-lossJMC47
DolphinQt: Fix the panic alert deadlock, Pause on Focus Loss edition
2020-07-18Use range loop (if possible)Filip Gawin
2020-05-18DolphinQt: Fix the panic alert deadlock, Pause on Focus Loss editionJosJuice
why are there so many ways to trigger this issue
2020-05-03VideoCommon: remove VertexShaderManager functions instead preferring the ↵iwubcode
direct freelook camera methods
2020-03-11Qt/RenderWidget: Remove fill background functionalityStenzek
We no longer need this since the video backend handles clearing the window, and it fixes MoltenVK with Qt 5.14.
2020-01-24Merge pull request #8366 from Techjar/high-dpi-auto-adjustConnor McLaughlin
Qt/RenderWidget: Account for devicePixelRatio when auto-adjusting window size
2019-11-01Qt/RenderWidget: Account for devicePixelRatio when auto-adjusting window sizeTechjar
2019-10-25Qt: Add "renderer" window role to render windowferrrry
2019-10-13Externals/Qt: Update to 5.13.1spycrab
2019-06-01Common/CommonFuncs: Remove now-unneccessary ArraySize functionLioncash
Since C++17, non-member std::size() is present in the standard library which also operates on regular C arrays. Given that, we can just replace usages of ArraySize with that where applicable. In many cases, we can just change the actual C array ArraySize() was called on into a std::array and just use its .size() member function instead. In some other cases, we can collapse the loops they were used in, into a ranged-for loop, eliminating the need for en explicit bounds query.
2019-05-04Use attribute [[fallthrough]]Léo Lam
2019-04-27Fix the screen going black on pause after changing windowsPokechu22
More info: https://zeduckmaster.frama.io/2016/how-to-create-a-custom-rendering-in-a-qt5-widget/
2019-04-21Merge pull request #7841 from iwubcode/config-mgr-onionJMC47
Config: Move the 'Display' settings from ConfigManager to the layered config system
2019-04-17VideoCommon: Change free-look's middle-mouse action to roll the camera.Jordan Woyak
2019-03-30Config: Move the 'Display' settings from ConfigManager to the layered config ↵iwubcode
system
2019-03-21Fix ImGui key mapping Enter to the numpadspycrab
2019-03-04Qt: Use ModalMessageBox everywherespycrab
2019-01-25Merge pull request #7736 from stenzek/imgui-hidpiJosJuice
RenderWidget: Fix mouse position for imgui on hidpi screens
2019-01-25DolphinQt: Fix some warningsspycrab
2019-01-26RenderWidget: Fix mouse position for imgui on hidpi screensStenzek