Commit Graph

293 Commits

Author SHA1 Message Date
Gustavo Sverzut Barbieri c36a5f23c3 and we must always pre_free, otherwise we end being called after canvas free.
SVN revision: 38272
2008-12-21 22:33:35 +00:00
Gustavo Sverzut Barbieri 0ec59ba102 must dissociate even if we will not delete the canvas.
otherwise subsequent associate requests will crash on us by using stale pointer.



SVN revision: 38271
2008-12-21 22:29:50 +00:00
Gustavo Sverzut Barbieri 02ced33a33 Oops! ecore must not depend on ecore-evas!
move helper function inside ecore-evas.



SVN revision: 38250
2008-12-20 15:19:48 +00:00
Vincent Torri e66e9cc905 * ecore_win32_window.c:
fix fullscreen

 * ecore_evas_win32.c:
   add fullscreen (d3d and ddraw) and shape (d3d) support
   minor formatting

 * configure.ac:
   enable direct3d support



SVN revision: 38248
2008-12-20 14:37:04 +00:00
Carsten Haitzler a38ab7590d doc++
SVN revision: 38229
2008-12-19 14:44:47 +00:00
Carsten Haitzler d3f645a37a add del flag to associate
SVN revision: 38225
2008-12-19 14:30:03 +00:00
Carsten Haitzler 8da641854b dont resize/move fullscreen canvases
SVN revision: 38224
2008-12-19 13:11:21 +00:00
Carsten Haitzler 6fc7c79741 use new engine merge.
SVN revision: 38175
2008-12-17 08:16:21 +00:00
Gustavo Sverzut Barbieri f29338d413 Bugfix: do not search/delete in non-existent hashes.
SVN revision: 38119
2008-12-12 22:34:20 +00:00
Cedric BAIL 642d8686de Remove ecore_hash and eina_hash use from ecore.
SVN revision: 38105
2008-12-11 13:55:47 +00:00
Vincent Torri 4862bc46f1 * Patch by Dmitriy Mazovka
- add shape support in ecore_win32
  - add drag'n drop support in ecore_win32 (reworked)
 * remove strange character (ecore_evas_win32.c)
 * include Eina.h before defining EAPI (Ecore_Data.h)
 * add -lole32 as lib for DnD, minor thing (configure.ac)

next steps will be the new direct3d engine, and full support
of DnD, shapes and fullscreen for the directdraw engine and
in ecore_evas.


SVN revision: 37831
2008-11-27 19:30:39 +00:00
Vincent Torri e9798f4d5e add Windows CE gdi backend
SVN revision: 37713
2008-11-19 09:24:26 +00:00
Vincent Torri 9b19b7dec4 autotools fixes
* remove useless _DEPENDENCIES variables
 * remove useless files in EXTRA_DIST
 * use -no-undefied directly
 * add some flags when the host is windows ce

make distcheck succeeds on my computer

next step will be to fix the horrible mess in Ecore.h and ecore_private.h


SVN revision: 37406
2008-11-02 09:01:35 +00:00
Vincent Torri 36a04eb80a const++
SVN revision: 37405
2008-11-02 08:40:27 +00:00
Vincent Torri f90666e89b const++
SVN revision: 37404
2008-11-02 08:32:52 +00:00
Vincent Torri 478e8c1e4c fix ecore_evas on Windows CE
SVN revision: 37380
2008-11-01 19:01:58 +00:00
Gustavo Sverzut Barbieri 59c00da15a add some const.
SVN revision: 37318
2008-10-29 20:12:45 +00:00
Gustavo Sverzut Barbieri fe94f35f38 Return associated object.
SVN revision: 37316
2008-10-29 19:50:24 +00:00
Gustavo Sverzut Barbieri 9f45e76c20 Export driver as engine_name.
Also make sure it matches the names used by engines_get().



