Commit Graph

918 Commits

Author SHA1 Message Date
Sebastian Dröge 1ba3426405 emotion gstreamer1: Call _emotion_frame_new() for audio-only streams without visualisations too
Without this applications are not notified of any progress.

https://phab.enlightenment.org/T767
2014-01-16 22:45:09 +01:00
Carsten Haitzler 82541d2c2f ecore xcim module - don't printf every time you start to add stdout noise 2014-01-15 09:55:05 +09:00
Stefan Schmidt 384783a896 ecore_evas_win32: Fix build regression in ecore evas win32 engine
Regression introduced with fb59ac34a1
Simple typo during Eina_Bool convertion.
2014-01-13 13:36:28 +01:00
Sebastian Dröge 25fa72e295 emotion gstreamer1: Set visualizations if the vis name is not NULL
and not the other way around.
2014-01-13 10:02:34 +01:00
Sebastian Dröge a39f9ca579 emotion gstreamer1: Also handle DATE_TIME tag 2014-01-13 10:01:07 +01:00
Sebastian Dröge 3c53aea9a4 emotion gstreamer1: Fix wrong FIXME comment 2014-01-13 10:01:07 +01:00
Sebastian Dröge 86d552a7f7 emotion gstreamer1: Don't forget to allocate metadata struct 2014-01-13 10:01:07 +01:00
Sebastian Dröge 1c6cb51cdc emotion gstreamer1: Implement seekability check via seeking query 2014-01-13 10:01:07 +01:00
Sebastian Dröge 463ef7b964 emotion gstreamer1: Add support for selecting subtitle channels 2014-01-13 10:01:07 +01:00
Sebastian Dröge 8d034ca3b7 emotion gstreamer1: Volumes > 1.0 are valid too 2014-01-13 10:01:07 +01:00
Sebastian Dröge 79d5172f0a emotion gstreamer1: Add support for buffering and clock-lost handling 2014-01-13 10:01:07 +01:00
Sebastian Dröge 18f733fa23 emotion gstreamer1: Major cleanup of internal and GStreamer state handling 2014-01-13 09:50:10 +01:00
Sebastian Dröge a5f6a9274c emotion gstreamer1: Don't set pipeline to PAUSED during seeking
This is not required and is handled transparently inside GStreamer
already.
2014-01-13 09:50:10 +01:00
Sebastian Dröge c2f4967699 emotion gstreamer1: Use GST_PLAY_FLAG_VIS instead of the corresponding integer 2014-01-13 09:50:10 +01:00
Sebastian Dröge 5798e98571 emotion gstreamer1: Don't use the NATIVE_AUDIO/VIDEO flags
There are too many video formats we don't handle, so we should let GStreamer
handle the conversion if necessary.
2014-01-13 09:50:10 +01:00
Sebastian Dröge 01389b1d00 emotion gstreamer1: Use refcounting instead of in/out variable counting 2014-01-13 09:50:10 +01:00
Sebastian Dröge 85b17ff7c1 emotion gstreamer1: Simplify pipeline creation
Also remove the webcam support, this could've never worked and
needs to be handled differently.
2014-01-13 09:50:10 +01:00
Sebastian Dröge 072e0bbafd emotion gstreamer1: Some code re-flow in the GStreamer bus handler 2014-01-13 09:50:10 +01:00
Sebastian Dröge 2ff8aafd66 emotion gstreamer1: Use GStreamer's path/URI handling functions instead of writing our own 2014-01-13 09:50:10 +01:00
Sebastian Dröge 0de582b24f emotion gstreamer1: Rename functions and variables for clarity
Also remove some useless variables.
2014-01-13 09:50:10 +01:00
Chris Michael 7b83985d7e Unbreak ecore_evas wayland engines:
Val variable is not declared here. Use the variable 'on' which was
passed in to this function.

