Summary:
scroller is moved page by page if scroller's paging is enable
1. default is move to vertical.
2. move to horizontal with Shift key
Reviewers: seoz, Hermet, jaehwan, woohyun, raster, cedric
Reviewed By: seoz
Differential Revision: https://phab.enlightenment.org/D453
Summary: Minor change to make code a little simpler.
Test Plan: elementary_test -to accessibility
Reviewers: seoz, singh.amitesh
Reviewed By: seoz
Differential Revision: https://phab.enlightenment.org/D456
Panes smart callback depends on the signals from theme but it was broken
when dark theme was introduced.
"clicked" does not work yet, it should be fixed.
Thanks for the report, JackDanielZ.
eo_data_scope_get and eo_isa returns NULL with complaint when NULL is passed.
So, Removed unnecessary !obj check routine.
In addition, adopt EINA_UNLIKELY for these macros and fix indentation.
This API sets the attribute to show the input panel in case of only an user's explicit Mouse Up event.
It doesn't request to show the input panel even though it has focus.
EE_ENGINE_COMPARE reduces typing little bit, but it makes redundant function calls
because almost callers call it more than once.
And, there is no way to check whether ecore_evas_engine_name_get is null.
This patch removed EE_ENGINE_COMPARE with small refactoring.
In addition, removed unnecessary check routines from _elm_ee_xwin_get.
Summary:
Almost logic of both horizontal and vertical are same except different axis in
_els_box_layout.
This patch reduced code size and improved speed little bit by moving condition
out of the loop using some extra pointer variables.
In addition, removed unnecessary check routines.
There are already similar logic for them before and after.
Reviewers: raster, seoz, cedric
Reviewed By: raster
Differential Revision: https://phab.enlightenment.org/D423
Summary: These APIs allow to enable/disable a tooltip to move with respect to mouse pointer
Test Plan: elm_tooltip_movement_lock_set(), elm_tooltip_movement_lock_get(), elementary_test -to tooltip
Reviewers: singh.amitesh, seoz, raster
Reviewed By: raster
CC: raster
Differential Revision: https://phab.enlightenment.org/D369
Using the elm_scrollable_interface_content_viewport_resize_cb_set in
scrollable entry widget. this only happens in mobile profile when you
drag the content with your finger left/right when the content is
smaller than the gap between icons.
This accepts D187
Summary: called scroller bring in API in "scroll,anim,stop" callback, so occured infinite loop
Reviewers: seoz, jaehwan, raster, woohyun, cedric
Reviewed By: raster
Differential Revision: https://phab.enlightenment.org/D445
Summary: This file is is the attribution required by the license.
Reviewers: raster
Reviewed By: raster
Differential Revision: https://phab.enlightenment.org/D438
Since rELM166ca9e86a72, I moved EWebKit header into Elementary.h like other libraries.
But, it made possible build break while building test browser in webkit.
It's because EWebKit.h and EWebKit2.h have same symbols and test browser should
be compiled with EWebKit2.h although Elementary was built with ewebkit.
This patch reverts a part of changes in rELM166ca9e86a72, which includes EWebkit.h
in Elementary.h
now mirrored, scale and so on will be working fine.
but still wonder if the mirrored_set(), scale_set().. are called in the elm_widget_theme_object_set() inside.
then every widget won't be need to call it by theirselves...
this makes efl ignore certain env vars for thnigs and entirely removes
user modules (that no one ever used) etc. etc. to ensure that *IF* an
app is setuid, there isn't a priv escalation path that is easy.
and removed unnecessary local variable.
- Do not need to call the same function with same parameter many times.
Use local variable for them.
- Remove unnecessary local variable if it is not needed.
free/del func + free func get null as valid parameter.
Now ELM_SAFE_FREE is less useful than before. It reduced 5 lines to 1
but now it reduces 2 lines to 1.
ELM_WIDGET_DATA_GET was checking it was the correct class. This is
stupid and wrong (and makes tools rightfully complain) because these
functions are implementations of that class anyway, so that would never
be false.
Functions that outside facing (that is, not called from eo_do) should
use API_ENTRY.
When elm_widget_newest_focus_order_get is called with can_focus_only,
only focusable objects should be the candidates for newest focused object.
But there are cases that unfocusable object add +1 to newest_focus_order.
This API sets the attribute to show the input panel in case of only an user's explicit Mouse Up event.
It doesn't request to show the input panel even though it has focus.
On the widget creation time, we should not set the theme in the widget infra.
This will cause the corruption of the theme_hook working since the widget is not setup yet.
Also the theme_set() will be applied twice each widget will set the themes right after base widget is created.
This parameter was introduced as an internal funciton parameter long ago and migrated to eo as it was.
But this parameter is not needed. obj pointer is already there.
Thanks to Yakov for the report.
Summary: Do not load widget theme for mirroring if smart data creation is not finished.
Reviewers: Hermet, raster
Reviewed By: raster
CC: seoz
Differential Revision: https://phab.enlightenment.org/D428
Summary:
Add "rejected" smart callback.
Applications using the *filter_accept_set didn't know when the input was rejected.
This smart callback can provide a simple information to applications.
Reviewers: woohyun, tasn, seoz
Reviewed By: seoz
Differential Revision: https://phab.enlightenment.org/D413
Summary:
Now, application developers can decide whether files and directories to show in
fileselector view.
Reviewers: seoz, raster
Reviewed By: raster
Differential Revision: https://phab.enlightenment.org/D416
Summary:
Currently the focus was only on popup-content and popup-action area.
New API elm_layout_content_swallow_list_get() which returns the list of
swallow parts.
Test Plan: elementary_test -to popup. click on "subpopup + X button"
Reviewers: seoz, raster, woohyun
Reviewed By: raster
CC: nirajkr, aryarockstar, kashish
Differential Revision: https://phab.enlightenment.org/D375
I also removed a crazy "if (!label) return", since no other item text
hook on Elementary does that and I can't find a single reason for that
to be there.
Summary:
Fixed the warning message.
elm_clock.c: In function 'elm_clock_pause_set':
elm_clock.c:1082:49: warning: declaration of 'pause' shadows a global declaration [-Wshadow]
elm_clock.c: In function '_pause_set':
elm_clock.c:1091:14: warning: declaration of 'pause' shadows a global declaration [-Wshadow]
Reviewers: seoz
CC: nirajkr
Differential Revision: https://phab.enlightenment.org/D403
Being annoyed by different types of eina critical macros - CRI, CRIT,
CRITICAL -, I concluded to unify them to one. Discussed on IRC and
finally, CRI was chosen to meet the consistency with other macros -
ERR, WRN, INF, DBG - in terms of the number of characters.
If there is any missing bits, please let me know.
Although useragent is an important feature for mobile, it's not all for mobile.
Instead, added an option to change the useragent among several typical useragents.
pass NULL to eina_file_filename_get().
eina_file_filename_get() spits unnecessary eina error when the parameter
is null. In this case, we need to check the return of
_elm_theme_group_file_find() and do not call eina_file_filename_get()
when the return is null. One should check the return of
elm_theme_group_path_find().
Thank zmike for pointing this out.
- I used "activate" signal of entry and this will call ok button clicked function directly.
- This is very useful when the fileselector is used in desktop with keyboard.
Summary:
From now, the list of files/directories can be ordered by filename,
type, size, modified time with both ascent and descent.
Reviewers: seoz
Differential Revision: https://phab.enlightenment.org/D367
Summary: This patch add two functions for elm_clock widget - elm_clock_pause_set and elm_clock_pause_get. I've prepared it because I want to do a stopwatch using this widget, but now it is impossible to pause the clock without set an editable mode.
Reviewers: seoz, cedric, stanluk, z.kosinski
Reviewed By: seoz
Differential Revision: https://phab.enlightenment.org/D374
not backporting because not sure if correct, but definitely a bug
also there's a similar issue where objects (I'm looking at you, elm_list) don't size until the first render, which causes the initial genlist calc sizes to be 100% wrong every time
time to test/fix accessibility.
Revert "elm access - if we disable apis then disable the tests too - unbreak build"
This reverts commit d8b3cdb28f5334f9429959109af4b960bf414097.
- refer commit 64fd5a825b24591aedb9cac695d03f5b4d867442 for the detail
explanation.
- also move evas_object_resize(win, xx) alongside evas_object_show(win).
- refer commit 64fd5a825b24591aedb9cac695d03f5b4d867442 for the detail
explanation.
- also move evas_object_resize(win, xx) alongside evas_object_show(win).
Elm Flip has some confusing API (and documentation as well) regarding
flip directions and hitsize. Basically, it works just as expected
when everything is set to 1 (all hitsizes are 100% and all directions
are enabled), like in the elm example file :)
BUT, it's not actually possible to restrict the hitsize for one
direction.
Example: You want to flip to left only.
Set direction enabled LEFT.
Then, you must set the hitsize for... RIGHT because that's where the
finger interaction will start from (right to left!). BUT since
RIGHT interaction is not enabled, the histize parameter on RIGHT
will have NO effect on the flip.
Here's what this commit fixes:
- Clear up a bit of the confusion between direction and hit area,
through documentation
- Separate hit area position and direction (bugfix)
- Allow for negative hitsize values to DISABLE a specific area
(define previously undefined behaviour)
So, it will be possible for example:
- Enable left/right interactions
- Only on the top 10% of the widget
NOTE: This breaks behaviour! API/ABI are not quite broken but
undefined behaviour just got defined and fixed.
- Removed unused variable.
- Followed the structure naming convention.
- Fixed formatting.
- Removed unnecessary empty lines and spaces.
- Removed unnecessary casting.
- Removed typos.
- Use ECORE_CALLBACK_RENEW macro for animator callback.
- Just call elm_exit() to exit the main loop.
- Removed unnecessary evas_object_data usage.
- Made a button text more descriptive and correct.
Scenario:
1. Create elm_genlist.
2. Add some items to it.
3. Do not resize the genlist and leave it with width == 0.
PROPOSAL:
1. When the element is queued for recalculation check current width of
widget. If it is equal to 0 do not add idle enterer.
2. In smart callback on resize check if queue of items that need
recalculation is not empty and new width is not 0. In this situation
add idle enterer.
stable release - cherry-pick me!
During animation, if the naviframe wasn't inside another object that would clip
it, you could notice the shadow going over some object around.
Application can delete button itsefl(or its parent) inside the smart callback function.
So the signal_emitting with button object should be done in advance.
Summary: Minor defect in example program fixed.
Test Plan: gcc -g radio_example_01.c -o radio_example_01 `pkg-config --cflags --libs elementary`
Reviewers: seoz, singh.amitesh
Differential Revision: https://phab.enlightenment.org/D363
When the offset is not bigger than 0 && abs(offset) is not smaller than dx(or dy), round up routine could have mis-calculation bug.
It should substract one value more to get a proper round up result.
For example, when x = 1440, offset = -2160, dx = 360, x should become 720 but round up routine made it 1440.
Because it was rounded up from 1080 to 1440. It should be rounded down from 1079 to 720.
Special thanks to Hosang Kim for the help.
Signed-off-by: Daniel Juyung Seo <juyung.seo@samsung.com>
Signed-off-by: Hosang Kim <hosang12.kim@samsung.com>
Summary:
Hello guys,
Below You can find a proof o concept for ATSPI2 support for elementary applications. Currently application can only be listed on bus by clients such as 'accersiser'. I am strongly looking for comments to this design.
Here are my comment regarding following code:
* This pach requires https://phab.enlightenment.org/D327 patch to compile
* I have decided to include whole atspi-constants header, because in fact i will need one-to-one copy of all its enums and defines. Qt has something like 3rdparty folder from which they include this header and don't require atspi dev packages at compilation time. Maybe efl needs the same solution or should just require next package in compilation? I agree that putting atspi-constant.h in main source tree is bad idea, but where? src/utils ??
Reviewers: cedric, raster, kimcinoo
Reviewed By: raster
CC: pkaczmarek-samsung, seoz, jaehwan, kimcinoo
Differential Revision: https://phab.enlightenment.org/D328
Summary: Added support for popup align set
Test Plan: elm_popup_align_set, elm_popup_align_get, elementary_test -to popup
Reviewers: seoz, singh.amitesh
Differential Revision: https://phab.enlightenment.org/D321
Scrollto positions are divided 4 type
NONE : do not scrollto.
TOP : scrollto position is always top viewport.
MIDDLE : scrollto position is always middle of viewport.
IN : scrollto position to fully visible in viewport.
Summary: Changes in the _item_realize to decorate the item T576 test_genlist10
Reviewers: seoz, singh.amitesh
Differential Revision: https://phab.enlightenment.org/D358
If we're walking an item and it's deleted, the memory won't go away
immediately in _item_del_pre_hook() as would in _item_del(), then it's
not enough to remove ourselves from the reverse-relative list of the
item we were relative to, we also need to clean our own relative
pointer so we won't touch it later when the item is not being walked
anymore and _item_del() is called.
I was getting this annoying error with espionage application, opening
an interface of an object and then closing the window or selecting
another bus name (whatever would call elm_genlist_clear()).
During the clear process genlist will flag the next item as "walking"
so it's not gone when the current item dies (would happen if next item
is a subitem). The item would run _item_del_pre_hook() but not
_item_del(), but on the next loop iteration the next item would be the
current, then not walking anymore and during _item_del() it would
access it->item->rel which would point to the now-dead item.
When we scroll the genlist with decorate all mode, newerly realized items looked like a normal mode.
This was caused by a new theme. Genlist item style should handle all the necessary parts when decorate mode is enabled/diabled.
This fixes T576.
Now it looks like a normal efl app.
- Declare variables at the start of the function.
- Resize and show the window right after its creation.
- Set widgets' parents properly.
This fixes " _smart_need_recalculate_set() Object 0x803db8e8 is not stable during recalc loop" issue which was reported by kuuko.
Special thanks to kuuko.
before this, it had the insane logic so the prescale_set() never work.
Now, it works well and the prescale won't be set in default. (before, the default value is 64. why?)
When the content is removed(or unset) the mapbuf didn't clean up the some stuff such as removing event callback for the content.
So the unset content would be tracked still by mapbuf dangling callbacks.
Thank you eo pointer indirection for detecting this.
The issue is a mix of design choices (will discuss on the ML) and
a bug in hoversel which was probably caused because of the confusing design
choices.
The problem is that while widget_item->view is set by whoever created
the item, it's automatically deleted by elm_widget_item_del. This means
that objects that decided to delete their views, but were too sloppy to
update the widget_item->view pointer to NULL, would trigger an attempt
to deleted an already deleted object. This does not happen in 1.7
because widget_item->view was introduced in 1.8.
The automatic view deletion is problematic, as smart subobjects are
already deleted when the parent subobject (the widget) is deleted. So
clearing the views is redundant. However if the widget item is manually
deleted, the view should be deleted. This causes this mixture of cases
that are problematic at best.
Indication error:
Error:
ERR<5394>:eo lib/eo/eo_ptr_indirection.x:275 eo_obj_pointer_get()
obj_id 0x8000002900000149 is not pointing to a valid object. Maybe
it has already been freed.
This fixes T500.
- removed unnecessary casting.
- used a proper type, Eina_Bool, for the return value of elm_object_item_disabled_get()
- printed out more useful information.
Summary:
Menu items in dbus-mode (in Ubunut/Unity) were not updated on
disabled/enabled state changes. They were applied only after
adding/removing an item.
Reviewers: cedric, seoz, raster
Reviewed By: raster
CC: reutskiy.v.v
Differential Revision: https://phab.enlightenment.org/D333
- removed unnecessary duplicated parameter passing.
- moved smart callback add to a proper place not to be confused with other object's smart callback addition.
- removed unnecessary sub object add. it's done automatically in elm_layout_content_set.