Commit Graph

11155 Commits

Author SHA1 Message Date
Mike Blumenkrantz 4239d5d67f giant cleanups/rewrites which are unnoticeable to users:
*client->server renamed client->host_server to clarify ambiguity
*ecore_con_ssl_client_prepare.* killed off because it was useless and wrong
*openssl generates only one SSL_CTX per server now instead of a new one for each client, which is broken/unnecessary/wasteful
**as a result, certificate loading is now only done once
**additionally this will save a very large amount of memory and avoid unnecessary/broken refcounting
*ecore_con_ssl_server_prepare.* rewritten to actually be useful instead of just a lazy way to null pointers
**all SSL_CTX code now goes here^
*some formatting fixes
*internal function renames


SVN revision: 52422
2010-09-18 19:26:05 +00:00
Gustavo Sverzut Barbieri e37c1c7a0a cleanup: fix some "unused" errors from -Wextra.
As we're heading for a release we better remove as much errors as
possible and as the first step I'm removing warnings due unused
parameters, variables and functions. These tend to pollute real errors
spotted by -Wall and clang/llvm.

This does not fixes all, just the clear that could be set to
__UNUSED__, particularly to do (and I'd like some help from the
authors):

 * src/lib/engines/common/evas_font_{draw,query}.c (tasn):
   intl_props is just used while doing BIDI, but also used in other
   #ifdef blocks :-/

 * evas_map_* (raster):
   huge amount of warnings, code is quite confusing and thus I'm not
   touching it. I have no idea whenever the commented blocks or extra
   parameters are intended to be used or no.

 * src/modules/engines/fbevas_fb_main.c (raster?):
   is fb_setvt() to be used? If not do you mind removing it?

 * src/modules/engines/gl_{common,x11} (raster):
   huge amount of warnings, code is quite nested and full of #ifdefs
   that does not help to give a clear picture of what's going on.

 * src/bin/evas_cserve_main.c (raster):
   I could have ignored most of the errors, but is the code correct? I
   mean, there is no unload of images being applied. If you confirm
   none of those warnings are harmful I can flag them as unused.

 * src/lib/engines/common_8 (dottedmag):
   lots of unused functions that were acquired from common_16, they
   are unused and if they will not, then they should be removed.



SVN revision: 52421
2010-09-18 19:17:41 +00:00
Gustavo Sverzut Barbieri a22dac6ea3 Add missing evas_common prefix, avoid symbol redefinition.
soft16 was written as a single engine, thus it was all static/global
and had no EAPI in its functions, but then it was moved into
"src/lib/common_16" and got that, but got no prefix! That could cause
clash with other libraries, so adding such prefix.

soft8 was a copy of 16, thus had the same problems.

the engines were all based on software_x11, thus they defined the same
methods to deal with Xlib, however if you link them all in the same
binary (--enable-MODULE=static), the symbol would be redefined. Rename
symbols according to their module.



SVN revision: 52420
2010-09-18 17:43:13 +00:00
Vincent Torri d128fb54a0 remove debug messages
SVN revision: 52419
2010-09-18 17:31:00 +00:00
Vincent Torri f4f1dcf519 add the possibility to have shaped windows in ecore_evas (gdi
only for now)


SVN revision: 52418
2010-09-18 17:24:31 +00:00
Vincent Torri 9acfb01811 Fix shaped windows on Windows. It uses regions.
Advantages:
 * it is the simplest method to implement

Disadvantages:
 * it's slow
 * it does not take into account transparency
 * it does not work with the composite manager (Windows >= Vista)

Layered windows should be used (all the disadvantaged above are
fixed), but i've never succeeded in making them work.

SVN revision: 52416
2010-09-18 17:19:11 +00:00
Carsten Haitzler 6f4d152810 fix actually supporting clip for maps in gl.
SVN revision: 52415
2010-09-18 14:23:20 +00:00
Carsten Haitzler 8df657a51a be less agressive performance-wise but clear up some gl sync issues
that have been lurking.



SVN revision: 52414
2010-09-18 13:49:56 +00:00
Carsten Haitzler fa5b80b879 dont use tls max if it doesnt exist eh?
SVN revision: 52413
2010-09-18 11:41:15 +00:00
Mike Blumenkrantz 36bd287841 add mixed protocol for gnutls as well
SVN revision: 52412
2010-09-18 08:46:17 +00:00
Mike Blumenkrantz a8ef623de7 allow mixing sslv3+tlsv1 in openssl, FINALLY FIX INITIAL BUG FOR OPENSSL SERVERS!
note that openssl servers still do not work because there is more than one bug :/


SVN revision: 52411
2010-09-18 08:36:13 +00:00
Lucas De Marchi 4dcae856ea Fix function call after previous change
Forgot one function call.



SVN revision: 52408
2010-09-18 06:41:04 +00:00
Lucas De Marchi 4db4b59b02 Make _evas_event_havemap_adjust() recursive
Make this function recursive, so it can adjust the coords for all
parent objects. It starts with the grand-grand-grand-...-parent and goes
down until the same object.



SVN revision: 52407
2010-09-18 06:31:41 +00:00
Lucas De Marchi 1a0a9b68f6 Use also map of current object
Do not use only the map of the parent. Apply the obj's map first and
then go to the parent.

+  simple formatting



SVN revision: 52406
2010-09-18 06:31:12 +00:00
Lucas De Marchi a1a69cae0f Remove havemap_parent shortcut
SVN revision: 52405
2010-09-18 06:31:05 +00:00
Lucas De Marchi e478d25f34 Clean unneeded check
SVN revision: 52404
2010-09-18 06:30:59 +00:00
Lucas De Marchi 6f1e1a950e Don't set parmap for the other objects
We are iterating EINA_INLIST_REVERSE_FOREACH(list, obj) in a recursive
function. Don't mark the other objects as havemap_parent if the first
in the list has it.



SVN revision: 52403
2010-09-18 06:30:51 +00:00
Lucas De Marchi bcc9b853ed formatting
SVN revision: 52402
2010-09-18 06:30:45 +00:00
Lucas De Marchi fcd5f99652 clean a bit more
SVN revision: 52401
2010-09-18 06:30:37 +00:00
Lucas De Marchi 69ffdd1b93 Clean it a bit to be easier to understand
SVN revision: 52400
2010-09-18 06:30:30 +00:00
Mike Blumenkrantz f62bcf1ff1 switch private struct members from char bitfields to Eina_Bool bitfields
no noticeable difference


SVN revision: 52399
2010-09-18 06:30:13 +00:00
Lucas De Marchi a7fcb37a7f Revert r52345
This function is not needed at all, and as of now it's borken. Coming patches
will properly fix coords on events.



SVN revision: 52398
2010-09-18 06:29:47 +00:00
Mike Blumenkrantz f8d56a023f a loooooooot of outdents and reformatting
SVN revision: 52397
2010-09-18 06:06:05 +00:00
Mike Blumenkrantz e9361b4e1c whoops forgot an UNUSED for openssl
SVN revision: 52396
2010-09-18 05:32:27 +00:00
Mike Blumenkrantz ac86c1aaa4 more progress on fixing openssl servers, fix all warnings, add error checking for openssl code
SVN revision: 52395
2010-09-18 05:31:00 +00:00
Mike Blumenkrantz 3736856f82 stop the indenting and line wrapping madness!!!!!!!
SVN revision: 52394
2010-09-18 05:30:16 +00:00
Mike Blumenkrantz 8cd87afb04 outdent for readability
SVN revision: 52393
2010-09-18 04:59:11 +00:00
Mike Blumenkrantz d8afcde705 add rest of ssl algorithms and clean up
SVN revision: 52391
2010-09-18 01:27:38 +00:00
Mike Blumenkrantz 8db37b8518 formatting
SVN revision: 52390
2010-09-18 01:20:25 +00:00
Mike Blumenkrantz 5e499b0c0e fix gnutls ssl
SVN revision: 52385
2010-09-17 19:43:03 +00:00
Mike Blumenkrantz 6542578149 new ssl error output: now with detailed location info and 50% more fiber!
SVN revision: 52380
2010-09-17 17:39:32 +00:00
Mike Blumenkrantz d74f46d5a5 simplify error conditions and output errrors on failure
SVN revision: 52378
2010-09-17 17:22:59 +00:00
Mike Blumenkrantz c7608248dd enable compression for gnutls, add error checks to client functions
SVN revision: 52377
2010-09-17 17:18:41 +00:00
Mike Blumenkrantz cb0c97b6c3 add error checking for servers
SVN revision: 52376
2010-09-17 17:03:15 +00:00
Cedric BAIL 90858b58c1 * edje: remove unused variable.
SVN revision: 52364
2010-09-17 12:05:46 +00:00
Mike Blumenkrantz 3e98b064d3 use right pointer for ssl ctx to avoid segv
SVN revision: 52362
2010-09-17 08:58:23 +00:00
Mike Blumenkrantz f3a9a92d36 fix ssl to work with cert loading flag
SVN revision: 52361
2010-09-17 08:00:42 +00:00
Vincent Torri 5973521793 check returned value of evas_engine_info_set()
SVN revision: 52360
2010-09-17 06:14:08 +00:00
Cedric BAIL e01c8dacc2 * edje: prevent segv due to dead relative part.
SVN revision: 52347
2010-09-16 15:49:56 +00:00
Lucas De Marchi 251a60ab09 Add function to check if point is inside an object
Add evas_object_inside_get() to check if a certain (x,y) point is inside
an evas_object. This is needed because there's no simple way to
determine it outside of evas when map transformations are used.

