summaryrefslogtreecommitdiff
path: root/src/lib/elementary/elm_widget.eo (follow)
AgeCommit message (Collapse)Author
2018-01-08widget: rename elm widget to Efl.Ui.Widget.Amitesh Singh
2017-12-22interface: add Efl.Gfx.Color interface for color related APIsAmitesh Singh
This would eventually turn into mixin class later after adding more color related helper functions.
2017-12-14elm: Add "shadow" part to all widgetsJean-Philippe Andre
This makes it possible to very easily create drop shadows and glow effects on any widget. This is absolutely not optimized, though the main performance bottleneck is that the proxy images get redrawn after just moving. @feature
2017-12-12docs: Fix referencing formatAndy Williams
All except references to Efl.Ui.Win_Inline
2017-12-12elm: Rename struct to Efl.Ui.Widget.Focus_StateJean-Philippe Andre
Ref T5363
2017-12-12elm: Remove unused declarations in eo fileJean-Philippe Andre
Ref T5363
2017-12-08efl_ui_widget: make Elm.Widget.theme, Elm.Widget.theme_object internalSungtaek Hong
2017-12-05efl_ui_focus_user/object: fix api duplicationMarcel Hollerbach
just like the commit before, this fixes duplicated api names
2017-12-04efl.gfx: move scale{} from efl.ui.base to efl.gfxAmitesh Singh
2017-11-29focus: remove focus.get{} from widget.eoAmitesh Singh
This is taking care by focus manager now.
2017-11-21elm_widget: remove focused unfocused eventsMarcel Hollerbach
the ones form efl.ui.focus.object are now taken.
2017-11-17elm_widget: remove focus setMarcel Hollerbach
calling this function was not working at all, so its gone now
2017-11-01elementary: use @cref where possibleDaniel Kolesa
2017-10-24widget: Rename events to EFL_UI_WIDGET_EVENT_XXXJean-Philippe Andre
This only affects the events (and the data type has an alias). Ref T5363
2017-10-24widget: Rename EO APIs to efl_ui_widget_xxxJean-Philippe Andre
This only changes the eo_prefix for APIs. Ref T5363
2017-10-19elm: rename Elm_Interface_Atspi_Accessible interfaceLukasz Stanislawski
Subscribers: cedric, jpeg Differential Revision: https://phab.enlightenment.org/D5341
2017-10-18widget: Add FIXME note and cleanup whitespacesJean-Philippe Andre
2017-10-17elm: Rename Elm.Activate to Efl.Ui.ActivateJean-Philippe Andre
Note: This is an EO-only beta API. Ref T5329
2017-10-12widget: Rename focus_region (EO)Jean-Philippe Andre
This region has little to do with focus, as it's more of a region of interest within the widget, and not directly related to the highlight geometry, for instance. It's related to focus in the sense that only widgets with focus would really care about this region. I decided to change this name after talking with @bu5hm4n. Note that gengrid uses this but is also completely broken (the focus highlight floats around and you don't even see the focused item). Note: This is very close to show_region but I'm not sure those can be merged safely (since the default "focus_region" is NULL while the default "show_region" is the widget's geometry). Ref T5363
2017-10-12widget: Some EO docs formattingJean-Philippe Andre
Cosmetic surgery.
2017-10-10elm_widget: remove apis we dont need anymoreMarcel Hollerbach
2017-10-10widget: Make focus_mouse_up_handle internalJean-Philippe Andre
I don't think this belongs to the public EO API. Ref T5363
2017-09-26widget: Remove domain_part_text_translatable from EOJean-Philippe Andre
This removes the last remaining legacy-style part API from Widget. I think this is redundant with the property "translatable_text" introduced in Efl.Ui.Translatable. Ref T5363
2017-09-26widget: Implement translation API in layoutJean-Philippe Andre
This moves the API entry points from Widget to Layout parts. I don't think the other widgets support translation, but that is easy to fix. The actual code implementation remains in elm_widget.c. Legacy-only widgets are covered by Part_Legacy, while all EO widgets that have text inherit from Layout (except Win but I don't think the window title was translatable in legacy). This removes 2/3 remaining part APIs from Widget. Ref T5363
2017-09-26elm: Introduce interface Efl.Ui.TranslatableJean-Philippe Andre
This will be used to replace the part translation API in Elm.Widget. It should work for both parts and non-parts (ie. the main text of a button, for instance). For now I'm taking the following approach: - All efl_text_set/get strings are untranslatable, i.e. get() returns the visible string, set replaces and can not be translated. - translatable_text_set/get needs to be used to enable automatic translation, which in turns calls efl_text_set to modify the visible string. Thus, translatable applications will have to use efl_ui_translatable_text_set a lot more than efl_text_set, unless they translate strings application-side. Note that some other frameworks take a simpler approach equivalent to calling efl_text_set() with an already translated text. This prevents runtime language changes of the application, unless the application handles them specifically.
2017-09-21elm: Move base implementation for efl_part in widgetJean-Philippe Andre
This means that ALL part handles inherit from the base part class Efl.Ui.Widget.Part. Layout is the only exception where Efl.Part is specially overridden. This is a first step towards generic part APIs, including background in all widgets.
2017-09-18efl: Introduce Eina.Rect and switch EO APIs to itJean-Philippe Andre
It's a complex struct but defined in EO as a simple struct. ABI-wise it's equivalent to Eina_Rectangle. Some macros that use Eina_Rectangle also work on Eina_Rect out of the box, most of the code dealing with x,y,w,h will require no modifications either. But Eina_Rect provides direct access to a size or position 2d component, as well as the usual x,y,w,h. The field "rect" is provided as a convenience for code dealing with both Eina_Rectangle and Eina_Rect. We may or may not require it. Note: Size2D could use unsigned values but I have spotted a few places in the code that actually use -1 to indicate invalid size (as opposed to 0x0). @feature
2017-09-13widget: Make part_text_translate internalJean-Philippe Andre
2017-09-13widget: Rename focus_manager_factory to createJean-Philippe Andre
factory is not a verb :) Ref T5363
2017-09-12elm: rename Elm.Interface.Atspi.Component => Efl.Access.ComponentLukasz Stanislawski
Reviewers: jpeg, cedric Differential Revision: https://phab.enlightenment.org/D5164
2017-09-02elm_widget: move the complete regsiter/unregister logicMarcel Hollerbach
We had here a little problem, state focus_state_eval function handled the unregisteration and consideration of the focus flags and then only called a helper function (which was a widget function), that then did the registeration in logical or regular mode. Elm scroller for example took that function overwrote it and did onyl permit logical registrations. Then again a evaluation of the focus state and flags took place, and the function considered elm_scroller should be registered as regular object, but found it to be logical. This lead to the problem that we permantently unregistered Elm.Scroller and registered it again as logical just to unregister it again. This was on the one side a performance downside. But also a bug since all items from within the Elm_Scrollers sub manager are getting reparent onto the parent, which means not the root of the scroller (the scroller itself) is the logical entrypoint to the widget but rather this reparented widget, which led to unexpected focus warps like described in T5923. tldr: this fixes T5923
2017-09-01widget: Forward focus_highlight_style to winJean-Philippe Andre
See the previous commits. All focus_highlight APIs are defined in the Widget class but only implemented at the Window level. For consistency I believe this call should also be forwarded to the window. The previous logic had absolutely no effect at all, except storing a stringshare. The day focus_highlight becomes widget-specific (i.e. each widget has its own highlight style) then this can be changed. Note: This will apply to legacy API as well. Ref T5363
2017-09-01win: Move focus_highlight_animate to widget (EO)Jean-Philippe Andre
Similar to the previous commits. Moved for consistency. Ref T5363 Ref T5322
2017-09-01win: Move focus_highlight_enabled to widget (EO)Jean-Philippe Andre
This was actually declared in the internal legacy API in widget. Forwards the calls to the window. Ref T
2017-09-01win: Merge focus_highlight_style with widget (EO)Jean-Philippe Andre
Note: elm_test "Focus Style" can be used to test this API. The test case is a bit broken (overly complex EDC?) but if you're patient you can see the difference between "glow" and "glow_effect". Ref T5363 Ref T5322
2017-09-01widget: Rename on_focus to on_focus_update (EO)Jean-Philippe Andre
on_focus seems to imply that focus was just given to the widget, but that function is called on any focus change (in and out). Ref T5363
2017-08-31docs: elm/evas: document some missing return valuesStefan Schmidt
With this patch we finally reached 100% doc coverage in EO files again. It would be nice to keep it like this.
2017-08-31docs: elm_widget: document function pointer for on show regionStefan Schmidt
2017-08-31widget: Fix legacy for focus_mouse_up_handle (EO)Jean-Philippe Andre
This removes the special code in the legacy API for elm_widget_focus_mouse_up_handle. Add an internal helper to find the first widget parent. And mark as protected. Apparently this functions is still required for the new focus manager. Ref T5363
2017-08-31widget: Mark old focus API as beta.Jean-Philippe Andre
It's not beta. It's about to die. Also, move #define ELM_WIDGET_BETA to the common header file, as it is consequently required by ALL widgets. :( Ping @bu5hm4n :) Ref T5363
2017-08-30widget: Simplify & document "translate"Jean-Philippe Andre
This is a protected function. It doesn't need to return anything, as all implementation just returned true, always. Also, the legacy API was just a wrapper doing nothing special (except verify that we have a widget, which the recursive code already does). Tested with fr_FR :) Ref T5363
2017-08-30widget: Remove part_text from EOJean-Philippe Andre
It should be implemented as a efl_part() API. For now I've only done a quick hack, as the only overrides were: - notify: already a Part implementation. Also it turns out the default theme does not even have any text part in the notify group. - combobox: not a Part implementation, but also very badly defined wrt. parts in general. efl_part() is handled by the parent class (button) which makes it tricky to override just for one function. With this patch I'm trying to keep the same behaviour as earlier (where efl_part() is used for layouts and there is a special path for combobox). Ref T5363
2017-08-30widget: Mark some functions as protectedJean-Philippe Andre
I believe all of those APIs are in fact meant for widgets to use themselves: - on_focus - on_show_region_hook - focus_region - focus_register - focus_manager_factory Ref T5363
2017-08-30widget: Move item_loop_enabled to scrollable (EO)Jean-Philippe Andre
I was told that the scrollable interface is being redesigned for EO. This API definitely does not belong to the base Widget class, as it's quite specific to item-based scrollable widgets, such as lists and grids. Since Elm.Interface_Scrollable is itself being revamped, it is a good place to move that EO API for now. Ref T5363
2017-08-30widget: Use rectangle in show_regionJean-Philippe Andre
Also make it a property. It's asymmetric because of the force show argument, but the get is much cleaner. Ref T5363
2017-08-30widget: Remove scroll_lock from EOJean-Philippe Andre
1. Uniformize the API, which is now for internal use: This uses the same enum as scroller "movement_block" instead of 2 separate properties. Less APIs, more consistence. 2. Remove scroll_lock x/y from EO widget. I was told it is not going to exist in the upcoming scrollable interface. 3. Remove scroll hold/freeze getters. scroll hold/freeze push/pop are still there but it remains to be seen how the EO scrollable interface will exploit them. Right now they are full of bugs. Ref T5363
2017-08-30widget: Rename drag_lock to scroll_lock (EO)Jean-Philippe Andre
This also includes the drag_child_lock APIs. This had nothing to do with dragging beyond maybe the case where scrolling is done by thumbscroll (ie. finger drag). Note that the EAPI were called already scroll_lock, not drag_lock. Ref T5363
2017-08-30widget: Remove drag_child_locked APIs (EO)Jean-Philippe Andre
These are just internal helper functions for the scrollable mixin. I don't think they need to appear in the external API. Ref T5363
2017-08-30widget: Use rectangle on the stack for region_showJean-Philippe Andre
Follow @k-s recommendation and simply use rectangles on the stack rather than by pointer. Ref T5363
2017-08-29widget: Add protected tag to focus_highlight_geometryJean-Philippe Andre
This is meant to be called by the widget or elementary internals, potentially reimplemented by widget subclasses. Ref T5363