Commit Graph

7807 Commits

Author SHA1 Message Date
Chris Michael e839035bfa ecore-wl2: Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael d30e9c6f97 ecore-wl2: Add note about calling ecore_wl2_display_globals_get
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael 8196913b15 ecore-wl2: Add caching of server displays and fix issue of client
connecting to same server pid

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael ad5f93b521 ecore-wl2: Client connections do not need to listen for a write event
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael be32567dfb ecore-wl2: Also listen for write events when creating a compositor
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael 59d1491929 ecore-wl2: Fix event processing for client connections
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael 5a13b093b5 ecore-wl2: Connect to proper name during ecore_wl2_display_connect
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael 482668451d ecore-wl2: Add safety trap for null compositor
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael ede679b7bd ecore-wl2: Don't re-add existing globals
If we already have seen this global, and it is in the globals hash,
then don't re-add it and just jump straight to sending the event

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael 8f338af511 ecore-wl2: Remove all code relating to custom window animators
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:03:35 -05:00
Chris Michael d29acc3613 ecore-wl: Remove setting window animator in server mode
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 02afb0dc28 ecore-wl2: Rename anim_listener to avoid confusion with ecore_wayland
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 652fa87169 ecore-wl2: Remove duplicate window_find API function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael dbb862299b ecore-wl2: Re-order window API function to be with window group
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 0272154007 ecore-wl2: Add doxygen group for Subsurface functions
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 9a871106db ecore-wl2: Fix typo in doxy group definition for Dnd Group
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 57e19e1fd8 ecore-wl2: Re-order API functions for input to be located next to the
group definition

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 7fb55f5789 ecore-wl2: Add doxy group for output functions
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 24aa08ede7 ecore-wl2: Add API function to get the DPI of a given output
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 47cd4d4168 ecore-wl2: Fix issue of compositors not flushing clients properly
Summary: When we use ecore_wl2 for creating compositors (E), we need
to flush clients before we dispatch events on the wl loop, so add a
prepare_callback for the fd handlers and flush clients there.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 6d78355ccc ecore-wl2: Add API function to return a wl_seat from an Ecore_Wl2_Input
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 055b398e8d ecore-wl2: Implement ecore_animators for windows instead of using a
custom animator

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 0f49297c18 ecore-wl2: Fix dnd to function when source window and target window
are same

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 8683c6ecf6 ecore-wl2: Implement reference counting for client connected displays
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 3dc45d4945 ecore-wl2: Cache client displays and reuse them to reduce memory usage
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael acf97100db ecore-wl2: Reset Ecore_Wl2 events to 0 on shutdown
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael fbfe60751d ecore-wl2: Set WAYLAND_DISPLAY env variable when we create a display
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 68527379e2 ecore-wl2: Don't reset window->input on keyboard or pointer leave events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael b7804b6877 ecore-wl2: Don't check twice if a key repeats and also fix issue of
repeating keys getting delayed

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 89c973eba8 ecore-wl2: Adjust keyboard repeat delay and rate
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Derek Foreman 497b9c045e ecore-wl2: cache the registry
wl_get_registry() returns a new object that we must destroy, so
we should cache one at connect and never call that again.

Signed-off-by: Derek Foreman <derekf@osg.samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael b89c45dbf9 ecore-wl2: Add support for idle_enterer
Summary: This fixes an issue where scrolling mouse wheel would not
actually perform any scroll until another event was received.

NB: Unsure if we need this for "server" connections yet

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael c5dba8cd32 ecore-wl2: Free internal mouse down info when we delete an input
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 3e1b71b3d8 ecore-wl2: Add API function to set opaque region of a subsurface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 475ade8bf8 ecore-wl2: Add API function to set sync/desync on a subsurface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael d50af2db70 ecore-wl2: Add API function to place a subsurface below a surface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 44b2153a42 ecore-wl2: Add API function to place a subsurface above a surface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 25505626ad ecore-wl2: Add API function to get the position of a subsurface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 0b8d2f1f24 ecore-wl2: Add API function to set the position of a subsurface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 32bb1237c6 ecore-wl2: Add API function to return the wl_surface of a subsurface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael ed8287bdba ecore-wl2: Add API function to delete a subsurface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 6c16d7967b ecore-wl2: Use proper wayland function to get display registry
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 434fbd6fb9 ecore-wl2: Start on preliminary subsurface support
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael d4c312ecce ecore-wl2: Cleanup wayland objects on display cleanup
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 9a9d120c44 ecore-wl2: Cleanup inputs on display disconnect/destroy
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 10efbbd416 ecore-wl2: Add subsurface structure type
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 98f0a245ce ecore-wl2: Add subsurface protocol files to support subsurfaces
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 76da2e3063 ecore-wl2: Add doxygen for ecore_wl2_window functions
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael d22b6c581c ecore-wl2: Add support for input region setting for an Ecore_Wl2_Window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 35710fa919 ecore-wl2: Add API function to return the registry of a display
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 206914aa32 ecore-wl2: Add API funtion declarations need for Elementary
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 518b97cc1c ecore-wl2: Add API function to find a window given a window id
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael f3e5800d58 ecore-wl2: Add API function to issue an ungrab on an input
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 5addb38844 ecore-evas: Add API function to get an Ecore_Wl2_Window for an
ecore_evas

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael f485b451ce ecore-evas: Add function to return Ecore_Wl2_Window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 7cbed394dc ecore-evas: Add ecore_evas_wayland_window_get2 to the Ecore_Evas
Wayland Interface

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 3a0a298181 ecore-evas: Add new API to return a Ecore_Wl2_Window when requested
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 8df60cef9e ecore-wl2: Check if a window is transparent or alpha when setting
opaque region

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael a084891013 ecore-wl2: Cleanup dnd drag and selection sources when we delete an
input

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael a4b28e0375 ecore-wl2: Send window configure event when we un-maximize/fullscreen
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 63004b492c ecore-wl2: Add a LAST member for enum of window type
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 1a38e1a9f4 ecore-wl2: Don't use bitfields for public structure
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 41f6e1f505 ecore-wl2: Add display to global event structure
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 84a01216e7 ecore-wl2: Provide internal function to stop any cursor update timers
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael bb0f3ab62a ecore-wl2: Create new event type for window configure
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 324a7e545a ecore-wl2: Update input serial when we get a mouse button event
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 961a5fa478 ecore-wl2: Add event type and structure for sending window configure
events

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 4b0aaca962 ecore-wl2: Set window input on pointer enter/leave events
Summary: This is so that we can still change mouse cursor (to indicate resize)
even when the window does not have focus

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 4bd535e3a1 ecore-wl2: Remove window animator callback when we free a window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 70867d9dc7 ecore-wl2: Remove test for no-op move/resize
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 597426e606 ecore-wl2: Fix compiler warning
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 2f57854e8b ecore-wl2: Reduce noise of ERR messages which are not that important
when trying to set pointer cursor images

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 9cc1ba045c ecore-wl2: Fix issue of never getting keyboard focus
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 76a06f300f ecore-wl2: Fix issue of animators not starting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael e0f7c7a648 ecore-wl2: Finish off internal dnd code to actually send events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 26db25b5ff ecore-wl2: Add API function to clear a dnd selection
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael e44f85cc3c ecore-wl2: Add API function to return if a dnd selection exists
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 00fd750d7d ecore-wl2: Add API function to set a dnd selection
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 4559aa15a4 ecore-wl2: Add API function to determine if an input has a selection
owner

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael d1cc93f046 ecore-wl2: Add API function to end a dnd drag operation
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 9fdd4758fb ecore-wl2: Add API function to get a dnd drag
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael b877b18980 ecore-wl2: Add API function to start a dnd operation
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 915d0653c3 ecore-wl2: Add API function to set dnd drag types
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 695b8cec9e ecore-wl2: Add missing TODO for doxygen
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael ccb8061841 ecore-wl2: Add API function to return the Ecore_Wl2_Input from a given
window

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 6ad9dc0e10 ecore-wl2: Add API function to set the type of window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael dfffabb224 ecore-wl2: Add API function to return surface id of a window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 3fe735f0c1 ecore-wl2: Add API function to set a cursor for a window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 7b383e267d ecore-wl2: Add support for setting cursor images to input code
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael a83ba427a9 ecore-wl2: Add event structure and event type for selection data ready
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 9e8b79b43f ecore-wl2: Add remaining events and event structures for data source
(dnd)

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 199d762e57 ecore-wl2: Add event structure for dnd end event
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael cd1d9ec196 ecore-wl2: Port Ecore_Evas engines to use Ecore_Wl2 code
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 590c278a46 ecore-wl2: Add API function to set pointer surface on a window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael d8f72b6c32 ecore-wl2: Implement ecore_wl2_window_raise for xdg surfaces also
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 462d86486f ecore-wl2: Add API function to return pointer position
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 25390920be ecore-wl2: Add API function to retrieve screen size
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 9a008a9a69 ecore-wl2: Add API function to set window minimized state
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael ecd8808918 ecore-wl2: Add API function to return if a window is iconified
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael b0f65024ff ecore-wl2: Add API function to set if a window is fullscreen
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 6a6b56ce24 ecore-wl2: Add API function to set if a window is maximized
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael b02d5a1922 ecore-wl2: Add API function to set window geometry
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 9a1435796d ecore-wl2: Add API function to return window geometry
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael ffa12c3820 ecore-wl2: Fix not sending compositor reguests when we use
ecore_wl2_display_connect