For instance, edje uses evas_object_geometry_get() and checks if point is
whithin the rectangle. This is wrong because the object might be
rotated, scaled. Below is a test program:

/**
 * Simple Evas test
 *
 * Compile with: gcc -O0 -g  -o evas_hello_world evas_hello_world.c $(pkg-config --cflags --libs eina evas ecore ecore-evas)
 */
 #include <Eina.h>
 #include <Evas.h>
 #include <Ecore_Evas.h>
 #include <Ecore.h>
 #include <stdio.h>

 #define WIDTH (320)
 #define HEIGHT (240)

Eina_Bool main_signal_exit(void *data, int ev_type, void *ev)
{
    ecore_main_loop_quit();
    return EINA_FALSE;
}

static void
_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
{
    Evas_Event_Mouse_Up *ev = event_info;
    Eina_Bool b;

    b = evas_object_inside_get(obj, ev->canvas.x, ev->canvas.y);
    fprintf(stderr, "mouse_up: x=%d, y=%d inside=%d\n", ev->canvas.x,
            ev->canvas.y, b);
}

static void
_cb_move(void *data, Evas *e, Evas_Object *obj, void *event_info)
{
    Evas_Event_Mouse_Move *ev = event_info;
    const char *id = data;
    Eina_Bool b;

    b = evas_object_inside_get(obj, ev->cur.canvas.x, ev->cur.canvas.y);
    fprintf(stderr, "[%s] mouse_move: x=%d, y=%d inside=%d\n", id,
            ev->cur.canvas.x, ev->cur.canvas.y, b);
}

int main(void)
{
   Evas *evas;
   Ecore_Evas *window;
   Evas_Object *bg, *r1, *r2;
   Evas_Map *m;

   evas_init();
   ecore_init();
   ecore_evas_init();

   window = ecore_evas_new(NULL, 0, 0, WIDTH, HEIGHT, NULL);
   if (!evas)
     return -1;

   evas = ecore_evas_get(window);

   bg = evas_object_rectangle_add(evas);
   evas_object_color_set(bg, 255, 255, 255, 255); // white bg
   evas_object_move(bg, 0, 0);                    // at origin
   evas_object_resize(bg, WIDTH, HEIGHT);         // covers full evas
   evas_object_show(bg);

   r1 = evas_object_rectangle_add(evas);
   evas_object_color_set(r1, 255, 0, 0, 255); // 100% opaque red
   evas_object_move(r1, 50, 50);
   evas_object_resize(r1, 100, 100);

   m = evas_map_new(4);
   evas_map_util_points_populate_from_object(m, r1);
   evas_map_util_rotate(m, 45.0, 100, 100);
   evas_map_alpha_set(m, 0);
   evas_map_smooth_set(m, 1);

   evas_object_map_set(r1, m);
   evas_object_map_enable_set(r1, 1);
   evas_map_free(m);
   evas_object_show(r1);
   evas_object_event_callback_add(r1, EVAS_CALLBACK_MOUSE_UP, _cb, NULL);
   evas_object_event_callback_add(r1, EVAS_CALLBACK_MOUSE_MOVE, _cb_move, "r1");

   r2 = evas_object_rectangle_add(evas);
   evas_object_color_set(r2, 0, 255, 0, 255);
   evas_object_move(r2, 210, 150);
   evas_object_resize(r2, 50, 50);
   evas_object_show(r2);
   evas_object_event_callback_add(r2, EVAS_CALLBACK_MOUSE_MOVE, _cb_move, "r2");

   ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, main_signal_exit, evas);

   ecore_evas_show(window);
   ecore_main_loop_begin();

   ecore_evas_free(window);

   ecore_evas_shutdown();
   ecore_shutdown();
   evas_shutdown();

   return 0;
}




SVN revision: 52345
2010-09-16 13:59:46 +00:00
Tom Hacohen 12b55be8af Evas textblock: Added a lot of fixes to evas_textblock_cursor_geometry_get in the case where ctype = EVAS_TEXTBLOCK_CURSOR_BEFORE
SVN revision: 52341
2010-09-16 09:59:39 +00:00
Tom Hacohen 9fb94f209b Evas textblock: Fixed evas_textblock_range_text_get that didn't work on textblocks with no formats at all (not even newlines or tabs).
SVN revision: 52339
2010-09-16 07:12:23 +00:00
Lucas De Marchi 08055d63b9 trivial: spelling in documentation
Some misspellings found in doxy.



SVN revision: 52326
2010-09-15 20:40:51 +00:00
Iván Briano 20ea0eef4e Check there are callbacks before trying to copy them.
Patch by Otávio Pontes


SVN revision: 52323
2010-09-15 19:51:08 +00:00
Cedric BAIL fdc15d4495 * evas: we don't need all the stuff from pthreads to do preload.
SVN revision: 52311
2010-09-15 17:20:37 +00:00
Cedric BAIL 8102552b7a * edje: cleanup aspect code and reduce memory presure.
SVN revision: 52304
2010-09-15 14:15:23 +00:00
Cedric BAIL 10356b8e50 * edje: turn it on again and go fix your theme :-)
SVN revision: 52303
2010-09-15 14:09:58 +00:00
Tom Hacohen 612b3eda81 Evas textblock: fix deleting the first tab in 'a<TAB><TAB>a' that caused weird behavior.
The solution is that we only delete invisible standalones now, not visible ones, this is correct intuitively and of course fixes the bug.

SVN revision: 52302
2010-09-15 14:07:09 +00:00
Tom Hacohen b59743febd Evas textblock: we should also take width of tabs into account when calculating line width.
SVN revision: 52297
2010-09-15 12:45:06 +00:00
Tom Hacohen 8b6083ec26 Evas textblock: Fix and simplify _find_layout_item_line_match which is an helper function used in many parts of textblock.
SVN revision: 52295
2010-09-15 10:24:07 +00:00
Tom Hacohen 108bdeeadd Evas font: removed old (already removed a long time ago) functions from evas_font.h.
SVN revision: 52293
2010-09-15 09:11:19 +00:00
Vincent Torri 56fa2461ed warning--
SVN revision: 52292
2010-09-15 08:41:41 +00:00
Rafael Antognolli 94540f3b5b Changing Ethumb license from LGPL3 to LGPL2.
Making this change to be in agreement with some other EFL libraries
under LGPL.



SVN revision: 52275
2010-09-14 23:02:45 +00:00
Carsten Haitzler c1c7e901f5 CEEEEEEEEEDRICCCCCCCCCCCCCCCC!
borked e conf panel. unbork. disable aspect.