Signed-off-by: Chris Michael <devilhorns@comcast.net>
2014-01-13 07:52:24 +00:00
ChunEon Park fb59ac34a1 ecore_evas - use eina_bool instead of the char for interal data. 2014-01-13 14:26:36 +09:00
Carsten Haitzler 93fd2263fc evas gl - fix egl/gles build after alpha4 change for fonts 2014-01-13 07:02:24 +09:00
Carsten Haitzler 86a97efeea evas - fonts - move to using 4bit and rel 4 bit compressed font glyphs
this changes the internal encoding of font glyphs in evas to use 4bit
uncompressed if small, or 4bit rle (run length encoded) if larger.
this caves at least 50% of memory on fonts - and more if bigger. with
large fonts (40-80pixel size) we can save in the region of 80% of
memory used for glyphs. this also happesn to allow speedups in
rendering too.
2014-01-13 05:15:32 +09:00
Carsten Haitzler f21b0ee6c3 evas gl - prefer alpha4 format for font textures if possible (save memory)
if alpha4 is possible (desktopgl) then use it for fonts as this should
cut memory in half for them and possibly speed things up due to less
memory bandwidth needed
2014-01-13 05:15:32 +09:00
Daniel Juyung Seo d4a3b9a233 ecore_evas_x: Call _ecore_evas_x_sync_clear() after
_ecore_evas_x_gl_window_new() to ensure eglDestroySurface is called
before XDestroyWindow call.

In case of gl engine, eglDestroySurface should be called before
XDestroyWindow.
Special thanks to Changwoo Kim <ce2010.kim@samsung.com> for the idea.
2014-01-12 17:22:40 +09:00
Daniel Juyung Seo 15b6bd99ef ecore_evas_x: Fix gl_sync_draw_done initialize routine to handle
exceptional case.

As ECORE_EVAS_GL_SYNC_DRAW_DONE is an environment variable, that could
have unexpected value like 2 or 3. So set gl_sync_draw_done to 1 only
when the env variable is 1.
2014-01-12 17:01:02 +09:00
Daniel Juyung Seo 881f4e9c75 ecore_evas_x: Refactor/flourish gl_dync_draw_done member from Ecore_Evas
structure.

- moved gl_sync_draw_done for a better structure packing.
- changed gl_sync_draw_done type from int to char which is enough.
- added more description to gl_sync_draw_done
2014-01-12 16:37:30 +09:00
ChunEon Park f111c8da6d ecore - clean up code.
fix indentation and use Eina_Bool instead of char.
2014-01-11 18:19:43 +09:00
Carsten Haitzler ee9f80f246 comment out unreachable code
fixes CID 1132633
2014-01-10 19:04:32 +09:00
Carsten Haitzler 3de45a2c4b evas gl - comment out unreachable code
fixes CID 1132634
2014-01-10 19:00:54 +09:00
Daniel Juyung Seo 7566c5bbb7 ecore_evas_x: Refactored by reducing cascaded if statements.
Just return the function. Do not create unnecessary cascaded if
statements it makes indentation depth deeper.
2014-01-08 23:32:43 +09:00
Daniel Juyung Seo 96fe10ba68 ecore_evas_x: Check 1 for gl_sync_draw_done instead of 0 before sending comp_sync_draw_size_done.
There was a corner case which gl_sync_draw_done is set to -1. So send
comp_sync_draw_size_done when the gl_sync_draw_done is not 1. It can be -1 or 0.

This is a manual cherry-pick from tizen.org.
Thanks to original author Jiyoun Park.

commit 4be6c821df4ccd418dbe44f7e6fecbcd7dd66d74
Author: Jiyoun Park <jy0703.park@samsung.com>
Date:   Thu Jul 4 18:04:11 2013 +0900

    fix lockup issue (N_SE-44214)
    because this sync draw done cannot be send

    Change-Id: Id05978e925d5b44d6ca9af0a1684bbb255b9ec5b
2014-01-08 23:32:43 +09:00
Daniel Juyung Seo e5bfbedfa2 ecore_evas_x: Fixed formatting and added an empty line for a better readability. 2014-01-08 23:32:43 +09:00
Carsten Haitzler e8c13118eb fix mingw build for setuid fix/checks 2014-01-08 22:06:41 +09:00
Carsten Haitzler b95ef3801f setuid safeness - ensure if an app that is setuid doesn't do bad things
this makes efl ignore certain env vars for thnigs and entirely removes
user modules (that no one ever used) etc. etc. to ensure that *IF* an
app is setuid, there isn't a priv escalation path that is easy.
2014-01-08 19:46:23 +09:00
Carsten Haitzler e9783c3caf evas - gl-x11 engine - put in guessed blacklist of yinvert extn for intel mesa 2014-01-07 16:28:46 +09:00
Cedric Bail e362924c0e emotion: it has already been assumed that 'send' was not NULL before. 2014-01-05 12:07:42 +09:00
Chris Michael 3ddb62d8d3 Add EINA_UNUSED for unused function parameter
Signed-off-by: Chris Michael <devilhorns@comcast.net>
2014-01-04 11:17:01 +00:00
Sebastian Dröge 9637c2b835 Major cleanup of the Emotion GStreamer 1.x video sink
Next step: state handling in the GStreamer backend

