Commit Graph

5459 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 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 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 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 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
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 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
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 05bee4b2ab elm theme - final cc work for elm code cc's 2021-10-18 18:50:08 +01:00
Alastair Poole ab02b4fa46 code: add simple shell syntax highlighting. 2021-09-06 09:39:01 +01:00
Carsten Haitzler aa96bf5987 elm - map widget - empty out and clean out code and tests - broken
elm map has been broken for a long time now sue to upstream web api
changes/breaks made by openstreetmaps. this isn't sustainable to have
code do this. since it's broken there is little point keeping code for
something that is totally non-functional, so reduce code, document it
as broken and remove tests. at least symbols remain so no missing
symbols and code using it will end up with an empty non-functional
widget (much like they would without these changes anyway).

@feat
2021-09-05 11:47:22 +01:00
Vincent Torri 03dae0a900 Elm Config: adapt elm_config scale on HiDPI devices on Windows
Summary: with HiDPI monitor (like 4k ones), the size of the windows are upsized with the Windows algo. The result leads to blocky font rendering for exemple. Set the scale in elm_config according to the values of the scale.

Test Plan: elm test with a text

Reviewers: raster

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D12290
2021-09-05 09:11:59 +01:00
Carsten Haitzler a931374ca5 efl ui focus - unbork focus from noise fix previous commit 2021-08-13 17:31:52 +01:00
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 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
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 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
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
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
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
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 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 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
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
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
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
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 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 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
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 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 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 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