SVN revision: 37314
2008-10-29 19:31:05 +00:00
Gustavo Sverzut Barbieri 37b9f3af65 use unsigned for 1-bit members.
SVN revision: 37313
2008-10-29 19:07:10 +00:00
Sebastian Dransfeld 6c3723225a parse functions should return the point where they left of.
SVN revision: 37168
2008-10-26 20:05:59 +00:00
Sebastian Dransfeld 92383c7ce4 Don't declare static functions if they are not used.
SVN revision: 37165
2008-10-26 19:56:38 +00:00
Sebastian Dransfeld c343d0dfb9 Don't declare static functions if they are not used.
SVN revision: 37164
2008-10-26 19:54:42 +00:00
Sebastian Dransfeld 71e3ad924c This function returns void
SVN revision: 37163
2008-10-26 19:45:59 +00:00
Gustavo Sverzut Barbieri 0621fd52cc add helper ecore_evas_object_associate.
We usually want to create an Ecore_Evas and attach an object to it, be
it the background, your smart object that will manage the scene (ie:
edje) and this is replicated everywhere. Not anymore!

ecore_evas_new() and ecore_evas_object_associate() will behave much
like regular toolkits "window-new()" and "window-main-child-add()",
actually it was based on elm_win.c and hopefully we can remove that,
or most of that code and replace with this helper.

I'll add an Evas smart object to handle stacks of objects, that is, it
will be a clipped smart object that on resize it will resize every
child to the same size. This means we can associate this stack object
and add a background and then your stuff on top of it.



SVN revision: 37010
2008-10-23 01:00:16 +00:00
Carsten Haitzler f7283eb333 remove some debugging
SVN revision: 36960
2008-10-22 09:25:38 +00:00
Cedric BAIL 0780128787 Remove Evas_List from Ecore.
SVN revision: 36941
2008-10-21 15:54:55 +00:00
Miculcy Brian 0660f3a086 fix warnings, thanks thomasg
SVN revision: 36643
2008-10-13 23:27:58 +00:00
Cedric BAIL 3d49d88a32 Make ecore depend on eina. No change in the code yet, so just fix your build system and no bug must show up.
SVN revision: 36622
2008-10-13 15:59:19 +00:00
Carsten Haitzler 5b4a924fd5 tim horton's quartz engine patches - ecore adds.
SVN revision: 36110
2008-09-20 02:08:50 +00:00
Gustavo Sverzut Barbieri 6956e1057b Since we use ecore, we must initilize it.
Problem: ecore reference count can drop to zero before
_ecore_evas_async_events_fd is deleted, ecore_shtudown() will finish
all fd handlers and then we would delete a now invalid pointer.



SVN revision: 36055
2008-09-17 17:19:20 +00:00
Cedric BAIL bae88b46ff Include evas asynchronous feature.
SVN revision: 36019
2008-09-16 16:22:00 +00:00
Cedric BAIL 41d40ee473 Put SDL engine priority lower as it should find a way to build a window when
every one else fail.



SVN revision: 35955
2008-09-11 14:48:34 +00:00
Cedric BAIL 3a15a282fc Add auto discovery for ecore_evas_sdl_16
SVN revision: 35954
2008-09-11 14:47:09 +00:00
Cedric BAIL d748ced8e1 Add ecore_evas_sdl16_new.
SVN revision: 35950
2008-09-11 13:26:40 +00:00
Gustavo Sverzut Barbieri 7292d49894 Add generic call to create Ecore_Evas from engine names.
One can get engine names with ecore_evas_engines_get() and present
them to its users (from --help, for example) and then give that name
to ecore_evas_new(), that accepts the name, geometry and extra options
as a string.

As I don't have all the engines here, I might have missed something
from those, tested here:

 - software_x11
 - xrender_x11
 - opengl_x11
 - directfb
 - buffer



SVN revision: 35919
2008-09-10 05:13:29 +00:00
Carsten Haitzler a8125498b8 actually activating... use "2" (for pager) as this should normally activate
as opposed to just ask for attention


SVN revision: 35423
2008-08-10 02:01:17 +00:00
Carsten Haitzler e379ef6e87 fix software 16 build!
SVN revision: 35216
2008-07-25 15:41:32 +00:00
doursse ef61dbeb14 Big change in configure.in, ecore_x and ecore_evas. Everything compile nicely
after a make maintainer-clean, with xlib or xcb. e17 also has no problem.
Please report any problem. Thanks

 * put xlib and xcb specific code in their own directories inside ecore_x
 * fix xcb logic check in autotools and ecore_evas
 * update configure.in for detection of ecore_evas with xlib and xcb support,
   update ecore_evas accordingly. Note that e17 needs a little fix after that,
   it will come in a few minutes