Reviewers: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D431

Signed-off-by: Cedric Bail <cedric.bail@free.fr>
2014-01-04 11:46:27 +09:00
Cedric Bail 3e302e7e61 ecore_evas: extn - restore missing symbol that resulted in a temporary ABI break.
Thanks to Albin and Debian tools to have spotted that.

- cherry-pick me -
2014-01-04 11:23:47 +09:00
Jihoon Kim 8c819cf214 scimimmodule: remove unused code
need_commit_preedit was always false, so those code are useless.
2014-01-03 16:23:50 +09:00
Stefan Schmidt a440c8da27 emotion: Fix missing include resulting in unknown type GstNavigationCommand
At least on the gstreamer1 version in Fedora 19 this include is needed. Glima
reported it as well and I think he also uses Fedora.

modules/emotion/gstreamer1/emotion_gstreamer.c:643:4: error: unknown type name
'GstNavigationCommand'

Even if other distros or gstreamer1 versions do not need this it should be safe
to add it here.
2014-01-02 13:54:39 +01:00
Jihoon Kim d6d8a910fe scimimmodule: support super key (between ctrl and alt key) 2014-01-02 15:08:01 +09:00
Jihoon Kim a37bf01a53 scimimmodule: code refinement related to key modifier and lock 2014-01-02 15:00:51 +09:00
Jihoon Kim 6a5c7dc7a3 ibusimmodule: support CAPS LOCK and NUM LOCK
When ibus immodule was used, caps lock and num lock had been not working.
2013-12-31 18:07:36 +09:00
Jihoon Kim 3191776c01 ibusimmodule: fix segmentation fault
This patch fixes "free(): invalid pointer issue"
2013-12-31 10:03:45 +09:00
Carsten Haitzler 2373e1f636 evas - gl-x11 remove +x bit on src file! 2013-12-30 18:27:06 +09:00
Carsten Haitzler 7a46449191 ecore-evas - x11 - call resize callback if wm denies resize request
in SOME cases a wm may deny a resize request entirely and keep the
window size the same. it does so with a configurenotify of the SAME
size as before. problem is we never passed this onto the app with a
resize callback of the original size before request to the new size.
this does that now.

cherry-pick me!
2013-12-30 13:43:49 +09:00
Carsten Haitzler d16f0ceaf6 emotion - generic - set play after setting mutes and play speed etc. 2013-12-28 11:28:51 +09:00
Sebastian Dröge 0db1818487 emotion: don't duplicate storage of audio/video stream metadata in GStreamer 1.x backend.
Reviewers: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D415

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-27 17:51:20 +09:00
Carsten Haitzler acf7dfa579 evas - gl engine - glerr should be off by default for performance
stable release - cherry-pick me!
2013-12-27 17:32:15 +09:00
Sebastian Dröge 1875e4725f emotion: remove (broken) X11 integration from the GStreamer 1.x backend.
This code was disabled and did not work properly. If this should be
re-added it will have to be rewritten anyway and currently it only
clutters the existing code.

Reviewers: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D414

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-27 09:56:20 +09:00
Carsten Haitzler 153a744e67 evas gl engine - ensure on texture delete we never leave a cur tex id dangling 2013-12-26 21:04:25 +09:00
Vostokov Sergey 36a52ca062 evas - gl-x11 engine - don't re-init engine window on rotate
this puts rotationc hanges in the same class as resizes for evas gl
x11 engine info updates and doesnt re-create the engine window data on
rotate.
2013-12-26 19:19:15 +09:00
Daniel Juyung Seo 76d8532b54 efl: Unified eina critical manro to CRI.
Being annoyed by different types of eina critical macros - CRI, CRIT,
 CRITICAL -, I concluded to unify them to one. Discussed on IRC and
 finally, CRI was chosen to meet the consistency with other macros -
 ERR, WRN, INF, DBG - in terms of the number of characters.