Summary: If we do Not listen for ECORE_FD_WRITE on the file descriptor
handler, then we never send a wl_display_flush which means we don't
send requests to the compositor and thus nothing ever renders. Fix
that by listening for FD_WRITE and calling wl_display_flush.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael f8e3bc944f ecore-wl2: Add API function to set window class name
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 41a74fda94 ecore-wl2: Add API function to set window title
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael f372d11f99 ecore-wl2: Add API function to set window rotation
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael c7206d5687 ecore-wl2: Add API function to return if a window is fullscreen or not
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael c1109dd25c ecore-wl2: Add API function to return if a window is maximized
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 0d0b7f9979 ecore-wl2: Add API function to set if a window is transparent
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 35cbc0d737 ecore-wl2: Add API function to set window opaque region
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 795627ab51 ecore-wl2: Add API function to set if a window is alpha or not
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael f1d2f7c8da ecore-wl2: Add API function to return if a window is alpha or not
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael fda3c80ee0 ecore-wl2: Add API function to find a window by id
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 90217c80fc ecore-wl2: Add implementation for supporting custom tick animators
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael e04ab79ecc ecore-wl2: Raise dnd drop event when we get the event from the data
listener

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 25f199969c ecore-wl2: Add dnd drop event type and event structure
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 2758d6fcba ecore-wl2: Add event and structure for dnd motion events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 568f3cf617 ecore-wl2: Raise event for dnd leave
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 60aee3e03c ecore-wl2: Add event and structure for event dnd leave
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 05856a0ebf ecore-wl2: Add calls to dnd functions for drag listener
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 0ede9c3c7d ecore-wl2: Add source file for dnd functions
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 8b42bc4ae7 ecore-wl2: Add private function declarations for dnd functions
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael ad54caeeda ecore-wl2: Add structure and event type for dnd enter
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael dfdac191ff ecore-wl2: Add TODO notes for dnd
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael ffe14478de ecore-wl2: Support window raise function for wl_shell_surface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael cfce071a34 ecore-wl2: Implement support for window resizing
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 4d193552a8 ecore-wl2: Improve popup support to be able to use the parent windows
seat

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael e0b3d1250b ecore-wl2: Add support for window moving
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 34a4787402 ecore-wl2: Add support for xdg popups
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael d2816fa45f ecore-wl2: Assign an input to a window when the window gets focus
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael df670ae859 ecore-wl2: Finish up touch support. Record touch motion coordinates
into input->pointer.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 28fafc0ea7 ecore-wl2: Add support for double/triple click in mouse events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 08c804f5bb ecore-wl2: Send key press/release events when we get wayland event
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 7918f40fcc ecore-wl2: Raise focus in/out events when we get wayland events for
keyboard enter/leave

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael f811cc85d5 ecore-wl2: Add event structures for focus in/out
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 7e5ccc3862 ecore-wl2: Reset pointer and keyboard focus when a window gets deleted
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 5254b1a327 ecore-wl2: Call input ungrab when window operations occur
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 6d3e8a8558 ecore-wl2: Finish send ecore events for any wayland touch related events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 68b36dfde3 ecore-wl2: Send mouse up event when we ungrab input
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 16864aa2c4 ecore-wl2: Send mouse button down/up events when we get a wayland
pointer button event

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 32838d1db4 ecore-wl2: Add internal functions for sending mouse button down/up
events

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 8360fcaa58 ecore-wl2: Set display serial during keyboard events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael c0e03359e5 ecore-wl2: Add code to send mouse wheel events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael ed7429f62d ecore-wl2: Issue input grab/ungrab during pointer button events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 8a2b8ed76a ecore-wl2: Add code to send mouse move events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 52996b1cf4 ecore-wl2: Add functions to send mouse in/out events and call them
during pointer enter/leave

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 22c069ef82 ecore-wl2: Add internal input functions to initiate/release a grab
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 31b014de6b ecore-wl2: Add prototype functions to support data listener
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 7eabcd955e ecore-wl2: Add placeholders for touch listener functions
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 6062fa4f68 ecore-wl2: Add initial support for keyboard events
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael debc8c5aba ecore-wl2: Add placeholders for functions of the keyboard listener
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael df1032676a ecore-wl2: Add TODO note for handling mouse wheel event
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 4731bb6eed ecore-wl2: Add start of code for pointer button event
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 1f4b386664 ecore-wl2: Start on code for pointer motion event
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael bb0c94d04a ecore-wl2: Start on code for pointer leave event
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 1fd5a0f9b9 ecore-wl2: Destroy cursor theme when input is destroyed
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 08594f2b3c ecore-wl2: Add start of pointer handling code
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 2a973da77b ecore-wl2: Add function to find a window based on surface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 0a2bcb775b ecore-wl2: Add pointer fields to input structure
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 9009367421 ecore-wl2: Add placeholder touch listener structure and setup touch
listener

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 6869782c27 ecore-wl2: Add placeholder keyboard listener structure and setup
keyboard listener

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 1e7be23084 ecore-wl2: Add placeholder pointer listener structure and setup
pointer listener

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 330ac83004 ecore-wl2: Add support for initial setup of pointer cursor
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael bcd949fa03 ecore-wl2: Add start of Ecore_Wl2_Input code
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael e497abb4a6 ecore-wl2: Fix doxygen comment
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 70aa5a9a34 ecore-wl2: Add support for xdg shell listener
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael d722b41e1a ecore-wl2: Add start of Ecore_Wl2_Output code for outputs
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael dd5b7e0046 ecore-wl2: Free window when surface gets deleted
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael b3ca3c7880 ecore-wl2: Add placeholder API for ecore_wl2_window_raise
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 8079f5cf9d ecore-wl2: Update doxygen for window move and resize functions
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 5c6376fa29 ecore-wl2: Add API function to resize a window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael e9b6c5d4b7 ecore-wl2: Add API function to move a window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael a5739c5ded ecore-wl2: Add API function to free a window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 639a1a24ae ecore-wl2: Add API function to hide a window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 02671a1a4b ecore-wl2: Add API function for ecore_wl2_window_show
Summary: This adds preliminary support for wl_shell and xdg_shell

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 5df31145ad ecore-wl2: Add a listener for display sync when connect is called
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 2b41f198db ecore-wl2: Add bool fields to window structure to store state
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 7fe8a28aca ecore-wl2: Add function to create/get a wl_surface for a window
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 167e8d074b ecore-wl2: Add support for window types
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael d02da903fe ecore-wl2: Add function to return window id
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 8eda8449de ecore-wl2: Add start of ecore_wl2_window code
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 88e47d7def ecore-wl2: Add API function to return an iterator for display globals
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael f5e35519b3 ecore-wl2: Group connect and disconnect functions together
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 93ea0b172c ecore-wl2: Add internal function to cleanup Ecore_Wl2_Display when closed
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 98706f0157 ecore-wl2: Add API function for servers to terminate wayland display main loop
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 6b14714b56 ecore-wl2: Create new xkb context for each display when connected
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael a079b10224 ecore-wl2: Add API function for servers to destroy a wayland display
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 5e3a9860aa ecore-wl2: Add API function for clients to disconnect from a Wayland display
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 3a708abdf4 ecore-wl2: Add API function to return the wl_shm interface
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael fcbadece87 ecore-wl2: Remove unused wl_registry field in display structure
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 963b1da5f1 ecore-wl2: Call wl_event_loop_dispatch with a 0 timeout
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 54a0345503 ecore-wl2: Add support for binding various wayland interfaces
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 26844165a1 ecore-wl2: Add xdg_shell protocol files
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 31bf92dbbd ecore-wl2: Add API function to return wl_display
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 93f17dec58 ecore-wl2: Modify ecore_wl2_display_create to take an optional socket name
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael f875c8ba67 ecore-wl2: Use Eina_Stringshare type instead of const char
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 81c120db14 ecore-wl2: Start on code to handle globals being added or removed
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael e4f4d52cf3 ecore-wl2: Add start of opaque Ecore_Wl2_Display structure
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 1af91f3c61 ecore-wl2: Add wayland log handler callback to print wl log messages
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 8c8334ad2d ecore-wl2: Add ecore_wl2_display file to build order
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 2065766bb5 ecore-wl2: Add start of doxygen infrastructure
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael b085e688d5 ecore-wl2: Add API function for ecore_wl2_shutdown
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael d769724ccc ecore-wl2: Add events for adding and removing globals
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 1132afd78a ecore-wl2: Add API function for ecore_wl2_init
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael b3eaf9be3a ecore-wl2: Add start of headers for ecore_wl2 library
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 0a4660c77d ecore-wl: Make "server mode" a global
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Chris Michael 518531ea00 ecore-wayland: Add support for using timer based animators if in
server mode