SVN revision: 35188
2008-07-23 10:00:01 +00:00
doursse a7dcdaeb55 * use ECORE_EVAS_CHECK_MODULE for Windows modules
(other modules will follow later)
 * update Windows ecore evas module accordingly
 * factorize win32 code before cedric changes :p
 * add warning for vc++ (patch from Dmitriy Mazovka)


SVN revision: 35137
2008-07-17 06:06:34 +00:00
doursse d569f393d6 put guards around config.h, remove trailing spaces
SVN revision: 35104
2008-07-14 10:06:34 +00:00
Carsten Haitzler 542e51691b ecore_evas activate call.. uses netwm one... eek. need to add xcb.
SVN revision: 34949
2008-06-30 08:39:36 +00:00
Carsten Haitzler 2423c1e22c disable clearing of startup_id
SVN revision: 34947
2008-06-30 01:16:38 +00:00
Gustavo Sverzut Barbieri 0c351c3edd Fix deletion of ecore_evas_directfb and ecore_directfb_window.
SVN revision: 34936
2008-06-28 14:12:20 +00:00
doursse 3d175f57e9 add glew engine support in ecore_evas. fix Windows backend compilation
SVN revision: 34916
2008-06-26 09:56:08 +00:00
doursse a2c9599b9f fix the initialisation of the evas engine informations for directdraw and direct3d
SVN revision: 34909
2008-06-26 04:34:06 +00:00
Eric Schuele c543df064c On occasion we see ee->prop.title == NULL. This will safeguard.
SVN revision: 34881
2008-06-21 02:44:38 +00:00
codewarrior 8e2e1a40a3 Set title again after we destroy the X window when setting alpha on and off.
SVN revision: 34876
2008-06-19 21:03:17 +00:00
doursse 6456e1f6b7 add ecore_evas for wince
SVN revision: 34759
2008-06-06 13:57:03 +00:00
Carsten Haitzler 43821d36e4 * add efreet garbage data check
* remove printfs that clutter output
* add efreet file type check - only parse regular files
* chekc mmap returns correctly for MAP_FAILED results
* edje has some stubs for adding script-only objecvts - but nothing useful
right now