If there is any missing bits, please let me know.
2013-12-26 12:27:13 +09:00
Dennis Schridde ff4cbfbc25 evas: fix a segfault in _draw_thread_font_draw, caused by the missing initialisation of a struct field
CC: cedric

Differential Revision: https://phab.enlightenment.org/D407

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-26 10:32:48 +09:00
Sebastian Dröge 9c752106f7 emotion: initial port of emotion to GStreamer 1.0
Some commits to port emotion to GStreamer 1.0 and implement some missing features,
clean up code a bit and fix some bugs on the way.

This works as good as the 0.10 code for me now with the emotion examples,
just the Samsung hardware specific code is commented out. This should be
ported by someone who has such hardware, and also in a clean way now that
GStreamer since 1.0 has features to handle all this properly.

There's still a lot of potential to clean things up and fix many bugs, and also
to implement zerocopy rendering. But those are for later if there's actual
interest in this at all.

Commits:

- Update configure checks and ecore example to GStreamer 1.0
- Initial port of emotion to GStreamer 1.0
- Samsung specific code commented out, should be ported by someone
with the hardware.
- Return GST_FLOW_FLUSHING when the sink is unlocked
- Remove unused GSignal from the sink
- Use GstVideoInfo to store the format details inside the sink
- Add support for pixel-aspect-ratio
- Store video format information in GstVideoInfo for the different video streams
- Use GstAudioInfo to store the audio format information
- Remove some unused defines
- Header cleanup
- Implement initial support for GstNavigation interface
- Implement setting of audio/video channel

Reviewers: cedric

CC: cedric

Differential Revision: https://phab.enlightenment.org/D387

Signed-off-by: Cedric BAIL <cedric.bail@samsung.com>
2013-12-23 10:59:42 +09:00
Gustavo Sverzut Barbieri 91a2711225 emotion_generic: fix permissions, resource leaks and error handling.
- create permissions as 0700, this should be private to the running user.

 - do shm_unlink() on error, prevents resource leaks;

 - apply close() on error, prevents resource leaks;

 - handle strerror() properly.

 - shm name uses process id, object name and ecore's time, should be
   cleaner and avoid possible clashes

 - ecore_exe do not need to read from slave stdout/err, this removing
   the flags allows messages to come visible at terminal.
2013-12-21 17:08:35 -02:00
Gustavo Sverzut Barbieri 376ca3f09b fix doc typo, ernno usage and add missing close().
- fix typo, it's slave not slayer... :-D

 - errno: you can't use errno to report error from failed mmap() if
   you do another call that sets errno after that, in that case
   fprintf(). So have a single print so we can use the errno value of
   the proper call.

 - although the slave generic player is not that important if it leaks
   its single shmfd, let's be pedantic and close it. Manpage says it
   is safe to close filedescriptor after mmap() worked.
2013-12-21 15:02:52 -02:00
Gustavo Sverzut Barbieri fc05567c8f extn: remove files.{w,h} that are not used. 2013-12-20 13:10:38 -02:00
Gustavo Sverzut Barbieri a2baca3270 extn: remove unused attribute am_server. 2013-12-20 13:09:52 -02:00
Gustavo Sverzut Barbieri 4f4f662a40 extn: complete with NULL newly added functions. 2013-12-20 13:08:51 -02:00
Gustavo Sverzut Barbieri c7fed5d879 extn: fix typo, alpha is SHM_REF2, not 1! 2013-12-20 12:59:13 -02:00
Cedric BAIL 1929637aa0 evas: no loader should ever close an Eina_File anymore.
This would lead to some crash in EFM if relying on Evas to find the file format by
trying all its loader.

This should fix T674 and T668.
2013-12-20 15:10:16 +09:00
Carsten Haitzler 846bbafbfb evas - jpg loader - speed up header check for pgoressive jpgs 2013-12-20 14:14:52 +09:00
Guillaume Friloux 8937708e43 Fix coding style madness. 2013-12-19 11:12:46 +01:00
Jihoon Kim 75e399158c ibusimmodule: fix dereference after null check issue
The variable 'str' was used after checking NULL.
2013-12-19 10:20:42 +09:00
Daniel Juyung Seo c4b7f83ef6 ecore_evas: removed author's name from source code as the author requested it.
Git log should be enough for the credit :)

