path: root/src/lib/elementary/efl_ui_win.c (unfollow)
AgeCommit message (Collapse)Author
2017-09-12elm: rename Elm.Interface.Atspi.Component => Efl.Access.ComponentLukasz Stanislawski
Reviewers: jpeg, cedric Differential Revision:
2017-09-12elm: rename Elm.Interface.Atspi.Window => Efl.Access.WindowLukasz Stanislawski
Reviewers: cedric, jpeg Subscribers: cedric, jpeg Differential Revision:
2017-09-02efl_ui_win: specify the correct managerMarcel Hollerbach
a widget in higher hirachies is not registered in the lower one.
2017-09-01elm_win: Stop hiding the mouse cusor on window out under waylandDerek Foreman
We needed to do this to prevent burning cpu with animated cursors before we did frame callback based animating. Now the compositor will stop our frame callbacks when our cursor is implicitly visible when the pointer isn't over our window, so we don't have to use window hides for it.
2017-09-01win: Fixup doc & code of icon_objectJean-Philippe Andre
Ref T5322
2017-09-01win: Use array for available_profiles (EO)Jean-Philippe Andre
The legacy API wraps the EO API. All tested with "Configuration" test case in elm_test. Ref T5322
2017-09-01win: Drop calls to lower when using the EO APIJean-Philippe Andre
Note: The distinction is made on how the window was created, not on which API is used (evas_object_lower or efl_gfx_stack_lower or elm_win_lower). Ref T5322
2017-09-01win: Implement raise from stack (EO)Jean-Philippe Andre
I think the intercept is not required anymore. All raise functions call the ecore evas raise function. Ref T5322
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-09-01win: Merge focus with elm_widget's (EO)Jean-Philippe Andre
I believe this should work fine! Ref T5363 Ref T5322
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-30efl_ui_focus_manager: make logical_end work betterMarcel Hollerbach
it turns out that we should also repsect logical elements that are having a redirect_manager, since they are more at the "end" then a potential regular node. The user now needs to handle the logical_end call on this manager, or handle at all what he wants to do with this information. efl_ui_win now handles it in the way that it just focuses that logical node, (which results in the redirect manager beeing set, then calling again logical_end on that manager. Repeating this until we have finally found a regular node that does fit out needs.
2017-08-29widget: Use rectangle for focus_hilightJean-Philippe Andre
Ref T5363
2017-08-29widget: Rename hook "disable" (EO)Jean-Philippe Andre
Renamed to on_disabled_update. Also passed in the new state of disabled. It's more convenient this way, than having the subclasses call disabled_get. Also simplify some code... Ref T5363
2017-08-29widget: Rename hook "orientation" (EO)Jean-Philippe Andre
Renamed to on_orientation_update This internal / virtual function is in fact not overridden anywhere. Not sure it is necessary to expose it in EO API? Ref T5363
2017-08-25elm_win: check for wayland engine during finalize by checking for wl winMike Blumenkrantz
fake wins don't provide engine info, but a wl win will still exist @fix
2017-08-25elm_win: update opaque region for fake windowsMike Blumenkrantz
fake windows still gotta render @fix
2017-08-25efl: remove PS3 backend.Cedric BAIL
This backend has received no patch and maintenance from anyone who could actually test it over the last few years. After talking with KaKaRoTo it is best to remove it. If anyone want to take over its maintenance, you are welcome to revert this patch.
2017-08-23widget: Remove more functions from EOJean-Philippe Andre
Internaaaaaaaalsssss.... Ref T5363
2017-08-23win: Remove types socket and fake from EOJean-Philippe Andre
Fake: This should never have had the fake_canvas_set API. It already can not work after efl_finalize. And Ecore_Evas isn't part of EO API so it doesn't make sense at this point to try to expose the fake window as part of EO API. Socket: This is the only type of window that implements socket_listen. So we can just move this function to a new subclass. NOTE: Socket & plug are currently broken, even in 1.20 (at least for me)! Ref T5322
2017-08-23win: Add Efl.Ui.Win_Inlined and remove parent2Jean-Philippe Andre
Inlined windows are the only use case for parent2. We might as well want to create a separate subclass for those special windows. Ref T5322 Ref T5363
2017-08-23elm: Use a macro to handle key bindingsJean-Philippe Andre
This factorizes the code and makes most widgets handle key down events in the same way: - check that the object is not disabled, event is not on hold - figure out the key binding based on the class name - mark event as on hold The class name is usually MY_CLASS_NAME but in some cases it was MY_CLASS_NAME_LEGACY which may be different from the EO class name (eg. elm_win vs. Efl.Ui.Win). In that case the key bindings are broken. This breaks key bindings for the following widgets: - Win (focus) - Image ("clicked") - Video (move, play) This fixes key bindings for the following widgets: - Nstate Some widgets remain broken: - Photocam / Efl.Ui.Image.Zoomable A patch will be applied to restore the key bindings for the above breaks.
2017-08-23widget: Add eo event info inside widget_eventJean-Philippe Andre
This is an internal function that should probably become an overridable protected method, as it's required for proper event handling in widgets. Next step: use eo_event_info in the widgets implementations. Then remove legacy event struct. Ref T5363
2017-08-11wayland: remove xdg5 supportMike Blumenkrantz
this has not been used or tested since last year and there are no major compositors which lack xdg6 support
2017-08-11wayland: fix xdg-shell popup windowsMike Blumenkrantz
2017-08-11win: Prevent crash inside ecore evas callbacksJean-Philippe Andre
After any complex call on the window, a foreign evas/efl callback may be triggered that could delete the window object. This leads to crashes in queued jobs or even immediately after said callback (right now EO prevents immediate memory free using eina_freeq or eina_trash so the effects aren't immediate). Funnily enough, this was a known issue according to some comments, but no one bothered fixing it... In this particular instance, a focus_out job was crashing while trying to access now-invalid sd data. I believe some uses of ELM_WIN_DATA_GET() may still be slightly unsafe but most look like they should be the result of an EO call on the object (eg. a call to efl_event_callback_call), which ensures the object is alive. Fixes T5869
2017-08-10efl_ui_focus_manager: make focus a propertyMarcel Hollerbach
2017-08-10efl_ui_focus_manager: split this of tinto a class and a interfaceMarcel Hollerbach
it turns out to be very handy to have a interface for the moving and border elements, that is unconnected to the way of how widgets are registering themself. This for example enables us to get a simple focus manager that just redirects the call into a internal 2 dimensional data struct
2017-08-09elm: Cleanup theme and style set functionsJean-Philippe Andre
This makes efl_ui_layout_theme_set() return a Theme_Apply error code. The type is now public as Efl.Ui.Theme.Apply. Ref T5329 Ref T5363
2017-08-07elm_win: set shadow geometry based on borderless stateMike Blumenkrantz
2017-08-07elm_win: simplify/fix recalc logic when changing csdMike Blumenkrantz
forcing a full eval here is unnecessary and broken since such an eval could either change geometry in unexpected ways or fail to accurately change the underlying canvas geometry @fix
2017-08-04elm_win: propagate window aspect hint in waylandMike Blumenkrantz
2017-08-04win: implement efl_provider_find for EFL_UI_WIN_CLASSTaehyub Kim
Summary: Implement efl_provider_find function for efl_ui_win class. This will support to search window class by efl_provider_find function. Reviewers: jpeg, cedric, Jaehyun_Cho, thiepha, woohyun, Blackmole Reviewed By: jpeg, cedric Differential Revision:
2017-08-04eo debug name: Use strbuf instead of slstrJean-Philippe Andre
This should be a little bit more efficient, even if more "risky" in terms of leaks. The final API still looks exactly the same.
2017-08-04evas/edje/elm: Override debug_name in core classesJean-Philippe Andre
This is really only a demonstration of what kind of information we can print with efl_debug_name_get(). Hopefully this can help debugging with printf/ERR logs and even help with live debugging inside gdb. This shouldn't be used for other purposes than debugging, as the exact string format is not defined. @feature
2017-08-02efl_ui_win: add error hanling code for malloc failJiyoun Park
2017-07-31 efl_ui_win: add EFL_UI_WIN_SOCKET_IMAGE type checkJiyoun Park
elm_win_socket_listen api only work for EFL_UI_WIN_SOCKET_IMAGE type window. So it is better to add type check code.
2017-07-28elm_win: do not implement aspect_get()Mike Blumenkrantz
this breaks aspect hints. @fix
2017-07-21elm_win: instantiate csd frame after creating pointer surfaceMike Blumenkrantz
csd attempts to create sw cursors if the pointer surface doesn't exist, so create the pointer surface before the csd to avoid duplicate cursors #TheDisappointer
2017-07-21elm_win: do not set invalid geometries on the window objectMike Blumenkrantz
clamping to 1x1 is not valid, neither is trying to always position at 0,0 #IGot99TicketsBut1x1AintOne
2017-07-21elm_win: hide pointer surface on mouse outMike Blumenkrantz
this should be unmapped so edje stops trying to render to it, though at some point it could be optimized to not hide and just reuse the buffer when showing again #IGot99TicketsBut1x1AintOne
2017-07-21elm_win: show pointer canvas after setting cursorMike Blumenkrantz
setting cursor calls resize, which is what sets the surface size #IGot99TicketsBut1x1AintOne
2017-07-20elm: Fix a safety error messageJean-Philippe Andre
Happens when shutting down E
2017-07-18win: Fix main menu when not in framespaceJean-Philippe Andre
On OSX the framespace and CSD (Client-Side Decorations) are not supported at all... I am not able to test this case. This patch restores the main menu functionality based on pre 1.19 themes, where it was located inside win.edc (app content) and not in border.edc (framespace). Note that the initial size of a window may be wrong, eg as in elementary_test -to "Main Menu" Fixes T5734 (hopefully!)
2017-07-17win: Amend previous commit about modifiersJean-Philippe Andre
The code was invalid, so making it valid now. Explicitely marking the modifiers as unused, as mentionned in the documentation as well. See 9baa8752a9170e68e9430474f26cc1e672677d8e
2017-07-17win: Fix ABI compatibility for grab modifiersJean-Philippe Andre
This fixes an ABI change when moving from unsigned long long modifier mask to a simple enum. This is a fix for the release of EFL 1.20.