Commit Graph

21818 Commits

Author SHA1 Message Date
Marcel Hollerbach af6134aa6c ecore_evas: add API to offset drag position relative to cursor
The values are stored in the ee itself. And it is the responsibility of
the engine to use that value correctly.
2022-05-31 21:15:03 +02:00
Carsten Haitzler 3008e1cd4c evas canvas - init res var to avoid uninit warning
@fix
2022-05-18 13:20:19 +01:00
Carsten Haitzler 712c0d5b0d edje - fix warnings with string buffer lens
@fix
2022-05-18 12:48:47 +01:00
Carsten Haitzler a4a0dc7a75 eldbus - fix warning about buffer being a bit small for string
@fix
2022-05-18 12:16:08 +01:00
Carsten Haitzler b0232b5e1d emile - handle possible invalid compress type more gracefully
check length return is < 0 and handle that.

@fix
2022-05-18 12:16:05 +01:00
Carsten Haitzler f682178017 ecore-x - use current time not vblank timestamp for animator time
sometimes on some systems and drviers time here is not what we
want/expect. it can be in the future. there are reasons so, work
around this and use the timestamp of "now" when we get the event as
opposed to the timestamp given to work around odd weirdnesses and
complaints time went backwards.

@fix
2022-05-17 15:02:20 +01:00
Carsten Haitzler 5f85967da1 evas - textgrid - guard against null/empty glyphs
not sure how someone got to this point - but this should not be null,
so don't crash if it is.

@fix
2022-05-16 18:36:56 +01:00
Carsten Haitzler e9e40eb610 eet - add eet_sync_sync() that syncs data to disk and fdatasyncs it
this ensures that if eet_sync_sync() returns that all data has been
synced to disk (as best possible with fdatasync()).

@feat
2022-05-16 14:02:31 +01:00
Carsten Haitzler 9490cf857b evas -jxl - bump version needed because we need neweer than 0.6.1
the jxl loader requires code that is unreleased from jxl (changes made
after 0.6.1 release), thus bump to 0.6.2 to indicate this. will have
to adjust once a newer jxl comes out.
2022-05-01 09:51:36 +01:00
Vincent Torri 01fb3233eb Evas: add jxl loader and saver
add jxl loader and saver to Evas.

Entice for loading, animated jxl files or not some conformances files :
https://github.com/libjxl/conformance/tree/master/testcases
2022-04-28 17:00:40 +01:00
Carsten Haitzler d4ee3a158a eina bt - it seems tab plus space doesnt produce always a space fix
as this is machine-read ... a single space will do and will produce
the right format.

@fix
2022-04-28 16:28:51 +01:00
Carsten Haitzler 6fd2852b14 add urilist support to cnp part of cnp not just dnd
this also makes urilist things work for copy & paste like with dnd.
goers with commit 8d4a2a70cf
2022-04-27 16:02:59 +01:00
Carsten Haitzler 5aa9a59c33 efreet - fix missing use of eina prefix for finding path to efreetd
fixes relocation with eina prefix by using it to launch efreetd

@fix
2022-04-20 19:46:19 +01:00
Carsten Haitzler 1e19806faf elm - dnd - fix missing out callback when mouse leaves window
@fix
2022-04-04 20:32:16 +01:00
Carsten Haitzler 8d4a2a70cf elm cnp - add uri list so you can sensibly do dnd for a filemanager 2022-04-03 21:11:59 +01:00
Carsten Haitzler d8fe6e9450 evas - handle odd case where smat child is not removed to avoid inf loop
with som refcount fun some o9bjects may not get removed until later
thus causing infinite loops trying to remove comtained objects so
remove anyway in this case to avoid looping forever

@fix
2022-04-03 21:10:25 +01:00
Carsten Haitzler 4ba44bd865 elm - be more robust in the face of null cnp obj and bad app code
someone decided passing a null obj to elm_cnp_selection_set from an app
is a good idea. it's not... but let's not crash 9nside efl if someone
does and instead survive and complain

@fix
2022-03-26 23:07:38 +00:00
Carsten Haitzler da0a6f9ed0 evas - smart obj - set smart data to null after del func to avoid bugs
so smart data get cleanly returns null ... set it to nukll after del
func called as now the smart data shiuld be gone and not usable
anymore. this means we dont return junk smart data if called after this.