SVN revision: 52273
2010-09-14 22:32:34 +00:00
Bruno Dilly d0eb6e4054 Add missing bogosity X cursor
SVN revision: 52270
2010-09-14 21:43:44 +00:00
Vincent Torri 93f58106a6 ecore_win32 does not depend on Evas.
SVN revision: 52264
2010-09-14 21:25:31 +00:00
Vincent Torri 70622ee748 * src/lib/Makefile.am:
* src/lib/Evil.h:
* src/lib/evil_time.c:
* src/lib/evil_time.h:
add locatime_r() for calendar in Elementary.


SVN revision: 52263
2010-09-14 21:24:25 +00:00
Eduardo de Barros Lima 2216c53641 Eina_List: Avoid Segfault
Some inputs in which tmp - cur is greater than the number of previous nodes
in list, were causing ct to be null at end of loop.

Patch by Jonas M. Gastal <jgastal@profusion.mobi>



SVN revision: 52253
2010-09-14 18:29:30 +00:00
Vincent Torri 47b00392a7 useless define (already defined in command line)
SVN revision: 52247
2010-09-14 16:47:01 +00:00
Vincent Torri f7b1362905 add braces to remove ambiguous condition warning
SVN revision: 52246
2010-09-14 15:57:20 +00:00
Cedric BAIL 2e87895f67 * edje: remove use of flags as it was always set to FLAG_XY
in _edje_part_recalc_single.


SVN revision: 52245
2010-09-14 15:53:47 +00:00
Cedric BAIL d1203fc0ca * edje: fix edje use of aspect when constrained by min or max.
NOTE: If you have swallow or parts that where constrained by min and
	max, and you used aspect on them, expect change on your layout.


SVN revision: 52244
2010-09-14 15:36:16 +00:00
Tom Hacohen 78deeca6ba Evas textblock: Fixed the bug with disappearing text with many tabs and text.
I removed a function that caused the issue and made no sense at all, honestly, it didn't make any sense.
I did a lot of testing trying to see if there are any new bugs after the fix, and nothing, so I guess my instincts were correct.
Please if you can, check out the removed function (_layout_walk_back_to_item_word_redo) and see if it makes any sense to you, if it does, please let me know.

SVN revision: 52243
2010-09-14 13:57:26 +00:00
Carsten Haitzler f200c483b4 epoll - bad. disable default support. u have to --enable it. don't
--enable it if u want elm quicklaunch to work.



SVN revision: 52240
2010-09-14 10:38:28 +00:00
Carsten Haitzler 4081d86c6c better cleanup of poll fd's on shutdown
SVN revision: 52229
2010-09-14 00:53:57 +00:00
Carsten Haitzler 4f823dab67 fix first map bug handling to handle more than first window map.
SVN revision: 52200
2010-09-13 22:16:26 +00:00
Lucas De Marchi e46b64199f Don't check return value of alloca
alloca() doesn't return NULL on error, so do not check its return value.



SVN revision: 52199
2010-09-13 18:40:32 +00:00
Iván Briano 2bd045dd1f Pending patch from glima, who's on vacations.
Add two new canvas level callbacks: OBJECT_FOCUS_IN/OUT
As we already had callbacks for objects gaining or losing focus, then
two more for the Canvas, now we can have the entire Evas be notified when
any object changes its focused status. The object in question is passed
as the event_info for the callback.


SVN revision: 52196
2010-09-13 18:04:23 +00:00
Lucas De Marchi 9c091e1714 Assert cache->usage never becomes negative
Assert cache->usage never becomes negative as was occurring before the
fix in r52149.

Just in time, the fix in r52149 was made by Ulisses, not me.



SVN revision: 52190
2010-09-13 13:58:34 +00:00
Cedric BAIL d287f127fd * eio: callback are allowed to modify their own data.
Don't know how I wrote this non sense.


SVN revision: 52189
2010-09-13 13:44:24 +00:00
Carsten Haitzler 2303255182 dont get item anchors so often!
SVN revision: 52187
2010-09-13 12:08:19 +00:00
Brett Nash ee8881634b Add a semicolon. GCC: This ones for you.
SVN revision: 52184
2010-09-13 09:16:01 +00:00
Brett Nash 5ea066ec74 Deniggle and rename the exore_x_dndn_callback_pos_update_set call.
SVN revision: 52183
2010-09-13 09:15:57 +00:00
Brett Nash ba4ae189ea Use -1.
SVN revision: 52182
2010-09-13 09:15:53 +00:00
Brett Nash e36847a0ab Xdnd callback (API Addition): Rationale below.
Essentially the problem is this: For drag and drop Ecore currently handles the
position update calls.  But usually the application wants to display some user
feedback - a window to display the drag selection for instance.

Now the way e17 does it is grab the mouse cursor movements and track them
itself.  However ecore is already doing this, it's already walking window
trees, calculating real positions, _and_ sending them in an X client message.
So it seems rather silly to duplicate the code in the user app to get the same
info.

We could possibly have added a new event, but then we need to deal the fact
the position update may arrive _After_ the item has been dropped.  Hilarity
ensures[1].

This callback is meant for purely the selection owner of the drag to use, so
it is a callback set, not an add.

[1] Segfaults probably.  Nothing funnier.

SVN revision: 52181
2010-09-13 09:15:50 +00:00
Brett Nash 310ee61355 Always return an x rander version (unset in this case).
SVN revision: 52180
2010-09-13 09:15:45 +00:00
Mike Blumenkrantz 534bd43e9d initial doxy patch for rbtree from vtorri
CEDRIC WRITE DOCS FOR THIS!


SVN revision: 52172
2010-09-12 19:28:18 +00:00
Tom Hacohen 527a3f3579 Edje entry: Fixed a selection bug with IMF enabled and fix a couple of indentation issues, and a saftey check.
Patch by Jihoon Kim.

SVN revision: 52165
2010-09-12 08:15:35 +00:00
Mike Blumenkrantz 1970f8dd6c more doxy from vtorri
SVN revision: 52164
2010-09-12 08:03:21 +00:00
Mike Blumenkrantz eb775222a5 variable name changes for accessor functions
patch by vtorry
compile testing frowned upon by andredieb


SVN revision: 52163
2010-09-12 06:49:57 +00:00
Lucas De Marchi d32c0f99bd Fix accounting of memory usage in image cache
Memory usage was not accounted right because
cache->func.mem_size_get(ie) returns 0 when called after
cache->func.destructor(ie). Thus the total memory used, kept on
cache->usage, is never decremented in _evas_cache_image_remove_activ()

This implies that cache->usage will keep growing and eventually it will
overflow, becoming negative. So evas_cache_image_flush() will not do its
job because cache->limit (assumed to be positive) will not be less than
cache->usage anymore. So the total memory allocated will start to grow
and the limit won't be respected.

Strictly speaking, it's not a leak, since all the memory will be
eventually freed when evas shutdown is called, but the program might be
killed by over allocating memory. This is caught by valgrind with the
massif tool. The graphic below shows that in the end a huge memory amount
is allocated. This is the moment when cache->usage became negative.

MB
26.04^                                                                   #
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
|                                                                   #::::
| :::::::::::::::::@@:::::::::@:::@::::::@::::::::::::::::::::::::::#::::
| : ::: ::: ::: :::@ :: ::: : @:: @:: :::@: :: ::: : : :: :: : ::: :#::::
0 +----------------------------------------------------------------------->Gi
0                                                                   54.83

This patch is a one line fix, which swaps the calls to
_evas_cache_image_remove_activ() and cache->func.destructor() making
cache->limit to be respected.



SVN revision: 52149
2010-09-10 23:00:26 +00:00
Lucas De Marchi c4a0cef6e6 Fix typos in docs
* eina_thread_init doesn't exist. eina_threads_init it is;
* 'mutexes' is a more common spelling, not 'mutexs'



SVN revision: 52136
2010-09-10 12:01:52 +00:00
Lucas De Marchi 77d42e9cca Simplify code by removing unneeded auxiliary variable
SVN revision: 52135
2010-09-10 11:25:26 +00:00
Lucas De Marchi bd12ce52f7 Refactor function to return as early as possible
Instead of a looooooong 'if', return on the contrary.



SVN revision: 52134
2010-09-10 11:25:15 +00:00
Lucas De Marchi fa4e9c4f18 Formatting
SVN revision: 52133
2010-09-10 11:25:05 +00:00
Lucas De Marchi fe7cfb1e16 Refactor jumps
Instead of relying on the value of edf (and having to set it on all
places to NULL) jump to 'open' label on the only possible case of the
control flow.