Summary: For E internal windows, we cannot use custom animator sources
due to Other animators using a timer-based solution. For this case,
when running in "server mode" for internal windows we will default to
a timer based animator solution.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-03 12:02:40 -05:00
Subodh Kumar 320733ecd7 Edje entry: Use markup text for password in preedit mode
Summary:
Use markup text for password in preedit mode

Problem is that when text comes in preedit mode
it is always markup text and when it is committed
to entry it got committed with markup tags along with
the original string, so for preedit mode password
should be filtered all markup to set the proper text.

@fix

Test Plan:
In preedit mode, enter any character say 'A'
preedit markup like <preedit>A</preedit>
will come in preedit changed callback

Result: Text is set as plain text like below
&lt;preedit&gt;A&lt;/preedit&gt;

Reviewers: thiepha, jihoon, herdsman, shilpasingh, tasn

Reviewed By: shilpasingh, tasn

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2929
2015-12-03 16:04:08 +00:00
Jean-Philippe Andre f88333326f Ector: Fix Windows build (missed in previous patch) 2015-12-03 20:53:20 +09:00
Jean-Philippe Andre c09199f0e0 Ector: use uint32_t instead of uint
This fixes the build for Windows. Thanks @vtorri for the report.

I'm not using "unsigned int" as uint was mostly used like DATA32,
ie. color data (one pixel color or a pixel buffer).
2015-12-03 20:28:27 +09:00
Shilpa Singh 648cef1db1 edje_entry: Fix crash on selection
Summary:
When text is selected, crash happens due to double free as rectangles are freed both in _sel_update
and _evas_textblock_selection_iterator_free hence removing free from _sel_update.

@fix T2910

Test Plan:
1. Launch elementary test
2. launch entry demo
3. select text

Reviewers: cedric, herdsman

Subscribers: jpeg

Maniphest Tasks: T2910

Differential Revision: https://phab.enlightenment.org/D3401
2015-12-03 12:53:00 +02:00
Jean-Philippe Andre dc621e2316 Ector: Kill compilation warnings
Remove unimplemented function (no test case yet).
Convert #warning into comments.
2015-12-03 18:42:50 +09:00
Jean-Philippe Andre b5500a8644 Evas: Move alpha functions to static_libs/draw
This is a pretty simple code refactor, moving pixel handling
to the new draw lib.
2015-12-03 18:42:50 +09:00
Jean-Philippe Andre 4bcea3eada Ector: Move cairo surface back to ector
The original plan was to have two different surfaces for GL and SW,
but this is probably not going to happen anytime soon. So, move
the implementation back to lib/ector. This avoid a file duplication.
2015-12-03 18:42:50 +09:00
Jean-Philippe Andre 52ec3d2d7e Ector: Rename C files to match their EO counterparts 2015-12-03 18:42:50 +09:00
Jean-Philippe Andre 33cd26a4b2 Ector: Another minor code cleanup
Remove DATA8, DATA16, DATA32
Remove empty data structure
Remove unnecessary typedef
2015-12-03 18:42:50 +09:00
Jean-Philippe Andre 615b2442b7 Ector: Move drawhelper to static_libs
Rename a few things:
 - draw helper -> efl_draw
 - Ector_Rop -> Efl.Gfx.Render_Op
 - ECTOR_ bla bla -> DRAW_ bla bla (base pixel ops)
 - ector_memfill -> draw_memset32 (and invert arg order to match memset)

The main rasterizer file is now draw.h in static_libs/draw
This is a non functional change, simple code refactor.
2015-12-03 18:42:50 +09:00
Jean-Philippe Andre bad7911cd0 Ector: Use Ector Buffer inside SW and Cairo renderers
Ector Surface now inherits from Ector Buffer, and the current
two renderers (SW and Cairo SW) use Ector.Software.Buffer
implementations for pixel surfaces.