@fix
2022-03-26 23:07:38 +00:00
Carsten Haitzler 41dd584789 ecore-x - in order to only handle "new kbds" instead of maps add ev info
als flag in the xkb event to look at in this case. this allows for
fixes in e to not redo kbd layout when xmodmap changes modmap

@feat
2022-03-25 10:45:37 +00:00
Carsten Haitzler 0f6e1c03f0 ecore-x - fix xkb emitted hash handling to del just that serial
don't delete any item with a data of 1 which could be multiple
items.... delete by the serial instead.

also - don't leak the event... this leaks the event as the free func
never freed the event...

@fix
2022-03-25 10:45:37 +00:00
Carsten Haitzler 107b19d427 ecore-x - fix netwm moveresize request to send to the right window
e handles this but other wm's don't ... fic to send to root

@fix
2022-03-08 11:58:00 +00:00
Jaehyun Cho 3756b88cde edje_calc: fix check return of _edje_fetch
Summary: checks if _edje_fetch returns null before calling _edje_recalc_do.

Reviewers: Hermet, raster, kimcinoo, jsuya

Reviewed By: jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12322
2022-02-24 17:26:36 +09:00
Carsten Haitzler d3a1b077fb edje - improve number of signlas/messages we can do per second
use a 0 timer delay not 0.001s before processing messages thus being
able to handle more especially when they self-feed a bit.

@opt
2022-02-20 11:20:43 +00:00
Carsten Haitzler 5e1023f64b ecore x - ensure pointer is not outside barriers when settingh for screens
it might be possible the pointer is outside the screen areas and
perhaps gets caught there, so move the pointer in first before setting
up new barriers

@fix
2022-01-20 12:14:57 +00:00
junsu choi 5ebebe4698 Efl.Gfx.Path: Remove unnecessary optimization code for small arc
Summary:
This condition(optimization) is not a step suggested by arc implementation.
https://www.w3.org/TR/SVG11/implnote.html#ArcCorrectionOutOfRangeRadii (Step2)
This code is useful if the arc is too small to represent.
However, scaling often occurs in vectors, which can create unnecessary problems.

Test Plan:
SVG Image
```
<svg viewBox="0 0 50 50" height="50" width="50">
<path d="M32.41,20.49a.41.41,0,1,1-.41-.42A.41.41,0,0,1,32.41,20.49Z" transform="translate(-70, -50) scale(3.3)" fill="#020202"/>
</svg>
```
image file
{F4792225}
result
{F4792221}

Reviewers: Hermet, raster, kimcinoo

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12316
2022-01-12 11:32:42 +09:00
Carsten Haitzler 7a674c6a29 ecore input - fix - hopefully - build on freebsd with joystick support
no eeze there to move the include there and on linux only

@fix
2022-01-11 11:16:35 +00:00
Carsten Haitzler 34a36b49e1 eet - fix seg when doing unusual things with eet write then read
if you write and read0-back before writign out (non-sensical to do as
you would write out in full and close and then open file and read
separately) the dictionary will be empty. fill it in these paths.
fixes needed resulting from optimizations in 1.26.0

@fix
2022-01-04 09:44:20 +00:00
Carsten Haitzler b1ddbd8408 edje entry - complete key handling for cut (shft+del)
fixes T8975

@fix
2021-12-30 19:38:48 +00:00
Carsten Haitzler 0fe3c751d1 edje entry - fix past to use shft+ins for paste and no ctl
fix key handling for paste (insert key one)

@fix
2021-12-30 19:32:42 +00:00
Vincent Torri 8189c1a529 Eio: fix functions name
Summary: 2 functions has wrong names, hence link error

Test Plan: compilation

Reviewers: raster

Reviewed By: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12312

@fix
2021-12-29 16:57:00 +00:00
Ali Alzyod 57b2bedac3 remove space 2021-12-24 09:34:46 +02:00
Maximilian Lika 7802e92849 Make passing data pointer to format_cb possible
Summary:
Hello,
For my perl binding it is important that one can pass a data pointer to all callbacks, especially to "Format_Cbs" as in elm_slider_units_format_function_set(), elm_slider_indicator_format_function_set() of elm_progressbar_unit_format_function_set(). Another "problematic" function would be elm_calendar_format_function_set().

Enclosed you find a approach to solve this problem.

It would be wonderful, if the Efl-libraries could make data pointers also in format cbs possible...

Thanks in advance,
Max

Reviewers: bowonryu, eagleeye, zmike, cedric, raster

Reviewed By: raster

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12298
2021-12-14 08:53:15 +00:00
Carsten Haitzler 1d57aa2a4c ecore - loop time - do not allow setting into the future - not intended
setting a loop time timestamp in the future will lead to all sorts of
bad things. the idea is it was meant to go back a little in time AFTER
some sync/animation etc. event to pretend to be at the time when that
event happend (it just took some time ot arrive at the process) and so
animation and other timelines all agree to be at this time a little
bit in the past. going forwards leads to bad things so disallow it and
complain. this fixes weston in a window problems when it sends
timestamps in the future from weston...

@fix
2021-12-04 09:18:47 +00:00
Alastair Poole 981e85f99c ecore_thread: Add ecore_thread_name_set API.
This function can only be successfully called from the given
thread. For debugging purposes, it's useful to be able to give
a name to an Ecore_Thread.

ecore_thread_name_set(Ecore_Thread *thread, const char *name);

@feature
2021-12-04 06:36:36 +00:00
Taehyub Kim d5c8311470 edje lua2: check string ptr before dereference
Summary: fix null pointer dereference

Reviewers: Hermet, kimcinoo, jsuya, raster

Reviewed By: kimcinoo

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12309
2021-11-30 10:49:00 +09:00
Alastair Poole 38a4c53a84 eio_mon: separate dir/file concerns.
As per ecore_file_monitor.
2021-11-26 08:32:17 +00:00
Alastair Poole 43108e772a ecore_file: Monitor file writes (kevent).
Trigger ECORE_FILE_EVENT_MODIFIED on file write.

@fix
2021-11-25 19:20:49 +00:00
Carsten Haitzler 9ba7c3667c elm - spinner - fix entry mysteriously hiding in paledit
some logic ws off in how to hide/show and handle visibility of
swallowed entry. fix it - let edje deal with show/hide and dont fight
with it and ensure we emit a signal to have entry active when it needs
to be visible

@fix
2021-11-21 12:10:49 +00:00
Carsten Haitzler dcf34cef77 efl ui text - handle edje cc classes for text 2021-11-11 19:57:13 +00:00
Vincent Torri b5b0222ae0 Eina: sanitize eina_path output on Windows
Summary:
 * remove additional \ character
 * use only / as path separator

Test Plan:
compilation and run

test program :

```
{
        elm_app_bin_dir_get();
        printf("%s\n", eina_vpath_resolve("(:tmp:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:home:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.desktop:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.documents:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.downloads:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.music:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.pictures:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.public:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.templates:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.videos:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.data:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.config:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.cache:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.run:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:usr.tmp:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.dir:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.bin:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.lib:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.data:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.locale:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.config:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.local:)/foo"));
        printf("%s\n", eina_vpath_resolve("(:app.tmp:)/foo"));
    }
```

before patch :

```
C:\Documents\msys2\tmp/foo
C:\Users\vincent.torri/foo
C:\Users\vincent.torri\Desktop/foo
C:\Users\vincent.torri\Documents/foo
C:\Users\vincent.torri\Downloads/foo
C:\Users\vincent.torri\Music/foo
C:\Users\vincent.torri\Pictures/foo
C:\Users\Public\/foo
C:\Users\vincent.torri\AppData\Roaming\Microsoft\Windows\Templates/foo
C:\Users\vincent.torri\Videos/foo
C:\Users\vincent.torri\AppData\Local\/foo
C:\Users\vincent.torri\AppData\Roaming\/foo
C:\Users\vincent.torri\AppData\Local\/foo
C:\Users\vincent.torri\AppData\Roaming/foo
C:\Users\vincent.torri\AppData\Local\Temp/foo
C:/Documents/msys2/opt/entice_64/bin/foo
C:/Documents/msys2/opt/entice_64/bin/foo
C:/Documents/msys2/opt/entice_64/lib/foo
C:/Documents/msys2/opt/entice_64/share/foo
C:/Documents/msys2/opt/entice_64/share/foo
C:\Users\vincent.torri\AppData\Roaming\/entice/foo
C:\Users\vincent.torri\AppData\Local\/entice/foo
C:\Users\vincent.torri\AppData\Local\Temp/entice/foo
```

after patch

```
C:/Documents/msys2/tmp/foo
C:/Users/vincent.torri/foo
C:/Users/vincent.torri/Desktop/foo
C:/Users/vincent.torri/Documents/foo
C:/Users/vincent.torri/Downloads/foo
C:/Users/vincent.torri/Music/foo
C:/Users/vincent.torri/Pictures/foo
C:/Users/Public/foo
C:/Users/vincent.torri/AppData/Roaming/Microsoft/Windows/Templates/foo
C:/Users/vincent.torri/Videos/foo
C:/Users/vincent.torri/AppData/Local/foo
C:/Users/vincent.torri/AppData/Roaming/foo
C:/Users/vincent.torri/AppData/Local/foo
C:/Users/vincent.torri/AppData/Roaming/foo
C:/Users/vincent.torri/AppData/Local/Temp/foo
C:/Documents/msys2/opt/entice_64/bin/foo
C:/Documents/msys2/opt/entice_64/bin/foo
C:/Documents/msys2/opt/entice_64/lib/foo
C:/Documents/msys2/opt/entice_64/share/foo
C:/Documents/msys2/opt/entice_64/share/foo
C:/Users/vincent.torri/AppData/Roaming/entice/foo
C:/Users/vincent.torri/AppData/Local/entice/foo
C:/Users/vincent.torri/AppData/Local/Temp/entice/foo
```

Reviewers: raster

Reviewed By: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12306
2021-11-10 12:51:23 +00:00
Carsten Haitzler 173c9cdbe1 eina vpath - fix trailing extra / after home
fixes T8965

@fix
2021-11-07 09:26:03 +00:00
Carsten Haitzler 992fb22ac4 eina vpath - fix public vpath location - docs say say public not pub
@fix
2021-11-07 09:09:28 +00:00
Taehyub Kim 3b1eede582 efl_canvas_image : remove the animated image limitation
Summary: remove FRAME_MAX limitation to play the huge animated image which has more than 1024 frames

Test Plan: load gif image which has more than 1024 frames

Reviewers: Hermet, kimcinoo

Reviewed By: Hermet

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12303
2021-11-04 16:38:48 +09:00
Carsten Haitzler 904d80e0ae elm - palette - add api to check if palette has a system version 2021-10-31 18:27:32 +00:00
Carsten Haitzler cf0df4872d edje + elm - add new explicit tracking of all cc's used in edj themes
edje_cc now lists all cc's used in an edj file. edje provides an api
to list this. elm now uses this api to expose a list of all cc's used
acorss all the theme(s) selected by the user. this will then be used
by paledit to produce a nicer gui with a list of available cc's to add
etc. and split between basic and extended.

@feat
2021-10-31 11:44:57 +00:00
Carsten Haitzler fdd4f923be eet - fix bug I added in optimization patch in unusual code path
fixes bug in d08bb74255 in fallback code
path.
2021-10-25 09:34:14 +01:00
Carsten Haitzler d08bb74255 eet - optimize eet dictionary building
this massively speeds up efreet's icon cache building for huge icon
themes... in my nasty test case of some insanely huge icon themes that
have like 50,000 - 100,000 files... each - and multiple where the icon
cache has to scan all of them and build the cache files... i see a
speedup of going from 80 seconds to build down to 15-16 seconds. so
over 5 times faster.

This builds the dictionary in a temporary eina superfast string hash
in ram and then just before writing flattens it out into a regular eet
dict format.

@opt
2021-10-23 12:15:17 +01:00
Carsten Haitzler 05bee4b2ab elm theme - final cc work for elm code cc's 2021-10-18 18:50:08 +01:00
Carsten Haitzler b905a0036e ecore anim - just for paranoia also cancel the thread
we send -1 to say exit to the thread but also cancel thread too with
ecore "in case"
2021-10-03 23:48:58 +01:00
Carsten Haitzler 2ce7feb3d5 emotion - properly track subtitle mute state and init emotion obj early
fix setting things on an emotion obj early bu initting engine early
and also track spu mute flags to set on pipe later

@fix
2021-09-26 21:23:24 +01:00