SVN revision: 52132
2010-09-10 11:24:49 +00:00
Carsten Haitzler fae947f8ea do extra composite checks - need to do the lot to be useful.
SVN revision: 52121
2010-09-10 06:57:21 +00:00
Lucas De Marchi 31c1225bd7 Fix parameter order in help
Calling help in edje_player was showing the wrong order for sending a signal.
The right order is the same of the function edje_object_signal_emit()




SVN revision: 52105
2010-09-09 20:35:44 +00:00
Lucas De Marchi 19c1b1e899 Fix priority dropping
Lowering priority was wrong. Some bugs:

1) You don't lower the priority by setting the scheduler policy to some
   of the real-time ones (SCHED_RR or SCHER_FIFO). If you do so, you are
   actually increasing the priority of the workers and your main thread
   you be preempted and stalled until the workers complete their job.
   Fortunately this will only happen if your programming is running as
   root, as normal users (without CAP_SYS_NICE) are unable to set
   priority to real-time values.

2) setpriority() and getpriority() are not part of pthread and you can't
   use the id returned by pthread. Manpage explicitly says so on
   pthread_self(3):
   "The  thread ID returned by pthread_self() is not the same thing as the
       kernel thread ID returned by a call to gettid(2)."

   Since glibc does not have a gettid, here we are using
   syscall(SYS_gettid)

This patch was tested with the program below. Compile and run:
   $ gcc p_hello2.c -o p_hello2 -lpthread
   $ ./p_hello2 10

You'll see that the main thread remains with its priority and threads
created by the main thread change their own niceness.

 #include <errno.h>
 #include <pthread.h>
 #include <sched.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <sys/resource.h>
 #include <sys/syscall.h>
 #include <sys/time.h>
 #include <sys/types.h>

/* Lower priority of current thread.
 *
 * It's used by worker threads so they use up "bg cpu" as it was really intended
 * to work. If current thread is running with real-time priority, we decrease
 * our priority by 5. This is done in a portable way.  Otherwise we are
 * running with SCHED_OTHER policy and there's no portable way to set the nice
 * level on current thread. In Linux, it does work and it's the only one that is
 * implemented.
 */
static void
_ecore_thread_pri_drop(void)
{
   struct sched_param param;
   int pol, prio, ret;
   pid_t tid;
   pthread_t pthread_id;

   pthread_id = pthread_self();
   ret = pthread_getschedparam(pthread_id, &pol, &param);
   if (ret)
     {
        fprintf(stderr, "Unable to query sched parameters\n");
        return;
     }

   if (pol == SCHED_RR || pol == SCHED_FIFO)
     {
        prio = sched_get_priority_max(pol);
        param.sched_priority += 5;
        if (prio > 0 && param.sched_priority > prio)
           param.sched_priority = prio;

        pthread_setschedparam(pthread_id, pol, &param);
     }
 #ifdef __linux__
   else
     {
        tid = syscall(SYS_gettid);
        errno = 0;
        prio = getpriority(PRIO_PROCESS, tid);
        if (errno == 0)
          {
             prio += 5;
             if (prio > 19)
                prio = 19;

             setpriority(PRIO_PROCESS, tid, prio);
          }
     }
 #endif
}

/*
 * p_hello.c -- a hello program (in pthread)
 */
 #define MAX_THREAD 1000

typedef struct {
    int id;
} parm;

void *hello(void *arg)
{
    parm *p=(parm *)arg;
    pid_t tid;
    int prio;
    tid =  syscall(SYS_gettid);
    printf("[%d] Hello from node %d\n", tid, p->id);
    pthread_yield();

    printf("[%d] HELLO!\n", tid);

    _ecore_thread_pri_drop();

    prio = getpriority(PRIO_PROCESS, tid);
    printf("[%d] New nice value: %d\n", tid, prio);
    return (NULL);
}

int main(int argc, char* argv[]) {
    int n,i;
    pthread_t *threads;
    pthread_attr_t pthread_custom_attr;
    parm *p;

    pid_t tid;
    int prio;

    if (argc != 2)
    {
        printf ("Usage: %s n\n  where n is no. of threads\n",argv[0]);
        exit(1);
    }

    n=atoi(argv[1]);

    if ((n < 1) || (n > MAX_THREAD)) {
        printf ("The no of thread should between 1 and %d.\n",MAX_THREAD);
        exit(1);
    }

    threads = (pthread_t *)malloc(n * sizeof(*threads));
    pthread_attr_init(&pthread_custom_attr);

    p = (parm *)malloc(n * sizeof(parm));
    /* Start up thread */

    tid = syscall(SYS_gettid);
    for (i=0; i<n; i++) {
        prio = getpriority(PRIO_PROCESS, tid);
        printf("[%d] root thread nice value: %d\n", tid, prio);

        p[i].id=i;
        pthread_create(&threads[i], &pthread_custom_attr, hello, (void *)(p+i));
    }

    /* Synchronize the completion of each thread. */

    for (i=0; i<n; i++) {
        pthread_join(threads[i],NULL);
    }
    free(p);

    return 0;
}



SVN revision: 52040
2010-09-09 12:45:39 +00:00
Lucas De Marchi 325e08065d Fix priority dropping
Lowering priority was wrong. Some bugs:

1) You don't lower the priority by setting the scheduler policy to some
   of the real-time ones (SCHED_RR or SCHER_FIFO). If you do so, you are
   actually increasing the priority of the workers and your main thread
   you be preempted and stalled until the workers complete their job.
   Fortunately this will only happen if your programming is running as
   root, as normal users (without CAP_SYS_NICE) are unable to set
   priority to real-time values.

2) setpriority() and getpriority() are not part of pthread and you can't
   use the id returned by pthread. Manpage explicitly says so on
   pthread_self(3):
   "The  thread ID returned by pthread_self() is not the same thing as the
       kernel thread ID returned by a call to gettid(2)."

   Since glibc does not have a gettid, here we are using
   syscall(SYS_gettid)

This patch was tested with the program below. Compile and run:
   $ gcc p_hello2.c -o p_hello2 -lpthread
   $ ./p_hello2 10

You'll see that the main thread remains with its priority and threads
created by the main thread change their own niceness.

#include <errno.h>
#include <pthread.h>
#include <sched.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/resource.h>
#include <sys/syscall.h>
#include <sys/time.h>
#include <sys/types.h>

/* Lower priority of current thread.
 *
 * It's used by worker threads so they use up "bg cpu" as it was really intended
 * to work. If current thread is running with real-time priority, we decrease
 * our priority by 5. This is done in a portable way.  Otherwise we are
 * running with SCHED_OTHER policy and there's no portable way to set the nice
 * level on current thread. In Linux, it does work and it's the only one that is
 * implemented.
 */
static void
_ecore_thread_pri_drop(void)
{
   struct sched_param param;
   int pol, prio, ret;
   pid_t tid;
   pthread_t pthread_id;

   pthread_id = pthread_self();
   ret = pthread_getschedparam(pthread_id, &pol, &param);
   if (ret)
     {
        fprintf(stderr, "Unable to query sched parameters\n");
        return;
     }

   if (pol == SCHED_RR || pol == SCHED_FIFO)
     {
        prio = sched_get_priority_max(pol);
        param.sched_priority += 5;
        if (prio > 0 && param.sched_priority > prio)
           param.sched_priority = prio;

        pthread_setschedparam(pthread_id, pol, &param);
     }
#ifdef __linux__
   else
     {
        tid = syscall(SYS_gettid);
        errno = 0;
        prio = getpriority(PRIO_PROCESS, tid);
        if (errno == 0)
          {
             prio += 5;
             if (prio > 19)
                prio = 19;

             setpriority(PRIO_PROCESS, tid, prio);
          }
     }
 #endif
}

/*
 * p_hello.c -- a hello program (in pthread)
 */
#define MAX_THREAD 1000

typedef struct {
    int id;
} parm;

