diff options
author | bunnei <bunneidev@gmail.com> | 2021-02-14 09:20:41 +0100 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2021-02-14 09:20:41 +0100 |
commit | eae9f2e4404f6bdf8a192bc9c09e53cd87e4359d (patch) | |
tree | 3f5cfe0d7067853437249cd167e79d9299c984b1 /src/yuzu_cmd/emu_window/emu_window_sdl2.cpp | |
parent | Merge pull request #5925 from ReinUsesLisp/resource-pool-clean (diff) | |
download | yuzu-eae9f2e4404f6bdf8a192bc9c09e53cd87e4359d.tar yuzu-eae9f2e4404f6bdf8a192bc9c09e53cd87e4359d.tar.gz yuzu-eae9f2e4404f6bdf8a192bc9c09e53cd87e4359d.tar.bz2 yuzu-eae9f2e4404f6bdf8a192bc9c09e53cd87e4359d.tar.lz yuzu-eae9f2e4404f6bdf8a192bc9c09e53cd87e4359d.tar.xz yuzu-eae9f2e4404f6bdf8a192bc9c09e53cd87e4359d.tar.zst yuzu-eae9f2e4404f6bdf8a192bc9c09e53cd87e4359d.zip |
Diffstat (limited to '')
-rw-r--r-- | src/yuzu_cmd/emu_window/emu_window_sdl2.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp b/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp index 39841aa28..7e391ab89 100644 --- a/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp +++ b/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp @@ -12,6 +12,7 @@ #include "input_common/mouse/mouse_input.h" #include "input_common/sdl/sdl.h" #include "yuzu_cmd/emu_window/emu_window_sdl2.h" +#include "yuzu_cmd/yuzu_icon.h" EmuWindow_SDL2::EmuWindow_SDL2(InputCommon::InputSubsystem* input_subsystem_) : input_subsystem{input_subsystem_} { @@ -194,6 +195,22 @@ void EmuWindow_SDL2::WaitEvent() { } } +void EmuWindow_SDL2::SetWindowIcon() { + SDL_RWops* const yuzu_icon_stream = SDL_RWFromConstMem((void*)yuzu_icon, yuzu_icon_size); + if (yuzu_icon_stream == nullptr) { + LOG_WARNING(Frontend, "Failed to create yuzu icon stream."); + return; + } + SDL_Surface* const window_icon = SDL_LoadBMP_RW(yuzu_icon_stream, 1); + if (window_icon == nullptr) { + LOG_WARNING(Frontend, "Failed to read BMP from stream."); + return; + } + // The icon is attached to the window pointer + SDL_SetWindowIcon(render_window, window_icon); + SDL_FreeSurface(window_icon); +} + void EmuWindow_SDL2::OnMinimalClientAreaChangeRequest(std::pair<unsigned, unsigned> minimal_size) { SDL_SetWindowMinimumSize(render_window, minimal_size.first, minimal_size.second); } |