Basic pixel handling is merged and will allow easy extension
(color conversion, etc...).

Buffer classes are Mixins to be fully implemented by the final
class, such as: Ector.Software.Buffer, Ector.Software.Surface
or Ector.Cairo.Surface.

This is a large ugly commit. Sorry.
The code is quite a mess right now.
2015-12-03 18:42:50 +09:00
Jean-Philippe Andre 0cf5719e52 Ector: Implement pixel buffer support
The objective of this patch is to propose a standardized
format for pixel buffers to use within Ector and Evas.

The basic EO API provided here is not meant to be the
fastest path for all operations, simply the most convenient
to generalize. Performance will be achieved by implementing
(or porting) custom draw functions.

This implements support for:
- Generic pixel buffers
- Generic buffer renderer to draw images with ector
- Software engine pixel buffers, ie. malloc buffers
- Software buffer renderer

Cairo support has not been implemented yet.

The only renderer is still extremely limited, as it does not
support Fill modes, Scaling, etc... yet.

Not a single line from this patch has been tested yet.
It compiles. That's pretty damn good for a start!

@feature
2015-12-03 18:42:50 +09:00
Daniel Hirt 5322575ba6 Edje entry: emit "selection,reset"
Adding a check for the selection range on extend/preextend.
If there is no range, then emit "selection,reset".
Expected handling on the theme end for this signal is to show the
cursor.

This improves cursor visuals, as it will show the cursor again once the
selection range ends up being 0.
2015-12-03 10:31:43 +02:00
Amitesh Singh 59681c3311 edje: fix edje RTL description in case of custom state of a part
Summary:
In case of RTL, the "custom" state properties does not apply. It happened because we don't copy the latest src to
dst in set_state(PART:.., "custom", 0.0); in case of dst is already populated.
We should copy the updated src to dst whenever we set the new custom description.

@fix

Reviewers: cedric, raster, jpeg, zmike, jaehwan

Subscribers: kimcinoo, seoz, jpeg

Differential Revision: https://phab.enlightenment.org/D3394
2015-12-03 11:26:10 +05:30
Jee-Yong Um dc918064ce edje: add missing EAPI keyword for edje_color_class_del
Reviewers: jpeg

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3398

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-02 14:34:16 -08:00
se.osadchy ce4146ec63 evas: fix bug with logic with eina_matrix in evas_3d_utils
Summary: Also need to fix logically dead code in coverity.

Reviewers: raster, Hermet, cedric

Subscribers: jpeg

Maniphest Tasks: T2832

Differential Revision: https://phab.enlightenment.org/D3346

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-02 14:15:01 -08:00
perepelits.m a19786649f edje: Remove redondant array in Evas 3D edd (part2)
Summary: There are more redundant arrays to be deleted. In fact I don't think string name of descriptor shouldn't never change, I was testing some 2D examples and this is not true.

Reviewers: raster, jpeg, cedric

Subscribers: artem.popov, cedric

Differential Revision: https://phab.enlightenment.org/D3361

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-02 14:09:59 -08:00
Cedric BAIL d577366acb evas: properly clean up all memory. 2015-12-02 12:31:59 -08:00
Daniel Hirt 59e9e2ddc8 Evas textblock: fix height on line wrapping
Line advance should finalize the line with its last item, and not the
item we're currently wrapping. This fixes T1583, where some line
wrapping cases would look different than their equivalent <ps>
versions.

@fix
2015-12-02 15:06:32 +02:00
Carsten Haitzler 5263e61585 efreet desktop tracking - fix monitoring of dirs of custom desktops
@fix

this is wrong - start monitoring every/any dir in which a desktop file
exists that we load a desktop file from. imagine you browse directories
in efm with lots of desktop files in them - we end up monitoring lots
of directories that we then rememebr and don't un-monitor. this
disables monitoring of dirs from which we load a .desktop file from to
fix this.
2015-12-02 20:53:27 +09:00
Youngbok Shin 809d8fdafe Evas Textblock: Fix text disappear issue when text is made up with multiple items.
Summary:
Text is disappearing when we resize a singleline Evas Textblock with ellipsis.
It is happened by putting a Text item at logical_items list without considering about logical position.
It is only happended the text is made up with multiple items.
@fix

Test Plan:
1. Run elementary_test
2. Click Label Ellipsis
3. Resize the window dynamically and see the result.

Reviewers: woohyun, tasn, herdsman

Subscribers: jpeg, subodh6129, shilpasingh, cedric

Maniphest Tasks: T2709

Differential Revision: https://phab.enlightenment.org/D3022
2015-12-02 09:52:01 +02:00
perepelits.m 32c33ed64d evas: refactor model's savers and loaders.
Summary:
Move common part to a separated document.
Make code more readable using smaller functions. (from Task T2713)

Reviewers: cedric, raster, Hermet

Subscribers: artem.popov

Differential Revision: https://phab.enlightenment.org/D3373
2015-12-01 16:39:29 -08:00
Youngbok Shin 917fdbd597 evas: fix a NULL dereference issue in font.
Summary:
eina_list_remove returns Eina_List pointer.
It could be NULL if the last list item is removed.
And the returned Eina_List pointer could be different from the given list.
So, calling free for fdir->data after fdir's address is changed is dangerous.
@fix

Test Plan: Run expedite or test app with evas_font_path_append() API.

Reviewers: stefan_schmidt, jpeg

Reviewed By: jpeg

Subscribers: stefan, jiin.moon, cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3392

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 15:03:51 -08:00
Vincent Torri 02ef02bfb5 evil: better check of Windows 64 bits
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:52 -08:00
Jean Guyomarc'h 12db3c2213 ecore_cocoa: fix live resize of windows
This was a tricky little bastard!
When a window is live resized, the NSWindow which is the target of
the live resize will wait for a kevent from the window manager,
until live resizing is done. So... live resizing is synchronous
and blocks the main thread... hence ecore_main_loop.

- When live resize starts, the Ecore_Timer which polls NSRunLoop
is paused.
- When the window is resized, the ecore_main_loop is run manually
with ecore_main_loop_iterate() to process Ecore events (mostly
Ecore_Evas)
- When live resize finished, the Ecore_Timer which polls NSRunLoop
is resumed.

@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:33 -08:00
Jean Guyomarc'h ca49333757 ecore_cocoa_app: don't override init
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 2d7870083c ecore_cocoa: don't make ecore_cocoa_feed_events() a public API
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 907f14c003 ecore_cocoa: NSApp must be configured in the App wrapper
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h af19d15a78 ecore_cocoa_window: cosmetic changes
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 967d2fe7fa ecore_cocoa: don't export Ecore_Cocoa_Keys.h
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 4ab8471ef0 ecore_x: factorize multiple calls to strlen()
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 614274f857 ecore_cocoa: factorize code
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 69ed0d889c ecore_cocoa_cnp: make API thread-safe
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 2f883ba151 ecore_cocoa_cnp: clear the clipboard only if writable
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 32d6cb6efd ecore_cocoa: NSEvent modifiers are of type NSUInteger
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 6574b8769c ecore_cocoa: report error when [super init] fails
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h a8c9c9a60e ecore_cocoa: remove EINA_UNUSED because parameter is used
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h f83ece242e ecore_cocoa: remove debug log
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 70a04ea746 ecore_cocoa: reindent file
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 0bb310f2ad ecore_cocoa: add more safety checks
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h b61fc5814b ecore_cocoa: remove EINA_UNUSED because parameter is actually used
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 63ad6ed3f0 ecore_cocoa: prevent Ecore_Cocoa_Window to be re-defined
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 1ab2b14cfb ecore_cocoa: remove ECORE_COCOA_EVENT_EXPOSE
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 616ad954fc ecore_cocoa: remove unused events 2015-12-01 12:15:32 -08:00
Jean Guyomarc'h 52506cf214 ecore_cocoa: start doxygen
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:31 -08:00
Jean Guyomarc'h 25a44cc9d8 ecore_cocoa: don't track NSAppKitDefined event
Currently, it was used only to get track of focus, howver focus was
already handled (and better) in ecore_cocoa_window (with
NSWindowDelegate).
This led to the LOST_FOCUS event to be posted twice, with different
values, which messed up the focus stack.