void *hello(void *arg)
{
    parm *p=(parm *)arg;
    pid_t tid;
    int prio;
    tid =  syscall(SYS_gettid);
    printf("[%d] Hello from node %d\n", tid, p->id);
    pthread_yield();

    printf("[%d] tid=%lu\n", tid);

    _ecore_thread_pri_drop();

    prio = getpriority(PRIO_PROCESS, tid);
    printf("[%d] New nice value: %d\n", tid, prio);
    return (NULL);
}

void main(int argc, char* argv[]) {
    int n,i;
    pthread_t *threads;
    pthread_attr_t pthread_custom_attr;
    parm *p;

    pid_t tid;
    int prio;

    if (argc != 2)
    {
        printf ("Usage: %s n\n  where n is no. of threads\n",argv[0]);
        exit(1);
    }

    n=atoi(argv[1]);

    if ((n < 1) || (n > MAX_THREAD)) {
        printf ("The no of thread should between 1 and %d.\n",MAX_THREAD);
        exit(1);
    }

    threads = (pthread_t *)malloc(n * sizeof(*threads));
    pthread_attr_init(&pthread_custom_attr);

    p = (parm *)malloc(n * sizeof(parm));
    /* Start up thread */

    tid = syscall(SYS_gettid);
    for (i=0; i<n; i++) {
        prio = getpriority(PRIO_PROCESS, tid);
        printf("[%d] root thread nice value: %d\n", tid, prio);

        p[i].id=i;
        pthread_create(&threads[i], &pthread_custom_attr, hello, (void *)(p+i));
    }

    /* Synchronize the completion of each thread. */

    for (i=0; i<n; i++) {
        pthread_join(threads[i],NULL);
    }
    free(p);
}



SVN revision: 52039
2010-09-09 11:48:31 +00:00
Carsten Haitzler 9a4aa69e71 return NULL after if to avoid other lku
SVN revision: 52033
2010-09-09 07:27:56 +00:00
Carsten Haitzler 40e57dd2d7 that should have been an LKU
SVN revision: 52032
2010-09-09 07:23:55 +00:00
Carsten Haitzler 5f6add7b2f and some final fixes anc cleanups - tested.
SVN revision: 52031
2010-09-09 07:14:11 +00:00
Carsten Haitzler c4ee82f6a7 lots of cleanups... actually tested! :)
SVN revision: 52030
2010-09-09 07:08:10 +00:00
Carsten Haitzler 679d566fde actually revert that - not enough testing. need to work on it.
SVN revision: 52029
2010-09-09 06:36:01 +00:00
Carsten Haitzler 4975395633 major clean of the preload stuff. leaks. bugs. nastinessesssss...
SVN revision: 52028
2010-09-09 06:31:29 +00:00
Brett Nash c69628f5af Whitespace --;
SVN revision: 52024
2010-09-09 05:36:56 +00:00
Lucas De Marchi 935cd5b9e5 Fix common misspellings
Following misspellings were fixed:

occured->occurred
immediatly->immediately



SVN revision: 52018
2010-09-09 02:19:54 +00:00
Iván Briano 8374dea693 Evil patch from Evil vtorri. Some improvements to Eina docs.
Yup, docs.. truly evil.


SVN revision: 51993
2010-09-08 17:41:05 +00:00
Cedric BAIL 6e63db7303 * edje: cleanup collection early if the file is dangling.
SVN revision: 51991
2010-09-08 13:45:21 +00:00
Lucas De Marchi 3bec660090 Fix common misspellings
Following misspellings were fixed:

ammount->amount
arbitary->arbitrary
begining->beginning
carefull->careful
choosen->chosen
commited->committed
endig->ending
existance->existence
existant->existent
isnt->isn't
occured->occurred
postion->position
rougly->roughly
runing->running
shouldnt->shouldn't
soem->some
succesfully->successfully
succesful->successful
sucessful->successful
tranformed->transformed
usefull->useful
wehn->when
wich->which



SVN revision: 51988
2010-09-08 11:50:05 +00:00
Lucas De Marchi 67771ee617 Fix common misspellings
Following misspellings were fixed:

acheive->achieve
appart->apart
isnt->isn't
succesfully->successfully
taht->that



SVN revision: 51987
2010-09-08 11:27:59 +00:00
Lucas De Marchi be1b6d32ef Fix common misspellings
Following misspellings were fixed:

alledgedly->allegedly
cant->can't
carefull->careful
consistant->consistent
currenly->currently
dependancy->dependency
descripters->descriptors
doesnt->doesn't
dosen't->doesn't
existant->existent
exmaple->example
inbetween->between
independant->independent
isnt->isn't
mroe->more
neccessary->necessary
occured->occurred
occurence->occurrence
parrallel->parallel
particualr->particular
preceeding->preceding
recieved->received
recieves->receives
seperate->separate
substraction->subtraction
succesfully->successfully
successfull->successful
sucess->success
supress->suppress
usefull->useful
witht->with



SVN revision: 51986
2010-09-08 11:23:42 +00:00
Tom Hacohen 471d682228 Evas textblock: Fixed paragraph char last.
SVN revision: 51985
2010-09-08 10:22:38 +00:00
Tom Hacohen bcc518ed97 Evas textblock: Should not clean the props of the item.
SVN revision: 51984
2010-09-08 10:00:47 +00:00
Cedric BAIL 6c69d6f60e * eina: fix doc, patch by Vincent Torri.
SVN revision: 51983
2010-09-08 08:38:48 +00:00
Tom Hacohen b267a0a03a Evas textblock: Fixed a typo.
SVN revision: 51981
2010-09-08 07:54:00 +00:00
Tom Hacohen 3e1ddfdbad Edje entry: fix the usage of the new evas_textblock_cursor_geometry_get function.
SVN revision: 51980
2010-09-08 07:29:00 +00:00
Tom Hacohen 4c716af06a Evas textblock: cursor_geometry_get now also returns the direction of the cursor: rtl/ltr/whatever.
Fixed documentation a bit.

SVN revision: 51979
2010-09-08 07:28:16 +00:00
Lucas De Marchi 85815e306c Fix common misspellings
Following misspellings were fixed:

accomodate->accommodate
achive->achieve
beacuse->because
caluclate->calculate
cant->can't
carefull->careful
convertion->conversion
dependancy->dependency
dependant->dependent
doesnt->doesn't
existant->existent
extention->extension
fucntion->function
impliment->implement
inital->initial
lenght->length
occured->occurred
occuring->occurring
onyl->only
positon->position
possibilty->possibility
postion->position
proccessing->processing
proccess->process
propogate->propagate
recieve->receive
sucessive->successive
teh->the
ther->there
throught->through
thsi->this
wasnt->wasn't
whcih->which
wheras->whereas




SVN revision: 51965
2010-09-08 03:51:24 +00:00
Lucas De Marchi 99897788f1 Fix common misspellings
Following misspellings were fixed:

accross->across
calulate->calculate
existance->existence
existant->existent
isnt->isn't
paranthesis->parenthesis
reffered->referred
runing->running
statment->statement
tranformed->transformed
unfortunatly->unfortunately
usefull->useful



SVN revision: 51964
2010-09-08 03:33:11 +00:00
Lucas De Marchi 07dfb49db2 Fix common misspellings
The following misspellings were fixed:

adress->address
alreayd->already
arbitary->arbitrary
cant->can't
convertion->conversion
impliment->implement
independant->independent
successfull->successful
tranformed->transformed
usefull->useful



SVN revision: 51963
2010-09-08 03:26:19 +00:00
Lucas De Marchi 33dcb37afe Fix common misspellings
The following misspellings were fixed:

asociated->associated
convertion->conversion
exemple->example
existant->existent
immediatly->immediately
isnt->isn't
loosing->losing
memeber->member
occured->occurred
occurence->occurrence
occurences->occurrences
ocurred->occurred
recomended->recommended
sucess->success
teh->the
tiem->time
usefull->useful




SVN revision: 51962
2010-09-08 03:21:16 +00:00
Cedric BAIL bf9609ebff * eio: make it compile on Windows. Thanks Vincent !
SVN revision: 51955
2010-09-07 15:47:11 +00:00
Cedric BAIL 0a4134fd5f * eio: return errno on error.
SVN revision: 51946
2010-09-07 14:43:51 +00:00
Davide Andreoli ebf52e3f5f Fix stringshare usage in eeze_udev_test
SVN revision: 51941
2010-09-07 10:48:25 +00:00
Brett Nash 4bf9ee3df3 Merge branch 'elmdnd'
Conflicts:
	trunk/TMP/st/elementary/.gitignore

