summaryrefslogtreecommitdiff
path: root/src/lib/ecore_evas/ecore_evas.c
diff options
context:
space:
mode:
authorGwanglim Lee <gl77.lee@samsung.com>2012-12-05 06:48:46 +0000
committerCarsten Haitzler <raster@rasterman.com>2012-12-05 06:48:46 +0000
commit74cdf85ea9a1931e508703ddd1cfb1c9ce68f3c1 (patch)
tree642d82752f5aef6f25a56dab07629a32c25bd30b /src/lib/ecore_evas/ecore_evas.c
parent25ea899dfae39b155f7f0f2b7cafc456cfd1f1d8 (diff)
From: Gwanglim Lee <gl77.lee@samsung.com>
Subject: Re: Re: Re: [E-devel] [RFC] Virtual desktop window profile I've attached 4th patch. May the 4th be with you. ecore patch has been merged with efl and all files are based on r80123. Thanks & Regards, Gwanglim ------- Original Message ------- Sender : Daniel Juyung Seo<seojuyung2@gmail.com> Date : 2012-12-04 01:55 (GMT+09:00) Title : Re: Re: [E-devel] [RFC] Virtual desktop window profile It looks ok to me. Sorry but can you re-generate the patch according to the recent ecore merge to efl single tree? Daniel Juyung Seo (SeoZ) On Thu, Nov 29, 2012 at 12:29 AM, Gwanglim Lee <gl77.lee@samsung.com> wrote: Dear Raster and Daniel Juyung Seo, I've attached 3rd patches and test_config according to your reviews. These are based on r79782. [elementary & ecore] 1. "profile,set" -> "profile,changed" - done 2. spaces after EINA_LIST_FOREACH - done 3. variable type - keep 4. author - done 5. removing deprecated marking in patch - done 6. add elm_win_available_profiles_get to test_config for the debugging purpose - done 7. check whether a given profile is present in an available profiles. otherwise window profile will be one of the item in available profiles. - newly added thing to the elm_win 8. merge with EO - done. :( Any comments would be appreciated. SVN revision: 80214
Diffstat (limited to 'src/lib/ecore_evas/ecore_evas.c')
-rw-r--r--src/lib/ecore_evas/ecore_evas.c112
1 files changed, 112 insertions, 0 deletions
diff --git a/src/lib/ecore_evas/ecore_evas.c b/src/lib/ecore_evas/ecore_evas.c
index 3d841e7db6..9a665fd581 100644
--- a/src/lib/ecore_evas/ecore_evas.c
+++ b/src/lib/ecore_evas/ecore_evas.c
@@ -1859,6 +1859,77 @@ ecore_evas_maximized_get(const Ecore_Evas *ee)
1859 return ee->prop.maximized ? EINA_TRUE : EINA_FALSE; 1859 return ee->prop.maximized ? EINA_TRUE : EINA_FALSE;
1860} 1860}
1861 1861
1862EAPI Eina_Bool
1863ecore_evas_window_profile_supported_get(const Ecore_Evas *ee)
1864{
1865 if (!ECORE_MAGIC_CHECK(ee, ECORE_MAGIC_EVAS))
1866 {
1867 ECORE_MAGIC_FAIL(ee, ECORE_MAGIC_EVAS,
1868 "ecore_evas_window_profile_supported_get");
1869 return EINA_FALSE;
1870 }
1871 return ee->profile_supported ? EINA_TRUE : EINA_FALSE;
1872}
1873
1874EAPI void
1875ecore_evas_window_profile_set(Ecore_Evas *ee, const char *profile)
1876{
1877 if (!ECORE_MAGIC_CHECK(ee, ECORE_MAGIC_EVAS))
1878 {
1879 ECORE_MAGIC_FAIL(ee, ECORE_MAGIC_EVAS,
1880 "ecore_evas_window_profile_set");
1881 return;
1882 }
1883 IFC(ee, fn_profile_set) (ee, profile);
1884 IFE;
1885}
1886
1887EAPI const char *
1888ecore_evas_window_profile_get(const Ecore_Evas *ee)
1889{
1890 if (!ECORE_MAGIC_CHECK(ee, ECORE_MAGIC_EVAS))
1891 {
1892 ECORE_MAGIC_FAIL(ee, ECORE_MAGIC_EVAS,
1893 "ecore_evas_window_profile_get");
1894 return NULL;
1895 }
1896 return ee->prop.profile.name;
1897}
1898
1899EAPI void
1900ecore_evas_window_available_profiles_set(Ecore_Evas *ee, const char **profiles, const unsigned int count)
1901{
1902 if (!ECORE_MAGIC_CHECK(ee, ECORE_MAGIC_EVAS))
1903 {
1904 ECORE_MAGIC_FAIL(ee, ECORE_MAGIC_EVAS,
1905 "ecore_evas_window_available_profiles_set");
1906 return;
1907 }
1908 IFC(ee, fn_profiles_set) (ee, profiles, count);
1909 IFE;
1910}
1911
1912EAPI Eina_Bool
1913ecore_evas_window_available_profiles_get(Ecore_Evas *ee, char ***profiles, unsigned int *count)
1914{
1915 if (!ECORE_MAGIC_CHECK(ee, ECORE_MAGIC_EVAS))
1916 {
1917 ECORE_MAGIC_FAIL(ee, ECORE_MAGIC_EVAS,
1918 "ecore_evas_window_available_profiles_get");
1919 return EINA_FALSE;
1920 }
1921
1922 if ((ee->prop.profile.available_list) &&
1923 (ee->prop.profile.count >= 1))
1924 {
1925 if (profiles) *profiles = ee->prop.profile.available_list;
1926 if (count) *count = ee->prop.profile.count;
1927 return EINA_TRUE;
1928 }
1929 else
1930 return EINA_FALSE;
1931}
1932
1862EAPI void 1933EAPI void
1863ecore_evas_fullscreen_set(Ecore_Evas *ee, Eina_Bool on) 1934ecore_evas_fullscreen_set(Ecore_Evas *ee, Eina_Bool on)
1864{ 1935{
@@ -2433,6 +2504,10 @@ _ecore_evas_free(Ecore_Evas *ee)
2433 ee->prop.name = NULL; 2504 ee->prop.name = NULL;
2434 if (ee->prop.clas) free(ee->prop.clas); 2505 if (ee->prop.clas) free(ee->prop.clas);
2435 ee->prop.clas = NULL; 2506 ee->prop.clas = NULL;
2507 _ecore_evas_window_profile_free(ee);
2508 ee->prop.profile.name = NULL;
2509 _ecore_evas_window_available_profiles_free(ee);
2510 ee->prop.profile.available_list = NULL;
2436 if (ee->prop.cursor.object) evas_object_del(ee->prop.cursor.object); 2511 if (ee->prop.cursor.object) evas_object_del(ee->prop.cursor.object);
2437 ee->prop.cursor.object = NULL; 2512 ee->prop.cursor.object = NULL;
2438 if (ee->evas) evas_free(ee->evas); 2513 if (ee->evas) evas_free(ee->evas);
@@ -2662,6 +2737,31 @@ _ecore_evas_mouse_multi_up_process(Ecore_Evas *ee, int device,
2662 flags, timestamp, NULL); 2737 flags, timestamp, NULL);
2663} 2738}
2664 2739
2740void
2741_ecore_evas_window_profile_free(Ecore_Evas *ee)
2742{
2743 if (ee->prop.profile.name)
2744 eina_stringshare_del(ee->prop.profile.name);
2745}
2746
2747void
2748_ecore_evas_window_available_profiles_free(Ecore_Evas *ee)
2749{
2750 if (ee->prop.profile.available_list)
2751 {
2752 int i;
2753 for (i = 0; i < ee->prop.profile.count; i++)
2754 {
2755 if (ee->prop.profile.available_list[i])
2756 {
2757 eina_stringshare_del(ee->prop.profile.available_list[i]);
2758 ee->prop.profile.available_list[i] = NULL;
2759 }
2760 }
2761 free(ee->prop.profile.available_list);
2762 }
2763}
2764
2665EAPI Eina_List * 2765EAPI Eina_List *
2666ecore_evas_ecore_evas_list_get(void) 2766ecore_evas_ecore_evas_list_get(void)
2667{ 2767{
@@ -2676,6 +2776,18 @@ ecore_evas_ecore_evas_list_get(void)
2676 return l; 2776 return l;
2677} 2777}
2678 2778
2779EAPI Eina_List *
2780ecore_evas_sub_ecore_evas_list_get(const Ecore_Evas *ee)
2781{
2782 if (!ECORE_MAGIC_CHECK(ee, ECORE_MAGIC_EVAS))
2783 {
2784 ECORE_MAGIC_FAIL(ee, ECORE_MAGIC_EVAS,
2785 "ecore_evas_sub_ecore_evas_list_get");
2786 return NULL;
2787 }
2788 return ee->sub_ecore_evas;
2789}
2790
2679EAPI void 2791EAPI void
2680ecore_evas_input_event_register(Ecore_Evas *ee) 2792ecore_evas_input_event_register(Ecore_Evas *ee)
2681{ 2793{