e_hwc_windows: add visible skip and hwc to debug info 87/219187/1
authorChangyeon Lee <cyeon.lee@samsung.com>
Fri, 29 Nov 2019 04:38:25 +0000 (13:38 +0900)
committerChangyeon Lee <cyeon.lee@samsung.com>
Tue, 3 Dec 2019 02:42:30 +0000 (11:42 +0900)
Change-Id: Ibee4f04183fa0dcdd434318c3bf629fb03a41f2d

src/bin/e_hwc_windows.c

index 6d847e4..b89a4ea 100644 (file)
@@ -3657,6 +3657,7 @@ _e_hwc_windows_window_debug_info_get(Eldbus_Message_Iter *iter, E_Hwc_Wins_Debug
    char info_str[1024];
    char fmt_str[5];
    char flip = ' ';
+   Eina_Bool vis_skip = EINA_FALSE;
 
    e_comp_screen = e_comp->e_comp_screen;
 
@@ -3670,16 +3671,6 @@ _e_hwc_windows_window_debug_info_get(Eldbus_Message_Iter *iter, E_Hwc_Wins_Debug
         return;
      }
 
-   eldbus_message_iter_basic_append(line_array, 's',
-   "==========================================================================================="
-   "==========================================================================");
-   eldbus_message_iter_basic_append(line_array, 's',
-   " No   Win_ID    Hwc_win    zpos  ST   AC_ST  ACTI TRANSI  tsurface  src_size        src_pos"
-   "       FMT       dst_pos        TRANSF DP_tsurface   Queue    restriction");
-   eldbus_message_iter_basic_append(line_array, 's',
-   "==========================================================================================="
-   "==========================================================================");
-
    EINA_LIST_FOREACH(e_comp_screen->outputs, l, output)
      {
         if (!output) continue;
@@ -3689,6 +3680,21 @@ _e_hwc_windows_window_debug_info_get(Eldbus_Message_Iter *iter, E_Hwc_Wins_Debug
         hwc = output->hwc;
         if (!output->hwc) continue;
 
+        snprintf(info_str, sizeof(info_str),
+                 "HWC:%p mode:%d wait_commit:%d deactive:%d transition:%d norender:%d",
+                 hwc, hwc->hwc_mode, hwc->wait_commit, hwc->hwc_deactive, hwc->transition, hwc->norender);
+        eldbus_message_iter_basic_append(line_array, 's', info_str);
+
+        eldbus_message_iter_basic_append(line_array, 's',
+        "==========================================================================================="
+        "===================================================================================");
+        eldbus_message_iter_basic_append(line_array, 's',
+        " No   Win_ID    Hwc_win    zpos  ST   AC_ST  ACTI TRANSI  tsurface  src_size        src_pos"
+        "       FMT       dst_pos        TRANSF DP_tsurface   Queue    vis_skip restriction");
+        eldbus_message_iter_basic_append(line_array, 's',
+        "==========================================================================================="
+        "===================================================================================");
+
         hwc->hwc_windows = eina_list_sort(hwc->hwc_windows, eina_list_count(hwc->hwc_windows), _e_hwc_windows_window_debug_cb_sort);
 
         EINA_LIST_FOREACH(hwc->hwc_windows, l2, hwc_window)
@@ -3708,6 +3714,12 @@ _e_hwc_windows_window_debug_info_get(Eldbus_Message_Iter *iter, E_Hwc_Wins_Debug
              else if ((cmd == E_HWC_WINS_DEBUG_CMD_NO) && (hwc_window->accepted_state != E_HWC_WINDOW_STATE_NONE))
                continue;
 
+             if (hwc_window->ec)
+               {
+                  if ((hwc_window->ec->hwc_visible_skip) || (evas_object_data_get(hwc_window->ec->frame, "comp_skip")))
+                    vis_skip = EINA_TRUE;
+               }
+
              if (hwc_window->info.src_config.format)
                snprintf(fmt_str, sizeof(fmt_str), "%c%c%c%c", FOURCC_STR(hwc_window->info.src_config.format));
              else
@@ -3718,7 +3730,7 @@ _e_hwc_windows_window_debug_info_get(Eldbus_Message_Iter *iter, E_Hwc_Wins_Debug
 
              snprintf(info_str, sizeof(info_str),
                       "%3d 0x%08zx 0x%08zx %4d   %s    %s     %s   %s 0x%08zx %04dx%04d %04dx%04d+%04d+%04d"
-                      " %4s %04dx%04d+%04d+%04d  %c%3d  0x%08zx  0x%08zx %s",
+                      " %4s %04dx%04d+%04d+%04d  %c%3d  0x%08zx  0x%08zx %6s   %s",
                       ++idx,
                       e_client_util_win_get(hwc_window->ec),
                       (uintptr_t)hwc_window,
@@ -3743,14 +3755,15 @@ _e_hwc_windows_window_debug_info_get(Eldbus_Message_Iter *iter, E_Hwc_Wins_Debug
                       (hwc_window->info.transform < 4) ? hwc_window->info.transform * 90 : (hwc_window->info.transform - 4) * 90,
                       (uintptr_t)hwc_window->display.buffer.tsurface,
                       (uintptr_t)hwc_window->queue,
+                      vis_skip ? "TRUE" : "FALSE",
                       e_hwc_window_restriction_string_get(hwc_window));
              eldbus_message_iter_basic_append(line_array, 's', info_str);
           }
-     }
 
-   eldbus_message_iter_basic_append(line_array, 's',
-   "==========================================================================================="
-   "==========================================================================");
+        eldbus_message_iter_basic_append(line_array, 's',
+        "==========================================================================================="
+        "===================================================================================");
+     }
 
    eldbus_message_iter_container_close(iter, line_array);
 }