SVN revision: 51935
2010-09-07 06:56:16 +00:00
Lucas De Marchi 15ae42344e Fix typo in doxygen
SVN revision: 51932
2010-09-06 22:48:58 +00:00
Cedric BAIL cbff3eb25a * eio: major cleanup.
SVN revision: 51927
2010-09-06 16:37:43 +00:00
Cedric BAIL d098e05951 * ecore: fix error detection of ecore_pipe_add.
SVN revision: 51926
2010-09-06 16:36:44 +00:00
Cedric BAIL ea791dccc5 * eio: minor cleanup and add stat support.
SVN revision: 51925
2010-09-06 15:27:10 +00:00
Carsten Haitzler 47fbbe6196 well dldrawarrays doesnthave a limit according to the gl spec - but
drivers may implement one. as such add a check. but check and fix
seems to fail for some rendering. wonder why?



SVN revision: 51923
2010-09-06 13:36:32 +00:00
Tom Hacohen b3982e535d Evas textblock: Update bidi props also when merging nodes and when deleting formats.
SVN revision: 51922
2010-09-06 12:19:17 +00:00
Cedric BAIL f7e049050b * eet: fix typo, thanks batden.
SVN revision: 51921
2010-09-06 10:54:52 +00:00
Cedric BAIL c119195b94 * eet: fix use of garbage data.
SVN revision: 51920
2010-09-06 10:54:03 +00:00
Christopher Michael e2b4501a74 Prototypes for the missing ecore_x convert functions.
SVN revision: 51906
2010-09-05 15:40:36 +00:00
Tom Hacohen 2a073bc103 Evas bidi: Fixed docs.
SVN revision: 51900
2010-09-05 09:45:28 +00:00
Tom Hacohen b12585ec57 Edje entry: started using the new evas_textblock_cursor_content_get.
SVN revision: 51899
2010-09-05 08:29:52 +00:00
Tom Hacohen 2d1d631b48 Evas textblock: Added evas_textblock_cursor_content_get.
SVN revision: 51898
2010-09-05 08:28:58 +00:00
Tom Hacohen 7258468265 Edje entry: Enabled Ecore_IMF.
Fixed formatting issues.
Fixed typos.
Fixed clearing of selection when pressing a key in a software keyboard.
Patch by Jihoon Kim and small adjustments by myself. Thanks a lot.

SVN revision: 51897
2010-09-05 07:20:47 +00:00
Tom Hacohen cc250013be Evas textblock: Fixed documentation typos. Patch by Jihoon Kim.
SVN revision: 51896
2010-09-05 07:04:59 +00:00
Carsten Haitzler c67a9ac86a and fix gl engine to actually do map for yuv images! :) fix fix.
SVN revision: 51893
2010-09-05 02:58:30 +00:00
Christopher Michael d6da81ea66 Update email address across the board.
SVN revision: 51890
2010-09-04 18:32:59 +00:00
Carsten Haitzler 360fb6511a make priority of thread drop linux only - fallback.
SVN revision: 51886
2010-09-04 14:34:23 +00:00
Carsten Haitzler 9049befccf make 1 func to set lower pri - fall back to setpriority on linux and
try it there only.



SVN revision: 51885
2010-09-04 14:32:50 +00:00
Mike Blumenkrantz c09d90f6c6 error on udev that's too old
SVN revision: 51883
2010-09-04 11:59:19 +00:00
Carsten Haitzler 05cf40fc4d same - back to RR.
SVN revision: 51878
2010-09-04 05:40:38 +00:00
Carsten Haitzler cc1e39498f back to RR - hope kernel allows us to set minimum realtime pri anyway.
SVN revision: 51877
2010-09-04 05:40:09 +00:00
Carsten Haitzler 69fa1e6386 fix async enabled evas on a single core system.
SVN revision: 51876
2010-09-04 04:12:46 +00:00
Carsten Haitzler e0860db059 dont call mouse out or in if already in or out in evas. causing
infinite loops in edje_viewer! bad!



SVN revision: 51875
2010-09-04 03:53:34 +00:00
Carsten Haitzler 2d34d6d2a3 formatting fix + list walk optimisation.
SVN revision: 51874
2010-09-04 03:53:12 +00:00
Carsten Haitzler 2c397940de rr->other
SVN revision: 51873
2010-09-04 00:54:53 +00:00
Carsten Haitzler 4748c05e38 also rr->other
SVN revision: 51872
2010-09-04 00:54:42 +00:00
Carsten Haitzler c3f73fb210 sched other pls. :)
SVN revision: 51871
2010-09-04 00:52:24 +00:00
Iván Briano 787a0d9c61 Don't put nulls in the list of programs, makes little sense.
SVN revision: 51863
2010-09-03 14:37:42 +00:00
Cedric BAIL b3dd293384 * ecore: ecore_thread are not here to bring your computer down, so
reduce their priority too.


SVN revision: 51862
2010-09-03 13:39:53 +00:00
Cedric BAIL 9fb5bfffed * eio: limit number of threads used by eio_file_ls.
SVN revision: 51861
2010-09-03 13:38:49 +00:00
Cedric BAIL dd168d1058 * eet: fix eet dictionnary ever growing dictionnary.
SVN revision: 51860
2010-09-03 13:25:22 +00:00
Carsten Haitzler 3aedfa6956 preload in bg. low pri th.
SVN revision: 51859
2010-09-03 10:07:20 +00:00
Carsten Haitzler 607cdfc508 ok... don't know what's up here... but how about debs actually build
from our debian/ dir? i dont know what debian and ubuntu will one day
use for their pkging info.. but at least have the stuff we have in svn
work eh? :)



SVN revision: 51858
2010-09-03 09:21:07 +00:00
Carsten Haitzler 9a51cd55fa fix raols bug he found map + del obj.
SVN revision: 51857
2010-09-03 08:44:13 +00:00
Carsten Haitzler 28a28cbf27 grrrr. slowness bug. fix. now display bug is back.
SVN revision: 51855
2010-09-03 08:23:38 +00:00
Carsten Haitzler 76f750ea39 use new clipper flag
SVN revision: 51850
2010-09-03 00:07:52 +00:00
Carsten Haitzler 4c63db37f8 in order to fix some horridibubble things. i had to add 4 api's. ugh.
done. working. now... still 1 more bug. seems to be a changed flag bug
too in dlip 2 test in scrolling list after map anim finished. smaller
bug to deal with now. ugh. bug one bug to the other



SVN revision: 51849
2010-09-03 00:06:56 +00:00
Eduardo de Barros Lima b5dc226bc1 Ethumb: make distcheck fixes
SVN revision: 51844
2010-09-02 20:12:08 +00:00
Tom Hacohen 76d197bf6b Evas textblock: Fixed char coord set to work better.
SVN revision: 51842
2010-09-02 13:53:14 +00:00
Tom Hacohen 87d2c74d3e Edje entry: Fixed setting cursor on mouse click.
SVN revision: 51841
2010-09-02 13:52:14 +00:00
Cedric BAIL 810afbdf9e * eio: add eio_file_unlink.
SVN revision: 51840
2010-09-02 13:39:59 +00:00
Tom Hacohen 8b88b84c9f Evas textblock: width should remain the same no matter what's the position, removed that unwanted adjustment.
SVN revision: 51838
2010-09-02 12:01:23 +00:00
Tom Hacohen bc755aa40f Evas textblock: updated docs.
SVN revision: 51837
2010-09-02 11:57:52 +00:00
Tom Hacohen ea9922698e Evas textblock: Fixed compilation without fribidi.
SVN revision: 51836
2010-09-02 11:53:40 +00:00
Tom Hacohen ffe4d9bbe2 Edje entry: Started using evas_textblock_cursor_geometry_get for cursor position instead of char_geometry_get.
SVN revision: 51835
2010-09-02 11:50:52 +00:00
Tom Hacohen e8c59bf0e8 Evas textblock+font engine: Implemented evas_textblock_cursor_geometry_get.
Fixed evas_common_font_char_coords to work correctly with the NULL character in RTL text.