@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:31 -08:00
Jean Guyomarc'h cb334b3e37 ecore_cocoa: fix types
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:31 -08:00
Jean Guyomarc'h 3d5f1817e6 ecore_cocoa: copy and paste support
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:31 -08:00
Jean Guyomarc'h 8182fc38cb ecore_cocoa: silent warning: unused parameter 2015-12-01 12:15:31 -08:00
Jean Guyomarc'h 916bf675e1 ecore_cocoa: use EAPI in implementation 2015-12-01 12:15:31 -08:00
Jean Guyomarc'h d48faf39bf ecore_cocoa: improve const-correctness 2015-12-01 12:15:31 -08:00
Jean Guyomarc'h 586c8b4582 ecore_cocoa: don't specify inline
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:31 -08:00
Jean Guyomarc'h 2c93c73cbd ecore_cocoa: add support for system cursors
- Ecore_Cocoa_Cursor enum which references system cursors;
- API to show/hide cursor: ecore_cocoa_window_cursor_show();
- API to set system cursor: ecore_cocoa_window_cursor_set();
- Ecore_Evas interface to get Ecore_Cocoa_Window from Ecore_Evas.

@feature

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:31 -08:00
Vincent Torri ba4fbb99bc ecore_win32: add support of X11 shaped cursors
@feature

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:15:31 -08:00
Vincent Torri abf4364b30 ecore_win32: add clipboard management
@feature

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:13:12 -08:00
Vincent Torri 9e5852fcfb eina: use eina_file_path_join() and eina_environment_tmp_get() when needed
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 12:13:12 -08:00
Vincent Torri 892df20bd4 ecore_file: fix ecore_file_file_get() on Windows
@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-12-01 11:35:24 -08:00
Subhransu Mohanty 38902ef291 efl: change efl_gfx_shape_cubic_to() api signature to follow other API (cairo and freetype).
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-30 15:59:49 -08:00
Subhransu Mohanty e79dd4c161 efl: updated efl_gfx_shape_dup() implementation to use direct access to internal data.
As I don't see the use of inheritance for stroke anymore, we will use internal access
rather than inherited get/set function. This behavior can be reverted if anyone find
a real use case for it.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-30 15:52:25 -08:00
Subhransu Mohanty 71b2efe94d efl: add bookkeeping for convex shapes.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-30 15:51:43 -08:00
Subhransu Mohanty f6a1694181 efl: update append_rect implementation.
This now generate more optimized path by reducing the use of arc and
switching to only line whenever possible.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-30 15:49:06 -08:00
Subhransu Mohanty d5719aad9d efl: update append_circle implementation to use _efl_gfx_shape_append_arc.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-30 15:48:06 -08:00
Subhransu Mohanty 4a48a7e9ea efl: add alternative append_arc implementation
This allow to reduce the number of generated arc, but doesn't follow
SVG specification. This is just used internally and can't be used by
outside call.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-30 15:47:14 -08:00
Subhransu Mohanty 8212f2aee3 eina: add new api eina_bezier_on_interval()
I couldn't come up with a better name, if anyone has a suggestion.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-30 15:40:01 -08:00
Cedric BAIL 78eb21296c eina: fix bad use of calloc. 2015-11-30 14:10:35 -08:00
Jean Guyomarc'h b6a43da447 eina: fix missing header
This caused functions from eina_util to be undefined at compile time.
The compiler would make implicit casts of return values into ints,
which had major side effects (e.g. segfault edje_cc)

@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-30 14:08:56 -08:00
Stefan Schmidt 3a11868201 evas_3d_utils: do not bitwise AND against 0 in condition
We need to check against the state here and if the compilers assignes 0 to the
first item in an enum we are screwed here as the bitwise AND will always
evaluate to false.

This is a re-incarnation from a486671bce
2015-11-30 17:36:24 +01:00
Stefan Schmidt 54abe37c44 evas_font_dir: do not passed free'd memory to eina_list_remove()
Free the actual memory after we removed it from the list.
2015-11-30 17:36:24 +01:00
Vincent Torri db8d1883d7 Evas: use LC_MESSAGES on Windows to fix compilation
Compilation is broken on Windows because LC_MESSAGES does not exist on this platform
Include Evil.h to provide support of LC_MESSAGES

@fix
2015-11-30 16:28:02 +00:00
Vincent Torri cbb6e9b20f Evil: add support for LC_MESSAGES for setlocale()
LC_MESSAGES is an extension to C ANSI and does not exist on Windows.
So add LC_MESSAGES API and overload setlocale() to support it

@feature
2015-11-30 16:28:02 +00:00
Duna Oh 21b1a3f221 ecore-drm: Add logical pointer x, y variable in seat for reflecting multiple pointer's movement
Summary: When one pointer moves, we should update the position of other devices.

Test Plan:
(1) Two pointer devices are connected.
(2) Move the cursor to (x, y) position using "device 1".
(3) When you move the cursor using "device 2", the cursor doesn't start from (x, y) position. This causes discontinuous mouse motion.

Reviewers: raster, zmike, gwanglim, stefan_schmidt, devilhorns, ManMower

Reviewed By: devilhorns, ManMower

Subscribers: cedric, Jeon, input.hacker, jpeg

Differential Revision: https://phab.enlightenment.org/D3384
2015-11-30 11:05:07 -05:00
Chris Michael 886c20a43b evas-3d: Fix missing field initializers
Clang spits warnings here about missing field initializers for
Evas_Vec3 (missing y and z fields), so we will explicitly initialize
them to 0 (matching the x field).

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-30 09:15:53 -05:00
Vincent Torri 0a44c3f78b Evil: fix warning
Use the USERPROFILE environment variable instead of deprecated evil_homedir_get
function. Also set the shell to cmd.exe if the SHELL var is not found
2015-11-30 11:27:33 +00:00
Tom Hacohen 2c9a79e939 Revert "Evas: Temporarily hack OT_SUPPORT to fix textgrid"
Fixed in upstream, see T2865.

This reverts commit 8ccea8233c.
2015-11-27 12:34:15 +00:00
Stefan Schmidt a486671bce eina_matrix: optimize multiply and inverse calls by actually using the shortcut
We had this nice shortcuts for multiply and inverse with the identity matrix.
Pity we never used it! The EINA_MATRIX_TYPE_IDENTITY is coming from an enum
without and direct assignments to its internals. Being the first item in the
enum it is most likely will be 0 which makes the whole bitwise AND zero and thus
the optimized path will never get called. If our compiler now decides hew wants
to handle enums differently and does not assign the 0 to the first item this
bitwise operation will be even more screwed. What we really want is to check is
if the type we get for the matrix matches EINA_MATRIX_TYPE_IDENTITY. So better
do this. Made me look into matrix multply and inverse. Fun!

