My previous patches have broken E Wayland internal windows, as
the compositor wants to create Server-Side Decorations[1] but
based on some mysterious heuristics, E will decide to show or
not SSD. It seems the surface geometry, window geometry,
input region and maybe opaque region need to all match. There
was a pixel difference in the theme which broke everything,
also CSD shadows must be turned off in that case.
This also fixes inputs as for some reason a mismatching input
region vs window geometry would break pointer move/up/down in
those internal windows.
[1] I believe this is not a great idea and E should never draw
any server-side decorations in Wayland. Wayland was supposed
to mean only CSD, no more SSD.
For standard windows, we want to create an elm_bg object if
the theme is a legacy one. Otherwise the default theme
doesn't require an extra object, just a rectangle.
This fixes compatibility with legacy themes (ie. every single
theme in existence beyond the default one, for now), by checking
where to swallow the menu widget. If a legacy theme is used,
the legacy swallow should be used, and it will all look correct.
Moving forward I hope to get rid of the internal edje object
entirely, except for compatibility reasons.
Also converts border.edc to lazEDC (easier to read, imho).
This is still work in progress but currently this supports
CSD & no-CSD modes for normal, maximized, main menu usage, shadow
on and off.
Note that shaded support is not implemented. I've made some
attempts towards this goal, with some success under X but it
was ugly code, and didn't work under Wayland (weston). So, no
extra support for shaded mode yet.
Use Efl.Part for window to manipulate the background.
Two part names are used in EDC:
- elm.rect.background
- elm.swallow.background
For apps the part name is only "background".
To set a solid color background (alpha is ok):
efl_gfx_color_set(efl_part(win, "background"), r, g, b, a);
To set an image:
efl_file_set(efl_part(win, "background"), "image.jpg", NULL);
To set an object:
efl_content_set(efl_part(win, "background"), subobj);
The solid bg is invisible by default, will become visible and use
COPY render mode if a color is set. Standard window uses the
swallow part.
@feature
This adds more pointers to elm/pointer so that we can use these to
provide "EFL mouse pointers" inside Wayland Client applications.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Naviframe item view did not become visible if top item view is deleted
by elm_object_item_del().
To resolve this problem, program for "elm,state,visible" is fixed and
"elm,state,invisible" is added.
This fixes runtime errors such as:
ERR<29027>:edje lib/edje/edje_calc.c:756 _edje_part_description_apply()
Cannot find description "normal" in part "text2" from group
"elm/segment_control/item/default". Fallback to default description.
The "normal" (non-existant) state corresponds to a disabled state,
which is provided by the "default" state.
Revert "elementary: disable visual hint at odd/even."
This reverts commit c64071ae13.
This reverts commit 7affe8c204.
This reverds the odd/even theme changes because this BREAKS
ENLIGHTENMENT COMPLETELY. Enlightement also uses odd/even list looks
and REMOVING this REMOVES every 2nd lost item member (it makes them
0x0 sized). This is a major break in actual FUNCTIONALITY in the name
of looks. NO. Revert.
We ship with this look. no more breaking stuff like this in the name
of cosemtics and not ACTUALLY fixing any bug at all. it creates bugs.
When focus is moved rapidly, final size of focus highlight is not
matched well with the focused object.
Without running anim in edc, it shows right performance.
@fix
This is a work around a huge bug in how genlist handle index. Fixing
it in genlist for this release is way to risky. The default theme is
temporary updated to not use this feature and this patch should be
reverted as soon as we start working on 1.19.
This commit sets up a client_clip for the windows client being
swallowed so that during resize, any window contents do not draw
outside the window.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
This reverts commit fdaefdbf9a. This is
being reverted because the issue of wayland borders not swallowing
clients has now been fixes and thus mouse_events work as expected wrt
client swallow.
Summary:
Suggest new mark_type for elm_calendar_mark_add().
The mark names are "weekend/day1", "weekend/day2".
It can be used for each country.
Some country can apply to "weekend/day2" to friday if day rest only a day for a week.
Until now, there is no way to separate holiday, saturday and sunday.
Test Plan:
1. saturday
```
struct tm t = { 0, 0, 12, 6, 0, 0, 6, 6, -1 };
elm_calendar_mark_add(obj, "weekend/day1", &t, ELM_CALENDAR_WEEKLY);
```
2. sunday
```
struct tm t = { 0, 0, 12, 7, 0, 0, 0, 0, -1 };
elm_calendar_mark_add(obj, "weekend/day2", &t, ELM_CALENDAR_WEEKLY);
```
Reviewers: CHAN, cedric, raster
Reviewed By: raster
Subscribers: raster, akanad, id213sin, cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4148
Summary:
ERR<18878>:edje lib/edje/edje_calc.c:2767 _edje_part_recalc_single() file /usr/local/share/elementary/themes/default.edj, group elm/slider/horizontal/default has a non-fixed part 'elm.swallow.icon'. You should add 'fixed: 1 0'. But in order to optimize the edje calc, we add it automatically.
ERR<18878>:edje lib/edje/edje_calc.c:2767 _edje_part_recalc_single() file /usr/local/share/elementary/themes/default.edj, group elm/slider/horizontal/default has a non-fixed part 'elm.swallow.end'. You should add 'fixed: 1 0'. But in order to optimize the edje calc, we add it automatically.
Test Plan: Launch an app with slider, open the slider and observe the console output
Reviewers: cedric, singh.amitesh, jpeg
Subscribers: seoz, minkyu
Differential Revision: https://phab.enlightenment.org/D4117
This composite object utilizes the Efl.Canvas.Text, Efl.Canvas.Text.Cursor and
Efl.Ui.Interactive API to server as a proper replacement for the Elm Entry
widget.
@feature
After this commit you will find a new icon theme in your system,
it is called Enlightenment-X and is build using the same icons used
in the elm theme. Using this theme you can have non-efl
and efl apps to use the same icons.
#StupidAutotools that require me to list each icon and each folder
to be able to install them
so the theme build can order ok/cancel based on preference for an os,
so make configure have an option for this and build the theme
specifically based on that option. enable the option if you want mac
style cancel, ok or default ok, cancel as is common elsewhere.
--enable-cancel-ok
is the option
@feature
The idea here is to provide a "real" fdo icon theme along the icons in the elm edje theme.
To minimize file redundancy the icons are profided directly in a fdo structure and picked
in icon_fdo.edc. Also I'm using all the icons in svg format so that we don't need to provide
all the creazy sizes as per fdo spec.
More icons will comes in the next commits
"elm.swallow.icon" and "elm.swallow.end" of group_index item were not
squrares. So change those swallow parts to be squares like default
item's swallow parts.