SVN revision: 34689
2008-05-29 02:00:04 +00:00
Gustavo Sverzut Barbieri b0f295b1dd Match initial changes to DirectFB/evas.
SVN revision: 34688
2008-05-28 19:31:51 +00:00
doursse f04b9cc862 make some ecore modules compile with cegcc
SVN revision: 34673
2008-05-26 07:07:50 +00:00
doursse cc0ca9325e integration of evil in ecore. It's compiling on windows and my ubuntu. The commit is big, please report any problem
SVN revision: 34671
2008-05-26 05:16:34 +00:00
Carsten Haitzler 188e5b5bf0 use the cancel on a mouse out with grab
SVN revision: 34608
2008-05-19 04:15:34 +00:00
Mike Frysinger 184812f289 replace a lot of win32 ifdef hacks with autoconf checks
SVN revision: 33616
2008-01-26 05:40:53 +00:00
Carsten Haitzler ebdbf7c6ec tslib supprot back from tobias.
SVN revision: 33577
2008-01-24 02:23:14 +00:00
Carsten Haitzler 28a9a00d43 fix sdl link to only link to sdl if enabled
SVN revision: 33567
2008-01-23 23:46:56 +00:00
Carsten Haitzler c1441e1c3a e:
1. configure/build changes to allow cross-compiling painlessly
2. pager module namespace changes - this was still dirty afdter the namespace
cleanup, so clean it up
3. add a powersave subsystem - doesnt have an "automatic" way to turn on and
off right now, this i think is best provided by modules (that do things like
monitor acpi status's (eg close lid of laptop), AC power status etc. etc.
this allows e to nicely defer "power" expensive actions to avoid disk
spinups etc.
4. move to use the new ecore poller system  - discussed long ago as part of
power management/saving issues. now it exists
5. add a canvas idle flush call that helsp cope with the new shm greedy
software x11 engine stuff
6. use the new powersave subsystem where appropriate
7. fix non-zeroed/initted memory access in e_fm_main
8. fix mem leak for e menus
9. remove ipc handlers for changed/removed config values
10. use animaotr not timer for menu scrolls - then menu scrolls obey the fps
config
11. fix up timer/poll happienss of cursor idle stuff
12. remove avoid damage from popups for now - causing problems
13. change battery and temp readouts to b e shorter so they fit
14. pager can emit signals on focus change for mini-windows now
15. temperature module now uses a slave process and uses stdin/out to talk to
it and get output - this makes e smoother as in my expereicne i found getting
the temp on my laptop actually took like 200ms so e "hang" for 200ms while
reading the acpi files - so now the subprocess does it and just writesa back
to e when it gets it.

ecore:
1. add ecore_pollers. see the documentation on them in doxygen comments :)
2. fix timers to only go off when they have to - bug there that made e's
select time out a LOT more than it needed to. defensive coding hid the
problem. now fixed. e should be much more power friendly now.
3. formatting/niceness in ecore_exe stuff
4. some comments on comments with SIGIO ideas vs. select
5. add call to be able to add an idle enterer at the start of the list of
them, not just the end (as has been the default)
6. fix ecore_evas to support auto evas idler calls after 0.5 secs of idle in
all canvases - and to do it right
7. if argb destination - set the shape EVENT shape (to mask out events in
transparent regions much like shape does withotu translucency)
8. in ecore_x add support for the event shape

evas:
1. fix cache to work properly and not just always fill up (as it seemed to
like to think cahce useage dropped below 0 when it didnt and thus just
over-fill)
2. software x11 engine now ONLY uses shm segments - no ximages over the
socket. this ximage hack was there to avoid the 2 round trips involved in
setting up an shm image - now i mitigated that wih an shm image cache pool.
it keeps shm images around and repurposes them for new update regions if
appropriate. this means many fewer shm creates (about 1/100th the number) and
since we recycle the memory less 0 memory page filling by the kernel - in the
end, i recorded about a 10-20% speedup over the old software x11 engine.
simple tests i have seen up to 120% speedups. idle flush now does something -
it frees all the cached shm segments. it has a hard-coded limit of 4mb worth
of shm segments (or 32 segments - whichever comes first) to keep around. once
can never complain much about speedups methinks :). also evas will defer sync
until the NEXT frame is written - this means evas can calculate the next
frame of data while x dma's/copies the images to the screen at the same time
(if you hve a dual core or multi-cpu machnike or your xserver is able to use
DMA to copy image data to the screen/video ram then this should see a decent
speedup).


SVN revision: 33448
2008-01-11 07:33:57 +00:00
andrunko 46ed68191b Fixed undefined symbol when BUILD_ECORE_EVAS_X11 is not set.
SVN revision: 32919
2007-11-30 17:12:27 +00:00
doursse f5cc49bd44 forgot to add glew support in configure.in
SVN revision: 32809
2007-11-21 12:16:16 +00:00
Sebastian Dransfeld 2a77a4ec07 Correct ecore list looping
SVN revision: 32787
2007-11-20 05:44:24 +00:00
Carsten Haitzler e935c1a0d7 more input devices checks.
SVN revision: 32782
2007-11-19 23:16:29 +00:00
andrunko 502b766d66 Added Ecore_IMF module.
Added Ecore_IMF module. This module enables different input methods to be
used with Ecore. Input methods modules can be created using the Ecore_IMF
interface.
Added ecore_evas_window_get method to allow input methods to request
the window related to a given Ecore_Evas when available.


