Commit Graph

3074 Commits

Author SHA1 Message Date
Jean-Philippe Andre c0bb73c775 evas/cserve2: Fix image load premultiplication
There was a color problem in elementary_test since elm
sets premul to 0 while expedite sets it to 1 during image load.
2013-10-28 15:47:13 +09:00
Jean-Philippe Andre db66f69104 evas/cserve2: _cserve2_cache_fast_scaling_check()
Adapt function to new Data/Entry model.
2013-10-28 15:47:13 +09:00
Jean-Philippe Andre ee74562bf0 evas/cserve2: Simplify error logs 2013-10-28 15:47:13 +09:00
Jean-Philippe Andre 64e7d48296 evas/cserve2: Store Image_Data in shared array
Split image entries into Image_Data and Image_Entry.
Store, find and use Image_Data descriptors from shared array.
Fix some wrong hash table usages.
2013-10-28 15:47:13 +09:00
Jean-Philippe Andre 315c2fd161 evas/cserve2: binary search in Shared_Array 2013-10-28 15:47:13 +09:00
Jean-Philippe Andre d0e647fee3 evas/cserve2: Repack File_Data shared array 2013-10-28 15:47:13 +09:00
Jean-Philippe Andre acae35b4d1 evas/cserve2: Use Shared_Array storage for File_Data
File_Entry and File_Data are now two different types,
one being stored in the shared array, the other one
is only a reference counting entry.
2013-10-28 15:47:13 +09:00
Jean-Philippe Andre c57a319df3 evas/cserve2: Rename File_Data pointers to fd
The name fe is also used by Font_Entry, slightly confusing
2013-10-28 15:47:13 +09:00
Jean-Philippe Andre 12deed8073 evas/cserve2: Use unique id counter
Merge file id and image id into a single entry id.
2013-10-28 15:47:12 +09:00
Jean-Philippe Andre 07fb7172d5 evas/cserve2: Implement shared index and buffers
Only import the C file for now.
Implement the following features:

- Shared Arrays
Store arrays of elements of fixed size in shm.

- Shared Mempool
Store random sized buffers in shm.
These buffers are indexed in a Shared Array and are
referred to using their index only.

- Shared Strings
Store strings in a shm in a way similar to Eina_Stringshare
(except strings are referred to using an int index).

- Include evas_cserve2_index.c to the compilation.
- Declare shared index functions in header file.
- Call init() and shutdown() on the shared index subsystem.
- Add find and foreach functions
2013-10-28 15:47:12 +09:00
Jean-Philippe Andre deb8776de5 evas/cserve2: Add functions to resize shm files
- cserve2_shm_segment_request()
Creates a new shm segment (Shm_Handle) from an existing file,
without changing the current mmap.

- cserve2_shm_resize()
Grows the file and remaps in memory (new virtual address).

- cserve2_shm_id_get()
Returns the shm creation ID.
2013-10-28 15:47:12 +09:00
Jean-Philippe Andre 781c2e26e5 evas/cserve2: Prepare usage of shared strings
+ Add macros to fake usage of future cserve2 strings functions
+ Rename all File_Entry to fe
+ Other costmetic changes
2013-10-28 15:47:12 +09:00
Jean-Philippe Andre afde0c892b evas/cserve2: Add CRIT() macro
For easy debugging
2013-10-28 15:47:12 +09:00
Carsten Haitzler 9f690ba390 evas - cover corner case for native surface shared refs on obj delete 2013-10-28 10:26:32 +09:00
Chris Michael 28fed3fdb7 Fix formatting
Signed-off-by: Chris Michael <devilhorns@comcast.net>
2013-10-27 15:44:31 +00:00
Chris Michael 2be84a6073 Fix compiler warning(s) about eina_hash_int64 being passed pointer
from integer

Signed-off-by: Chris Michael <devilhorns@comcast.net>
2013-10-27 15:43:18 +00:00
Carsten Haitzler c4a45c75b1 evas gl engine related - fix elm image example 01 (T182).
this fixes https://phab.enlightenment.org/T182 as it is an issue with a
surface alloc overwriting an already allocated surface entirely inside
the general software image infra.
2013-10-26 21:09:17 +09:00
discomfitor 0b8d4e4bce fix ecore evas pointer warping 2013-10-25 17:14:43 +01:00
Cedric Bail fe5dd4bcda eina: add test for old ABI supported function, but not exposed anymore. 2013-10-25 20:16:10 +09:00
Cedric Bail 7f8665a266 eina: improve test coverage of Eina_File API. 2013-10-25 19:57:57 +09:00
Cedric Bail cae6b0b0e4 eina: improve test coverage of virtual file. 2013-10-25 19:50:14 +09:00
Cedric Bail 39931d295b eina: use Eina_Barrier to improve coverage and reduce race condition during testing.
This should hopefully solve the failing test on Jenkins. As I can't reproduce them
here, it is just an educated guess... We will see !
2013-10-25 15:12:28 +09:00
Sung W. Park 7dc102c55f EvasGL: Fixed direct rendering not clipping issue
Evas GL direct rendering mode didn't properly take into account
the image object's clipping information and clip the region that
it was directly rendering to. Hence there were issues with the
direct rendering region drawing over the objects that are sitting
on top of it.

Also, cleaned up the direct rendering coordinate computation code
and a nasty dependency with image object that should have been
removed a long time ago.  Basically the evas-gl engine was directly
accessing the image object data structure for its data when it
really should have just passed along necessary information.
2013-10-24 17:42:21 +09:00
Daniel Juyung Seo abec2d03b8 Ecore_Legacy.h: fixed typo while reading it. 2013-10-23 22:23:22 +09:00
Sebastian Dransfeld 7eebd55ebe efreet: Fix file opening
- Store result from mkstemp so we don't leak file descriptor
- No need to chmod, as we set correct umask before createing file
- Use fdopen to open file from file descriptor, not from path
2013-10-22 12:54:22 +02:00
Carsten Haitzler 7736a96c4f for ecore system time changed - use a real time in the future, not
time 0

