Commit Graph

52 Commits

Author SHA1 Message Date
Jiyoun Park 5e81768386 Implement ee's req value to other windowing system.
currently only x windowing system implement this value


SVN revision: 64634
2011-11-02 06:55:12 +00:00
Jiyoun Park 8edcfacd3f Implement ee's req value to other windowing system.
currently only x windowing system implement this value.



SVN revision: 64554
2011-10-31 10:46:35 +00:00
Gustavo Sverzut Barbieri b136246078 ecore_evas_ews: fixed bug with rendering.
Ouch, did not notice the engines were hardcode to buffer engine, let's
make it generic to the render function of the engine.



SVN revision: 63853
2011-10-05 22:52:41 +00:00
Gustavo Sverzut Barbieri 163272dc48 Welcome EWS - Ecore+Evas Single Process Windowing System.
EWS is a new Ecor_Evas engine that builds on top of other engines. It
will create a backing store Ecore_Evas and ecore_evas_ews_new()
windows are created in it as images, but transparent to the outside
users (similar to buffer's ecore_evas_object_image_new()).

It provides a basic windowing system, with a known background object
that can be changed to your pleasure, and issue Ecore_Events to notify
of new windows and changes like movement, etc. Then you can write a
simple window manager based on it. (See example, Elementary will
contain one as well).

Backing store is determined by your best engine (as in
ecore_evas_new()) or specified with ecore_evas_ews_engine_set() or
environment variable $ECORE_EVAS_EWS (format:
engine-namey:w:h:options). The size can be set with
ecore_evas_ews_setup().



SVN revision: 63848
2011-10-05 22:11:00 +00:00
Carsten Haitzler bf5829a614 make sure we complain enough on stderr about enignes not being found
by ecore-evas. improved error handling, though not really a bug.



SVN revision: 61878
2011-07-29 06:20:55 +00:00
Gustavo Sverzut Barbieri 89971de866 Ecore_Evas: introduce ecore_evas_screen_geometry_get()
This common interface allows engines to provide whole screen
information to users.

Right now just X is implemented and it queries the size of the default
screen. I hope this is fine.



SVN revision: 59761
2011-05-27 19:31:11 +00:00
Daniel Juyung Seo 6ef3841a37 Ecore: Removed trailing whitespaces.
SVN revision: 58753
2011-04-20 14:15:33 +00:00
Vincent Torri 439168c6ff tab------------
SVN revision: 52896
2010-09-29 17:03:38 +00:00
Vincent Torri 62bcf9643e check the returned value of evas_engine_info_set()
SVN revision: 52894
2010-09-29 16:45:49 +00:00
Lucas De Marchi 5a8a8c9014 Convert (hopefully) all comparisons to NULL
Apply badzero.cocci, badnull.coci and badnull2.cocci

This should convert all cases where there's a comparison to NULL to simpler
forms. This patch applies the following transformations:

code before patch               ||code after patch
===============================================================

return a == NULL;                 return !a;

return a != NULL;                 return !!a;

func(a == NULL);                  func(!a);

func(a != NULL);                  func(!!a);

b = a == NULL;                    b = !a;

b = a != NULL;                    b = !!a;

b = a == NULL ? c : d;            b = !a ? c : d;

b = a != NULL ? c : d;            b = a ? c : d;


other cases:

a == NULL                         !a
a != NULL                         a




SVN revision: 51487
2010-08-21 13:52:25 +00:00
Lucas De Marchi 0a4617ae38 FORMATTING
* Remove vim modelines:
 find . -name '*.[chx]' -exec sed -i '/\/\*$/ {N;N;/ \* vim:ts/d}' \{\} \;
 find . -name '*.[chx]' -exec sed -i '/\/[\*\/] *vim:/d' \{\} \;

* Remove leading blank lines:
 find . -name '*.[cxh]' -exec sed -i '/./,$!d'

If you use vim, use this in your .vimrc:
set ts=8 sw=3 sts=8 expandtab cino=>5n-3f0^-2{2(0W1st0



SVN revision: 50816
2010-08-04 16:57:32 +00:00
Lucas De Marchi c7d1c78c46 Finish fixing int => Eina_Bool
A buggy standard.h caused some parser errors in the previous committed
patch generated by Coccinelle. This commit find the other places.



SVN revision: 50052
2010-07-06 00:08:52 +00:00
Lucas De Marchi 7051feb04e Fix callback signatures
The change from returning int to Eina_Bool left several call sites with
warnings because they were not updated. Here they are fixed by using
Coccinelle, a tool that allows us to automate tasks like that. This
commit was generated from the following semantic patch:

virtual org

@r1@
identifier fn!=NULL, fn2;
expression E1, E2, E3;
@@
(
ecore_event_handler_add(E1, fn, ...)
|
ecore_event_filter_add(E1, fn, ...)
|
ecore_idler_add(fn, ...)
|
ecore_idle_enterer_add(E1, fn, ...)
|
ecore_idle_enterer_before_add(E1, fn, ...)
|
ecore_idle_exiter_add(E1, fn, ...)
|
ecore_main_fd_handler_add(E1, E2, fn, E3, fn2, ...)
|
ecore_main_win32_handler_add(E1, fn, ...)
|
ecore_timer_add(E1, fn, ...)
|
ecore_timer_loop_add(E1, fn, ...)
|
ecore_animator_add(fn, ...)
|
ecore_poller_add(E1, E2, fn, ...)
)

@r2@
identifier r1.fn;
identifier ret;
typedef Eina_Bool;
position p;
@@
- int
+ Eina_Bool
fn@p(...) {
<...
(
- return 1;
+ return EINA_TRUE;
|
- return 0;
+ return EINA_FALSE;
|
- int
+ Eina_Bool
ret;
...
return <+...ret...+>;
|
return ...;
)
...>
}

@r3@
identifier r1.fn2;
identifier ret;
position p;
@@
- int
+ Eina_Bool
fn2@p(...) {
...
(
- return 1;
+ return EINA_TRUE;
|
- return 0;
+ return EINA_FALSE;
|
- int
+ Eina_Bool
ret;
...
return <+...ret...+>;
|
return ...;
)
...
}

@r4@
identifier r1.fn;
@@
- int
+ Eina_Bool
fn(...);

@r5@
identifier r1.fn2;
@@
- int
+ Eina_Bool
fn2(...);

@script:python depends on org@
p << r2.p;
f << r1.fn;
@@
import sys
msg="WARNING: wrong callback %s! ( %s:%s )" % (f, p[0].file,p[0].line)
print >> sys.stderr, msg

@script:python depends on org@
p << r3.p;
f << r1.fn2;
@@
import sys
msg="WARNING: wrong callback %s! ( %s:%s )" % (f, p[0].file,p[0].line)
print >> sys.stderr, msg



SVN revision: 49985
2010-07-02 01:38:05 +00:00
이상진 7c9103f3ae From: 이상진 <lsj119@samsung.com>
I am attaching another patches for transparent window.

1. Use RGB Visual.
2. Set destination_alpha in ecore_evas for alpha composite in evas.
3. add Function
   - Ecore_Evas_Engine_Func->fn_transparent_set
   - ecore_evas_transparent_set , ecore_evas_transparent_get
   - elm_win_transparent_set, elm_win_transparent_get




SVN revision: 46106
2010-02-12 05:31:26 +00:00
Cedric BAIL dd1abb5bae * ecore_evas: Cleanup buffer render user. Why isn't this common too ?
SVN revision: 45114
2010-01-14 17:52:29 +00:00
Carsten Haitzler 30939bf353 clean up engines - put idle entere handlign in core. same with lists. quyartz
looks broken to me. sdl looks like it could be much more complete - like
multiple sdl windows/instances.

anyway - allow rendering to be manual.



SVN revision: 44938
2010-01-07 05:29:06 +00:00
Sebastian Dransfeld 0a9456ccf7 Remove duplication from ecore headers
Clean up Ecore.h and ecore_private.h

SVN revision: 44664
2009-12-22 21:15:12 +00:00
Lars Munch 9b521201d0 Fix a few more Ecore_List2 to Eina_Inlist conversion typos.
ecore_evas_x.c is just changed for consistency.



SVN revision: 41085
2009-06-17 16:08:26 +00:00
Cedric BAIL eb543607a3 * ecore: Remove Ecore_List2 from ecore_evas.
SVN revision: 41073
2009-06-17 11:42:02 +00:00
Carsten Haitzler 68129ccab5 dfb has been broken since rev 39505! <- cedric!
SVN revision: 40733
2009-05-19 06:18:00 +00:00
Vincent Torri f8646c4d9c use ecore_input for the windows xp code
SVN revision: 40054
2009-04-14 20:04:16 +00:00
Vincent Torri c2a3c26379 * unused parameters --
* llvm report --


SVN revision: 39977
2009-04-11 10:31:42 +00:00
Vincent Torri f7d7e4e74a API BREAK
for consistentness, ecore_***_window_del is renamed
ecore_***_window_free


SVN revision: 39918
2009-04-10 08:46:41 +00:00
Cedric BAIL 2bf2c79957 * Ecore_Input: Make it generic.
SVN revision: 39577
2009-03-19 13:06:16 +00:00
Vincent Torri 8eb538126c remove trailing spaces
SVN revision: 39574
2009-03-19 07:59:59 +00:00
Cedric BAIL 9f3aac0837 * ecore_evas: Fix typo preventing live preview to work and add
sub_ecore_evas to SDL backend.



SVN revision: 39555
2009-03-18 17:12:52 +00:00
Cedric BAIL 57e8d73fba Let me introduce you to Ecore_Input. The idea is to share as much as possible event
between all ecore graphic engine to ease porting of application and reduce the amount of
specific code per engine. This patch does just that.
	All your application should continu to work has previously, if it's not the case
please report any new behaviour regarding mouse and keyboard.


SVN revision: 39505
2009-03-16 16:24:43 +00:00
Carsten Haitzler 9911c70dff ECORE_EVAS_FPS_DEBUG now printfs useful data.
SVN revision: 39273
2009-02-28 07:54:47 +00:00
Gustavo Sverzut Barbieri b8cf731e79 Fix ecore-evas-directfb feed of keyboard events.
This makes eve/webkit-efl work with directfb.



SVN revision: 39184
2009-02-24 22:43:57 +00:00
Cedric BAIL 3f767e7cf8 * ecore/src/lib/ecore_evas/ecore_evas_quartz.c,
* ecore/src/lib/ecore_evas/ecore_evas_fb.c,
	* ecore/src/lib/ecore_evas/ecore_evas_x.c,
	* ecore/src/lib/ecore_evas/ecore_evas_directfb.c,
	* ecore/src/lib/ecore_evas/ecore_evas_sdl.c: Prevent use of deleted object.



SVN revision: 38949
2009-02-05 10:45:52 +00:00
Vincent Torri 29b0f87503 uniformize the inclusion of config.h
SVN revision: 38865
2009-01-31 18:56:17 +00:00
Vincent Torri e18508b701 remove a bit the mess n ecore. It's just the first patch...
* add vim header
 * include config.h when necessary
 * fix the order of some include
 * move the standard header in ecore_private.h to the source files

I have recompiled all the efl and e17, and e17 seems to work fine with these changes.
If you encounter problems with that commit, let me know.


SVN revision: 38864
2009-01-31 18:33:39 +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
Gustavo Sverzut Barbieri 59c00da15a add some const.
SVN revision: 37318
2008-10-29 20:12:45 +00:00
Cedric BAIL 0780128787 Remove Evas_List from Ecore.
SVN revision: 36941
2008-10-21 15:54:55 +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
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
Gustavo Sverzut Barbieri b0f295b1dd Match initial changes to DirectFB/evas.
SVN revision: 34688
2008-05-28 19:31:51 +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 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
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
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
Sebastian Dransfeld d8291ba50a delete_idle_enterer is gone.
SVN revision: 29424
2007-04-06 12:28:16 +00:00
Kim Woelders fe390d060e Fix warnings.
SVN revision: 26973
2006-11-05 15:22:47 +00:00
codewarrior ac8df12757 - more work on window state changes.
- add ecore_evas_callback_[un]sticky_set


SVN revision: 24240
2006-07-27 16:14:33 +00:00
Carsten Haitzler b187c47974 evilness... but it works.
SVN revision: 21091
2006-03-08 08:02:55 +00:00
Carsten Haitzler 07ce0152b6 and less warnings!
SVN revision: 19569
2006-01-06 18:47:56 +00:00
Carsten Haitzler 2489a46975 Jorge's dfb patches are finally in! :)
SVN revision: 18751
2005-12-01 06:39:35 +00:00
Carsten Haitzler d1861a8d4c add a call
SVN revision: 18336
2005-11-06 09:47:28 +00:00