Commit Graph

17 Commits

Author SHA1 Message Date
Jean-Philippe Andre 8a21384759 win: Move main menu back to win.edc (fix sizing)
As Andy reported, the main menu geometry is not correct after
my recent changes, as the application contents slide underneath
the menu bar. In fact the menu bar is just floating above
everything else.

So I've tried to move the menu to the framespace (as it should
belong to the frame), but the sizing algos for both the window
and the menu make some assumptions that render this task quite
difficult. Eventually I would like to be able to swallow the
menu somewhere else inside the border... but not right now.
2016-11-28 15:52:09 +09:00
Jean-Philippe Andre 8c06c47301 theme: Fix 1 pixel offset and hide clipped regions
Thanks @raster for pointing this out: title bar and menu bar
were resized down to 1 pixel high rather than 0. This meant that
all CSD windows would see a 1-pixel line between the title bar
and the app content, while SSD windows would see a 2-pixel line.

Also clip out the icon, this makes a 1x1 pixel disappear from the
top-left corner.
2016-11-25 11:04:00 +09:00
Jean-Philippe Andre 9fa608d631 win: Fix framespace when using CSD
This was broken for X and WL after the previous patch.
2016-11-24 17:44:29 +09:00
Jean-Philippe Andre 246023d1b3 win: Fix (hack around) E internal windows in Wayland
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.
2016-11-24 17:05:27 +09:00
Jean-Philippe Andre 0fc049a321 win: Move modal blocker to border group
Legacy themes are still supported with a fallback code.
2016-11-23 13:04:13 +09:00
Jean-Philippe Andre 5f6673f623 win: Implement unresizable mode (fixed size windows)
This sends a signal to the CSD frame to hide the bottom
bar and disable the resize borders.
2016-11-23 13:04:13 +09:00
Jean-Philippe Andre 9fb4f0ab2b theme: Implement CSD & non-CSD styles in window.edc
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.
2016-11-23 13:04:12 +09:00
Jean-Philippe Andre 4b2d822733 theme: Move ews stuff to its own file
This move ews from border.edc to ews.edc
2016-11-23 13:04:12 +09:00
Jean-Philippe Andre 0e52264ae0 win: Add background part to the win border
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
2016-11-23 13:04:12 +09:00
Jean-Philippe Andre cb172de3da win: Move main menu to the border edje group
The main menu can now be contained inside the CSD border
rather than inside the win edje group.
2016-11-23 13:04:12 +09:00
Mike Blumenkrantz ff702ee67a theme: copy border icon click -> elm,action,signal program 2016-07-19 14:15:15 -04:00
Chris Michael cd1f2539fd Revert "efl theme for wayland borders - dont accept events on client swallow"
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.
2016-07-12 09:42:23 -04:00
Carsten Haitzler fdaefdbf9a efl theme for wayland borders - dont accept events on client swallow 2016-07-12 21:04:27 +09:00
Mike Blumenkrantz 18cbf953d6 Revert "theme: undo recent changes to elm window border shadow_spacer part"
This reverts commit aaf8b86179.

it turns out that this was irrelevant and there was some less-than-competent
engine code trying to manhandle surface sizes
2016-03-30 15:45:06 -04:00
Mike Blumenkrantz aaf8b86179 theme: undo recent changes to elm window border shadow_spacer part
this breaks window sizing in wayland

partially reverts c413544ef7
2016-03-28 17:06:32 -04:00
Carsten Haitzler c413544ef7 elm theme: do some slickening up of shadows
so i had a separate flat theme i was working on but i just can't keep
up with changes so i'm just putting in some of the nicest bits here
slowly like nicer shadows.

@feat
2016-03-25 11:04:35 +09:00
Cedric BAIL c2a1c49ab2 elementary: move all legacy files to their expected new location. 2016-03-23 13:24:41 -07:00