for ECORE_EVENT_SYSTEM_TIMEDATE_CHANGED we use a timerfd on linux (and
also support talking to systemd) to detet time/date changes. the
timerfd was set up to go off at the absolute time of 0. since that is
almost always... in the past.. lets set a REAL time in the future.
(almost end of time)
2013-10-22 08:12:48 +01:00
Daniel Zaoui 208c424238 Evas: Add API to access private function
We need a function in DnD for the overlapping feature to retrieve all
the objects at a specific position.
A private function exists in Evas (evas_event_objects_event_list) for
that purpose.
We need an access to this function for Elementary but we don't
want the is_frozen flag to be checked.
2013-10-21 19:03:24 +03:00
Daniel Juyung Seo 203c3e7c15 ecore examples: move pkg-config at the end of gcc command.
This fixed build break on my machine.
2013-10-22 00:45:29 +09:00
Ulisses Furquim 3d3f33f310 evas: change sync all canvases function name.
Change evas_render_sync() to evas_all_sync() to better describe what it does
and avoid confusions with evas_render() and friends.
2013-10-18 14:43:08 -03:00
Carsten Haitzler a3aa1ed7f0 ecore-evas - handle mouse out then in due to click-to-focus passive grabs 2013-10-19 02:46:25 +09:00
Youngbok Shin d17e0d3936 evas: Fixed the textblock format to be drawn according to the glyph's horizontal advance width.
Summary:
Some characters have different two value on glyph's width and horizontal advance width.
If the glyph's width is smaller than advance width, format can be drawn weird.

Test Plan:
Set underline:on to the entry style and just insert the following characters.
。
、
)
(

Reviewers: tasn, woohyun

CC: cedric

Differential Revision: https://phab.enlightenment.org/D270
2013-10-18 11:25:59 +01:00
Mike Blumenkrantz 91565c48e3 only unswallow deleted swallowed parts if they're in a swallow (wtf.) 2013-10-17 10:17:33 +01:00
Mike Blumenkrantz 71c545545a edje should probably unswallow objects when they get deleted externally to avoid issues later on? 2013-10-17 10:07:23 +01:00
discomfitor 73bd605b7f cosmetic/logic move evas_sync call into same if block when applying alpha settings that might be deferred 2013-10-16 17:57:07 +01:00
discomfitor 9c83f34420 evas smart callback deletion no longer crashes when called during object deletion 2013-10-16 17:12:50 +01:00
Carsten Haitzler 06c3c0cd0c async render -> alpha set. if not visible dont WAIT. do it now. 2013-10-17 00:00:05 +09:00
Carsten Haitzler 7d7f548afc evas - gl - dont allocate image and/or texture until needed on native unset 2013-10-16 22:56:38 +09:00
Carsten Haitzler ed0e8b8df1 Revert "efreet: Use eina_file_mkstemp"
This reverts commit bd5a5e7fce.

sorry about this... all fine eina mkstemp use and all... but this
*BREAKS EFREET*! ibar icons stop working (vanish). efreet no longer
issues a desktop file update event to e etc. etc. etc. ... so let's
keep code that works for now even if it uses mkstemp and not eina...
:) working is better. :)
2013-10-16 22:56:38 +09:00
Cedric Bail 6be9cc74de evas: simplify logic for textblock style parameter parsing. 2013-10-16 18:56:32 +09:00
Cedric Bail 91e76f791d eina: honor string length in eina_tmpstr_add_length. 2013-10-16 18:56:32 +09:00
Yakov Goldberg d33b0e03b7 evas: fix doxygen 2013-10-16 12:05:43 +03:00
Cedric Bail 3abf3a19f4 evas: request ellipsis from the right font. 2013-10-16 17:57:54 +09:00
Yakov Goldberg cf320aa2b2 evas: fix doxygen 2013-10-16 11:53:04 +03:00
Cedric Bail 46447c95aa eina: just for a little bit of better portability. 2013-10-16 16:54:36 +09:00
Cedric Bail 577ae1debc eina: let's add some straight forward test. 2013-10-16 16:51:41 +09:00
Sebastian Dransfeld 0b26b1bd89 eina: And guard the right function with umask
Thanks Cedric.
2013-10-16 04:56:51 +02:00
Sebastian Dransfeld bd5a5e7fce efreet: Use eina_file_mkstemp 2013-10-16 04:48:20 +02:00
Sebastian Dransfeld 7576ff00f3 Set secure file permissions for temporary file
From glibc mkstemp man page:
       In glibc versions 2.06 and earlier, the file is created with
       permissions 0666, that is, read and write for all users.  This old
       behavior may be a security risk, especially since other UNIX flavors
       use 0600, and somebody might overlook this detail when porting
       programs.  POSIX.1-2008 adds a requirement that the file be created
       with mode 0600.

       More generally, the POSIX specification of mkstemp() does not say
       anything about file modes, so the application should make sure its
       file mode creation mask (see umask(2)) is set appropriately before
       calling mkstemp() (and mkostemp()).

And:
	http://cwe.mitre.org/data/definitions/377.html
2013-10-16 04:28:53 +02:00
ChunEon Park eea1b83cf6 evas/map - Fixed the map surface to be updated properly.
By tranversing the whole of the map target's tree,
it decides to update the map surface to be redrawn if one of the objects is changed except the clipper itself.
2013-10-15 22:24:27 +09:00
Chris Michael cf859cfacc Fix horrid formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2013-10-15 13:40:50 +01:00