SVN revision: 51834
2010-09-02 11:49:00 +00:00
Carsten Haitzler b37a2117d1 fix more map+clip goop.
SVN revision: 51830
2010-09-02 09:40:23 +00:00
Vincent Torri 3527150853 evas_object_text*_get: return 0 in case of error
SVN revision: 51829
2010-09-02 05:48:23 +00:00
Mike Blumenkrantz e892d9a2bf cleanups for eina_module_list_get type change
vtorri SPANK SPANK SPANK!!!


SVN revision: 51828
2010-09-02 03:28:04 +00:00
Carsten Haitzler de6ab93e2a notes. still a bork.
SVN revision: 51827
2010-09-01 22:51:00 +00:00
Carsten Haitzler 6e3d671219 and fix up some related map+clip+smart render issues along with fixing
map boundary bugs as in trying to fix it i added some bugs.



SVN revision: 51826
2010-09-01 22:45:30 +00:00
Vincent Torri 490413be14 use Eina_Bool instead of unsigned int
SVN revision: 51825
2010-09-01 22:31:43 +00:00
Carsten Haitzler 29f59da989 comment++
SVN revision: 51824
2010-09-01 21:38:34 +00:00
Carsten Haitzler bfab8b9254 now that mostly fixes this map clip issue... ugh. took a while to come up
with an elegant solution. also it does add overhead to fix. i might be
able to improve the overhead.
 


SVN revision: 51823
2010-09-01 21:37:10 +00:00
Iván Briano d2ebce58b3 Eina Error messages in Edje Edit
This first commit only includes errors ocurred during group deletion

By: Thiago Ribeiro Masaki <masaki@profusion.mobi>



SVN revision: 51817
2010-09-01 17:15:52 +00:00
Tom Hacohen 4554c06a70 Evas textblock: Fixed compilation without fribidi. <-- For real now. :P
SVN revision: 51809
2010-09-01 14:26:55 +00:00
Tom Hacohen 97b766773b Evas textblock: Fixed compilation without fribidi.
SVN revision: 51808
2010-09-01 14:08:23 +00:00
Tom Hacohen 5e433f1956 Evas bidi: Changed the design a bit so it'll be easy to implement async-rendering with it.
Fixed a couple of issues with unwanted cleans and generally data corruption.
Cleaned up async-rendering.

SVN revision: 51806
2010-09-01 13:15:04 +00:00
Cedric BAIL b4ed699e9e * evas: reenable pipe rendering almost work for me with 16 CPU.
Just don't forget to Spank Tasn.


SVN revision: 51805
2010-09-01 12:25:25 +00:00
Tom Hacohen e6304cafaf Evas textblock: Fixed updating BiDi properties when we delete.
SVN revision: 51801
2010-09-01 08:25:19 +00:00
Cedric BAIL eeafcb3be5 * eio: oops, forgot to add those files.
SVN revision: 51800
2010-09-01 08:23:15 +00:00
Vincent Torri c85dffafd8 typo
SVN revision: 51799
2010-09-01 06:48:52 +00:00
Vincent Torri a4a7bc6b43 format a bit the doc and add corner cases
SVN revision: 51798
2010-09-01 06:45:33 +00:00
Gustavo Lima Chaves 7dd58ccc7a A bit of doxy cleanliness here. More love needed, though.
SVN revision: 51791
2010-08-31 22:59:17 +00:00
Mike Blumenkrantz 05f38ae44a yarrrrrrr I've got yer rum right here, you landlubber! HAR HAR HAR!
SVN revision: 51790
2010-08-31 22:39:02 +00:00
Carsten Haitzler 4ec437491d anity check options for option silliness.
SVN revision: 51789
2010-08-31 22:36:35 +00:00
Carsten Haitzler 2dedcff5d3 aaaaaaaaaaaaaaargh! where's me rum! :(
SVN revision: 51788
2010-08-31 22:16:08 +00:00
Mike Blumenkrantz bc7bb345a6 move function into local, reformat
SVN revision: 51787
2010-08-31 21:19:54 +00:00
Iván Briano 88f1723ccb Avoiding access in NULL hash and little fixes.
If there isn't a font, the hash is NULL.
So, just check before to avoid problems.
Moreover, removing one line that had been lost in code generate of
fonts parts and moving it declaration for the right context

By: Fabiano Fidencio <fidencio@profusion.mobi>



SVN revision: 51786
2010-08-31 19:32:08 +00:00
Cedric BAIL 1915b760ee * eio: start to implement new cleaner API.
SVN revision: 51784
2010-08-31 16:24:58 +00:00
Cedric BAIL e687c13d1c * edje: fix interpolation of text color during animation.
SVN revision: 51782
2010-08-31 13:30:11 +00:00
Carsten Haitzler af64cdd630 color interpolation? never used. did nothing. not needed. go go go!
SVN revision: 51781
2010-08-31 13:29:17 +00:00
Carsten Haitzler 318217b812 evas_smart_new - deprecated api gone.
SVN revision: 51780
2010-08-31 12:01:46 +00:00
Carsten Haitzler 81ba0d8423 imaging api--. as promised.
SVN revision: 51779
2010-08-31 11:58:51 +00:00
Chidambar Zinnoury fd44c06b68 Evas SVG loader: if both width and height scale dimensions are given, we want to use the biggest computed dimensions.
Fixes some ugly views if width and height factors are too much different.

   See r51774.

   Thank you Cédric!


SVN revision: 51775
2010-08-31 08:14:39 +00:00
Chidambar Zinnoury e42df55f10 Evas JPEG loader: if both width and height scale dimensions are given, we want to use the biggest computed dimensions.
Fixes some ugly views if width and height factors are too much different.


SVN revision: 51774
2010-08-31 06:50:48 +00:00
Vincent Torri 04b32dda5f update Doxyfile to show more functions, types, etc...
The Doxyfile of the EFL need a complete review and update, I think


SVN revision: 51772
2010-08-31 05:02:16 +00:00
Carsten Haitzler b8099eeb87 add more docs in readme - probably a good idea since these magic env
vars are very useful at times



SVN revision: 51771
2010-08-31 04:38:24 +00:00
Vincent Torri 4369e0f790 fix some declarations
SVN revision: 51763
2010-08-30 19:24:09 +00:00
Cedric BAIL 2a596a37e5 * emotion: fix build of static module.
SVN revision: 51759
2010-08-30 16:18:11 +00:00
Vincent Torri 50c51279ac libtool takes care of adding -fPIC (which is btw a compiler flag and not a linker one) and -shared
SVN revision: 51757
2010-08-30 16:07:36 +00:00
Vincent Torri d8d683649e * don't tell you build emotion. It will broke windows compilation
* don't build the static lib module.a


SVN revision: 51755
2010-08-30 15:53:41 +00:00
Vincent Torri 89ebe33627 order of headers
SVN revision: 51754
2010-08-30 15:51:39 +00:00
Cedric BAIL 61c07ad1c4 * emotion: emotion_object_init will choose the best available backend
if NULL is passed.


SVN revision: 51747
2010-08-30 13:25:35 +00:00
Tom Hacohen c128fa4d80 Evas textblock: Fixed @intrenal -> @internal in some docs.
SVN revision: 51746
2010-08-30 11:27:39 +00:00
Mike Blumenkrantz 3ff8983830 update doc header to match readme
SVN revision: 51743
2010-08-30 08:20:09 +00:00
Carsten Haitzler 428e35e5d3 make it an env var to enable/disable window unsurface/resurfacing.
SVN revision: 51742
2010-08-30 06:46:29 +00:00
Carsten Haitzler 6e2ea4e371 notes++
SVN revision: 51741
2010-08-30 06:11:53 +00:00
Vincent Torri 156952f938 fix include order for Windows
SVN revision: 51740
2010-08-30 05:49:18 +00:00
Carsten Haitzler 2fdf9147c4 thanks jerome for picking up on header not being installed
SVN revision: 51738
2010-08-30 03:46:18 +00:00
Carsten Haitzler 075531cc54 aaah... so.. if we have a fribidi lock.. shall we.. hmrrrm maybe use
it? and... lets not just throw pointer onto pipelines just for the
hell of it.. as like.. hmm the object owning the pointer might be
freed before pipelien finishes.. or hell. it might change pointer
contents? :) need to nwo dup bidi intl_props. probably a better plan..
tasn looking at you... is to fix up evas bidi utils and make the intl
props a new/free thing (and sharable eh?) with reference counts to
avoid dups (just ref up most of the time - and if u change, make a new
intl prop - dont change current one) etc. etc. for now dup - this
gives a perf hit tho. at least async rendering works now.