This code was merged into efl upstream by devilhorn's aggressive synchronization between efl upstream and tizen.
But that commit didn't have the author's credit.
However We will never forget the contribution of Gwanglim Lee <gl77.lee@samsung.com>.
2013-12-18 23:49:06 +09:00
ChunEon Park 0947bae126 ecore/ecore_x - show the window if the window should be visible.
when the window alpha mode is changed, the x window is re-created.
but if the window is going on the show state(not visible yet but waiting for visible from xserver) this window never be visible.
so here it make the window visible also if the window is going on the visible state.
2013-12-17 20:37:17 +09:00
Carsten Haitzler 5dfe3789f2 evas - fb engine - fix mem leak if ioctl fails on fb mode
this fixes CID 1137852
2013-12-15 11:25:56 +09:00
Carsten Haitzler d3caca21e5 evas - software-x11 - fill in unused struct members to avoid uninitialized
this shoudl fix CID 1039548 (missed other memmbers before) and if
valgrind ever sees this now it won't complain either.
2013-12-15 11:12:47 +09:00
Carsten Haitzler 611714649b evas - silence coverity in code
fixes CID 1039549 and CID 1039548 - though it isn't a bug, but means
it should not come back in coverity.
2013-12-13 21:26:05 +09:00
Jihoon Kim 236c9a1520 ibusimmodule: support preedit style
This patch will support to display the style of preedit such as underline, reverse.
2013-12-13 20:17:19 +09:00
Carsten Haitzler 8f876cfe72 evas - fix gif loader drop of image data sometimes (image dump/flush)
stable release - cherry-pick me!

this fixses some still gifs going missing.
2013-12-12 18:42:13 +09:00
Carsten Haitzler 6a75806e54 evas - evas gl - fix realloc failure case to handle it properly
patched shader string realloc failure not handled right - could leak
patched string and p.
2013-12-11 22:44:42 +09:00
Carsten Haitzler f3d1db0fba evas - evas_gl - fix shader patch to not free static strings
parsing problem with opengl_strtok() which would free the previous
token "p", but in some cases it would be a const string. this should
fix CID 1039653
2013-12-11 22:40:15 +09:00
Carsten Haitzler 6a054930ff ecore - ecore systemd module - unused var warning - remove unused var 2013-12-11 20:21:32 +09:00
Carsten Haitzler 1dc9f1fece emotion - generic module - re-order code to make coverty happy
this fixes CID 1039884 which isn't a real problem as the callback del
never dereferences the data pointer - just uses it as a value, but
this is really to ensure that it doesn't come back if the code were to
change.
2013-12-11 19:54:15 +09:00
Carsten Haitzler 97a491dd90 evas - gl - ifdef out unused var with non-gles build 2013-12-11 18:26:45 +09:00
Carsten Haitzler 24c6424670 evas - gl - use snprintf for safety (never likely anyway, so code was fine) 2013-12-11 18:25:29 +09:00
Carsten Haitzler 22da09105d evas gif loader - address animated always being true
this addresses CID 1135790 and removes useless checks.
2013-12-11 18:10:15 +09:00
Carsten Haitzler 9a3294d1cb gif loader - handle theoretical NULL loader_data case 2013-12-11 09:23:09 +09:00
Carsten Haitzler 3047ec4d91 evas - fix gif loader cpu overuse - used too much cpu to decode anims
stable release - cherry-pick me!

the evas gif loader used way too much cpu to decode animated gifs
because in the rewrite that made it correct, it did not store the
current gif file handle and state, thus each frame it would have to
decode all frames before that one before finally decoding the final
one. that means to decode frame 200, it decoded frame 1, 2, 3, 4 etc.
all the way up to 199 THEN decoded 200 on top, so decode cost became
progressively more then further through the animation you were.

this fixes that by storing state and file handle and allowing you to
iterate through.
2013-12-10 16:38:23 +09:00
Rafael Antognolli 15b5497dfa ecore_imf/wayland: Only call hide_input_panel on im_context_hide().
There's no need to call it on text_input_leave too, otherwise this would
be called twice, the one from text_input_leave possibly being called
after the focus was regain already by a text input, causing the bug
described in T237.