SVN revision: 32775
2007-11-19 18:27:11 +00:00
Sebastian Dransfeld 23d39ab154 fix copy/paste error
SVN revision: 32771
2007-11-19 08:42:33 +00:00
Sebastian Dransfeld 9766a725eb Check whether we have input devices (Thanks Lars Munch).
SVN revision: 32770
2007-11-19 08:41:00 +00:00
Sebastian Dransfeld b8c6905eb0 ECORE_X doesn't have anything to do with ecore_evas_x.
TODO: Split the idea of ECORE_EVAS_X11 and the basic software engine.


SVN revision: 32403
2007-11-06 07:21:08 +00:00
Sebastian Dransfeld 1d02ffac0f Rename GL to X11_GL, as there might come other GL engines.
Use PKG_CHECK_EXISTS to check for evas engines.
Only check for ecore_evas_x engines if we build ecore_x.


SVN revision: 32383
2007-11-05 20:23:39 +00:00
Sebastian Dransfeld cb090a2c1d comments
SVN revision: 32374
2007-11-05 18:31:05 +00:00
Sebastian Dransfeld 57e43db8b8 Use pkgconfig, not -config file
SVN revision: 32359
2007-11-04 19:15:29 +00:00
doursse be1229247a autostuff improvements:
* use non deprecated version of AC_INIT and AM_INIT_AUTOMAKE
   and check the required minimal versions.
 * add bzipped distribution archive
 * add AC_LIBTOOL_WIN32_DLL
 * forbid libtool to check fortran
 * compute libtool versioning from the version of the package
 * pass the directories based on ${prefix} to the preoprocessor
   with the -D option
 * replace INCLUDES, wich is deprecated since 2001 by AM_CPPFLAGS
 * remove useless -L flags in *_la_LDFLAGS


SVN revision: 32338
2007-11-04 09:29:20 +00:00
tilman 75bd5e8902 Ecore now checks whether the composite extension is available before trying to open an ARGB window.
SVN revision: 31986
2007-10-06 08:37:34 +00:00
Carsten Haitzler 6a9f664bea avoid damage now has an enum (compatible with the old way at ABI though), so
you can either handle it via exposes, or native system methods (bg pixmaps)


SVN revision: 31944
2007-10-03 06:31:05 +00:00
Carsten Haitzler b51a8f26ad enable and disable draw ok onlyu on visibility changes.
SVN revision: 31860
2007-09-29 01:52:13 +00:00
Carsten Haitzler 7a7607d656 ok fixed visibility event. now it works as planned.
SVN revision: 31832
2007-09-27 15:43:08 +00:00
Carsten Haitzler e8a3ed6312 trying to optimise expose draws - i think i fixed a double-draw bug.
SVN revision: 31831
2007-09-27 15:31:00 +00:00
Gustavo Sverzut Barbieri ac9e3d7412 Do not set color of cursor object.
We should not set the color of cursor objects, it damages things like
rectangles and polygons.


SVN revision: 31820
2007-09-26 15:41:50 +00:00
Gustavo Sverzut Barbieri e04b782d50 Change Ecore_Evas to work with Evas_Object as cursor.
WARNING: this breaks the API, if you rely on ecore_evas_cursor_get(), you
need to get the "Evas_Object *" instead of the filename.

Now the code is smaller and we can handle any object, including Edje.

Patch by Cedric BAIL.


SVN revision: 31818
2007-09-26 14:40:02 +00:00
Gustavo Sverzut Barbieri 7468078e12 SDL improvements.
Patch by Cedric BAIL (with minor changes).


SVN revision: 31815
2007-09-26 14:00:14 +00:00
doursse b8199cb7bc Win32 port:
* add _window_get() functions
 * add minimal fullscreen support (not completely finished yet, but should work)
 * remove CR character in ecore_evas_win32.c


