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.
inline with their X counterparts. Also, remove some EINA_UNUSED where
parameters were being used.
The previous code to get the Ecore_Wl_Window from an Ecore_Evas did
not check to make sure the Ecore_Evas Engine was a wayland engine, and
thus elm_tests like Window Inline would spew CRIT & ERR messages from
ecore_evas about the interface.
This fixes Phab Ticket T502
Signed-off-by: Chris Michael <cp.michael@samsung.com>
use the fill_set instead of the clipper.
soon after 1.8, proxy just created the filled area buffer, then magnifier surface size will be fixed regardless of the entry source.
Fixes warning:
configure.ac:217: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
../../lib/autoconf/lang.m4:194: AC_LANG_CONFTEST is expanded from...
../../lib/autoconf/general.m4:2662: _AC_LINK_IFELSE is expanded from...
../../lib/autoconf/general.m4:2679: AC_LINK_IFELSE is expanded from...
m4/elm_quicklaunch.m4:9: ELM_QUICKLAUNCH is expanded from...
configure.ac:217: the top level
Because ewk_view is smart class and it's parent is Evas, it prints below warning.
... Can't execute function Elm_Widget:ELM_WIDGET_SUB_ID_SUB_OBJECT_ADD (op 0x9f)
for class 'Evas'. Aborting.
elm_widget_type_get() is not lowercase anymoe, rather "Elm_Win". As
other parts of the elementary source were using evas_object_type_get()
use it, and it still returns the legacy lowercase name.
Summary:
In the original code, omit related information was cleared and recalculated
only when omit function was enabled. So dynamic omit mode change didn't work in elementary_test.
The information should be cleared everytime the index box is filled. fixed it.
Test Plan: None
Reviewers: seoz, Hermet, raster
CC: raster
Differential Revision: https://phab.enlightenment.org/D262
The swallow part was properly renamed and namespaced, so reflect that
in the code. Also force a edje object recalc before moving the magnifier.
Reviewers: raster, cedric, Hermet, tasn
Reviewed By: cedric
CC: seoz
Differential Revision: https://phab.enlightenment.org/D286
Signed-off-by: Cedric Bail <cedric.bail@samsung.com>
from terminology into other elm apps (selection format issue).
Wayland has no concept of primary or secondary clipboards so we need
to test for selection == those due to some X apps.
*cough*terminology*cough* using only Primary or Secondary.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
wayland.
This also unifies some of the code between X & wayland wrt copy/paste.
This is part of a larger copy/paste fix for efl/elm wayland.
Previously, copy/paste would not work via keyboard shortcuts. This
series of changes fixes that issue (wrt elm_entry anyway).
This also adds addtional copy/paste support (wrt efl wayland),
including support for various mime types (text/plain, elm-markup, and html).
Signed-off-by: Chris Michael <cp.michael@samsung.com>
This is part of a larger copy/paste fix for efl/elm wayland.
Previously, copy/paste would not work via keyboard shortcuts. This
series of changes fixes that issue (wrt elm_entry anyway).
This also adds addtional copy/paste support (wrt efl wayland),
including support for various mime types (text/plain, elm-markup, and
html).
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Summary:
Add PKGBUILD to make dist so it will be in the snapshots
Change dep to current efl package since efl_x11 isn't there anymore
Check for Makefile before running make clean distclean otherwise build fails
Set correct arch on elementary_doc
Install docs to /usr/share/doc
Reviewers: raster
Differential Revision: https://phab.enlightenment.org/D282
This features permits execution of more than one set of functions during
DnD.
Delete function API has been modified to give the developer the
possibility to remove a specific set of functions.
1. Use EINA_FALSE instead of 0
2. Set the parent widget correctly.
3. Remove unused multi_select_set.
4. Give a meaningful label to the first list item.
5. Call item_selected_set to the second item.
6. Remove unnecessary box.
This reverts commit f67ecb2028dd663aa4b0d9fe78b2a392ac169e7e.
Conflicts:
ChangeLog
NEWS
src/bin/test_popup.c
Sorry, Pend this to 1.8 after.
Let's think about adding this API more carefully.
Summary: Checked whether object which direction pointed is NULL before getting it's data
Reviewers: seoz, raster
Reviewed By: raster
Differential Revision: https://phab.enlightenment.org/D95
Now that we know we can just compile PIE programs and run them with
quicklaunch, let's simplify the build logic.
I'm pretty sure it even gives a nice boost in the build process :)
Always search executable based on CWD if possible.
This way, elementary_run behaves more like sh where all of
sh script, sh ./script and sh `pwd`/script will work.
Also, remove quicklaunch-specific ELM_MAIN.
This needs some doc, but compiling with -fpie and -pie is much
better.
Note: There's an API/ABI break here, BUT these APIs are marked
as not to be used outside macros. And there isn't any macro
using them :)
Apps call elm_shutdown before exiting. But when using
Quiklaunch, elm_init has never been called, so the
init count is still 0.
This will be especially useful since programs compiled
with -fPIC and linked with -pie can be loaded by
Quicklaunch.
This reverts commit cbd7446f0bf413ad821ac40703d2a2ca728758ef.
Conflicts:
ChangeLog
NEWS
Please be more considerable to add this feature.
The function itself is not logical and we don't think it's proper for the conformant yet.
This is the specific error:
/usr/include/elementary-1/Elementary.h:169:24: fatal error: elm_access.h: No such file or directory
Accessibility support was previously disabled by commit
0d61121ce4f87c9e9b0e8d8d7975f815328fe6f5
Summary:
Some applications like file viewer allow multiple selection only with
Control key was pressed.
Reviewers: seoz, raster
Reviewed By: raster
Differential Revision: https://phab.enlightenment.org/D251
Conflicts:
ChangeLog
NEWS
Older UI concept: when text in spinner's entry is inputted and text is
not committed yet and when inc/dec is clicked. do not commit text and
reset the value to older original value.
New UI concept:
When Text in spinner's entry is inputted and text is not committed yet
and when inc/dec buttons are clicked.
Commit the entry's text and inc/dec accordingly.
If entry' s text is already modified owing to min/max update, then do not inc/dec.
Signed-off by: Shilpa Singh <shilpa.singh@samsung.com>
Accessibility APIs are added after elm 1.7 and they are not stable yet.
Disabled those APIs for elm 1.8 release. We are going to work on them after elm 1.8 release.
... will have to look into why it does not work here propertly tho..
Revert "Fix elm client applications to support maximize properly (ie: removing"
This reverts commit 28763963bb9e26ea25ca182acc294c0a02f03ba2.
Issue: As step size was hard coded in the widget, when slider indicator is dragged
using a key event or during accessibility the value was not exactly incremented/decremented
instead same value was shown more than1 time/values were skipped.
Solution: Two APIs added which will set/get step size.
Reviewer: SeoZ
Reviewer Comment: This is a manual merge of D293 due to arc issue on Shilpa.
I modified some codes from her original code. She'll use arc next time.
fixed documentation
fixed typos.
fixed indentation
used macro
added some guide codes.
removed unnecessary empty line.
updated NEWS and ChangeLog.
When the virtualkeypad size is changed, applications get the notice.
Applications can do internal object calculation according to the exact virtualkeypad size.
This is useful when the exact size is important such as webkit usecase.
When receiving a maximize event from the maximize button, do not force
sd->maximized. We must wait for a state change event, just like when a
window is maximized by the elm_win_maximized_set function. This will
ensure that a maximized smart event is sent.
Additionally, send a elm,state,maximized signal to the edje theme, so it
can update shadows and window decorations correctly.
A col variable has been used inside the macro instead of the column
parameter. This first variable is from the legacy API and so didn't have
impact when the function was called from the legacy API.
In GUI Builder, the compilation of the generated C code was failing
because we used directly the Eo API and so was searching for the col
variable.
Summary: I stripped these in elementary previously, but not in the dark theme repo. When they got copied over, the embedded profiles are back. This strips them again as previously discussed.
Reviewers: raster
Differential Revision: https://phab.enlightenment.org/D269
This allows to select an axis that the layout will use its current size
to restrict the min size calculation of the inner edje, possibly helping
with textblock min size issues
This feature is essential if two overlapping widgets can receive drop
information.
Until now, if two widgets (e.g background and button) were added as drop
targets, pointing to common coordinates would have given priority to the
first inserted as drop target.
Now, it will determine which widget is supposed to receive this drop
target by using the same mechanism as used for mouse move, i.e by
walking on the objects tree whose pointer passes through.
A test has been added (Overlapping DnD) to show how this feature can be
used. You can drop in bg, box and button.
This patch implmented for fileselector to monitor and update changes of selected
path. So, changes of selected path from other applications such as mkdir will be
applied to the file_view without refresh.
This feature is only available with EIO.
"index,update" signal is missing in signal description.
So, This patch refactored signal declarations to avoid mistakes.
It was introduced since b430c07ca1f1.
- Removed unnecessary eo_do samples at this stage.
- Removed "drop" callback usage which is not supported in photo widget.
- Fixed wrong smart callback name "drag,stop" -> "drag,end".
- Moved internal functions' position following convensions.
Summary: Calling elm_widget_sub_object_add after calling elm_widget_sub_object_del may cause theme loading even though the sub object's theme is the same as the parent object's theme. This commit prevents the previous item view's theme re-loading.
Reviewers: Hermet, seoz
Reviewed By: seoz
CC: seoz
Differential Revision: https://phab.enlightenment.org/D267
Summary: Currently if the third argument of elm_widget_resize_object_set, 'Eina_Bool sub_obj', indicates whether a resize object is added to/deleted from the sub object or not. This commit makes the third argument, 'sub_obj', also indicate whether a resize object is added to/deleted from the smart member or not.
Reviewers: Hermet, seoz
Reviewed By: seoz
CC: seoz
Differential Revision: https://phab.enlightenment.org/D268
Since a305c127, list_itc and grid_itc initialization was moved to constructor of file selector class.
But some parts of them are remained in _elm_fileselector_smart_add() by my mistake.
Summary: Add one more argument, 'Eina_Bool sub_object' to elm_widget_resize_object_set. If the argument, 'sub_object' is set as EINA_TRUE, the new resize object is added to the sub object and the previous resize object is deleted from the sub object.
Reviewers: Hermet, seoz
CC: Jaehyun_Cho, seoz, raster
Differential Revision: https://phab.enlightenment.org/D265
- 'progress' is the main progress so it should be on top.
- 'progress' should move slower than 'progress1' in the example.
- Changed the name of multi progress image name from 'recording' to 'double'.
- 'full' style is so useful, it needs to have a documentation.
- Do not use @ for 'since' in this case. That will cause line break and looks ugly.
- reminded by ccxwrk.
Summary: Added new test case for vertical progress status .This would be visible under Progressbar 2 elementary test
Reviewers: seoz, singh.amitesh
Differential Revision: https://phab.enlightenment.org/D233
This feature is enabled only when the user enalbed focus support manually for thumb.
Reviewers: seoz
Differential Revision: https://phab.enlightenment.org/D241
Summary:
Although user should give the position of button such as button1, current elm_popup
changes button's position or style as the number of buttons while adding or removing
buttons.
So, when application developers add buttons as wrong order or removed buttons,
applications may be crashed.
This patch refactored the behavior not to change the position intended by application
developer.
Test Plan: added new test case to test_popup.
Reviewers: seoz
Reviewed By: seoz
Differential Revision: https://phab.enlightenment.org/D259
ELM_WIDGET_SUB_ID_THEME needs to return Eina_Bool.
In addition, calls the super function of ELM_WIDGET_SUB_ID_THEME.
Reproduce step is changing profile in elementary_config.
There is a chance that spin timer is deleted in _value_set() by any chance.
So reset the spin timer and call _value_set after that.
Special thanks to Shilpa.
1. Moved frozen variable to more proper position. Elm_Widget_Smart_Data -> Elm_Layout_Smart_Data.
2. Check frozen at one place. This makes codes cleaner and reduces human mistakes.