SVN revision: 51736
2010-08-30 03:21:15 +00:00
Carsten Haitzler f3faf1730b can optimise this a bit and avoid magic checks as its internal.
SVN revision: 51735
2010-08-29 22:59:11 +00:00
Vincent Torri cfa7e00a53 whitespaces--
SVN revision: 51730
2010-08-29 18:19:36 +00:00
Sebastian Dransfeld a8fe3f85ec Don't double loop
SVN revision: 51728
2010-08-29 13:46:49 +00:00
Tom Hacohen 7cd4d7cf4a Evas font: Renamed the parameter names in evas_common_font_query_kerning to be more correct. Adjusted font query and font draw according to the correct font_query_kerning behavior.
SVN revision: 51724
2010-08-29 12:44:58 +00:00
Tom Hacohen 58319c5715 Evas textblock: fixed breakages of paragraph direction when merging/splitting text nodes.
SVN revision: 51723
2010-08-29 12:16:32 +00:00
Sebastian Dransfeld ef4176d8e2 Check region h
SVN revision: 51721
2010-08-29 10:57:15 +00:00
Tom Hacohen d4c2078f8d Evas textblock: Fixed 'up' and 'down' when pointing to the end of the last line when it ends with a visible format.
SVN revision: 51717
2010-08-29 09:19:04 +00:00
Tom Hacohen 649ad7a890 Evas textblock: Fixed 'Home' and 'End' in the last line when it ends with a visible format.
SVN revision: 51716
2010-08-29 09:13:48 +00:00
Sebastian Dransfeld 8967abcac0 ignore++
SVN revision: 51714
2010-08-29 08:51:33 +00:00
Sebastian Dransfeld f3a591b253 Always munmap mmap'ed data
SVN revision: 51713
2010-08-29 08:47:37 +00:00
Sebastian Dransfeld 96daa6c974 clean whitespace
SVN revision: 51712
2010-08-29 08:47:27 +00:00
Sebastian Dransfeld cf907d127a clean whitespace
SVN revision: 51711
2010-08-29 08:47:16 +00:00
Tom Hacohen 71490cad70 Evas textblock: Fixed segfault when clearing a textblock and then trying to delete while it's empty. And fixed cursor position in cases when there's a visible format after a \n
SVN revision: 51709
2010-08-29 08:27:13 +00:00
Carsten Haitzler 3ab29fcad0 shhh evas. ok - back to normal. generic fn ptr for now.
SVN revision: 51707
2010-08-29 02:25:22 +00:00
Carsten Haitzler 92fcbddbf7 move more callbacks to typedefs.
SVN revision: 51705
2010-08-29 01:59:21 +00:00
Carsten Haitzler 00236e9c5a fix map bug. :) again. this time both cases work.
SVN revision: 51704
2010-08-29 01:04:47 +00:00
Carsten Haitzler dae2c23caf possible leak--
SVN revision: 51703
2010-08-28 15:11:20 +00:00
Carsten Haitzler 46a62d5460 leak--
SVN revision: 51702
2010-08-28 15:07:45 +00:00
Carsten Haitzler 6402642686 more leak--
SVN revision: 51701
2010-08-28 14:56:14 +00:00
Carsten Haitzler 061f22552e fix leak of fb fd in error event.
SVN revision: 51700
2010-08-28 14:51:56 +00:00
Carsten Haitzler 2e96ecef81 fix possible leak source.
SVN revision: 51699
2010-08-28 14:46:44 +00:00
Carsten Haitzler 393c3fda9f fix possible null str deref.
SVN revision: 51698
2010-08-28 14:45:04 +00:00
Carsten Haitzler acac588d58 re-enaqble async rendering. seems ok on 2 cores. might be a quad-core
issue and arm issue. need to check again monday.



SVN revision: 51696
2010-08-28 13:15:38 +00:00
Vincent Torri 3aa85b5f2d formatting
SVN revision: 51695
2010-08-28 12:55:27 +00:00
Mike Blumenkrantz 833c0d19a9 doxy clarification
SVN revision: 51694
2010-08-28 10:01:20 +00:00
Carsten Haitzler be93013208 technically xerrorhandlers have a return of an int - but its ignored
by xlib (explicitly in docs).



SVN revision: 51693
2010-08-28 04:28:15 +00:00
Carsten Haitzler e3c63031ce unfortunate - but need to disable those async/pipe render options.
SVN revision: 51691
2010-08-28 02:43:15 +00:00
Mike Blumenkrantz 7a5677ad43 finish removing threadsafe stuff
SVN revision: 51687
2010-08-27 21:41:03 +00:00
Iván Briano b61db77029 Put fonts into the .edj file again.
SVN revision: 51684
2010-08-27 18:52:41 +00:00
Mike Blumenkrantz 671f193066 fix -I for eina_private.h
THIS IS BROKEN IN ALPHA RELEASE. WHOEVER BROKE IT: SPANK SPANK SPANK!


SVN revision: 51683
2010-08-27 18:18:41 +00:00
Cedric BAIL 16546300fc * eet: update changelog.
SVN revision: 51678
2010-08-27 13:48:48 +00:00
Cedric BAIL d0e18a3b2a * eet: fix build of data that doesn't match data descriptor.
SVN revision: 51677
2010-08-27 13:45:53 +00:00
Iván Briano 67dbaebcf6 Bring back (corrected) second check.
SVN revision: 51676
2010-08-27 12:20:58 +00:00
Carsten Haitzler 1874321e33 and actually fix un/resurf. done.
SVN revision: 51675
2010-08-27 10:45:06 +00:00
Carsten Haitzler f713366e7d fix un/resurf for dump.
SVN revision: 51674
2010-08-27 10:38:41 +00:00
Nicholas Hughart 7afd0b7173 Add the following functions to Ecore_Con API:
ecore_con_server_name_get
ecore_con_server_port_get



SVN revision: 51670
2010-08-27 05:16:00 +00:00
Carsten Haitzler 4a5adf358d tracing/info to check texture allocation/usage. no leaks that i see.
dump works perfectly. yay!



SVN revision: 51669
2010-08-27 02:02:38 +00:00
Carsten Haitzler 09d9dcc715 some minor cleanliness in the unsurf/resurf stuff.
SVN revision: 51668
2010-08-27 01:14:03 +00:00
Vincent Torri 2e625ed90e fix copy/paste
SVN revision: 51667
2010-08-26 22:39:42 +00:00
Lucas De Marchi 255b2cb870 Apply double_condition_check.cocci
The offending projects were:

 E16/e/src/backgrounds.c                 |   10 ++++------
 PROTO/eon/src/lib/layout/eon_stack.c    |    4 +---
 ecore/src/lib/ecore_win32/ecore_win32.c |    3 +--
 ecore/src/lib/ecore_wince/ecore_wince.c |    3 +--
 edje/src/lib/edje_edit.c                |    3 +--
 evas/src/lib/cache/evas_cache_image.c   |    2 +-
 exalt/src/lib/libexalt_private.c        |    2 +-


This patch assumes code in these places were insane and the fix is to remove
one condition check. Most likely this is not true, but there's no automatic fix
for that.

Looking at the patch, it seems that some places should use "x" and "y" vars but
used just one of them and therefore they were caught by coccinelle.




SVN revision: 51666
2010-08-26 20:45:09 +00:00
Tom Hacohen 2ab7f0f809 Evas textblock: Fixed ignoring of unicode object replacement char.
SVN revision: 51658
2010-08-26 13:04:13 +00:00
Tom Hacohen 26ecd94b4c Evas font: Fixed a couple of warnings and formatting issues.
SVN revision: 51656
2010-08-26 11:45:45 +00:00