elementry win: support msaa, stencil and depth bits for wayland.

This commit is contained in:
Hermet Park 2019-04-25 17:25:52 +09:00
parent 815535eebe
commit b37e6a4df6
1 changed files with 25 additions and 24 deletions

View File

@ -5409,33 +5409,34 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
if (parent) parent_id = elm_win_window_id_get(parent);
for (i = 0; i < p; i++)
{
int opt[20], opt_i = 0;
if (_elm_config->vsync)
{
opt[opt_i++] = ECORE_EVAS_OPT_VSYNC;
opt[opt_i++] = 1;
}
if (gl_depth)
{
opt[opt_i++] = ECORE_EVAS_OPT_GL_DEPTH;
opt[opt_i++] = gl_depth;
}
if (gl_stencil)
{
opt[opt_i++] = ECORE_EVAS_OPT_GL_STENCIL;
opt[opt_i++] = gl_stencil;
}
if (gl_msaa)
{
opt[opt_i++] = ECORE_EVAS_OPT_GL_MSAA;
opt[opt_i++] = gl_msaa;
}
opt[opt_i] = 0;
if (!strcmp(enginelist[i], ELM_SOFTWARE_X11))
tmp_sd.ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 0, 0);
else if (!strcmp(enginelist[i], ELM_OPENGL_X11))
{
int opt[20], opt_i = 0;
if (_elm_config->vsync)
{
opt[opt_i++] = ECORE_EVAS_GL_X11_OPT_VSYNC;
opt[opt_i++] = 1;
}
if (gl_depth)
{
opt[opt_i++] = ECORE_EVAS_GL_X11_OPT_GL_DEPTH;
opt[opt_i++] = gl_depth;
}
if (gl_stencil)
{
opt[opt_i++] = ECORE_EVAS_GL_X11_OPT_GL_STENCIL;
opt[opt_i++] = gl_stencil;
}
if (gl_msaa)
{
opt[opt_i++] = ECORE_EVAS_GL_X11_OPT_GL_MSAA;
opt[opt_i++] = gl_msaa;
}
opt[opt_i] = 0;
if (opt_i > 0)
tmp_sd.ee = ecore_evas_gl_x11_options_new(NULL, 0, 0, 0, 0, 0, opt);
else
@ -5444,7 +5445,7 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Efl_U
else if (!strcmp(enginelist[i], ELM_WAYLAND_SHM))
tmp_sd.ee = _wayland_shm_new(NULL, parent_id, 0, 0, 0, 0, 0);
else if (!strcmp(enginelist[i], ELM_WAYLAND_EGL))
tmp_sd.ee = _wayland_egl_new(NULL, parent_id, 0, 0, 0, 0, 0, NULL);
tmp_sd.ee = _wayland_egl_new(NULL, parent_id, 0, 0, 0, 0, 0, (opt_i > 0) ? opt : NULL);
else if (!strcmp(enginelist[i], ELM_SOFTWARE_WIN32))
tmp_sd.ee = ecore_evas_software_gdi_new(NULL, 0, 0, 1, 1);
else if (!strcmp(enginelist[i], ELM_SOFTWARE_DDRAW))