Thanks to smatch for poiting this out.
2015-11-27 00:13:04 +01:00
Stefan Schmidt 043cfaa33b evas_common3d: use void to force empty function parameters
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.

We had it correct for most declarations and this series fixes it for
the rest.
2015-11-26 17:25:36 +01:00
Stefan Schmidt 1d34318938 eolian: use void to force empty function parameters
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.

We had it correct for most declarations and this series fixes it for
the rest.
2015-11-26 17:25:06 +01:00
Stefan Schmidt f356af17c9 ector: use void to force empty function parameters
We have to use void in a function declaration if we want no function
parameters. Using just empty parenthesis means the function takes an
unspecified number of parameters.

We had it correct for most declarations and this series fixes it for
the rest.
2015-11-26 17:24:37 +01:00
Youngbok Shin 507baf4891 evas: Add ExtraLight, ExtraBold for font weight.
Summary:
Evas supports UltraLight, UltraBold as font weight.
These terms have same weight value as ExtraLight, ExtraBold.
Some applications, for example, fontforge, use ExtraLight, ExtraBold terms for these weight values.
So, it would be better to support these terms, too.
@feature

Test Plan: None

Reviewers: tasn, woohyun, herdsman

Reviewed By: herdsman

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3126
2015-11-26 10:16:14 +02:00
Thiep Ha 7693925227 edje entry: return correct selection
Summary:
In entry, when selection_get function is called, selection is not
always returned the current selection.

Scenario:
- In select mode, entry has selection (e.g, by double click).
- When selection handler is moved, set the cursor the current coordinate
  with edje_object_part_text_cursor_pos_set() API.
- Edje emits "selection,changed" signal.
- Elementary gets current selection and stores it.
- Elementary does not get selection as visual selection (e.g, text is
   highlighted with "entry test", but the selection returned
   from edje is "entry").
- If we copy and then paste to the entry, the pasted text is not same as
   selected text.

Reason:
- In _edje_entry_cursor_coord_set function, if entry has selection, we only
  emit "selection,changed" signal without freeing en->selection.
- When _edje_entry_selection_get is called, we check the en->selection,
  since it is existed, we just return it which is not updated one.

This patch clears en->selection, so that it is updated at _selection_get,
and the updated selection is returned to caller.

@fix

Test Plan:
In mobile profile, open entry
- Right click, choose select, double click -> selection handlers are shown.
- Drag selection handlers to change selection.
- Right click, do copy.
- Right click, do paste.
- See the pasted text is not same as selection.

Reviewers: raster, tasn, herdsman

Subscribers: seoz, JackDanielZ, cedric

Differential Revision: https://phab.enlightenment.org/D2746
2015-11-26 10:11:54 +02:00
Marcel Hollerbach 7b9bb510b4 efreet_icon: Fix wrong inherit selection
Summary:
The list of elem->paths is given with the actual icon at position 0 and
the bigger the index is the lower the icon in the inherit structure is.

Due to the for loop beginning at 0 walking to the end this
direction is flipped. So the last r is returned, which is the lowest
icon in the inherit structure.

This is fixed by returning if the first valid path is found.

@fix

Test Plan: run jesus or efm with a custom icon theme beore the wrong icons are taken, now the correct ones are taken

Reviewers: raster, cedric

Subscribers: DaveMDS

Differential Revision: https://phab.enlightenment.org/D3366
2015-11-25 09:35:07 +01:00
Jean-Philippe Andre 8ccea8233c Evas: Temporarily hack OT_SUPPORT to fix textgrid
See T2865.
Since Harfbuzz 1.1.0, terminology displays fonts funnily aligned to
the top. This is apparently because until 1.0.6 the y_offset was
always 0 for all glyphs, but since 1.1.1 the offset is actually
set.

This is a TEMPORARY fix. There might be an underlying issue left
here.

Harfbuzz changed behaviour in this commit:

  commit 44f82750807475aa5b16099ccccd917d488df703
  Author: Behdad Esfahbod <behdad@behdad.org>
  Date:   Wed Nov 4 20:40:05 2015 -0800

      [ft] Remove font funcs that do nothing
2015-11-25 16:44:04 +09:00
Subhransu Mohanty 055354050e ector: support fill rule for shape object.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-24 15:47:15 -08:00
Subhransu Mohanty b1b0679daa efl: added fill_rule property in efl_gfx_shape class
Open question, should fill rule be part of the public data ? Let's
say no for now.

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-24 15:45:59 -08:00
Subhransu Mohanty 609f74994b efl: make path stroke related api as non virtual.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-24 15:42:29 -08:00
Cedric BAIL abe2110152 efl: quick code cleanup. 2015-11-24 15:00:18 -08:00
Subhransu Mohanty a6e168675d ector: fix the rounding issue when applying transformation to shape data in freetype backend.
@fix

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-24 14:37:33 -08:00
Cedric BAIL 6a7257f5a7 eet: improve error message during eet_close. 2015-11-24 14:27:13 -08:00
Daniel Hirt 40dfc4a45d Evas textblock: add support for hyphenation wrap style
We now support hyphenation in style. Use "wrap=hyphenation" to use this
wrap option. It will hyphenate based on explicit SOFT HYPHEN (&shy;)
placement in the text, and with the (optional) assistance of dictionaries
compatible with Hunspell's "hyphen" library.

This wrap mode favors breaking at hyphen positions in a word, over moving
the whole word to the next line. It will put an additional "-" at the
break position if it was hyphened.

