summaryrefslogtreecommitdiff
path: root/src/lib/elementary
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2017-09-26 18:11:38 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2017-09-26 18:11:38 +0900
commite1df334caf5dfe1a01693319ce0f6e8facefc427 (patch)
tree12114a4406d335f6548c00369c1dd8dc16fe9205 /src/lib/elementary
parentba12712e0db84f8844f79f48a56c8b79b62df2ac (diff)
Revert "Fix infinite recursion for legacy + efl ui win events"
This reverts commit d567faa7787afb3d478f1c857cb28ab4fa0e5fc3. This is not trying to fix the root cause for the infinite loop.
Diffstat (limited to 'src/lib/elementary')
-rw-r--r--src/lib/elementary/efl_ui_win.c22
1 files changed, 7 insertions, 15 deletions
diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 604173dec8..41173e3994 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -1854,14 +1854,6 @@ EFL_CALLBACKS_ARRAY_DEFINE(_elm_win_evas_feed_fake_callbacks,
1854{ EFL_EVENT_KEY_DOWN, _evas_event_key_feed_fake_cb }, 1854{ EFL_EVENT_KEY_DOWN, _evas_event_key_feed_fake_cb },
1855{ EFL_EVENT_KEY_UP, _evas_event_key_feed_fake_cb }) 1855{ EFL_EVENT_KEY_UP, _evas_event_key_feed_fake_cb })
1856 1856
1857#define RECURSE_PROTECT(x) \
1858 do { static int calling = 0; \
1859 if (calling) return; \
1860 calling++; \
1861 x; \
1862 calling--; \
1863 } while (0)
1864
1865static void 1857static void
1866_elm_win_evas_render_post(void *data, 1858_elm_win_evas_render_post(void *data,
1867 Evas *e EINA_UNUSED, 1859 Evas *e EINA_UNUSED,
@@ -1870,7 +1862,7 @@ _elm_win_evas_render_post(void *data,
1870 Efl_Gfx_Event_Render_Post *ev = event_info; 1862 Efl_Gfx_Event_Render_Post *ev = event_info;
1871 Eo *win = data; 1863 Eo *win = data;
1872 1864
1873 RECURSE_PROTECT(efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_RENDER_POST, ev)); 1865 efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_RENDER_POST, ev);
1874} 1866}
1875 1867
1876static void 1868static void
@@ -1881,7 +1873,7 @@ _elm_win_evas_render_pre(void *data,
1881 Eo *win = data; 1873 Eo *win = data;
1882 1874
1883 _elm_win_throttle_ok = EINA_TRUE; 1875 _elm_win_throttle_ok = EINA_TRUE;
1884 RECURSE_PROTECT(efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_RENDER_PRE, NULL)); 1876 efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_RENDER_PRE, NULL);
1885} 1877}
1886 1878
1887static void 1879static void
@@ -1892,7 +1884,7 @@ _elm_win_evas_focus_in(void *data,
1892 Eo *win = data; 1884 Eo *win = data;
1893 1885
1894 _elm_win_throttle_ok = EINA_TRUE; 1886 _elm_win_throttle_ok = EINA_TRUE;
1895 RECURSE_PROTECT(efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_FOCUS_IN, NULL)); 1887 efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_FOCUS_IN, NULL);
1896} 1888}
1897 1889
1898static void 1890static void
@@ -1902,7 +1894,7 @@ _elm_win_evas_focus_out(void *data,
1902{ 1894{
1903 Eo *win = data; 1895 Eo *win = data;
1904 1896
1905 RECURSE_PROTECT(efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_FOCUS_OUT, NULL)); 1897 efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_FOCUS_OUT, NULL);
1906} 1898}
1907 1899
1908static void 1900static void
@@ -1914,7 +1906,7 @@ _elm_win_evas_object_focus_in(void *data,
1914 Eo *win = data; 1906 Eo *win = data;
1915 1907
1916 _elm_win_throttle_ok = EINA_TRUE; 1908 _elm_win_throttle_ok = EINA_TRUE;
1917 RECURSE_PROTECT(efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_OBJECT_FOCUS_IN, object)); 1909 efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_OBJECT_FOCUS_IN, object);
1918} 1910}
1919 1911
1920static void 1912static void
@@ -1925,7 +1917,7 @@ _elm_win_evas_object_focus_out(void *data,
1925 Eo *object = event_info; 1917 Eo *object = event_info;
1926 Eo *win = data; 1918 Eo *win = data;
1927 1919
1928 RECURSE_PROTECT(efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_OBJECT_FOCUS_OUT, object)); 1920 efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_OBJECT_FOCUS_OUT, object);
1929} 1921}
1930 1922
1931static void 1923static void
@@ -1936,7 +1928,7 @@ _elm_win_evas_device_changed(void *data,
1936 Eo *device = event_info; 1928 Eo *device = event_info;
1937 Eo *win = data; 1929 Eo *win = data;
1938 1930
1939 RECURSE_PROTECT(efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_DEVICE_CHANGED, device)); 1931 efl_event_callback_legacy_call(win, EFL_CANVAS_EVENT_DEVICE_CHANGED, device);
1940} 1932}
1941 1933
1942static void 1934static void