summaryrefslogtreecommitdiffstats
path: root/src/core/frontend (follow)
Commit message (Collapse)AuthorAgeFilesLines
* frontend: Set minimum window size to 640x360 instead of 1280x720 (#3413)Morph2020-05-152-1/+6
|
* CMakeLists: Specify -Wextra on linux buildsLioncash2020-04-161-1/+1
| | | | | | | | | | | Allows reporting more cases where logic errors may exist, such as implicit fallthrough cases, etc. We currently ignore unused parameters, since we currently have many cases where this is intentional (virtual interfaces). While we're at it, we can also tidy up any existing code that causes warnings. This also uncovered a few bugs as well.
* yuzu: Drop SDL2 and Qt frontend Vulkan requirementsReinUsesLisp2020-04-071-5/+36
| | | | Create Vulkan instances and surfaces from the Vulkan backend.
* Address review and fix broken yuzu-tester buildJames Rowe2020-03-261-1/+1
|
* Frontend/GPU: Refactor context managementJames Rowe2020-03-253-57/+28
| | | | | | | | | | | | | | | | | | | | Changes the GraphicsContext to be managed by the GPU core. This eliminates the need for the frontends to fool around with tricky MakeCurrent/DoneCurrent calls that are dependent on the settings (such as async gpu option). This also refactors out the need to use QWidget::fromWindowContainer as that caused issues with focus and input handling. Now we use a regular QWidget and just access the native windowHandle() directly. Another change is removing the debug tool setting in FrameMailbox. Instead of trying to block the frontend until a new frame is ready, the core will now take over presentation and draw directly to the window if the renderer detects that its hooked by NSight or RenderDoc Lastly, since it was in the way, I removed ScopeAcquireWindowContext and replaced it with a simple subclass in GraphicsContext that achieves the same result
* framebuffer_layout.h: drop the use of enum for screen dimensions.Vitor Kiguchi2020-03-112-10/+10
| | | | +clang format
* renderer_opengl: Move Frame/FrameMailbox to OpenGL namespace.bunnei2020-02-271-41/+0
|
* core: frontend: Refactor scope_acquire_window_context to scope_acquire_context.bunnei2020-02-263-23/+23
|
* frontend: sdl2: emu_window: Implement separate presentation thread.bunnei2020-02-261-3/+0
|
* renderer_opengl: Add texture mailbox support for presenter thread.bunnei2020-02-261-0/+1
|
* core: frontend: emu_window: Add TextureMailbox class.bunnei2020-02-261-0/+41
|
* Add 4:3 aspect ratio and address feedbackMorph2020-02-142-10/+13
|
* Address feedbackMorph2020-02-142-18/+26
|
* Use enumeration instead of magic numbersMorph2020-02-142-5/+11
|
* Add following aspect ratios: 16:9, 21:9, Stretch to WindowMorph2020-02-141-2/+15
| | | | Available as a drop down within the configure graphics tab.
* Merge pull request #3337 from ReinUsesLisp/vulkan-stagedbunnei2020-02-031-0/+7
|\ | | | | yuzu: Implement Vulkan frontend
| * yuzu: Implement Vulkan frontendReinUsesLisp2020-01-291-0/+7
| | | | | | | | | | Adds a Qt and SDL2 frontend for Vulkan. It also finishes the missing bits on Vulkan initialization.
* | Moved analog direction logic to sdl_implCJBok2020-01-151-0/+10
|/
* general_frontend: Add documentation for parental controls and ecommerce appletsZach Hilman2019-06-252-4/+32
|
* frontend: Add base class and default impl for ECommerce applet frontendZach Hilman2019-06-252-0/+102
|
* web_browser: Rename OpenPage to OpenPageLocalZach Hilman2019-06-252-7/+7
| | | This is more representative of what actually occurs, as web does support remote URLs which wouldn't need a romfs callback. This paves for easy future support of this with a call like 'OpenPageRemote' or similar.
* frontend: Add base class and default impl of parent controls applet frontendZach Hilman2019-06-252-1/+52
|
* yuzu/bootmanager: Treat the resolution factor as a u32Lioncash2019-06-032-13/+21
| | | | | | | | | Treating it as a u16 can result in a sign-conversion warning when performing arithmetic with it, as u16 promotes to an int when aritmetic is performed on it, not unsigned int. This also makes the interface more uniform, as the layout interface now operates on u32 across the board.
* Merge pull request #1931 from DarkLordZach/mii-database-1bunnei2019-05-302-7/+6
|\ | | | | mii: Implement MiiManager backend and several mii service commands
| * profile_select: Port Service::Account::UUID to Common::UUIDZach Hilman2019-04-252-7/+6
| |
* | emu_window: Pass OnMinimalClientAreaChangeRequest argument by copyReinUsesLisp2019-05-261-2/+1
| | | | | | | | | | There's no performance improvement in passing an unsigned pair by reference.
* | core/frontend/emu_window: Make GraphicsContext's destructor virtualLioncash2019-05-042-0/+4
|/ | | | | This class is used in a polymorphic context, so destruction of the context will lead to undefined behavior if the destructor isn't virtual.
* web_browser: Make OpenPage non-constZach Hilman2019-04-172-3/+3
|
* main: Add GMainWindow hooks for Error displayZach Hilman2019-04-171-1/+1
|
* general_frontend: Add frontend scaffold for PhotoViewer appletZach Hilman2019-04-172-0/+55
|
* frontend: Add frontend receiver for Error appletZach Hilman2019-04-172-0/+71
|
* web_browser: Make OpenPage constZach Hilman2019-04-172-3/+3
|
* Merge pull request #2017 from jroweboy/glwidgetbunnei2019-04-141-9/+30
|\ | | | | Frontend: Migrate to QOpenGLWindow and support shared contexts
| * QT Frontend: Migrate to QOpenGLWindowJames Rowe2019-01-221-9/+30
| |
* | general: Use deducation guides for std::lock_guard and std::unique_lockLioncash2019-04-011-3/+3
| | | | | | | | | | | | | | Since C++17, the introduction of deduction guides for locking facilities means that we no longer need to hardcode the mutex type into the locks themselves, making it easier to switch mutex types, should it ever be necessary in the future.
* | Merge pull request #2170 from lioncash/emu-windowbunnei2019-02-272-2/+2
|\ \ | | | | | | core/frontend/emu_window: Make ClipToTouchScreen a const member function
| * | core/frontend/emu_window: Make ClipToTouchScreen a const member functionLioncash2019-02-272-2/+2
| | | | | | | | | | | | | | | This member function doesn't modify instance state, so it can have the const specifier applied to it.
* | | common/math_util: Move contents into the Common namespaceLioncash2019-02-272-7/+7
| | | | | | | | | | | | | | | These types are within the common library, so they should be within the Common namespace.
* | | common/vector_math: Move Vec[x] types into the Common namespaceLioncash2019-02-271-1/+1
|/ / | | | | | | | | These types are within the common library, so they should be using the Common namespace.
* / frontend: Refactor ScopeAcquireWindowContext out of renderer_opengl.bunnei2019-01-242-0/+41
|/
* core/frontend/applets/web_browser: Make OpenPage() non-constLioncash2019-01-172-3/+3
| | | | | | | | This is a function that definitely doesn't always have a non-modifying behavior across all implementations, so this should be made non-const. This gets rid of the need to mark data members as mutable to work around the fact mutating data members needs to occur.
* frontend: Add frontend responder for web browserZach Hilman2018-12-282-0/+52
|
* Merge pull request #1886 from FearlessTobi/port-4164bunnei2018-12-232-0/+22
|\ | | | | Port citra-emu/citra#4164: "citra_qt, video_core: Screenshot functionality"
| * yuzu, video_core: Screenshot functionalityzhupengfei2018-12-182-0/+22
| | | | | | | | Allows capturing screenshot at the current internal resolution (native for software renderer), but a setting is available to capture it in other resolutions. The screenshot is saved to a single PNG in the current layout.
* | frontend: Add frontend applet for ProfileSelectZach Hilman2018-12-032-0/+46
|/ | | Responsible for selecting a profile and firing callback upon completion.
* Merge pull request #1667 from DarkLordZach/swkbdbunnei2018-11-202-0/+83
|\ | | | | am: Implement HLE software keyboard applet
| * applet: Add operation completed callbackZach Hilman2018-11-182-3/+7
| |
| * software_keyboard: Make GetText asynchronousZach Hilman2018-11-182-5/+9
| | | | | | | | a
| * am: Allow applets to push multiple and different channels of dataZach Hilman2018-11-182-8/+7
| |
| * am: Implement ILibraryAppletAccessor IsCompleted and GetResultZach Hilman2018-11-181-0/+1
| |
| * am: Implement text check software keyboard modeZach Hilman2018-11-182-0/+8
| | | | | | | | Allows the game to verify and send a message to the frontend.
| * am: Deglobalize software keyboard appletZach Hilman2018-11-182-31/+36
| |
| * qt/main: Register Qt Software Keyboard frontend with AMZach Hilman2018-11-181-0/+1
| | | | | | | | Allows using Qt provider over default.
| * frontend/applets: Add frontend software keyboard provider and defaultZach Hilman2018-11-182-0/+61
| | | | | | Default implementation will return "yuzu" for any string. GUI clients (or CLI) can implement the Frontend::SoftwareKeyboardApplet class and register an instance to provide functionality.
* | settings: Add Native type for mouse buttonsZach Hilman2018-11-191-0/+7
|/
* emu_window: Ensure WindowConfig members are always initializedLioncash2018-08-151-3/+3
| | | | | Previously we weren't always initializing all members of the struct. Prevents potentially wonky behavior from occurring.
* core: Namespace EmuWindowLioncash2018-08-122-0/+8
| | | | Gets the class out of the global namespace.
* Rename logging macro back to LOG_*James Rowe2018-07-031-3/+3
|
* core: Replace remaining old non-generic logger usages with fmt-capable equivalentsLioncash2018-04-261-3/+3
| | | | | | LOG_GENERIC usages will be amended in a follow-up to keep API changes separate from interface changes, as it will require removing a parameter from the relevant function in the VMManager class.
* yuzu: Update license text to be consistent across project.bunnei2018-01-132-2/+2
|
* core: Fix recent GCC build breaks.bunnei2018-01-121-0/+2
|
* frontend: Update for undocked Switch screen layout.bunnei2018-01-114-251/+39
|
* hle: Remove a large amount of 3ds-specific service code.bunnei2017-10-106-204/+0
|
* Merge pull request #2899 from wwylele/touch-refactorbunnei2017-08-293-39/+69
|\ | | | | Refactor touch input into a TouchDevice
| * EmuWindow: refactor touch input into a TouchDevicewwylele2017-08-242-39/+63
| |
| * HID: use TouchDevice for touch padwwylele2017-08-241-0/+6
| |
* | SidebySide Layout (#2859)ThaMighty902017-08-253-1/+49
|/ | | | | | | | | | | | | | | | | | | | | | * added a SidebySide Layout * Reworked, so both screen have the same height and cleaned up screen translates. * added the option in the UI, hope this is the right way to do it. formated framebuffer_layout.cpp * delete the x64 files * deleted ui_configure_graphics.h * added Option for the Layout in the xml * got rid of SIDE_BY_SIDE_ASPECT_RATIO because it was useless. pulled translate into variables * changed shift variables to u32 and moved them in their respective branch. remove notr="true" for the Screen layout drop down * reworked intends :). changed function description for SideFrameLayout * some description reworking
* move MotionEmu from core/frontend to input_common as a InputDevicewwylele2017-08-115-252/+4
|
* HID: use MotionDevice for Accelerometer and Gyroscopewwylele2017-08-111-0/+20
|
* Move screen size constants from video_core to coreYuri Kunde Schlesner2017-05-283-13/+24
| | | | | video_core didn't even properly use them, and they were the source of many otherwise-unnecessary dependencies from core to video_core.
* Move framebuffer_layout from Common to CoreYuri Kunde Schlesner2017-05-283-1/+213
| | | | | | This removes a dependency inversion between core and common. It's also the proper place for the file since it makes screen layout decisions specific to the 3DS.
* Merge pull request #2512 from SonofUgly/custom-layoutbunnei2017-03-221-11/+15
|\ | | | | Add custom layout settings.
| * Add custom layout settings.SonofUgly2017-02-231-11/+15
| |
* | Input: remove unused stuff & clean upwwylele2017-03-014-322/+1
| | | | | | | | | | | | | | 1. removed zl, zr and c-stick from HID::PadState. They are handled by IR, not HID 2. removed button handling in EmuWindow 3. removed key_map 4. cleanup #include
* | InputCommon: add Keyboardwwylele2017-03-011-2/+0
| |
* | HID: use AnalogDevicewwylele2017-03-011-0/+7
| |
* | HID: use ButtonDevicewwylele2017-03-011-0/+6
| |
* | Input: add device and factory templatewwylele2017-03-011-0/+97
| |
* | Doxygen: Amend minor issues (#2593)Mat M2017-02-271-2/+2
| | | | | | | | | | | | | | | | | | Corrects a few issues with regards to Doxygen documentation, for example: - Incorrect parameter referencing. - Missing @param tags. - Typos in @param tags. and a few minor other issues.
* | Core: Make PerfStats internally lockedYuri Kunde Schlesner2017-02-271-1/+1
| | | | | | | | More ergonomic to use and will be required for upcoming changes.
* | PerfStats: Add method to get the instantaneous time ratioYuri Kunde Schlesner2017-02-271-3/+2
| |
* | hid: remove the touch field from PadState (#2557)Weiyi Wang2017-02-111-2/+0
| |
* | Merge pull request #2368 from wwylele/camera-2Yuri Kunde Schlesner2017-01-306-0/+204
|\ \ | | | | | | CAM: build the service framework with a dummy implementation
| * | CAM: implement basic camera functions with a blank camerawwylele2017-01-116-0/+204
| | |
* | | core: emu_window.cpp, fix conversion warnings from float to s16 on MSVCKloen2017-01-291-6/+6
| |/ |/|
* | Frontend: make motion sensor interfaced thread-safewwylele2016-12-292-2/+8
| |
* | Frontend: emulate motion sensorwwylele2016-12-264-8/+204
|/
* core: Move emu_window and key_map into coreMerryMage2016-12-234-0/+642
* Removes circular dependences (common should not depend on core)