if (conf->hwc_sync_mode_change) e_comp->hwc_sync_mode_change = EINA_TRUE;
if (conf->hwc_use_detach) e_comp->hwc_use_detach = EINA_TRUE;
if (conf->hwc_ignore_primary) e_comp->hwc_ignore_primary = EINA_TRUE;
+ if (conf->hwc_send_redraw_request) e_comp->hwc_send_redraw_request = EINA_TRUE;
}
// use wl_surface instead of tbm_surface for the e_comp_wl_buffer
Eina_Bool hwc_sync_mode_change;
Eina_Bool hwc_use_detach;
Eina_Bool hwc_ignore_primary;
+ Eina_Bool hwc_send_redraw_request;
Eina_Bool use_native_type_buffer : 1; // use native buffer type
Eina_Bool avoid_afill; // avoid to fill the alpha channel as 0xff. that means filling 0x00.
E_CONFIG_VAL(D, T, hwc_sync_mode_change, UCHAR);
E_CONFIG_VAL(D, T, hwc_ignore_primary, UCHAR);
E_CONFIG_VAL(D, T, hwc_use_detach, UCHAR);
+ E_CONFIG_VAL(D, T, hwc_send_redraw_request, UCHAR);
E_CONFIG_VAL(D, T, use_native_type_buffer, UCHAR);
E_CONFIG_VAL(D, T, nofade, UCHAR);
E_CONFIG_VAL(D, T, smooth_windows, UCHAR);
cfg->hwc_sync_mode_change = 0;
cfg->hwc_ignore_primary = 0;
cfg->hwc_use_detach = 0;
+ cfg->hwc_send_redraw_request = 0;
cfg->use_native_type_buffer = 0; // 1 if use_native(wl_buffer), 0 if use_tbm(tbm_surface)
cfg->nofade = 0;
cfg->smooth_windows = 0; // 1 if gl, 0 if not
unsigned char hwc_sync_mode_change; // 0: none, 1: synchronize scanout buffer when hwc mode change in reserved memory plane
unsigned char hwc_ignore_primary; // 0: none, 1: hwc use plane has lowest zpos and support rgb to default ui layer
unsigned char hwc_use_detach; // 0: hwc use dequeue protocol, 1: hwc use detach request when synchronize scanout buffer
+ unsigned char hwc_send_redraw_request; // 0: none, 1: send redraw request to client when client need to redraw for hwc
unsigned char use_native_type_buffer; // 0: use the tbm_buffer(tbm_surface), 1: use the native_buffer(wl_buffer)
unsigned char smooth_windows;
unsigned char nofade;
queue->state = E_HWC_WINDOW_QUEUE_STATE_SET_WAITING_WAIT_USABLE;
- e_comp_wl_renderer_client_redraw_request_send(hwc_window->ec);
+ if (e_comp->hwc_send_redraw_request)
+ e_comp_wl_renderer_client_redraw_request_send(hwc_window->ec);
EHWQINF("Set Waiting wait usable user ehw:%p -- {%s}",
hwc_window->ec, queue->hwc, queue, hwc_window,