SVN revision: 31790
2007-09-23 11:57:34 +00:00
Carsten Haitzler 4b3c2c81af well that was wrong! fix!
SVN revision: 31647
2007-09-08 04:51:16 +00:00
doursse b50328b469 fix ecore_evas_engine_type_supported_get and ecore_time_get on windows
SVN revision: 31552
2007-08-27 10:20:12 +00:00
doursse 50432552c8 add windows support to ecore. ecore_evas is ported too (directdraw and direct3d. No opengl yet). It needs to be tested a lot, though. Remove some trailing spaces here and there. Replace WIN32 with _WIN32
SVN revision: 31513
2007-08-26 11:17:21 +00:00
Carsten Haitzler 526f902e06 open has become nasty! --- che! :)
SVN revision: 31383
2007-08-18 14:26:49 +00:00
Gustavo Sverzut Barbieri 4a4a0b0f4c Software 16 X11 now does rotation.
SVN revision: 31215
2007-08-07 19:09:53 +00:00
Peter Wehrfritz cd20fbc9d9 *API BREAK* see the discussion in the mailing list. misc and e_modules will follow
SVN revision: 30970
2007-07-25 17:01:04 +00:00
Carsten Haitzler 64171b5ca6 cedric's SDL egnine patch - finally.
SVN revision: 30844
2007-07-16 07:23:11 +00:00
Gustavo Sverzut Barbieri 59d7929e73 Ecore_Evas now supports software_16_x11 engine.
SVN revision: 30424
2007-06-21 22:49:36 +00:00
Sebastian Dransfeld 68f78f8e7f I assume that the Evas should be flushed and not the Ecore_Evas.
SVN revision: 30374
2007-06-17 09:23:51 +00:00
Carsten Haitzler aa68331c2a add idle flush support - 0.5 secs of no rendering gets the engine to flush
all floating data.


SVN revision: 30358
2007-06-17 03:41:43 +00:00
Carsten Haitzler 849e428e7f documentation from brett... tiler can compiler again.
SVN revision: 30221
2007-06-04 09:48:28 +00:00
Carsten Haitzler d825b13440 delete all ev handlers
SVN revision: 30208
2007-06-03 07:07:27 +00:00
tilman 1b5c08f276 fixed alpha_set for xrender-xcb
SVN revision: 29968
2007-05-12 14:15:34 +00:00
tilman 5dfbd6c396 refactored _alpha_set a bit
SVN revision: 29967
2007-05-12 14:13:19 +00:00
tilman f036a36c22 grab the cookies before we try to evaluate them
SVN revision: 29953
2007-05-11 18:53:35 +00:00
tilman f6558699c2 check for xcb engines in _alpha_set.src/lib/ecore_evas/ecore_evas_x.c
SVN revision: 29952
2007-05-11 18:13:01 +00:00
Carsten Haitzler e2742227ad printf--
SVN revision: 29548
2007-04-16 01:35:55 +00:00
Carsten Haitzler 98acf4c416 remove debug printf
SVN revision: 29504
2007-04-14 06:51:43 +00:00
Carsten Haitzler c09e4641cd noooo. fixie fixie.
SVN revision: 29503
2007-04-14 04:20:23 +00:00
doursse 61543a8933 Here is ecore_x with XCB backend.
* The XCB backend is disabled by default during the
   configuration. To enable it, add --enable-ecore-x-xcb. See the
   messages that configure displays when it finishes.
 * The way XCB is detected, and used in src/lib/ecore_x/Makefile.am
   should be improved
 * Any program that uses ecore_evas does not need to be modified.
   Any program that uses ecore_x may need some changes. That is,
   adding some functions (_prefetch and _fetch ones). No other
   change is needed. See the documention of any _get functions, as
   these are the ones that need those functions.
 * There are some missing parts, especially everything that involves
   the keyboard, as porting Xlib functions related to strings (utf8
   stuff, XKeysymToString, etc...) is an horror. So keyboard events
   are not working yet.
 * I tried to write as much documentation as I could. But there is
   certainly some missing doc here and there.

there are certainly other things that I have forgotten.

Improvements of that backend:
 * the creation of an ecore_evas is faster. Especially when done over
   an ssh connection (on my computer, 7-10s with Xlib, 1.5s with XCB,
   over an ssh)
 * A Window Manager should be more responsive. But it's not tomorrow
   that e17 will use it :)

Have fun !


SVN revision: 29500
2007-04-13 17:15:19 +00:00
tilman 0d323a27ff ugh, translate some documentation from frenglish to english.
SVN revision: 29435
2007-04-07 13:19:18 +00:00