if (!ec->netwm.pid)
{
- _e_client_base_output_resolution_set(ec, configured_width, configured_height);
ELOGF("POL_APPINFO", "NO PID... USE configured_output_resolution(%d,%d) pid:%d", ec,
configured_width, configured_height, ec->netwm.pid);
- return EINA_TRUE;
+ goto use_configured;
}
epai = e_policy_appinfo_find_with_pid(ec->netwm.pid);
if (!epai)
{
- _e_client_base_output_resolution_set(ec, configured_width, configured_height);
ELOGF("POL_APPINFO", "NO APPINFO... USE configured_output_resolution(%d,%d) pid:%d", ec,
configured_width, configured_height, ec->netwm.pid);
- return EINA_TRUE;
+ goto use_configured;
}
if (!e_policy_appinfo_base_output_resolution_get(epai, &width, &height))
{
- /* set the base_output_resolution of the e_client as a default */
- _e_client_base_output_resolution_set(ec, configured_width, configured_height);
ELOGF("POL_APPINFO", "NO BASE SCREEN RESOLUTION... USE configured_output_resolution(%d,%d) pid:%d", ec,
configured_width, configured_height, ec->netwm.pid);
- return EINA_TRUE;
+ goto use_configured;
}
if ((width == 0) && (height == 0))
ELOGF("POL_APPINFO", "USE base_output_resolution(%d,%d) pid:%d", ec, width, height, ec->netwm.pid);
return EINA_TRUE;
+
+use_configured:
+
+ if ((ec->desk->geom.w == configured_width) && (ec->desk->geom.h == configured_height))
+ {
+ ELOGF("POL_APPINFO", "SKIP use configured_output_resolution (same with desk size:(%d,%d), pid:%d)", ec, configured_width, configured_height, ec->netwm.pid);
+ }
+ else
+ {
+ /* set the base_output_resolution of the e_client as a default */
+ _e_client_base_output_resolution_set(ec, configured_width, configured_height);
+ }
+
+ return EINA_TRUE;
}
E_API void