this should fix T1508 - my testing seems to indicate so. test suite
succeeds, some manual tests of mine work. so is ay this is a good fix
that could fix critical segvs in apps using ecore-con - eg like
weather module in e
scim has a nasty habit of sitting and hanging if tryng to set up and
no scim daemon is there. since in x11 you may have multiple input
methods, leave it to be manually set up via env var, and if not then
dont work at all.
this fixes ecore-imf to auto-pick scim or wayland vased in DISPLAY and
WALAND_DISPLAY env vars. it's not a perfect/good/correct fix. it
should be picking based on canvas engine type, but that is a far more
invasive effort, so for release, do this simple one that brings back
wayland input panel and keeps x11 input methods going as long as app
is either x11 (DISPLAY) or wayland (WAYLAND_DISPLAY). if both are set,
it'll get it wrong. as i said - that's a more invasive fix.
th pending cancel may call callbacks... which can mess with the list
and thus the pending_add we have, sso do our work before calling this
(like set pending_call to NULL).
Summary: If name of program is setted to its current value EINA_TRUE should be returned
Reviewers: cedric, seoz, raster, Hermet
Reviewed By: Hermet
Subscribers: cedric, reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D1290
there is a kernel oops when using vboxvideo 4.3.14 and one calls
drmWaitVBlank(), then do not init drm when using such driver.
https://www.virtualbox.org/ticket/13265
Summary: Fix not to clean and re-render if the position of an object enabled map is changed.
Reviewers: raster, cedric, Hermet
Reviewed By: Hermet
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1220
Summary:
In items loop of _size_native_calc_line_finalize,
last_it should be replaced with new item according to position.
But, visual_pos is not prepared and it is always zero in the function.
So, we need to update visual_pos.
And when textblock only has LTR text,
we can replace last_it according to item list sequence.
@fix
Test Plan:
It includes test cases using the following test case.
1. "i<b>。</b>"
2. "。<b>i</b>"
Reviewers: seoz, woohyun, sohyun, tasn
Subscribers: raster, herdsman, cedric
Differential Revision: https://phab.enlightenment.org/D859
Before this patch, if you were hooking to any event above
EVAS_OBJECT_EVENT_IMAGE_PRELOADED you will end up receiving another
event instead and be fooled into receiving the right one.
In the mean time I did discover that our table is missing one item, the
equivalent to EVAS_CALLBACK_DEVICE_CHANGED. I don't know how to properly
fix that one for now, so put NULL instead to at least avoid a random
memory access.
Summary:
We can define a style tag as opener, closer and own closer.
If there is a markup tag that is matched to style tag,
it is reprocessed to format node inside of textblock.
But, when the format node will be converted to markup text,
'/' character can be appended to text at closer and own closer style tag.
Even if original markup tag does not has '/' character,
it will be appended according to format node information.
It makes some issue when compare input text with output text.
@fix
Test Plan: This commit includes test case.
Reviewers: woohyun, raster, sohyun, tasn
Subscribers: herdsman, cedric
Differential Revision: https://phab.enlightenment.org/D1037
switching
Summary:
When vt is released by SIGUSR1, drm_inputs have to be disabled.
For that this revision includes,
1. Unrefer udev monitor
2. Remove fd handler for udev monitor
3. Release dbus device
Reviewers: stefan_schmidt, devilhorns, gwanglim
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1268
Summary:
Word start/end works incorrectly when it goes to new line or line begins with spaces.
Ex: In elementary_test/Entry, place cursor at the end of line, press ctrl + right arrow keys: cursor moves to begin of next line. In this case, cursor should move to end of 1st word in next line.
Ex2: In elementary_test/Entry, add some spaces to begin of 2nd line (" uses markup"), place cursor at the first word ("uses"), press ctrl + left arrow keys twice, cursor moves to begin of 2nd line. In this case, cursor should move to begin of last word in 1st line.
This patch provides a fix by considerring next/previous text node to move cursor to correct place.
@fix
Reviewers: woohyun, raster, tasn
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1140
It seems that when things go wrong it does happen that we start with i == 0. It
will then have been walking into info[-1] 'happily'. Changing the test, to first
decrement and then compare should stop that issue.
This should @fix T1467.
Summary:
All eina_xxx.h are expored headers.
Using system path to search eina headers seems to be better.
Reviewers: raster, stefan_schmidt, stefan, cedric
Subscribers: stefan_schmidt, cedric
Differential Revision: https://phab.enlightenment.org/D1079
this fixes a nasty bug where ecore-evas forces mainloop spins all the
time due to trying to align rendraws to animator boundaries. this
requires an extra evas feature to work that i just put in.
@fix
this uses a thread to collect vsync input events and filter them
before forwarding them to the mainloop (as a double timestamp). this
means wakeups only happen for the actual vsync and thus animator and
not for other screens we are filtering out anyway. this should fix the
continual animator wakeups that happen if you have a dri/drm based
driver and > 1 screen.
@fix
this fixes a long standing issue where a suspended animator still is
waking up as originally suspended animators were expected to hang out
for a small time. as e's comp uses a suspended animator, this is a
problem as it causes continual wakupes every single frame (60hz or so)
with this suspended animator. this fixes that and accounts for
suspended animators with tick begin/end
due to mesa changes to hide dri2 symbols, i have had to work on a fix
that makes this work again by going right to drm. now it works and
animators shoudl be vsynced on drm drivers if possible (only 1 card -
use card 0). already existing nvidia solution that uses a lot more
memory is there. others - no support. timers only
this adds a slave process that is useful on nvidia drivers as there
isn't another way to get vsync evenys (that i know about). i need to
make another slave process to that includes a dri2 protocol
implementation since mesa has now hidden its dri2 symbols.
@feature
this allows you to set the ecore loop time. only useful in trying to
get hyper-accurate frame timings from sources when doin a custom tick
source.
this adjusts ecore loop time very slightlye tp be the "Exact" timepoint
when then animator timer, if timer is used, should have gone off. this
should make animations more precise.
@feature
Summary:
In evas_textblock_cursor_word_end function, the breaks' memory is allocated but not freed when cursor position is equal to text length.
Fix: Remove memory allocating.
@fix
Reviewers: raster, tasn
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1225
I reorganized what's allowed and what is not a bit, particularly, strictened the
rules for named structs and loosened the rules for anonymous structs, and refined
them for void types. It should be all correct now.
If an error occurs during ecore_drm_init, we need to cleanup things in
the proper order. This fixes the case where ecore_event_shutdown and
ecore_shutdown May Not have been called (in previous revision) due to
the error conditions being out of order.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
This dpi is used to get the scale for each collection.
If each collection has a described dpi, it calculates a proper scale
based on the dpi and dpi which is described in the collection.
@feature
Test Plan:
If add dpi to collection of edc, the edje will save the value as the dpi of the collection.
For example, if the dpi of your device is 100, you just set dpi: 100 in the collection of edc.
If the edj is loaded in another device(dpi is 200), it will scaled 2 times.
It is possible that the described dpi of application and theme are different.
In that case, application and theme have a different scale.
It makes the edj that made in different environment works in one device.
Reviewers: seoz, zmike, JackDanielZ, Hermet, woohyun, cedric, raster
Reviewed By: raster
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1190
Summary: Warnings and deprecated code fixes. I started to implement the OSX-Lion fullscreen style.
Reviewers: cedric, naguirre, raster, raoulh
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1175
Summary: Fix implicit function declaration of basename() which led to a violent crash when used.
Reviewers: cedric, naguirre, raoulh, raster
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1162
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
I got an issue from emotion_basic_example, because my machine has following directories.
/usr/local/lib/emotion/modules/
├── gstreamer
│ ├── linux-gnu-i686-1.7.99
│ ├── linux-gnu-i686-1.8.0
│ └── linux-gnu-i686-1.8.99
└── gstreamer1
├── linux-gnu-i686-1.8.99
└── v-1.10
The defined MODULE_ARCH is v-1.10, and the _emotion_modules which is returned by eina_module_arch_list_get(); has two items.
Because eina_module_new(); creates Eina_Module, even though the "/usr/local/lib/emotion/modules/gstreamer/v-1.10/module.so"
does not exist.
Test Plan: Create directory without MODULE_ARCH, run emotion_basic_example, and check whether it works properly or not.
Reviewers: raster, seoz, Hermet, woohyun, jpeg, cedric
Subscribers: cedric, seoz
Differential Revision: https://phab.enlightenment.org/D1200
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
Summary:
change eina_tiler_intersection to return a NULL if intersection
of two tilers doesn't exist. and add test case to check it.
This doesn't break ABI/API as this call could already return a NULL value and it
should have been handled by the caller anyway. This just make an expected behavior
more correct.
Test Plan: run eina_suite after building eina test suite
Reviewers: cedric, raster, torori, devilhorns
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D1205
Signed-off-by: Cedric BAIL <c.bail@partner.samsung.com>
The addition of callbacks was making the inheritance to fail. Fixed
generation by using the C types, instead of the abstracted callback
types for the wrapper functions.
Added workaround for generating classes with methods that have more
than one callback but doesn't have a corresponding void* data
parameter. E.g., elm_box.eo.
Added empty wrapper constructor to generation from std::nullptr_t and
allowed efl::eo::base to be empty with proper copy-constructors and
assignment operators.
SIGUSR1 is used here to catch VT switching and either acquire or
release the VT. The problem is that XWayland Also sends SIGUSR1 when
it has finished initializing. In order to not get confused about where
the SIGUSR1 came from we can check the pid inside the siginfo
structure and see if it matches.
@fix
Signed-off-by: Chris Michael <cp.michael@samsung.com>
As input is sorted out here (for now), we don't need to be so noisy
and printout extra debug stuff
Signed-off-by: Chris Michael <cp.michael@samsung.com>