This fixes T237.
2013-12-09 14:25:40 -02:00
Rafael Antognolli cb3fcca0e7 ecore_evas/wayland: Update withdrawn property, and inform state_changed. 2013-12-09 08:26:24 -02:00
Jean-Philippe Andre ce166ec223 Evas: Fix crash in GL engine(s) during preload cancel
In my config, running terminology with the GL engine and under
cserve2, some image could not be loaded. The tex argument
in evas_gl_preload_target_[un]register was NULL, leading to
an immediate crash.
2013-12-09 17:28:02 +09:00
Chris Michael 13caf63420 Fix opaque windows becoming transparent after hide() then show().
This fixes Phab #T611. Previously, windows which were opaque would
become transparent after being hidden and then shown. We fix that by a
call to ecore_wl_window_alpha_set when the window gets shown. This
patch also brings the wayland_egl hide code more inline with the shm
hide code by testing if the surface does not match the existing one.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-09 07:35:16 +00:00
Chris Michael 1ac5a89957 Add code to deal with min, max, step, aspect, and base sizes.
Properly fix efl wayland elm window resize problem.

This adds support for min, max, step, aspect, and base size properties
when resizing a canvas under EFL Wayland.

This Also Properly fixes raster's report for EFL Wayland elm windows not
resizing properly. Previously, when resizing an elm window in wayland,
a portion of the window would draw outside the frame.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-05 11:52:37 +00:00
Chris Michael 8f21dfe06b Set engine aspect function pointer
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-05 11:52:37 +00:00
Chris Michael a36b1641d9 Add common function prototype for setting ecore_evas aspect ratio
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-05 11:52:37 +00:00
Jihoon Kim 3dfc3dcd2c ximmodule: fix issue the cursor of preedit shows the in front of preedit string
Before fixing this issue, the cursor of preedit appears the in front of preedit string.
The cursor of preedit string will appear in the proper position.
2013-12-05 16:06:39 +09:00
Jihoon Kim 0eb5cfaa30 ximimmodule: remove useless code in preedit_string_get
'cursor_pos' variable will be set in the below code, so 'cursor_pos = 0' is useless.
2013-12-05 16:00:39 +09:00
Chris Michael ae7fd6fac0 Fix raster bug report about elm window resize issue (content drawing
outside the window).

Be sure that the EEs requested geometry gets updated in our
common_resize function After min/max have been taken into account.

Elm is using ecore_evas_request_geometry_get in it's resize_job code
(Why...I have no clue lol. Does not seem like a good thing to check).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-04 11:32:45 +00:00
Chris Michael 231790c7cb Update the engine resize edge before we call ecore_wl_window_resize
Ecore_wl_window_resize essentially tells the shell to start the resize
process. We should have the evas engine info's resize_edge updated
Before we start that process so that Evas knows where the resize is
occuring from

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-12-04 11:32:45 +00:00
Cedric Bail 885222f22d evas: fix loader to properly define _XOPEN_SOURCE for Solaris. 2013-12-04 18:33:04 +09:00
Jihoon Kim 8fe2ec9d4b ximmodule: check whether pointer is NULL before accessing in xim_preedit_callback_set
ecore_imf_context_data_get () can return NULL, so it should be checked before using the result value.

This fixes CID 1135273
2013-12-03 13:32:15 +09:00
Rafael Antognolli 615d5ab634 ecore_evas/wayland: Add a function to cleanup the frame callback.
This callback must be manually destroyed and removed on
ecore_evas_hide(), because it won't be delivered anymore after the
surface is destroyed. If the callback still exists, the engine will find
it and avoid doing a new redraw until it is finally called.

Maybe the correct thing to do is to keep this callback in the
Ecore_Wl_Window struct, and have some functions to set/unset it, so it
gets destroyed when the window is hidden. Or when the surface is
destroyed.
2013-12-02 17:54:29 -02:00
Rafael Antognolli 77a4654470 ecore_evas/wayland_egl: Unset the surface on window hide.
We must unset it, so the Evas engine knows that it has to do all the
setup to destroy the EGL surfaces associated with it. And in the case of
an ecore_evas_show, recreate everything again.
2013-12-02 17:52:00 -02:00
Rafael Antognolli ff5533b4e1 ecore_evas/wayland: Implement ecore_evas_withdrawn_set.
Just call ecore_evas_show/hide inside the function.
2013-12-02 17:51:55 -02:00