mirror of
https://github.com/libretro/RetroArch
synced 2025-04-17 11:43:00 +00:00
(SDL2) Cleanups
This commit is contained in:
parent
4c3fefa2be
commit
e272edc8c0
@ -40,12 +40,6 @@ extern PrintConsole* ctrConsole;
|
||||
extern const u8 ctr_sprite_shbin[];
|
||||
extern const u32 ctr_sprite_shbin_size;
|
||||
|
||||
static const bool bottom_font_enable;
|
||||
static const int bottom_font_color_red;
|
||||
static const int bottom_font_color_green;
|
||||
static const int bottom_font_color_blue;
|
||||
static const int bottom_font_color_opacity;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
float v;
|
||||
@ -73,7 +67,7 @@ typedef enum
|
||||
{
|
||||
CTR_BOTTOM_MENU_NOT_AVAILABLE = 0,
|
||||
CTR_BOTTOM_MENU_DEFAULT,
|
||||
CTR_BOTTOM_MENU_SELECT,
|
||||
CTR_BOTTOM_MENU_SELECT
|
||||
} ctr_bottom_menu;
|
||||
|
||||
typedef struct ctr_video
|
||||
@ -116,23 +110,11 @@ typedef struct ctr_video
|
||||
|
||||
video_viewport_t vp;
|
||||
|
||||
bool rgb32;
|
||||
bool vsync;
|
||||
bool smooth;
|
||||
bool menu_texture_enable;
|
||||
bool menu_texture_frame_enable;
|
||||
unsigned rotation;
|
||||
bool keep_aspect;
|
||||
bool should_resize;
|
||||
bool msg_rendering_enabled;
|
||||
bool supports_parallax_disable;
|
||||
bool enable_3d;
|
||||
|
||||
#ifdef HAVE_OVERLAY
|
||||
struct ctr_overlay_data *overlay;
|
||||
unsigned overlays;
|
||||
bool overlay_enabled;
|
||||
bool overlay_full_screen;
|
||||
#endif
|
||||
|
||||
aptHookCookie lcd_aptHook;
|
||||
@ -140,9 +122,6 @@ typedef struct ctr_video
|
||||
int current_buffer_top;
|
||||
int current_buffer_bottom;
|
||||
|
||||
bool p3d_event_pending;
|
||||
bool ppf_event_pending;
|
||||
volatile bool vsync_event_pending;
|
||||
|
||||
struct
|
||||
{
|
||||
@ -151,20 +130,38 @@ typedef struct ctr_video
|
||||
int size;
|
||||
}vertex_cache;
|
||||
|
||||
int state_slot;
|
||||
u64 idle_timestamp;
|
||||
ctr_bottom_menu bottom_menu;
|
||||
ctr_bottom_menu prev_bottom_menu;
|
||||
struct ctr_bottom_texture_data *bottom_textures;
|
||||
|
||||
volatile bool vsync_event_pending;
|
||||
#ifdef HAVE_OVERLAY
|
||||
bool overlay_enabled;
|
||||
bool overlay_full_screen;
|
||||
#endif
|
||||
bool rgb32;
|
||||
bool vsync;
|
||||
bool smooth;
|
||||
bool menu_texture_enable;
|
||||
bool menu_texture_frame_enable;
|
||||
bool keep_aspect;
|
||||
bool should_resize;
|
||||
bool msg_rendering_enabled;
|
||||
bool supports_parallax_disable;
|
||||
bool enable_3d;
|
||||
bool p3d_event_pending;
|
||||
bool ppf_event_pending;
|
||||
bool init_bottom_menu;
|
||||
bool refresh_bottom_menu;
|
||||
bool render_font_bottom;
|
||||
bool render_state_from_png_file;
|
||||
bool state_data_exist;
|
||||
char state_date[CTR_STATE_DATE_SIZE];
|
||||
int state_slot;
|
||||
bool bottom_check_idle;
|
||||
bool bottom_is_idle;
|
||||
bool bottom_is_fading;
|
||||
u64 idle_timestamp;
|
||||
ctr_bottom_menu bottom_menu;
|
||||
ctr_bottom_menu prev_bottom_menu;
|
||||
struct ctr_bottom_texture_data *bottom_textures;
|
||||
char state_date[CTR_STATE_DATE_SIZE];
|
||||
} ctr_video_t;
|
||||
|
||||
typedef struct ctr_texture
|
||||
|
@ -36,6 +36,12 @@ typedef struct sdl2_tex
|
||||
bool rgb32;
|
||||
} sdl2_tex_t;
|
||||
|
||||
enum sd2l_flags
|
||||
{
|
||||
SDL2_FLAG_QUITTING = (1 << 0),
|
||||
SDL2_FLAG_SHOULD_RESIZE = (1 << 1)
|
||||
};
|
||||
|
||||
typedef struct _sdl2_video
|
||||
{
|
||||
double rotation;
|
||||
@ -57,9 +63,7 @@ typedef struct _sdl2_video
|
||||
uint8_t font_g;
|
||||
uint8_t font_b;
|
||||
|
||||
bool gl;
|
||||
bool quitting;
|
||||
bool should_resize;
|
||||
uint8_t flags;
|
||||
} sdl2_video_t;
|
||||
|
||||
void sdl2_set_handles(void *data, enum rarch_display_type
|
||||
|
@ -276,7 +276,7 @@ static void sdl_refresh_viewport(sdl2_video_t *vid)
|
||||
}
|
||||
}
|
||||
|
||||
vid->should_resize = false;
|
||||
vid->flags &= ~SDL2_FLAG_SHOULD_RESIZE;
|
||||
|
||||
sdl_refresh_renderer(vid);
|
||||
}
|
||||
@ -399,7 +399,7 @@ static void *sdl2_gfx_init(const video_info_t *video,
|
||||
|
||||
vid->video = *video;
|
||||
vid->video.smooth = video->smooth;
|
||||
vid->should_resize = true;
|
||||
vid->flags |= SDL2_FLAG_SHOULD_RESIZE;
|
||||
|
||||
sdl_tex_zero(&vid->frame);
|
||||
sdl_tex_zero(&vid->menu);
|
||||
@ -456,14 +456,13 @@ static void check_window(sdl2_video_t *vid)
|
||||
switch (event.type)
|
||||
{
|
||||
case SDL_QUIT:
|
||||
vid->quitting = true;
|
||||
vid->flags |= SDL2_FLAG_QUITTING;
|
||||
break;
|
||||
|
||||
case SDL_WINDOWEVENT:
|
||||
if (event.window.event == SDL_WINDOWEVENT_RESIZED)
|
||||
vid->should_resize = true;
|
||||
vid->flags |= SDL2_FLAG_SHOULD_RESIZE;
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@ -480,7 +479,7 @@ static bool sdl2_gfx_frame(void *data, const void *frame, unsigned width,
|
||||
bool menu_is_alive = video_info->menu_is_alive;
|
||||
#endif
|
||||
|
||||
if (vid->should_resize)
|
||||
if (vid->flags & SDL2_FLAG_SHOULD_RESIZE)
|
||||
sdl_refresh_viewport(vid);
|
||||
|
||||
if (frame)
|
||||
@ -518,7 +517,6 @@ static void sdl2_gfx_set_nonblock_state(void *data, bool toggle,
|
||||
bool adaptive_vsync_enabled, unsigned swap_interval)
|
||||
{
|
||||
sdl2_video_t *vid = (sdl2_video_t*)data;
|
||||
|
||||
vid->video.vsync = !toggle;
|
||||
sdl_refresh_renderer(vid);
|
||||
}
|
||||
@ -527,7 +525,9 @@ static bool sdl2_gfx_alive(void *data)
|
||||
{
|
||||
sdl2_video_t *vid = (sdl2_video_t*)data;
|
||||
check_window(vid);
|
||||
return !vid->quitting;
|
||||
if (vid->flags & SDL2_FLAG_QUITTING)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool sdl2_gfx_focus(void *data)
|
||||
@ -539,9 +539,6 @@ static bool sdl2_gfx_focus(void *data)
|
||||
|
||||
static bool sdl2_gfx_suppress_screensaver(void *data, bool enable)
|
||||
{
|
||||
(void)data;
|
||||
(void)enable;
|
||||
|
||||
if (video_driver_display_type_get() == RARCH_DISPLAY_X11)
|
||||
{
|
||||
#ifdef HAVE_X11
|
||||
@ -553,14 +550,8 @@ static bool sdl2_gfx_suppress_screensaver(void *data, bool enable)
|
||||
return false;
|
||||
}
|
||||
|
||||
static bool sdl2_gfx_has_windowed(void *data)
|
||||
{
|
||||
(void)data;
|
||||
|
||||
/* TODO - implement */
|
||||
|
||||
return true;
|
||||
}
|
||||
/* TODO/FIXME - implement */
|
||||
static bool sdl2_gfx_has_windowed(void *data) { return true; }
|
||||
|
||||
static void sdl2_gfx_free(void *data)
|
||||
{
|
||||
@ -633,13 +624,13 @@ static void sdl2_poke_set_aspect_ratio(void *data, unsigned aspect_ratio_idx)
|
||||
return;
|
||||
|
||||
vid->video.force_aspect = true;
|
||||
vid->should_resize = true;
|
||||
vid->flags |= SDL2_FLAG_SHOULD_RESIZE;
|
||||
}
|
||||
|
||||
static void sdl2_poke_apply_state_changes(void *data)
|
||||
{
|
||||
sdl2_video_t *vid = (sdl2_video_t*)data;
|
||||
vid->should_resize = true;
|
||||
sdl2_video_t *vid = (sdl2_video_t*)data;
|
||||
vid->flags |= SDL2_FLAG_SHOULD_RESIZE;
|
||||
}
|
||||
|
||||
static void sdl2_poke_set_texture_frame(void *data,
|
||||
|
Loading…
x
Reference in New Issue
Block a user