Enabling the hyphen dictionaries is done by adding these configure
options:
  --enable-hyphen (requires Hunspell's "hyphen" library installed)
  --with-dictionaries-hyphen-dir=DIR (specifies the install location of
          the actual .dic dictionary files e.g. /usr/share/hyphen)

Note that dictionary files are expected to be in the form of "en_US.dic"
or anything that ends with it e.g. "hyph_en_US.dic" (this how they are
        named in Arch Linux).

@feature
2015-11-24 14:31:05 +02:00
Daniel Hirt 89ef4b70b8 Eina unicode: add eina_unicode_unicode_to_utf8_range
Required some special treatment to get words (substring) out of an
input Unicode string to a utf8 one. This saves the trouble converting
the whole string: you input an offset in the Eina_Unicode array, and
provide the required length. That's is, now you can extract words and
whatnot in utf8 form.

To save code I wrapped the original one to get the whole length.
2015-11-24 14:22:57 +02:00
Anand 120305b08e eina: Applied NULL check
Summary:
In _eina_list_setup_accounting function
{
...
...
if (!list->accounting)
     goto on_error;
...
...
on_error:
   _eina_list_mempool_list_free(list);
}

_eina_list_mempool_list_free function deference the "list->accounting"
variable which is already NULL.

Reviewers: JackDanielZ, jpeg

Reviewed By: jpeg

Subscribers: cedric, jpeg

Differential Revision: https://phab.enlightenment.org/D3376
2015-11-24 17:50:21 +09:00
Cedric BAIL 8616e22c7e eina: always terminate the string with a '\0'. 2015-11-23 11:57:04 -08:00
Minwoo, Lee 3700be959b evas: Fix text effect which has shadow direction
Summary:
If text object has outline and shadow effect (OUTLINE_SHADOW or OUTLINE_SOFT_SHADOW), and has shadow direction except BOTTOM_RIGHT then outline is not displayed.
So fix logic of style checking.

OUTLINE_SOFT_SHADOW effect of text object is different with text block, so fix it.

Test Plan: Make text obect with OUTLINE_SHADOW or OUTLINE_SOFT_SHADOW effect with any direction except BOTTOM_RIGHT

Reviewers: cedric, woohyun, herdsman, tasn

Subscribers: id213sin

Differential Revision: https://phab.enlightenment.org/D3047
2015-11-23 20:53:29 +09:00
Jean-Philippe Andre 1ab1b24e4e Edje edit: Free textblock styles with the proper function 2015-11-23 19:41:30 +09:00
Yeshwanth Reddivari 1caea15703 Edje: Remove duplicate NULL reassignment
Summary:
Remove duplicate code of variable 's' assignment to NULL in edje_edit_style_del.

Signed-off-by: Yeshwanth Reddivari <r.yeshwanth@samsung.com>

Reviewers: Hermet, alok25, mvsovani, singh.amitesh, jpeg

Reviewed By: jpeg

Subscribers: sachin.dev, cedric

Differential Revision: https://phab.enlightenment.org/D3358
2015-11-23 19:41:30 +09:00
Oleksandr Shcherbina d871ff8d11 evas: remove useless part of code in evas_convex_hull_get function
Summary:
@fix
CID: 1339788

Reviewers: raster, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3350

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-23 08:20:26 +01:00
Oleksandr Shcherbina 3a56b3f013 evas: fix uninitialize variable in convex_hull_vertex_set function
Summary:
A bit of useless claim, becouse parameter coord always have value 0 or 1 or 2.
May be for escape problem in future.
@fix
CID: 1339781

Reviewers: raster, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3349

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-23 08:18:53 +01:00
Oleksandr Shcherbina 6866d256e8 evas: fix possible accsess to NULL pointer in Evas.Canvas3d.
Summary:
@fix
CID:1339784

Reviewers: raster, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3348

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-23 08:16:12 +01:00
Oleksandr Shcherbina 5d4f3b22c4 evas: fix unreachable code in _generate_unic_color_key function in Evas.Canvas3D.
Summary:
Have a sence. It is hard to assume that more that 16 million color will be used.
@fix
CID: 1339790

Reviewers: raster, cedric

Reviewed By: cedric

Differential Revision: https://phab.enlightenment.org/D3347

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-23 08:12:00 +01:00
Vivek Ellur f0c826c415 eet: remove useless assignment in eet cipher and silence warning.
Summary:

Signed-off-by: Vivek Ellur <vivek.ellur@samsung.com>

Reviewers: cedric

Reviewed By: cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3310

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-22 23:28:09 +01:00
Subhransu Mohanty 07bb5483b4 eina: added bounds_get api to Eina_Bezier
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-11-22 23:28:09 +01:00
Chidambar Zinnoury 4983ac6d36 ecore con: Fix UDP sockets.
The client structure holds a file descriptor, which is not initialized (which means 0) in case of UDP as there is no client-specific socket.

 However, we check for the file descriptor being positive before closing it in the client destructor, which means that we actually end up closing the 0 file descriptor.

 That means that things were going crazy with real strange things happening afterwards…
2015-11-20 17:46:38 +01:00
Jean-Philippe Andre 58a1b2767e Evas render: Fix another map clip render issue
This time it's only about performance. We seem to be setting the
changed flag too often, which might trigger unnecessary redraws.

- map flag is set if there is currently a map AND it's not an image
  object (because images can map themselves)
- hmap flag is set if there was a map before

So, map != hmap does not imply a transition between a mapped and
non-mapped state. Add an extra check before marking the clip
as dirty and changed.
2015-11-20 14:23:29 +09:00
Jean-Philippe Andre ec92726ca9 Ector: Simplify confusing code
The base class data was already stored, no need to figure it out again
2015-11-20 14:14:28 +09:00
Daniel Kolesa 55be91afc9 eolian: more relaxed safety in types API
This changes the checks in eolian type API so that you can use the various
type funcs on incompatible types, getting a NULL in return; this allows
simplified generator logic, with error handling done on generator side,
without getting annoying messages from the Eolian lib.
2015-11-19 15:29:11 +00:00
Daniel Kolesa b3867ce395 eolian: turn "undefined type" into its own EOLIAN_TYPE 2015-11-19 14:05:16 +00:00
Cedric BAIL b2202a5064 ector: don't use parent relationship to get access to the surface for freetype backend. 2015-11-19 14:52:10 +01:00
Cedric BAIL 9c3c402fd6 ector: don't use eo parent relationship for accessing the surface. 2015-11-19 14:52:10 +01:00
Cedric BAIL 4f0ef04788 ector: starting decoralating surface and parent by adding a property to access the surface independently.
NOTE: It would be nice to be able to protect independently the setter from the getter in eolian.
2015-11-19 14:52:10 +01:00
Cedric BAIL 412191e5f8 ector: improve uploading of GL texture for vector graphism
This rely on a faster code path to upload dynamic texture. Once we get support
for gbm, we should see significant performance improvement in speed, but this
first step is already a 5 times improvement (Ok, we get from really bad, to not
really useful...).
2015-11-19 14:52:10 +01:00
Youngbok Shin a9b4be11e1 Evas object: Add paragraph_direciton APIs
Summary:
It adds evas_object_paragraph_direction_set, get APIs.
The APIs set or get paragraph direction to/from the given object.
It changes BiDi calculations and affect the direction and aligning of text.
It doesn't have any effect to text without Fribidi library.

The default paragraph direction is EVAS_BIDI_DIRECTION_INHERIT.
If dir is EVAS_BIDI_DIRECTION_INHERIT, paragraph direction is changed
according to smart parent object. If there is no smart parent object,
paragraph direction works as EVAS_BIDI_DIRECTION_NEUTRAL.

@feature

Test Plan:
Test cases included to the following files.
- evas_test_textblock.c
- evas_test_text.c
- evas_test_object_smart.c

Run "make check".

Reviewers: woohyun, raster, herdsman, tasn

Subscribers: c, raster, cedric

Differential Revision: https://phab.enlightenment.org/D1690
2015-11-19 11:43:39 +00:00
Jean-Philippe Andre 618558f8ec Efl: eo-ify enum Efl.Gfx.Fill 2015-11-19 17:29:28 +09:00
Chris Michael 2ebef8010e ecore-wayland: Reduce overhead for maximize/fullscreen set functions
This patch just gets the state flags directly from the window rather
than calling "get" functions to return the same parameter.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-18 12:56:12 -05:00
Chris Michael 4534c4aec3 ecore-wayland: Fix iconified functions for consistency
* sanitize bool params
* enforce window state flag setting
* correctly detect window state using window flag

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-18 12:54:00 -05:00
Chris Michael 35b4794c4a ecore-wayland: Add EINA_SAFETY checks to window functions
This adds EINA_SAFETY returns for all public facing ecore_wl_window
functions.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-18 12:19:17 -05:00
Daniel Kolesa e089908545 eolian: add eolian_type_aliased_base_get
This adds a new API function that is there mainly for convenience (see doc).
Also added/updated tests as necessary.

@feature
2015-11-18 16:02:15 +00:00
Tom Hacohen 1e1e50ca06 Evas text: Fix last up to pos error return value.
This commit also simplifies the code a (tiny) bit.

This fixes the bug introduced in:
392df9479f
2015-11-18 10:56:48 +00:00
Tom Hacohen 3b7ff8ece4 Evas text: Remove useless FIXME. 2015-11-18 10:53:29 +00:00
Subodh Kumar 392df9479f Evas text: Fix memory leak
Summary:
Fix memory leak

Position is getting returned without
freeing the temporary logical item list.

@fix

Test Plan: NA

Reviewers: tasn, raster

Reviewed By: raster

Subscribers: raster, cedric

Differential Revision: https://phab.enlightenment.org/D3345
2015-11-18 10:52:34 +00:00
Tom Hacohen 1f881c859a Eet: remove dead variable assignment.
I guess this is what 2a01c4517b was meant to be doing.
2015-11-18 10:11:55 +00:00
Stefan Schmidt 2892e54d88 Revert "eet: removing useless assignment variables."
This reverts commit 2a01c4517b.

Declaring these variable void breaks the build with disabled crypto.

Fixes T2855
2015-11-18 10:26:25 +01:00
Jean-Philippe Andre fb4f81b119 Edje data: Remove redondant array in Evas 3D edd
Since I just broke EDJ ABI, as well clean it up. The same array
was saved twice under two different names.
2015-11-18 12:08:08 +09:00
Jean-Philippe Andre fc3cbaca67 Edje: Fix Evas 3D eet data descriptors
Memleak found with valgrind points to this line, where clearly the
edd field name is incorrect. It looks like this feature has no example,
no test case either.

This breaks EDJ ABI!
I do this because I believe there are zero users of this API
at this point, as Evas 3D is still not ready yet.

See also https://phab.enlightenment.org/D2544

@fix
2015-11-18 12:08:03 +09:00
Jean-Philippe Andre b54fe3fe61 Edje data: Fix memory leak in nested data descriptors 2015-11-18 11:48:44 +09:00
Mike Blumenkrantz ab3ab4feaa ecore-wayland: rewrite maximize/fullscreen set functions for consistency
* use safety macros for win struct param (should be the case for all fns here)
* sanitize bool params
* enforce window state flag setting
* correctly detect window state using window flag instead of type

@fix

ref T2841
2015-11-17 18:24:09 -05:00
Mike Blumenkrantz 3b480804fc ecore-wayland: return only the relevant state value for maximize/fullscreen
having window types for fullscreen/maximize is not defined by spec and leads
to state mismatches when toggling from api vs receiving events from the compositor

@fix
2015-11-17 18:23:07 -05:00
Chris Michael eacd4cc6f6 ecore-wayland: Make ecore_wl_window_maximized_get return proper values
This brings ecore_wl_window_maximized_get more inline with
ecore_wl_fullscreen_get function in that it will now check either the
window maximized state, or the window type, to determine if a window
is actually maximized

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-17 15:57:45 -05:00
Chris Michael 0210051a40 ecore-drm: Don't send mouse_move event too early
We cannot be sending an ecore_event for mouse move here as it is too
early in the startup process for that too happen. Raising the event
here never gets caught because the ecore_evas has not yet registered
for ecore_input listening.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-17 15:54:34 -05:00
Chris Michael e04146f7de ector: Fix incorrect expression
Coverity reports that 'obj' is written twice with the same value
here., so fix this with a proper call to eo_do_super_ret

NB: Fixes Coverity CID1339786

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-17 10:06:55 -05:00
Daniel Hirt 4c086b6e1b Evas language: add full locale language getter
evas_common_language_from_locale_get truncates the country letters in
the language. We don't always want that (one example is dictionaries).
2015-11-17 16:20:21 +02:00
Chris Michael 41db18ffda ector: Add missing EINA_UNUSED for unused function parameter
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-11-17 08:58:58 -05:00
Tom Hacohen 8fcf9a0fe6 Evas language: Fix language from locale function.
This function was trying to infer from the LANG env var, though it should
have just queried the locale all along, as the language we want is the
system's text language, and not necessarily the LANG variable's value.

@fix.
2015-11-17 12:07:42 +00:00
Subodh Kumar f1cffd7709 Evas text: Remove fixme marker
Summary:
Remove fixme marker

Algorithm used is good enough to sort
very few number of items, usually 2 to 6
items.

Test Plan: NA

Reviewers: herdsman, cedric, tasn

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3312
2015-11-17 11:24:39 +00:00
Subodh Kumar d14dc12d3b Evas text: Remove tabs for readability
Summary: Remove tabs

Test Plan: NA

Reviewers: tasn

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3337
2015-11-17 11:23:44 +00:00
Cedric BAIL 14a1954c6f ector: disable NEON build.
There is more problem with this code, better disable it for now.

@fix

T2851
2015-11-17 10:33:09 +01:00
Stefan Schmidt 6e7db171ad emotion webcam: fix check for v4l2 video capture device capability
The negation should be uses after checking the capability bit with the &.
Better use parenthesis  to make this work.

Thankls to the sparse sematic parser for spotting this.
2015-11-13 14:05:25 +01:00
Stefan Schmidt 038c4fed6c eina_thread_queue: use Eina_Bool for one-bit bitfield
Make sure we are using a unsigned var here. Best go with a Eina_Bool directly.
2015-11-13 13:31:34 +01:00
Stefan Schmidt d94120a156 evas polygon: use Eina_Bool for one-bit bitfield
Make sure we are using a unsigned var here. Best go with a Eina_Bool directly.
2015-11-13 13:31:34 +01:00
Minwoo, Lee c196422e63 evas textblock: fixed ascent/descent calculation
Summary:
If textblock has linegap and multi language, ascent/descent calculation is
incorrect.
In _layout_format_ascent_descent_adjust(), descent is accumulated.
(for example, for a line gap of 50, the first line gap is more than 100)

Test Plan:
Textblock has "linegap=50" and multi language (ex.
        "This is a test suite for line gap -
        ഈ ലൈൻ വിടവ് ടെസ്റ്റ് ടെസ്റ്റ് ടെസ്റ്റ് ടെസ്റ്റ് ഒരു പരീക്ഷണ വെയര് ")
Added test suite in evas_test_textblock.c file.

Reviewers: tasn

Subscribers: subodh6129, cedric

Differential Revision: https://phab.enlightenment.org/D3311
2015-11-13 12:27:59 +00:00
Stefan Schmidt ef14106416 ecore_ipc: use Eina_Bool for one-bit bitfield
Make sure we are using a unsigned var here. Best go with a Eina_Bool directly.
2015-11-13 13:20:10 +01:00
Cedric BAIL 1ed7ebaa0b ector: do get symbol at object construction time.
This make it part of the object initialization and will prevent the construction
of the object if the needed cairo function are not fund. So if Ector can create
the object, it can display them.
2015-11-12 15:53:01 -08:00
Tom Hacohen 592b786645 Evas text: Change bitfield bool types to Eina_Bool.
This is really just a safety measure, as we always just check if the value
is true. However, with char the potential values are -1 and 0, and with
Eina_Bool they are 1 and 0, so fixing that.

Thanks to the "sparse semantic parser" for detecting that, and to Stefan
for reporting.
2015-11-12 15:49:45 +00:00