Commit Graph

121 Commits

Author SHA1 Message Date
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
Carsten Haitzler 188e5b5bf0 use the cancel on a mouse out with grab
SVN revision: 34608
2008-05-19 04:15:34 +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
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 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
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
Carsten Haitzler 4b3c2c81af well that was wrong! fix!
SVN revision: 31647
2007-09-08 04:51:16 +00:00
Gustavo Sverzut Barbieri 4a4a0b0f4c Software 16 X11 now does rotation.
SVN revision: 31215
2007-08-07 19:09:53 +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
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 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
Sebastian Dransfeld 44c6d3add9 Don't use an idler to delete the evas. This wont work during ecore main
loop shutdown.


SVN revision: 29365
2007-04-05 06:53:41 +00:00
Carsten Haitzler 9177a1e729 1. make curl interactivity MUCH better.
2. make ecore_evas use the norender call to delete objects aggressively for
hiddent canvases.


SVN revision: 28015
2007-01-16 10:17:46 +00:00
Kim Woelders fe390d060e Fix warnings.
SVN revision: 26973
2006-11-05 15:22:47 +00:00
Carsten Haitzler 1dd49d32b7 xrender too
SVN revision: 25669
2006-09-10 00:24:57 +00:00
Carsten Haitzler 87924604ed patches from the world - fixes and todo's
SVN revision: 25578
2006-09-07 10:33:57 +00:00
moom 992bf08f32 * [Ecore_X] "mouse up" events have now double/triple click flags, and
those flags are feeded to the Evas


SVN revision: 25105
2006-08-25 17:27:08 +00:00
Kim Woelders c01cb59689 Let the WM decide how fullscreening is done.
SVN revision: 24582
2006-08-12 10:16:53 +00:00
Kim Woelders f864ccd8e6 Fix warning/potential trouble.
SVN revision: 24543
2006-08-11 02:26:16 +00:00
sebastid c754c00bbc Disable grab test on mouse out too.
SVN revision: 24504
2006-08-09 11:23:32 +00:00
codewarrior ce41b8e859 initialize to 0, set prop.sticky properly
SVN revision: 24296
2006-07-29 14:50:18 +00:00
Carsten Haitzler e120f13fb4 leak--
SVN revision: 24292
2006-07-29 09:54:20 +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
codewarrior e1723fa800 - if something other than ecore_evas changes some of the states of the x_window, we need to listen to the changes and update our local flags (like sticky for example). If we dont, things like ecore_evas_sticky_get will always return an outdated sticky property. I have implemented it for the sticky bit for now, but this needs to be done for all the others as well.
- question: do we want to implement ecore_evas_callback_sticky_set or something similar that will tell the programmer when the sticky bit has changed? I think it would be a good idea to do it here as opposed to doing it inside Etk for example.


SVN revision: 24223
2006-07-27 02:42:41 +00:00
Carsten Haitzler dc7fcacedc update x, y if not managed (override)
SVN revision: 24078
2006-07-20 17:12:30 +00:00
Carsten Haitzler 55c0ef1633 allow optimisation for shaped windows that use damag avoid
SVN revision: 23490
2006-06-18 02:19:21 +00:00
Carsten Haitzler 99f3565777 reduce linger to... 0 for server
SVN revision: 22221
2006-04-19 07:27:52 +00:00
Carsten Haitzler 2fface712c fix window depth creation
SVN revision: 21502
2006-03-25 02:55:34 +00:00
Christopher Michael 5a8bf5c690 Fix incorrect #ifdef. Be sure we're building XRender before trying to access
xrender structs. If the user was not building with XRender then the
build would fail here.


SVN revision: 21405
2006-03-19 11:03:57 +00:00
Carsten Haitzler ecc61fd692 support argb targets for ecore_evas sw_x11
SVN revision: 21120
2006-03-09 03:51:43 +00:00
Carsten Haitzler ee3ae8e835 handle dst alpha better
SVN revision: 21103
2006-03-08 15:35:01 +00:00
Carsten Haitzler b187c47974 evilness... but it works.
SVN revision: 21091
2006-03-08 08:02:55 +00:00
Carsten Haitzler 269941260f just do RAW iconify work
SVN revision: 21045
2006-03-06 08:39:57 +00:00