jpeg pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=5173b0d59ebafa78af38ca12eec01522776796f4
commit 5173b0d59ebafa78af38ca12eec01522776796f4 Merge: 6a4ae67 10e2b44 Author: Jean-Philippe Andre <[email protected]> Date: Wed Nov 23 13:07:18 2016 +0900 elm: Prepare new API for windows, including CSD on X11 This series of patches include: 1. Add experimental Client-Side Decorations (CSD) mode for windows on X11 (enabled with EFL_WIN_FRAME_MODE=on). 2. Use Efl.Part to set the content and background of a window. 3. Begin moving elm_win_resize_object APIs to a legacy-only set of features. 4. Add a new stacked box class. 5. Fix modal windows. More patches will follow, to implement support for the conformant features right inside elm_win, as well as polish existing features. I am merging this now in order to spot and fix compatibility issues as early as possible. This patch indeed reworks a lot how the window and its edje groups work together. Unfortunately, unless we created a new Window class, the complexity of the code inside efl_ui_win.c has to increase. On the other hand, all windows now have a frame object, except fake windows, which redudes some of the differences between X11 and Wayland. CSD are not used by default, as their support is still not complete on X, and totally unimplemented on other platforms (OSX, MS Windows, etc...). Eventually we could think of moving all windows to use CSD mode like GTK3 does nowadays. Note: The theme ABI is changed A LOT, so this may break compatibility with older themes (I have tested a bit, though^^). @feature data/elementary/themes/Makefile.am | 1 + data/elementary/themes/colorclasses.edc | 8 + data/elementary/themes/default.edc | 3 +- data/elementary/themes/edc/elm/bg.edc | 1 + data/elementary/themes/edc/elm/border.edc | 1489 +++++++---------------- data/elementary/themes/edc/elm/ews.edc | 722 +++++++++++ data/elementary/themes/edc/elm/win.edc | 74 +- src/Makefile_Elementary.am | 4 + src/bin/elementary/test.c | 6 + src/bin/elementary/test_bg.c | 105 ++ src/bin/elementary/test_box.c | 53 + src/bin/elementary/test_win_dialog.c | 38 +- src/bin/elementary/test_win_modal.c | 78 ++ src/lib/ecore_evas/Ecore_Evas.h | 9 + src/lib/ecore_evas/ecore_evas.c | 27 + src/lib/ecore_evas/ecore_evas_private.h | 5 + src/lib/ecore_x/Ecore_X_Atoms.h | 3 + src/lib/ecore_x/ecore_x_atoms_decl.h | 7 + src/lib/elementary/Elementary.h | 1 + src/lib/elementary/efl_ui_box_stack.c | 46 + src/lib/elementary/efl_ui_box_stack.eo | 12 + src/lib/elementary/efl_ui_win.c | 1356 +++++++++++++-------- src/lib/elementary/efl_ui_win.eo | 14 +- src/lib/elementary/efl_ui_win_internal_part.eo | 14 + src/lib/elementary/efl_ui_win_standard.c | 15 +- src/lib/elementary/elm_menu.c | 3 +- src/lib/elementary/elm_priv.h | 2 + src/lib/elementary/elm_theme.c | 8 + src/lib/elementary/els_cursor.c | 5 +- src/lib/evas/canvas/efl_canvas_object.eo | 14 + src/lib/evas/canvas/evas_events.c | 35 + src/lib/evas/canvas/evas_object_box.c | 5 + src/lib/evas/include/evas_inline.x | 2 + src/modules/ecore_evas/engines/x/ecore_evas_x.c | 76 +- 34 files changed, 2519 insertions(+), 1722 deletions(-) --
