diff --git a/command_event.c b/command_event.c index eb397ee629..cf8c33c1fa 100644 --- a/command_event.c +++ b/command_event.c @@ -1649,7 +1649,7 @@ bool event_command(enum event_command cmd) #endif break; case EVENT_CMD_FULLSCREEN_TOGGLE: - if (!video_driver_has_windowed()) + if (!video_driver_ctl(RARCH_DISPLAY_CTL_HAS_WINDOWED, NULL)) return false; /* If we go fullscreen we drop all drivers and diff --git a/gfx/video_driver.c b/gfx/video_driver.c index b62bb3780d..dc301b6031 100644 --- a/gfx/video_driver.c +++ b/gfx/video_driver.c @@ -588,14 +588,6 @@ bool video_driver_suppress_screensaver(bool enable) return video->suppress_screensaver(driver->video_data, enable); } -bool video_driver_has_windowed(void) -{ - driver_t *driver = driver_get_ptr(); - const video_driver_t *video = video_driver_ctx_get_ptr(driver); - - return video->has_windowed(driver->video_data); -} - void video_driver_set_nonblock_state(bool toggle) { driver_t *driver = driver_get_ptr(); @@ -1199,6 +1191,13 @@ bool video_driver_ctl(enum rarch_display_ctl_state state, void *data) { switch (state) { + case RARCH_DISPLAY_CTL_HAS_WINDOWED: + { + driver_t *driver = driver_get_ptr(); + const video_driver_t *video = video_driver_ctx_get_ptr(driver); + + return video->has_windowed(driver->video_data); + } case RARCH_DISPLAY_CTL_GET_FRAME_COUNT: { uint64_t **ptr = (uint64_t**)data; diff --git a/gfx/video_driver.h b/gfx/video_driver.h index fd5ccf1fcb..2e682335c6 100644 --- a/gfx/video_driver.h +++ b/gfx/video_driver.h @@ -223,6 +223,7 @@ enum rarch_display_ctl_state RARCH_DISPLAY_CTL_NONE = 0, RARCH_DISPLAY_CTL_FRAME_FILTER_ALIVE, RARCH_DISPLAY_CTL_FRAME_FILTER_IS_32BIT, + RARCH_DISPLAY_CTL_HAS_WINDOWED, RARCH_DISPLAY_CTL_GET_FRAME_COUNT }; @@ -287,8 +288,6 @@ void uninit_video_input(void); void init_video(void); -bool video_driver_has_windowed(void); - void video_driver_set_nonblock_state(bool toggle); bool video_driver_set_rotation(unsigned rotation); diff --git a/menu/drivers/materialui.c b/menu/drivers/materialui.c index ea96cf2064..aceb0565a5 100644 --- a/menu/drivers/materialui.c +++ b/menu/drivers/materialui.c @@ -883,7 +883,7 @@ static void mui_frame(void) mui->box_message[0] = '\0'; } - if (settings->menu.mouse.enable && (settings->video.fullscreen || !video_driver_has_windowed())) + if (settings->menu.mouse.enable && (settings->video.fullscreen || !video_driver_ctl(RARCH_DISPLAY_CTL_HAS_WINDOWED, NULL))) { int16_t mouse_x = menu_input_mouse_state(MENU_MOUSE_X_AXIS); int16_t mouse_y = menu_input_mouse_state(MENU_MOUSE_Y_AXIS); diff --git a/menu/drivers/rgui.c b/menu/drivers/rgui.c index 4f06ceeaa2..43ac77291e 100644 --- a/menu/drivers/rgui.c +++ b/menu/drivers/rgui.c @@ -652,7 +652,7 @@ static void rgui_render(void) rgui->force_redraw = true; } - if (settings->menu.mouse.enable && (settings->video.fullscreen || !video_driver_has_windowed())) + if (settings->menu.mouse.enable && (settings->video.fullscreen || !video_driver_ctl(RARCH_DISPLAY_CTL_HAS_WINDOWED, NULL))) rgui_blit_cursor(menu); } diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index e4ee403d80..ba91fa5437 100644 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -1822,7 +1822,7 @@ static void xmb_frame(void) /* set alpha components of colors */ coord_color2[3] = coord_color2[7] = coord_color2[11] = coord_color2[15] = (1.00f > xmb->alpha) ? xmb->alpha : 1.00f; - if (settings->menu.mouse.enable && (settings->video.fullscreen || !video_driver_has_windowed())) + if (settings->menu.mouse.enable && (settings->video.fullscreen || !video_driver_ctl(RARCH_DISPLAY_CTL_HAS_WINDOWED, NULL))) { int16_t mouse_x = menu_input_mouse_state(MENU_MOUSE_X_AXIS); int16_t mouse_y = menu_input_mouse_state(MENU_MOUSE_Y_AXIS); diff --git a/menu/menu_setting.c b/menu/menu_setting.c index f7df38d68d..8e1669b64a 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -4018,7 +4018,7 @@ static bool setting_append_list_video_options( settings_data_list_current_add_flags(list, list_info, SD_FLAG_ADVANCED); #if !defined(RARCH_CONSOLE) && !defined(RARCH_MOBILE) - if (video_driver_has_windowed()) + if (video_driver_ctl(RARCH_DISPLAY_CTL_HAS_WINDOWED, NULL)) { CONFIG_BOOL( &settings->video.fullscreen, @@ -4036,7 +4036,7 @@ static bool setting_append_list_video_options( settings_data_list_current_add_flags(list, list_info, SD_FLAG_CMD_APPLY_AUTO); } #endif - if (video_driver_has_windowed()) + if (video_driver_ctl(RARCH_DISPLAY_CTL_HAS_WINDOWED, NULL)) { CONFIG_BOOL( &settings->video.windowed_fullscreen, @@ -4228,7 +4228,7 @@ static bool setting_append_list_video_options( START_SUB_GROUP(list, list_info, "Scaling", group_info.name, subgroup_info, parent_group); #if !defined(RARCH_CONSOLE) && !defined(RARCH_MOBILE) - if (video_driver_has_windowed()) + if (video_driver_ctl(RARCH_DISPLAY_CTL_HAS_WINDOWED, NULL)) { CONFIG_FLOAT( settings->video.scale,