princeamd pushed a commit to branch enlightenment-0.17.
commit aa726e1be9c0a598488d4477c3e80a5d9ae6c9fc
Author: Christopher Michael <[email protected]>
Date: Tue Feb 19 10:59:28 2013 +0000
Backport: dc509dd :: Add support for an outputs clones in e_randr and
e_randr config.
Signed-off-by: Christopher Michael <[email protected]>
SVN revision: 84206
Signed-off-by: Deon Thomas <[email protected]>
---
src/bin/e_randr.c | 11 +++++++++++
src/bin/e_randr.h | 2 ++
2 files changed, 13 insertions(+)
diff --git a/src/bin/e_randr.c b/src/bin/e_randr.c
index fe06da2..27d2027 100644
--- a/src/bin/e_randr.c
+++ b/src/bin/e_randr.c
@@ -122,6 +122,10 @@ _e_randr_config_load(void)
(char *)(&(eroc.edid)) - (char *)(&(eroc)),
(char *)(&(eroc.edid_count)) -
(char *)(&(eroc)), NULL, NULL);
+ eet_data_descriptor_element_add(D, "clones", EET_T_UINT, EET_G_VAR_ARRAY,
+ (char *)(&(eroc.clones)) - (char
*)(&(eroc)),
+ (char *)(&(eroc.clone_count)) -
+ (char *)(&(eroc)), NULL, NULL);
/* define edd for crtc config */
_e_randr_crtc_edd =
@@ -288,6 +292,11 @@ _e_randr_config_new(void)
ecore_x_randr_output_edid_get(root, outputs[j],
&output_cfg->edid_count);
+ /* get the clones for this output */
+ output_cfg->clones =
+ ecore_x_randr_output_clones_get(root, outputs[i],
+
&output_cfg->clone_count);
+
/* add this output to the list for this crtc */
crtc_cfg->outputs =
eina_list_append(crtc_cfg->outputs, output_cfg);
@@ -327,7 +336,9 @@ _e_randr_config_free(void)
/* loop the config outputs on this crtc and free them */
EINA_LIST_FREE(crtc->outputs, output)
{
+ if (output->clones) free(output->clones);
if (output->edid) free(output->edid);
+
E_FREE(output);
}
diff --git a/src/bin/e_randr.h b/src/bin/e_randr.h
index 044eef2..d7411ae 100644
--- a/src/bin/e_randr.h
+++ b/src/bin/e_randr.h
@@ -26,6 +26,8 @@ struct _E_Randr_Output_Config
unsigned char primary; // flag to indicate if primary output
unsigned long edid_count; // monitor's edid length
unsigned char *edid; // monitor's edid
+ unsigned int *clones; // array of clones (each element of type
ecore_x_randr output id (xid)
+ unsigned long clone_count; // number of clones
};
struct _E_Randr_Crtc_Config
--
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev