Commit Graph

31312 Commits

Author SHA1 Message Date
Carsten Haitzler 324e74427c elm focus stuff - just handle corner cases during tree deletes quietly
like if parent is null in the process of a tree deletion etc....
2021-08-11 15:35:44 +01:00
Carsten Haitzler 4596fdd375 elm - config - support coarse palette entires with colon 2021-08-09 19:04:53 +01:00
Carsten Haitzler 276513f58b edje - fix up colorclass lookups to always be recrusvie now 2021-08-09 19:04:53 +01:00
Carsten Haitzler a5c7c65658 edje - we can't rely on string ptr coming from eet file anymore... 2021-08-09 18:22:06 +01:00
Carsten Haitzler 0a3a28525c pdf loader - also handle non-small letter extns 2021-08-09 08:20:23 +01:00
Shinwoo Kim e9a73c5b81 evas gl: bind texture with external target for map
Summary:
egl images created using tbm surface for native surface set use
GL_TEXTURE_EXTERNA_OES as texture target, so we should bind to
this target when rendering. Or there is a GL_INVALID_OPERATION
error on glBindTexture in function _orig_shader_array_flush.

Thia patch follows logic of following commit;

7db0e20 evas/gl: Bind texture with external target for tbm surface

Reviewers: Hermet, raster, jsuya, herb

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12286
2021-07-28 14:48:46 +09:00
Marcel Hollerbach 34e4e110a2 eldbus: fix to dbus_name_to_c method
"-" in names should be converted to _
2021-07-14 15:28:59 +02:00
Marcel Hollerbach bad5440b2b Revert "eldbus: do not generate method names with - in name"
This reverts commit 364cc9dcba.

Not for master yet
2021-07-14 15:12:11 +02:00
Marcel Hollerbach 364cc9dcba eldbus: do not generate method names with - in name 2021-07-14 15:03:57 +02:00
Carsten Haitzler 24a17ee963 evas - tga - remove errant printf 2021-07-05 16:01:37 +01:00
Hermet Park afba465735 ecore_wl2: prevent invalid timer if the input is invalid.
Summary:
It is non-sense that running timer even if the input/timer is invalid.
Stop the timer to prevent invalid key down repeating.

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12285
2021-07-05 18:10:02 +09:00
Christopher Michael 868a5c28ff exactness: Make sure image valid before usage....
dh
2021-06-28 00:14:49 -04:00
Carsten Haitzler 74da29321c ecore evas - fix leake and possile seg i added in cnp paste fix
previous commit fixed a bug but added this possible one. this fixes
that.
2021-06-26 22:47:31 +01:00
Carsten Haitzler b8be127171 ecore evas - cnp - look for exact mime matches before conversions
fixes chrome -> efl copy and paste.

@fix
2021-06-26 21:40:10 +01:00
junsu choi fe60e94007 evas_vg_load_svg: Fix color parsing
Summary:
Remove unnecessary point movement in rgb(255, 255, 255) case in svg parsing.
In svg parsing, move the pointer by 'rgb(' before calling
_color_parser() in the rgb(255, 255, 255) case.
In function, string pointer moved unnecessary, so parsing is incorrect.
Therefore, remove unnecessary point movement.

Test Plan:
svg sample code
```
<svg xmlns:svg="http://www.w3.org/2000/svg" viewBox="0 0 300 300">
  <path d="M 0 0 h 200 v 200 z" style="fill:rgb(255, 155, 55);"/>
</svg>
```

before
{F4504779}

after
{F4504778}

Reviewers: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12284
2021-06-18 10:24:58 +01:00
Carsten Haitzler f4734ac989 ecore-x - flag move events in more cases 2021-06-06 21:59:33 +01:00
Carsten Haitzler c493765702 ecore - fix name/ref for source of fix analysis etc. 2021-06-05 20:41:06 +01:00
Carsten Haitzler 4f5b1b2fad ecore - mainloop - select - increase max set size and check fd if over
if fd's exceed max set size then things will ... god bad. how - ...
depends on the OS but at least report that there is an issue.
2021-06-04 12:29:22 +01:00
Carsten Haitzler 221b8075de scroller - limit wheel accel a bit to something saner 2021-06-04 12:29:22 +01:00
Shinwoo Kim 45aeaa6750 atspi: add atspi bridge ready event
Summary:
calling elm_init does not guarantee of readiness of atspi bridge
even though elm_init is calling _elm_atspi_bridge_init.
widget or user could want to know when the atspi bridge is ready.

Reviewers: Hermet, jsuya, herb

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12283
2021-06-04 20:20:14 +09:00
Shinwoo Kim bc48081c93 atspi: move duplicated code in one place
Summary: we do not have to change several place for updating.

Reviewers: Hermet, jsuya, herb

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12282
2021-06-03 12:48:41 +09:00
josef radinger 6b38c62314 fix typo
Summary: just a small typo

Test Plan: -

Reviewers: raster

Reviewed By: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12281
2021-05-30 20:43:41 +01:00
Carsten Haitzler 39b48ca430 Revert "fix warnings about redefinting EWAPI etc. due to windows EAPI changes"
This reverts commit e2d6691d52.
This reverts commit c02b796fdb.
This reverts commit 6c969f6b7d.
This reverts commit 74204bccd7.
This reverts commit 1304d95717.
This reverts commit 7c85be9674.

revert the EAPI changes that break cxx bindings build. sorry :( more
fixes needed than i thought
2021-05-26 15:46:25 +01:00
Carsten Haitzler 26ea0eaac2 embryo - embryo_cc - one more warning bites the dust 2021-05-26 13:50:07 +01:00
Carsten Haitzler 0dab01b44d embryo - embryo_cc - silence some new gcc warnings - try 2
all warnings bar 1 fixed. my manual strncpy seems ot have an issue -
commented out.
2021-05-26 04:42:22 +01:00
Carsten Haitzler e9fcaa7339 Revert "embryo - embryo_cc - silence some new gcc warnings"
This reverts commit f4ff12406c.

hmm - it seems this warning silencing didn't work. revisit...
2021-05-26 04:40:09 +01:00
Carsten Haitzler f4ff12406c embryo - embryo_cc - silence some new gcc warnings
lets us focus on real errors in warnings if we have silence
2021-05-26 04:33:54 +01:00
Carsten Haitzler 11e4cad03e eina file - expand buf a bit to silence warning about data beyond buffer 2021-05-26 03:48:31 +01:00
Carsten Haitzler 43b41f2383 emile - disable warnings when they are wrong ifor new buffers
emile in these 2 cases allocates an empty uninitilised buffer that
will then be filled - gcc thinks we're passing uninit data to a func -
which is right but intended as it is later filled. disable this
warning for these segments of code.
2021-05-26 03:43:31 +01:00
Carsten Haitzler d6005e9df8 emile - dont check return of alloca as it is not defined to fail 2021-05-26 03:43:31 +01:00
Carsten Haitzler eaf41e2223 elm - efl ui calendar - fix buffer truncate warning 2021-05-26 03:43:31 +01:00
Carsten Haitzler a6d0adccad elm - fix buffer truncate warning in elm calendar 2021-05-26 03:43:31 +01:00
Ali Alzyod a083a3fa7d update documentation for content fit 2021-05-25 03:13:30 +03:00
Shinwoo Kim 66c5729494 eeze: remove memory leak
Summary: udev_enumerate_new needs to call udev_enumerate_unref before leaving.

Reviewers: raster, Hermet, herb, jsuya

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12280
2021-05-24 19:48:43 +09:00
Taehyub Kim 25aced168a gif loader: show the current frame image if getting row is failed
Summary:
Change-Id: I17c79f89550e9a758a532babd55826b3c7ad2810

To show gif animation smoothly, we keep the current frame even if getting line is failed.
Currently,  the frame image will be freed if getting gif line is failed and this makes the frame drop.

Reviewers: Hermet, kimcinoo, raster

Reviewed By: raster

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12277
2021-05-24 19:48:22 +09:00
Jaehyun Cho 3db14bf8dd eet: initialize descriptor class' func.type_get and func.type_set
Summary:
Descriptor class' func.type_get and func.type_set are initialized with
NULL.

Change-Id: I94526c2421c1fa2924a705cd2341130905df1da0

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12279
2021-05-24 17:50:04 +09:00
Carsten Haitzler e2d6691d52 fix warnings about redefinting EWAPI etc. due to windows EAPI changes 2021-05-23 20:47:23 +01:00
Felipe Magno de Almeida c02b796fdb elementary: Add EOAPI definition in Elementary to allow removal in other libraries
Summary:
Patch from a series of patches to rename EAPI symbols to specific
library DSOs.

=  The Rationale =

EAPI was designed to be able to pass
`__attribute__ ((visibility ("default")))` for symbols with
GCC, which would mean that even if -fvisibility=hidden was used
when compiling the library, the needed symbols would get exported.

MSVC __almost__ works like GCC (or mingw) in which you can
declare everything as export and it will just work (slower, but
it will work). But there's a caveat: global variables will not
work the same way for MSVC, but works for mingw and GCC.

For global variables (as opposed to functions), MSVC requires
correct DSO visibility for MSVC: instead of declaring a symbol as
export for everything, you need to declare it as import when
importing from another DSO and export when defining it locally.

With current EAPI definitions, we get the following example
working in mingw and MSVC (observe it doesn't define any global
variables as exported symbols).

Example 1:
dll1:
```
EAPI void foo(void);

EAPI void bar()
{
  foo();
}
```
dll2:
```
EAPI void foo()
{
  printf ("foo\n");
}
```

This works fine with API defined as __declspec(dllexport) in both
cases and for gcc defining as
`__atttribute__((visibility("default")))`.

However, the following:
Example 2:

dll1:

```
EAPI extern int foo;
EAPI void foobar(void);

EAPI void bar()
{
  foo = 5;
  foobar();
}
```

dll2:

```
EAPI int foo = 0;
EAPI void foobar()
{
  printf ("foo %d\n", foo);
}
```

This will work on mingw but will not work for MSVC. And that's why
EAPI is the only solution that worked for MSVC.

Co-authored-by: João Paulo Taylor Ienczak Zanette <jpaulotiz@gmail.com>
Co-authored-by: Ricardo Campos <ricardo.campos@expertise.dev>
Co-authored-by: Lucas Cavalcante de Sousa <lucks.sousa@gmail.com>

Reviewers: vtorri, raster

Reviewed By: raster

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12273
2021-05-23 20:47:23 +01:00
Felipe Magno de Almeida 6c969f6b7d edje: Add weak symbol
Summary:
The symbols will be needed when we change how Eolian generates
import/export symbols in Eio

Reviewers: vtorri, raster

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12272
2021-05-23 20:47:23 +01:00
Felipe Magno de Almeida 74204bccd7 ecore: Rename EAPI macro to ECORE_API in Ecore library
Summary:
=  The Rationale =

EAPI was designed to be able to pass
`__attribute__ ((visibility ("default")))` for symbols with
GCC, which would mean that even if -fvisibility=hidden was used
when compiling the library, the needed symbols would get exported.

MSVC __almost__ works like GCC (or mingw) in which you can
declare everything as export and it will just work (slower, but
it will work). But there's a caveat: global variables will not
work the same way for MSVC, but works for mingw and GCC.

For global variables (as opposed to functions), MSVC requires
correct DSO visibility for MSVC: instead of declaring a symbol as
export for everything, you need to declare it as import when
importing from another DSO and export when defining it locally.

With current EAPI definitions, we get the following example
working in mingw and MSVC (observe it doesn't define any global
variables as exported symbols).

Example 1:
dll1:
```
EAPI void foo(void);

EAPI void bar()
{
  foo();
}
```
dll2:
```
EAPI void foo()
{
  printf ("foo\n");
}
```

This works fine with API defined as __declspec(dllexport) in both
cases and for gcc defining as
`__atttribute__((visibility("default")))`.

However, the following:
Example 2:

dll1:

```
EAPI extern int foo;
EAPI void foobar(void);

EAPI void bar()
{
  foo = 5;
  foobar();
}
```

dll2:

```
EAPI int foo = 0;
EAPI void foobar()
{
  printf ("foo %d\n", foo);
}
```

This will work on mingw but will not work for MSVC. And that's why
EAPI is the only solution that worked for MSVC.

Co-authored-by: João Paulo Taylor Ienczak Zanette <jpaulotiz@gmail.com>
Co-authored-by: Ricardo Campos <ricardo.campos@expertise.dev>
Co-authored-by: Lucas Cavalcante de Sousa <lucks.sousa@gmail.com>

Reviewers: vtorri, raster

Reviewed By: raster

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12271
2021-05-23 20:47:23 +01:00
Felipe Magno de Almeida 1304d95717 eldbus: Rename EAPI macro to ELDBUS_API in Eldbus library
Summary:
=  The Rationale =

EAPI was designed to be able to pass
`__attribute__ ((visibility ("default")))` for symbols with
GCC, which would mean that even if -fvisibility=hidden was used
when compiling the library, the needed symbols would get exported.

MSVC __almost__ works like GCC (or mingw) in which you can
declare everything as export and it will just work (slower, but
it will work). But there's a caveat: global variables will not
work the same way for MSVC, but works for mingw and GCC.

For global variables (as opposed to functions), MSVC requires
correct DSO visibility for MSVC: instead of declaring a symbol as
export for everything, you need to declare it as import when
importing from another DSO and export when defining it locally.

With current EAPI definitions, we get the following example
working in mingw and MSVC (observe it doesn't define any global
variables as exported symbols).

Example 1:
dll1:
```
EAPI void foo(void);

EAPI void bar()
{
  foo();
}
```
dll2:
```
EAPI void foo()
{
  printf ("foo\n");
}
```

This works fine with API defined as __declspec(dllexport) in both
cases and for gcc defining as
`__atttribute__((visibility("default")))`.

However, the following:
Example 2:

dll1:

```
EAPI extern int foo;
EAPI void foobar(void);

EAPI void bar()
{
  foo = 5;
  foobar();
}
```

dll2:

```
EAPI int foo = 0;
EAPI void foobar()
{
  printf ("foo %d\n", foo);
}
```

This will work on mingw but will not work for MSVC. And that's why
EAPI is the only solution that worked for MSVC.

Co-authored-by: João Paulo Taylor Ienczak Zanette <jpaulotiz@gmail.com>
Co-authored-by: Ricardo Campos <ricardo.campos@expertise.dev>
Co-authored-by: Lucas Cavalcante de Sousa <lucks.sousa@gmail.com>

Reviewers: vtorri, raster

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12270
2021-05-23 20:47:13 +01:00
Felipe Magno de Almeida 7c85be9674 efl: Rename EAPI macro to EFL_API in Efl sub-library
Summary:
Patch from a series of patches to rename EAPI symbols to specific
library DSOs.

=  The Rationale =

EAPI was designed to be able to pass
`__attribute__ ((visibility ("default")))` for symbols with
GCC, which would mean that even if -fvisibility=hidden was used
when compiling the library, the needed symbols would get exported.

MSVC __almost__ works like GCC (or mingw) in which you can
declare everything as export and it will just work (slower, but
it will work). But there's a caveat: global variables will not
work the same way for MSVC, but works for mingw and GCC.

For global variables (as opposed to functions), MSVC requires
correct DSO visibility for MSVC: instead of declaring a symbol as
export for everything, you need to declare it as import when
importing from another DSO and export when defining it locally.

With current EAPI definitions, we get the following example
working in mingw and MSVC (observe it doesn't define any global
variables as exported symbols).

Example 1:
dll1:
```
EAPI void foo(void);

EAPI void bar()
{
  foo();
}
```
dll2:
```
EAPI void foo()
{
  printf ("foo\n");
}
```

This works fine with API defined as __declspec(dllexport) in both
cases and for gcc defining as
`__atttribute__((visibility("default")))`.

However, the following:
Example 2:

dll1:

```
EAPI extern int foo;
EAPI void foobar(void);

EAPI void bar()
{
  foo = 5;
  foobar();
}
```

dll2:

```
EAPI int foo = 0;
EAPI void foobar()
{
  printf ("foo %d\n", foo);
}
```

This will work on mingw but will not work for MSVC. And that's why
EAPI is the only solution that worked for MSVC.

Co-authored-by: João Paulo Taylor Ienczak Zanette <jpaulotiz@gmail.com>
Co-authored-by: Ricardo Campos <ricardo.campos@expertise.dev>
Co-authored-by: Lucas Cavalcante de Sousa <lucks.sousa@gmail.com>

Reviewers: vtorri, raster

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12274
2021-05-23 20:47:03 +01:00
Ali Alzyod a129ea3bc0 TextBlock: Fix content Fit with Markup-font-size
Summary:
This patch fixes wrong behavior for text block content fit when markup contains a part with specified font sizes (these parts will not be fitted by content fit algorithm).

+ THIS STILL NEED TEST TO BE ADDED

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12275
2021-05-23 19:54:20 +01:00
Carsten Haitzler 9294568e4c evas - evas_all_sync - only inc loop/retry counter if not advancing 2021-05-19 11:01:38 +01:00
Carsten Haitzler 6f5cc5f614 evas render - fix all sync - inverse while loop logic
fix prev commit
2021-05-18 22:55:15 +01:00
Alastair Poole 01f4e44fde egl: silence warning of deprecated feature test. 2021-05-18 16:34:44 +01:00
Carsten Haitzler 4e8bd36ce8 evas all sync - put a limit on loops and loop while rendering still 2021-05-18 15:10:43 +01:00
Carsten Haitzler 09517aa03b ecore - animator - remove some DBG lines to keep leaner 2021-05-13 11:14:06 +01:00
Carsten Haitzler f3682a34f7 ecore - animator - found some truly messed up behavior inside vbox...
add debug/error detection for the animator thread that might just sit
ans sleep waiting on epoll_wait + timerfd to expire... and it doesn't.
it SHOULD expire in less than 1 ft (frame time eg 16.66666667ms). but
i'm seeing it sometimes take 4 or 6 or 8 SECONDS to have epoll_wait
wake up... even thought i now set epoll_wait to always expire in 200ms
no matter what... even that it doesn't honor. something truly messed
up is happening with scheduling and i think this cascades through
everything - i see evas doing eglSwapBuffers() with nothing appearing
in the vbox screen... truly messed up. at least this adds some rror
detection for this and is at least a warning to a user that something
is messed up.
2021-05-13 01:00:06 +01:00
Carsten Haitzler 75fe29b1f5 ecore - fix other ifdef path for debug malinfo 2021-05-12 22:31:22 +01:00
Carsten Haitzler 3f08cd7156 exactness - fix warnings for casts from 32bit ptr to larger long long 2021-05-12 19:54:55 +01:00
Carsten Haitzler c83b52bab0 ecore - fix 32bit pointer size warnings in debug logs 2021-05-12 19:52:49 +01:00
Carsten Haitzler 600a1767f6 fnmatch - warning remove on arm 2021-05-12 11:08:15 +01:00
Carsten Haitzler cabf08e6de elm config - add palette config and adjust icons in toolbar 2021-05-11 12:20:23 +01:00
Carsten Haitzler eae18be54a evas vg - don't make bounds 0 sized ... which leads to no rendering
@fix
2021-05-10 12:22:26 +01:00
Carsten Haitzler 4e70c3f358 elm config - replace old colorclass systme with newer pallete one
the old one was a bit... rough. the new one relies on the new fallback
to parent classes in edje to simplify colorclasses and can now apply
immediately. i've started on a palette editor gui - and it works
relatively well and applies live as you slide colors around. it looks
vaguely good too. i don't thnk we should hsave a widget to do this as
it's probably too much in elementary (the lib) that is far too niche
in use.
2021-05-07 14:25:12 +01:00
Carsten Haitzler 2b91c4d9b8 edje - add new color class apply func to force cc to apply now 2021-05-07 00:02:05 +01:00
Carsten Haitzler 694136e4c8 wayland - update code generate private code and have no warnings 2021-05-07 00:02:05 +01:00
Carsten Haitzler 954c1ea387 exactness player edj - tag for right efl version 2021-05-07 00:02:05 +01:00
Carsten Haitzler 9fab234064 evas - fix seg on setting immage src if invalid obj
@fix
2021-05-05 19:44:34 +01:00
Vincent Torri 032e86f4aa Elementary: include fnmatch.h only on non Windows OS
Summary: Windows has no fnmatch.h, so usage of Elementary on that OS will fail

Reviewers: raster

Reviewed By: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12268
2021-05-05 10:22:25 +01:00
Carsten Haitzler 6297159c5d elm - fnmatch - fix typo 2021-05-03 20:54:23 +01:00
Carsten Haitzler d7f9735a90 eina + elm - add fnmatch.h back for compat 2021-05-03 20:52:37 +01:00
Carsten Haitzler 0509fbe16d evas gl - dont swap with damages if we are debugging partial 2021-05-03 20:43:56 +01:00
Vincent Torri de296b13c8 Eina: use eina_fnmatch() instead of fnmatch()
Reviewers: raster

Reviewed By: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12262
2021-05-03 18:48:24 +01:00
Carsten Haitzler 84e907ef7d evas - image loader - tiff - switch types to avoid deprecated warnings 2021-05-03 18:01:29 +01:00
Carsten Haitzler a3510d5085 evas - saver - tiff - change types to remove deprecated warnings 2021-05-03 17:02:33 +01:00
Carsten Haitzler c855204271 fnmatch - fix warnings coming from original src so less noise 2021-05-03 16:57:52 +01:00
Vincent Torri 3d374692f7 Eina: API addition: interface musl's fnmatch() implementation
Summary: addd musl's fnmatch() implementation to Eina

Test Plan: compilation and simple test case

Reviewers: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12261
2021-05-03 16:26:38 +01:00
Carsten Haitzler 9d457fcc3f edje - color classes totally did nothing in textblock styles
this never worked... the code just was not there to look uop color
classes in text styles and change/replace them. this fixes that. it
implements them. it implements color_class to replace color=xxx but
also supports color=cc:colorclassname (so backing_color=cc:xxx works
too to specify a colorclass for a backing color, and underline and so
on). so now it's implemented and actually works... it can be used.
this SHOULD have alwasy worked... but hey. apoparently not.

@fix
2021-04-28 13:14:34 +01:00
Woochanlee 74832777f4 efl_net_dialer_http: Do curl shutdown in destructor
Summary:
curl_global_init() in efl_net_dialer_http constructor.
curl_global_cleanup() need to call when it destructor.

Without this, module and libcurl internal data are leaking.

Reviewers: Hermet, raster

Reviewed By: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12259
2021-04-28 10:45:26 +01:00
Carsten Haitzler 215e9ca9b3 edje - add color-class fallback for lookups in prep for proper theme cc 2021-04-27 15:25:46 +01:00
Carsten Haitzler 39b2486418 elm - win - dont report override windows that are shown as withdrawn 2021-04-21 03:37:26 +01:00
Carsten Haitzler 42f3b49d05 elm win - fix eval to not be delayed after shows and state changes
this allows insgtant response to being de-iconified which mean instant
beginniung of rendering. we should enable this by default too so
modify config to do just that.

this basically means if a window is iconified, efl will not render to
it to save power/effort. it'll start again when it de-iconifies
2021-04-20 18:55:17 +01:00
Carsten Haitzler 0f6ff82d2a elm - frame - add new styles to docs 2021-04-18 20:42:12 +01:00
Carsten Haitzler 54c120db7a elm test - add cbs to other border style 2021-04-18 20:38:30 +01:00
Carsten Haitzler 301bd78a19 elm theme - emit right signal for frame close 2021-04-18 20:20:36 +01:00
Jérémy Zurcher 0018f2093f fix modules/ecore_evas/engines/wayland compilation
broken after introduction of EMODAPI by a33138
Differential Revision: https://phab.enlightenment.org/D1222
2021-04-18 08:21:23 +02:00
Carsten Haitzler 7c16765e1b elm frame - add more styles (icon, border and overlay variants)
this shoulpd have been day 0, but now add new styles that add an
elm.swallow.icon spot for an icon in the frame and a style that looks
like a border (also with icon as borders have them) and a close button
too. overlay variants are for overlaying so might be semi-transparent
2021-04-18 00:59:09 +01:00
Felipe Magno de Almeida a331384eed modules: Rename EAPI macro to MODAPI for modules
Summary:
Patch from a series of patches to rename EAPI symbols to specific
library DSOs.

=  The Rationale =

EAPI was designed to be able to pass
`__attribute__ ((visibility ("default")))` for symbols with
GCC, which would mean that even if -fvisibility=hidden was used
when compiling the library, the needed symbols would get exported.

MSVC __almost__ works like GCC (or mingw) in which you can
declare everything as export and it will just work (slower, but
it will work). But there's a caveat: global variables will not
work the same way for MSVC, but works for mingw and GCC.

For global variables (as opposed to functions), MSVC requires
correct DSO visibility for MSVC: instead of declaring a symbol as
export for everything, you need to declare it as import when
importing from another DSO and export when defining it locally.

With current EAPI definitions, we get the following example
working in mingw and MSVC (observe it doesn't define any global
variables as exported symbols).

Example 1:
dll1:
```
EAPI void foo(void);

EAPI void bar()
{
  foo();
}
```
dll2:
```
EAPI void foo()
{
  printf ("foo\n");
}
```

This works fine with API defined as __declspec(dllexport) in both
cases and for gcc defining as
`__atttribute__((visibility("default")))`.

However, the following:
Example 2:

dll1:

```
EAPI extern int foo;
EAPI void foobar(void);

EAPI void bar()
{
  foo = 5;
  foobar();
}
```

dll2:

```
EAPI int foo = 0;
EAPI void foobar()
{
  printf ("foo %d\n", foo);
}
```

This will work on mingw but will not work for MSVC. And that's why
EAPI is the only solution that worked for MSVC.

Co-authored-by: João Paulo Taylor Ienczak Zanette <jpaulotiz@gmail.com>
Co-authored-by: Ricardo Campos <ricardo.campos@expertise.dev>
Co-authored-by: Lucas Cavalcante de Sousa <lucks.sousa@gmail.com>

Reviewers: vtorri, jptiz, woohyun, lucas, SPAM-smith78899

Reviewed By: vtorri, SPAM-smith78899

Subscribers: SPAM-smith78899, raster, SPAM-cabanacatalogs, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12228
2021-04-17 16:07:56 -03:00
Wander Lairson Costa 65d528a379 Implement eina_thread for native windows
Summary:
eina: Implement Eina_Thread for native windows

The implementation design respects the fact that Eina_Thread is an
uintptr_t. Thus we allocate the thread struct in the heap and return a
pointer to it.

As such, we store the created thread structure in the target thread
TLS slot. For threads that were not created through eina API, in
eina_thread_self we allocate a new structure, push it to the TLS slot
and mark it to be freed on thread exit.

Reviewers: jptiz, vtorri, cedric, walac

Reviewed By: jptiz, cedric

Subscribers: raster, cedric, #reviewers, #committers, lucas

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12037
2021-04-17 16:00:32 -03:00
Vincent Torri 287834b0da Fix TIFF file signature in big endian
Summary: see https://www.adobe.io/content/dam/udp/en/open/standards/tiff/TIFF6.pdf page 13

Reviewers: raster, bu5hm4n

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12258
2021-04-17 10:59:14 +01:00
Carsten Haitzler 4263c08760 evas gl - drm - native bind - handle null eglimage create on bind
this can happen if dmabuf is invalid (already destroyed) so handle
this so evas knows and falls back to rendering a rect and complains to
stderr so we know

@fix
2021-04-16 03:15:31 +00:00
Carsten Haitzler 5b17444313 edje - edje_cc - add no warning for unused images and use it
a test edje has lots of unused images - it's not important so silence
warnings.
2021-04-16 04:09:06 +01:00
Carsten Haitzler aef36c6e5b edje_cc - dont try strip images that are unused at all
my previous disable didnt disable all the unused image stripping. this
now does. this code is buggy especially with image sets, to remove it
and let the warnings to the job for those compiling themes.
2021-04-16 03:54:53 +01:00
Marcel Hollerbach be9e83e0db eina_promise: do not self feedback when canceling
when canceling a all_promise it will cancel all futures. When that
happens, and one future is containing a promise, the value is unrolled,
and delivered as "Operation canceled" if this is happening to the last
future in all or any in race, the promise will then free its base ctx
which is already happening due to canceling.

With this this is not happening anymore.
2021-04-10 13:11:07 +02:00
Marcel Hollerbach 65dd51b1a4 efl_io_model: initialize memory
or this is causing trouble
2021-04-10 13:11:07 +02:00
Marcel Hollerbach 1ef48e2f44 efl_io_model: do not self reference, this is dangerous
what happened here is that people passed private data with a reference
to the object. Which is kind of a bad idea, as in some unthought of
conditions, events are forgot, which results in freeed memory beeing
accessed. This way its at least a error.
2021-04-10 13:11:07 +02:00
Marcel Hollerbach 0dc949709f elm_genlist: ensure item is not deleted while beeing processed
the downside of doing things like genlist is doing, is that a object can
be deleted, due to the fact that the processing call does not have a eo
call in its stack trace, the object is not reffed at all. Hence it
simply gets deleted in the middle of beeing proceded.
With this, this is at least here not happening.
2021-04-10 13:11:07 +02:00
Alastair Poole b02cef69d1 freebsd: eeze support if enabled.
ifr_netmask is not available on FreeBSD. On Linux ifr_addr is
same union.

Peter2121 did this work.
2021-04-10 08:58:38 +01:00
Vincent Torri 77a3b908ed improve heif loader: * efl coding style * faster head callback * faster copy of image data
Summary: and minor fix of some values in avif loader

Test Plan: entice still can read heif

Reviewers: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12257
2021-04-09 21:09:05 +01:00
Carsten Haitzler f63f270a85 elm entry - tune appending to be faster
this is not perfect, but it tuned things to take less time overall but
can be a bit more jerky given massive amounts of text like
warandpeace, but it takes less time to finish an append cycle in the
background for sure. (loading up war and peace goes from 42sec in the
background spinning appending to 3sec in an entry on my overpowered box).
on my oldest x86 box i have sitting here it goes from 95sec to 10sec.
2021-04-09 12:26:46 +01:00
Ali Alzyod b2f61deb37 evas_textblock: update color text parsingUpdate text color parsing for rgba(r, g, b, a) for alpha to be value between 0.0 - 1.0 same as CSS.
Summary: ... spam removed ...

Reviewers: woohyun, bowonryu, id213sin, AbdullehGhujeh, devilhorns

Subscribers: raster, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12248
2021-04-08 02:02:09 +01:00
Carsten Haitzler b6028cc708 elm - code - fix other colorclass query code path 2021-04-05 13:22:06 +01:00
Carsten Haitzler e971355d26 elm - code - fix color multiplies from querying color classes directly 2021-04-05 13:18:13 +01:00
Carsten Haitzler e65ff7e1e6 evas - gl - optimize dither shader - use integer vecs and go to 2x2
a 2x2 matrix visually here is about as good as 4x4. at least in what i
see, but on low end gpu's it can halve the cost. in fact i was watching the
gpu on my old i5-4200u drop down to 340-410mhz (no dithering is 320-360mhz).
i got to 630-660mhz with the original 4x4 code.

the 4x4 is still there ifdefed out. perhaps i can bring it back with a
high-quality dither option, but 2x3 i think is good enough.
2021-04-04 03:41:40 +01:00
Carsten Haitzler bbf293240f evas gl - add env var to disable dither because some gl's are broken
this adds a

EVAS_GL_RENDER_DISABLE_DITHER=1

env var (set it to anything) to disable dithered rendering.p this is
an added cost, but normally not much at all, but it seems some gl
implementations are broken, and they can't generate correct code for
the dither shader, so this disables this if this env var above is set
2021-04-02 23:28:38 +01:00
Christopher Michael 3d9590231e elput: Fix formatting
NB: No functional changes, just fixing formatting to match the rest of
the library
2021-04-01 14:49:35 -04:00
Marcel Hollerbach 665d62485b tests: fix efl_ui_suite 2021-04-01 15:22:57 +02:00
Marcel Hollerbach 8493a38876 elput: introduce gesture passing
In order to have that working on Xorg, this requires the libinput group
hack if you are not session leader.
For now this only has swipe bindings, other gestures can follow.
2021-04-01 15:05:51 +02:00
Carsten Haitzler b90a8a1819 elm theme - add overlay and blank styles for buttons
useful for things like entice
2021-03-31 11:29:33 +01:00
Vincent Torri 769066f606 Evas avif loader: fix segfault when the avif loader tries to load a non avif image
Test Plan: entice is not crashing

Reviewers: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12254
2021-03-31 10:29:50 +01:00
Vincent Torri 15078f757b Evas: add raw image extensions
Summary:
See https://en.wikipedia.org/wiki/Raw_image_format
for the list of the raw extension files

Reviewers: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12253
2021-03-30 21:19:17 +01:00
Vincent Torri e52391c585 Avif image loader: add another check to verify that libavif has been built with an AV1 decoder
Summary: libavif can be built without a AV1 decoder. Check this in the image loader

Test Plan: entice

Reviewers: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12252
2021-03-28 21:56:55 +01:00
Carsten Haitzler db081f9648 ecore evas ews - deprecate/remove
it's broken. it doesnt render anything. input is broken. it isn't in
use so it doesnt justify fixing. no one has complained it's brokne
thus proof of it not in use, so proof that it's not needed, so do the
right thing and nuke it to save work

@feat
2021-03-28 13:56:33 +01:00
Carsten Haitzler 5687e0e928 exactness - fix build due to removal of files from default theme 2021-03-27 19:21:46 +00:00
Carsten Haitzler cf6b3667c3 evas - gl add export for getting dmabuf formats and modifiers
we need this to do formats and modifiers properly... and this is what
broke on the rpi4 - it started using  interesting formats etc. ... new
feature to support a bug fix in e

@feat
2021-03-26 20:31:27 +00:00
Carsten Haitzler 80140f7724 evas - gl - respect yinvert now as it ... seems to work. 2021-03-26 20:31:06 +00:00
Carsten Haitzler 49ac4121cf elm - efl ui tab - raise the selected tab item obj so we can do tabs
need stacking to relfect tabs if the theme wants to look like tabs...
which is what i am doing with flat.
2021-03-23 21:09:47 +00:00
Carsten Haitzler 5f4524295a efl ui scroller - support signals for up/down/elft/right show/hide 2021-03-21 01:37:20 +00:00
Carsten Haitzler 796e345da1 evas - gl - stop leaking images and never freeing them from cache
the subject says it all

@fix
2021-03-20 21:58:25 +00:00
junsu choi 3666574f88 ector image: Prevents drawing images outside buffer
Summary:
A crash may occur when image size is set larger than buffer.
So, modify boundary of the image drawing the image
so that it does not go out of the buffer.

Test Plan: N/A

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers, kimcinoo

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12251
2021-03-18 17:10:05 +09:00
Hermet Park b9b2b72205 ecore_con: add null check for safety. 2021-03-16 10:28:27 +09:00
Marcel Hollerbach 046c5cd58e eeze_scanner: do not crash
the free logic here was wrong. The udev_device_get_parent results get
automatically unrefed when the original device is deleted.

This caused random segfaults when starting e.
2021-03-15 14:16:34 +01:00
Marcel Hollerbach 5215421570 efl_ui_collection: disable desktop_entry behaviour when in api call
otherwise only the last item would have been selected.
2021-03-14 14:34:14 +01:00
Carsten Haitzler ec52433f3a elm - fix emitting of signals to theme for label existence
@fix
2021-03-12 10:51:14 +00:00
Carsten Haitzler aa7be1a96d evas gl - remove freed gl image from context image list
fix asan memory mis-access

@fix
2021-03-09 16:04:45 +00:00
Carsten Haitzler 6899bd034c elm conffig - display icons if using elm icon theme
also use different sample icons i think work better
2021-03-04 13:44:30 +00:00
Shinwoo Kim 9da41a50cb evas_object_smart: enhance logic checking clipper visibility
Summary:
If current clipper object is equal to previous clipper object,
then the value of visible (or alpha) is same, because it is same object.

But there is a case that current visible value is different with
previous visible, when clipper object is same.

I added this patch to cover above case to draw childern of map.
See following flow.

  evas_render_mapped
    > if (_evas_render_has_map(obj) && !_evas_render_can_map(obj))
      > if (!changed) changed = evas_object_smart_changed_get(obj);

The evas_object_smart_changed_get returned FALSE, even though
current visible value is different with previous one in the same
clipper object.

Reviewers: raster, Hermet, herb, jsuya

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12250
2021-03-03 16:44:28 +09:00
Carsten Haitzler 91f07de890 efl ui format - now dont leak and dont double free 2021-03-02 13:20:00 +00:00
Carsten Haitzler 81f962da75 efl ui format - only sety format fun to null if format func free exists 2021-03-02 13:11:35 +00:00
Carsten Haitzler 67acb15a1f elm slider - don't double-free output format. 2021-03-02 12:52:53 +00:00
Christopher Michael 914a85159b ecore_wl2: Remove legacy teamwork stuff
This patch removes the remainder of the Teamwork protocol &
implementation. The module has been removed from Enlightenment for
some time now so there is no need to generate a protocol or have any
legacy code remaining..
2021-03-01 11:22:58 -05:00
Christopher Michael f174e739e1 ecore-evas-wayland: Remove wayland wobbly windows junk
Never worked properly, is unsupported by upstream wayland, and is just
general clutter so let's remove it.
2021-03-01 10:33:31 -05:00
Christopher Michael 350b65fc21 ecore_wl2: Remove wayland wobbly windows stuffs
This cleans up the www mess that never worked properly and is
unsupported with no plans to ever be used
2021-03-01 10:32:08 -05:00
Christopher Michael fbfcb4b309 wayland_protocol: Remove wayland wobbly windows junk
This protocol never fully worked properly, is unsupported & unused,
would never be accepted in upstream wayland, and is just generally
worthless so let's remove it. There are no plans to ever support it...
2021-03-01 10:29:50 -05:00
Christopher Michael 95a88f5a6c eeze_disk: fix potential memory leak
If allocation for disk fails, then we leak memory from previously
called _new_device function.

This patch based on D12223 from akanad (Wonki Kim)

ref D12223
2021-02-25 10:05:26 -05:00
Christopher Michael 691621336a eeze_disk: Remove extra blank lines
NB: No functional changes
2021-02-25 09:57:47 -05:00
Christopher Michael 369f2b3d87 efl_loop: Fix unchecked return value
Small patch to check return value of eina_value_get reported by Coverity

Fixes CID1400919
2021-02-25 09:40:29 -05:00
Christopher Michael 3e5629f125 eio_test_manager: Fix unchecked return value
Small patch to check return value of eina_value_convert reported by
Coverity

Fixes CID1400976
2021-02-25 09:33:42 -05:00
Christopher Michael 359435bed9 eina_promise: Fix unchecked return value
Small patch to check return value of eina_value_get reported by Coverity

Fixes CID1400993
2021-02-25 09:27:15 -05:00
Christopher Michael 0df61dc4fd elm_glview: Fix unchecked return value
Small patch to check return value of evas_gl_make_current reported by
Coverity.

Fixes CID1401018
2021-02-25 09:25:25 -05:00
Christopher Michael 732e622a82 eina_value: Fix unchecked return value
Small patch to check return value of eina_value_type_setup reported by
Coverity

Fixes CID1401023
2021-02-25 09:23:23 -05:00
Christopher Michael 3a07f18294 eldbus_fake_server: Fix unchecked return value
Small patch to check return values of
eldbus_message_iter_arguments_get reported by Coverity.

Fixes CID1401042
2021-02-25 09:18:46 -05:00
Christopher Michael 598b7a1be6 elm_slider: Fix unchecked return value
Small patch to check the return value of eina_value_get reported by
Coverity

Fixes CID1401061
2021-02-25 09:11:17 -05:00
Christopher Michael d70f9484c6 ecore: Update to not use deprecated mallinfo
mallinfo (the structure) and mallinfo (the function) have both been
deprecated in favor of mallinfo2 which has been updated to
handle allocations > 4GB.

This patch updates ecore usage of deprecated mallinfo to use
mallinfo2. If the system does NOT have mallinfo2, then this code will
fallback to using mallinfo.
2021-02-25 08:25:29 -05:00
Carsten Haitzler 9f142be03c elm - efl ui format - remove leak on format info 2021-02-25 11:18:51 +00:00
Christopher Michael d0288f4730 eina_tests: Fix argument cannot be negative
Coverity reports that 'fd' returned from 'open' here returns a
negative number. Passing a negative number to the 'write' function is
not allowed, so we should change the 'fail_if' checks here to make
sure 'fd' is not negative.

Fixes CID1400940

@fix
2021-02-24 08:00:13 -05:00
Christopher Michael 1842d3997a Revert "ecore: Update to not use deprecated mallinfo"
Reverting this, for now, because some distro's are still not
updated... This should probably use a malloc version check, but I
don't have time this week for a proper fix...

This reverts commit 17137316ee.
2021-02-17 10:53:15 -05:00
Shinwoo Kim ccf77acc22 eeze: fix a potention memory leak
Summary:
if udev device get parents fails, memory leaks.
this patch fixes the problem.

Reviewers: raster, Hermet, jsuya, herb, ali.alzyod, devilhorns

Reviewed By: ali.alzyod, devilhorns

Subscribers: ali.alzyod, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12249
2021-02-17 10:18:43 +09:00
Christopher Michael 17137316ee ecore: Update to not use deprecated mallinfo
mallinfo (the structure) and mallinfo (the function) have both been
deprecated in favor of mallinfo2 which has been updated to handle
allocations > 4GB.

This patch updates ecore usage of deprecated mallinfo to use mallinfo2
2021-02-16 12:41:56 -05:00
Shinwoo Kim f8a98e5bf2 gl: remove memory leak of orient_set
Summary:
The tex->pt->references is descreased by
evas_gl_common_texture_free -> pt_unref

if tex->references is 0

And tex->pt->texture is removed by
evas_gl_common_texture_free -> pt_unref -> glDeleteTextures

if tex->pt->references is 0

The evas_gl_common_texture_free decreases tex->references only
if tex->references is bigger than 0. There is no chance to decrease
tex->pt->references at this point.

So if orient_set increases both references of tex and tex->pt, then
the tex->pt->reference is not decreased till tex->references is 0.

So do not increase tex->pt->references in eng_orient_set.

Reviewers: raster, cedric, Hermet

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12243
2021-02-13 11:51:16 +00:00
thierry1970 97f95e7362 Added the heif loader
Summary: that supports images : *.heif, *hiec and *.avif I have disabled *.avif images, there is already a loader.

Reviewers: stefan_schmidt, raster

Subscribers: raster, vtorri, cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12135
2021-02-06 18:58:04 +00:00
Vincent Torri ec4ef69115 Efreet: fix file:// scheme on Windows
Summary: On Windows, file:///c:/path/to/file is correct and not managed. Use a Win API for manage it correctly

Test Plan: test case

Reviewers: raster, cedric

Reviewed By: raster

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12244
2021-02-06 14:49:54 +00:00
Vincent Torri d8d52861a6 Efreet: do not translate standard directories on Windows
Summary: The directories on hard disk are not translated on Windows

Test Plan: test case

Reviewers: raster, cedric

Reviewed By: raster

Subscribers: #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12246
2021-02-06 14:38:55 +00:00
Carsten Haitzler f323664bc7 evas - gl engine - look for extension in the right extension string set
this fixes slow operation on what seems to be a minority of instances
that dont advertise the extension in both egl and gl strings

@fix
2021-02-06 14:38:55 +00:00
Jaehyun Cho d3d3af369b edje_entry: fix a potential error of null deref
Summary:
This is a patch to fix a potential error of null dereferencing.
This patch is based on D12087.

Reviewers: Hermet, jsuya

Reviewed By: jsuya

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12241
2021-02-04 11:00:14 +09:00
Shinwoo Kim ab969c5915 eet, emile: safety++
Summary:
(1) EVP_MD_CTX_new could return NULL
(2) EVP_DigestUpdate returns 0 for failure.
  https://www.openssl.org/docs/man1.0.2/man3/EVP_DigestUpdate.html

Reviewers: raster, Hermet, cedric, devilhorns

Reviewed By: devilhorns

Subscribers: SPAM-roll99, devilhorns, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12237
2021-02-04 10:11:33 +09:00
Carsten Haitzler 90e5fd831d ecore-x - vsync - also log the direct device timestamp if it goes back 2021-02-03 02:26:54 +00:00
Carsten Haitzler 4013c98af1 ecore_x - vsync ... this handles time going backwards
yes - time went backwards. we get time from the device driver and
vsync events... this is so incredibly wrong ... it should not have
ever happened... but it did and that caused all sorts of bad things to
happen to animators. this guards against that and tries to get the
system clock time and if that doesnt work it just takes last time +
0.901.

@fix
2021-02-03 00:43:20 +00:00