summaryrefslogtreecommitdiffstats
path: root/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2021-02-14 09:20:41 +0100
committerbunnei <bunneidev@gmail.com>2021-02-14 09:20:41 +0100
commiteae9f2e4404f6bdf8a192bc9c09e53cd87e4359d (patch)
tree3f5cfe0d7067853437249cd167e79d9299c984b1 /src/yuzu_cmd/emu_window/emu_window_sdl2.cpp
parentMerge pull request #5925 from ReinUsesLisp/resource-pool-clean (diff)
downloadyuzu-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 'src/yuzu_cmd/emu_window/emu_window_sdl2.cpp')
-rw-r--r--src/yuzu_cmd/emu_window/emu_window_sdl2.cpp17
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);
}