platform/core/uifw/pepper.git
9 years agopepper: Ignore surfaces having no attached buffer
Taekyun Kim [Tue, 22 Sep 2015 02:26:03 +0000 (11:26 +0900)]
pepper: Ignore surfaces having no attached buffer

Change-Id: I9d5ca5041af3b6dd0daa63364127b6ad6bb940ac

9 years agopepper: Update surface size when attached buffer is destroyed
Taekyun Kim [Tue, 22 Sep 2015 02:25:33 +0000 (11:25 +0900)]
pepper: Update surface size when attached buffer is destroyed

Change-Id: I7b7040eeef8c1b0be9d9a45b70927e6eeaf3cd67

9 years agodrm: implement assign_fb_plane()
Junghoon [Tue, 22 Sep 2015 01:59:11 +0000 (10:59 +0900)]
drm: implement assign_fb_plane()

    - need to check format before create fb correctly

Change-Id: I891a21be80ed548ad7d2f956efe3116d1cf5cac5

9 years agoshell: bugfix for center position calculation
Junghoon [Mon, 21 Sep 2015 06:27:22 +0000 (15:27 +0900)]
shell: bugfix for center position calculation

Change-Id: Iad5e27363e6c04dc7bd1e2b4e4f0336e9931fb12

9 years agopepper: Mark z-order as dirty for only modified views
Taekyun Kim [Mon, 21 Sep 2015 06:58:18 +0000 (15:58 +0900)]
pepper: Mark z-order as dirty for only modified views

Change-Id: I9f9513201db2e0ec579fa59b7c962ea36d54094c

9 years agopepper: bugfix for view insertion & z-order setting
Junghoon [Mon, 21 Sep 2015 05:47:28 +0000 (14:47 +0900)]
pepper: bugfix for view insertion & z-order setting

Change-Id: Ifa048d5c1a7c9df630a5cb2e92a72d6d970314e1

9 years agorender: Clear background if PEPPER_RENDER_CLEAR_BACKGROUND is 1
Taekyun Kim [Thu, 17 Sep 2015 08:45:55 +0000 (17:45 +0900)]
render: Clear background if PEPPER_RENDER_CLEAR_BACKGROUND is 1

Clear color is opaque black.

Change-Id: I5ae0c2f2d82aa66b4d3f44b90480adc8b95c9056

9 years agorender: Use PIXMAN_OP_OVER
Taekyun Kim [Thu, 17 Sep 2015 08:26:21 +0000 (17:26 +0900)]
render: Use PIXMAN_OP_OVER

OVER should be default and op will reduce to SRC for XRGB formats by pixman
internally, so we can get same performance.

Change-Id: Ib4e9fceae169c35d7a54ed0e940fad441acb3fb2

9 years agopepper: Correctly manage view z-order
Taekyun Kim [Thu, 17 Sep 2015 08:19:54 +0000 (17:19 +0900)]
pepper: Correctly manage view z-order

Views are stored in top to bottom z-order in lists.

Change-Id: Icc16e8232c650b834ca715e5bc996b84d02dfb64

9 years agoshell: Use pepper grab for move and resize
Taekyun Kim [Thu, 17 Sep 2015 05:47:35 +0000 (14:47 +0900)]
shell: Use pepper grab for move and resize

Change-Id: I76c6b2ebd8e68802ca94c2d28f7026301dc9b328

9 years agocommon: Add gbs.conf to gitignore
Taekyun Kim [Thu, 17 Sep 2015 05:20:03 +0000 (14:20 +0900)]
common: Add gbs.conf to gitignore

Change-Id: I0f6d973d51bb17f28896702195cad592ca790949

9 years agopepper: Handle focus destroy signal correctly
Taekyun Kim [Thu, 17 Sep 2015 04:43:00 +0000 (13:43 +0900)]
pepper: Handle focus destroy signal correctly

Change-Id: I618c93487b48518908a06855c8209a38c2dfeb46

9 years agopepper: Pick surface views only
Taekyun Kim [Thu, 17 Sep 2015 01:06:26 +0000 (10:06 +0900)]
pepper: Pick surface views only

Other types of views (grouping, etc) are not pickable.

Change-Id: Ib77af7e058ad0947a2dbe364e5ab28608cbe6f90

9 years agopepper: Pointer default grab & event handling
Taekyun Kim [Wed, 16 Sep 2015 08:07:50 +0000 (17:07 +0900)]
pepper: Pointer default grab & event handling

Change-Id: Id4150549f7589cdacbe1af43384e6725e1809141

9 years agopepper: Emit event from input devices to logical input objects
Taekyun Kim [Wed, 16 Sep 2015 08:06:14 +0000 (17:06 +0900)]
pepper: Emit event from input devices to logical input objects

Change-Id: Ib4b52fe79e80bad6c20712bf20ea830541519bf2

9 years agopepper: Use double for Change pointer coordinate value
Taekyun Kim [Wed, 16 Sep 2015 08:04:04 +0000 (17:04 +0900)]
pepper: Use double for Change pointer coordinate value

Change-Id: I1e78e224031b2cc0c38084588fe7db442587a0c3

9 years agopepper: input bug fix
Taekyun Kim [Wed, 16 Sep 2015 08:02:17 +0000 (17:02 +0900)]
pepper: input bug fix

Change-Id: I6606b450038716aa9ba3b7be32cc25e6196b5925

9 years agopepper: use const qualifier for input grab arguments
Taekyun Kim [Wed, 16 Sep 2015 07:57:56 +0000 (16:57 +0900)]
pepper: use const qualifier for input grab arguments

Change-Id: I5427064d85378c43f6afa81e393df497d6091625

9 years agopepper: Relative motion as default
Taekyun Kim [Wed, 16 Sep 2015 07:51:17 +0000 (16:51 +0900)]
pepper: Relative motion as default

Absolute motion event should use PEPPER_EVENT_POINTER_MOTION_ABSOLUTE

Change-Id: I0840b1ccd704ad45eecaa380bd7b4c09e50799dc

9 years agoshell: Initialize input devices when initializing shell
Taekyun Kim [Wed, 16 Sep 2015 07:47:55 +0000 (16:47 +0900)]
shell: Initialize input devices when initializing shell

Shell may be loaded after input backend initialized. So, get input device
list and add them first.

Change-Id: Ie97e2601abfaf150fe5a8d38d3ac337c5f566730

9 years agopepper: input region should be infinite when not specified
Taekyun Kim [Wed, 16 Sep 2015 07:45:34 +0000 (16:45 +0900)]
pepper: input region should be infinite when not specified

Change-Id: Ibdcc54c94e8d56aab167b2ee1b493ea55a551232

9 years agopepper: Convenience function for handling events of an object itself
Taekyun Kim [Wed, 16 Sep 2015 07:43:38 +0000 (16:43 +0900)]
pepper: Convenience function for handling events of an object itself

Change-Id: Ib82abe725ab53bd3adc2047127e26b47121a20b7

9 years agopepper: Support for input grab
Taekyun Kim [Wed, 16 Sep 2015 05:04:40 +0000 (14:04 +0900)]
pepper: Support for input grab

Grab is a set of input event handlers for doing operations such as pointer
driven move, resize or something like navigating between windows.

Change-Id: I7b5ea467ea06e43dcd9620299724abe1a746615c

9 years agopepper: input focus & send events to clients
Taekyun Kim [Wed, 16 Sep 2015 04:47:26 +0000 (13:47 +0900)]
pepper: input focus & send events to clients

Change-Id: I6b4de8a6eff006202f4cc2e19abe7e7edeb1ac6d

9 years agopepper: Common behavior of pointer/keyboard/touch into a single object
Taekyun Kim [Wed, 16 Sep 2015 04:07:01 +0000 (13:07 +0900)]
pepper: Common behavior of pointer/keyboard/touch into a single object

1. wl_resource management
2. focus management

Change-Id: I44e7af40baf8ea490a3493acb757a1f8e9c4c4b9

9 years agoshell: Remove default grab from the shell library
Taekyun Kim [Wed, 16 Sep 2015 03:58:11 +0000 (12:58 +0900)]
shell: Remove default grab from the shell library

Default grab will be provided as a built-in functionality by the pepper.

Change-Id: Ie720c59352703770b84bf7110649d48dd74f38a0

9 years agopepper: Unified event IDs and input event structures into a single one
Taekyun Kim [Wed, 16 Sep 2015 02:33:30 +0000 (11:33 +0900)]
pepper: Unified event IDs and input event structures into a single one

Change-Id: Ia324f94b2625f982aa20ecc8fdb5903999e681d0

9 years agopepper: More comprehensive name for output backend function flush_surface()
Taekyun Kim [Mon, 14 Sep 2015 09:47:53 +0000 (18:47 +0900)]
pepper: More comprehensive name for output backend function flush_surface()

Renamed to flush_surface_damage().

Change-Id: Iaeab80b3b620edd4abf138a95c61054bdd6eadee

9 years agopepper: Fix memory leak while accumulating plane clip region
Taekyun Kim [Mon, 14 Sep 2015 09:20:41 +0000 (18:20 +0900)]
pepper: Fix memory leak while accumulating plane clip region

Change-Id: I0477b4b98fe3dcdfe666e5167327536ae098954e

9 years agopepper: Clear surface damage after it is flushed
Taekyun Kim [Mon, 14 Sep 2015 08:51:56 +0000 (17:51 +0900)]
pepper: Clear surface damage after it is flushed

If multiple views refer to a single surface, flush damage might be called
multiple times. Clearing the damage region will prevent it.

Change-Id: I04466f0f04c96cff554ad43c3dffeeccf89becf5

9 years agopepper: View update process refactoring
Taekyun Kim [Mon, 14 Sep 2015 08:51:23 +0000 (17:51 +0900)]
pepper: View update process refactoring

1. Repaint scheduling

Now, repaint is scheduled only when a view is marked as dirty.
We have four dirty flags.

PEPPER_VIEW_GEOMETRY_DIRTY : Position, Size, Transform
PEPPER_VIEW_ACTIVE_DIRTY   : Activeness state
PEPPER_VIEW_Z_ORDER_DIRTY  : Z order (stack order)
PEPPER_VIEW_CONTENT_DIRTY  : Content of the view (surface.commit)

2. Output Repaint

We update all views in the compositor before trying to repaint an output.
Views internal state (global transform, bounding region, opaque region...)
will get updated and damages will be generated on planes where the views
belong to.

3. View picking

Picking is done using internal state that was recently updated not using
current state to pick a view that is actually rendered on the picking area.
Current state might have been changed since last rendering.

However, input region test is done using last committed surface state, but
if the client is doing the commit in response to the frame callbacks, that
should not be a problem.

If we want to pick a view based on the current state, we have to update all
views first. If this behavior is needed, we have to make a new API.

4. Surface damage flush

Surface damage is modified to be flushed only when it is actually needed.

Change-Id: I643d8efbbc24d1d404b2209097c36f248e3a9fe0

9 years agorender: Fix missing pixman_image_unref() when attaching a new buffer
Taekyun Kim [Mon, 14 Sep 2015 07:17:41 +0000 (16:17 +0900)]
render: Fix missing pixman_image_unref() when attaching a new buffer

Change-Id: I295d6a6ddd26fae07e6e1e8012deae11b1c1aaed

9 years agopepper: Add an API for quering view opaqueness
Taekyun Kim [Thu, 10 Sep 2015 08:17:20 +0000 (17:17 +0900)]
pepper: Add an API for quering view opaqueness

Change-Id: Ib73bebaae4a28cb28d4a8c92bd8358a4bf8aaaea

9 years agodrm: Better variable naming for vblank pending counter
Taekyun Kim [Thu, 10 Sep 2015 08:05:35 +0000 (17:05 +0900)]
drm: Better variable naming for vblank pending counter

Change-Id: I80644b16b67edb4494ce3097cc50831b4daa150c

9 years agopepper: fix compile error
Junghoon [Thu, 10 Sep 2015 08:00:38 +0000 (17:00 +0900)]
pepper: fix compile error

Change-Id: I6fa440ca0dc92f02bf1682080926242221db00a2

9 years agopepper: bugfix. set surface's damage region correctly
Junghoon [Thu, 10 Sep 2015 06:26:04 +0000 (15:26 +0900)]
pepper: bugfix. set surface's damage region correctly

Change-Id: I005916c500f170a6da3bd81d7429bafc45b28323

9 years agopepper: minor bugfix
Junghoon [Tue, 8 Sep 2015 09:35:21 +0000 (18:35 +0900)]
pepper: minor bugfix

Change-Id: I5fdbbe7b2b7301273aff5f961ffa5dd88dbf5fd9

9 years agodrm: destroy pixman_render_target on drm_buffer_destroy()
Junghoon [Fri, 4 Sep 2015 05:01:30 +0000 (14:01 +0900)]
drm: destroy pixman_render_target on drm_buffer_destroy()

Change-Id: I5c8dcbcdd7f804579244cd1926d360df62e542c1

9 years agorender: gl-renderer: call eglUnbindWaylandDisplayWL on gl_renderer_destroy
Junghoon [Fri, 4 Sep 2015 04:33:10 +0000 (13:33 +0900)]
render: gl-renderer: call eglUnbindWaylandDisplayWL on gl_renderer_destroy

Change-Id: I889bb113e045e982aa39308a4a3d93a28862a90f

9 years agorender: gl-renderer: release gl context before destroy
Junghoon [Fri, 4 Sep 2015 04:07:39 +0000 (13:07 +0900)]
render: gl-renderer: release gl context before destroy

Change-Id: I58487fdcd9442ca8f41d4249055a48af813f93f6

9 years agodrm: destroy gbm_device
Junghoon [Fri, 4 Sep 2015 04:05:15 +0000 (13:05 +0900)]
drm: destroy gbm_device

Change-Id: Ib8d5deafc62e7f67da48dfa9911eed375cd8a5ab

9 years agorender: call fini_gl_shaders() on gl_renderer_destroy()
Junghoon [Thu, 3 Sep 2015 12:54:07 +0000 (21:54 +0900)]
render: call fini_gl_shaders() on gl_renderer_destroy()

Change-Id: Ie647782b3f5e8b1642e5eb01d98f7542f82c11aa

9 years agolibinput: fix memory leak
Junghoon [Thu, 3 Sep 2015 12:53:28 +0000 (21:53 +0900)]
libinput: fix memory leak

Change-Id: I5f868bf43c985c9526ee1a4f7b983eec7ae7ed9f

9 years agodrm: add free & fini functions
Junghoon [Thu, 3 Sep 2015 12:44:44 +0000 (21:44 +0900)]
drm: add free & fini functions

Change-Id: I8f2aedecffc2f6f01bd1a052e724f8ffcd1dfe99

9 years agorender: bugfix for gl-renderer
Junghoon [Thu, 3 Sep 2015 11:07:04 +0000 (20:07 +0900)]
render: bugfix for gl-renderer

    - set attached buffer correctly
    - set pixel storage mode

Change-Id: I2e8e6d28fbf9e91f056fe5a103fccdbcde0038e6

9 years agopepper: Support for grouping view
Taekyun Kim [Thu, 3 Sep 2015 09:09:51 +0000 (18:09 +0900)]
pepper: Support for grouping view

Now views can be created without a surface, that is grouping view.
A grouping view act exactly same with the surface view except that it has
nothing to render on the screen even though it is marked as visible.

Change-Id: I38c0c390690d0e62e0123e05f1339fac19851967

9 years agopepper: Maintain a list of input devices in a compositor
Taekyun Kim [Thu, 3 Sep 2015 08:35:13 +0000 (17:35 +0900)]
pepper: Maintain a list of input devices in a compositor

Change-Id: I48bbb86ff60e84a6f5b482809be53d55f2402e45

9 years agosamples: x11-backend: Handle SIGINT and free resources when finished
Taekyun Kim [Thu, 3 Sep 2015 08:31:57 +0000 (17:31 +0900)]
samples: x11-backend: Handle SIGINT and free resources when finished

Change-Id: Ie60a229b4117c0e806c165b1b966a3cea84d0bab

9 years agopepper: APIs for accessing surface, view and seat list of a compositor
Taekyun Kim [Thu, 3 Sep 2015 08:31:16 +0000 (17:31 +0900)]
pepper: APIs for accessing surface, view and seat list of a compositor

Change-Id: I5cd356582ca0800a9afd13e253592a7bd3aed8a0

9 years agodrm: Free resources when destruction
Taekyun Kim [Thu, 3 Sep 2015 08:16:15 +0000 (17:16 +0900)]
drm: Free resources when destruction

Change-Id: I2bbfbfac3835e5c8722df478d6f3a40c6595088b

9 years agodrm: Fix drm_output_t not to be destroyed twice
Taekyun Kim [Thu, 3 Sep 2015 08:10:24 +0000 (17:10 +0900)]
drm: Fix drm_output_t not to be destroyed twice

Change-Id: Idf49378ece4d66a4da6ad9480490764d3c8270bb

9 years agopepper: Just detach a view when the surface is destroyed
Taekyun Kim [Thu, 3 Sep 2015 08:04:16 +0000 (17:04 +0900)]
pepper: Just detach a view when the surface is destroyed

Who created the view should destroy it.

Change-Id: Id9c77838ee84bebc9c2bb50b5ecef63d0f64e1a0

9 years agopepper: Add missing list link initialization
Taekyun Kim [Thu, 3 Sep 2015 08:01:29 +0000 (17:01 +0900)]
pepper: Add missing list link initialization

Change-Id: I9b6b0516b2956ddc6148a5cc121a482762572cf2

9 years agopepper: Free all objects created by clients when destroying a compositor
Taekyun Kim [Thu, 3 Sep 2015 07:51:26 +0000 (16:51 +0900)]
pepper: Free all objects created by clients when destroying a compositor

Other objects should be freed by who created them.

Change-Id: Id55ad5137a37d44e2aed2d9029d02ceb9ebbafe0

9 years agopepper: Consistent error handling using PEPPER_CHECK macro
Taekyun Kim [Thu, 3 Sep 2015 07:13:20 +0000 (16:13 +0900)]
pepper: Consistent error handling using PEPPER_CHECK macro

Change-Id: I84d5f815fcc995d3b31e26c37986ea2f053dc42b

9 years agopepper: Replace common.h functions with standard libc functions
Taekyun Kim [Thu, 3 Sep 2015 06:19:25 +0000 (15:19 +0900)]
pepper: Replace common.h functions with standard libc functions

Change-Id: I4ad99ab33991c6c664916729fd42933ae4bec9ee

9 years agodesktop-shell: Add keyboard and touch grab
Jaehoon Jeong [Thu, 3 Sep 2015 04:18:35 +0000 (13:18 +0900)]
desktop-shell: Add keyboard and touch grab

    - Add dummy default keyboard/touch grab

Change-Id: I15816c8073a78c3fc9bfb047e257659a916e71be

9 years agodesktop-shell: Handle pointer button and axis event
Jaehoon Jeong [Thu, 3 Sep 2015 03:40:54 +0000 (12:40 +0900)]
desktop-shell: Handle pointer button and axis event

Change-Id: Ic7ca9403dd851055430d4cad62297d46a1a2c9f4

9 years agorender: implement gl_renderer_repaint_output
Junghoon [Mon, 31 Aug 2015 07:27:27 +0000 (16:27 +0900)]
render: implement gl_renderer_repaint_output

    - shader creation, initialization
    - repaint view's damage region

Change-Id: Ib02e870b2c6d4f287be3a0504f232ab3645c2eb4

9 years agopepper: implement surface flush damage
Junghoon [Mon, 31 Aug 2015 07:10:39 +0000 (16:10 +0900)]
pepper: implement surface flush damage

    - and implement shm buffer upload in gl-renderer

Change-Id: I26f5dc93b51522561400da0a6c912d885b5509fd

9 years agodrm: Fix missed assignment for the connector when creating an output
Taekyun Kim [Wed, 2 Sep 2015 08:54:49 +0000 (17:54 +0900)]
drm: Fix missed assignment for the connector when creating an output

Change-Id: I9c977c22569ef9ee5300bc5eaa4a2c42331a63cc

9 years agodrm: Detach drm_buffer_t from the client buffer when destroyed
Taekyun Kim [Wed, 2 Sep 2015 08:43:03 +0000 (17:43 +0900)]
drm: Detach drm_buffer_t from the client buffer when destroyed

Change-Id: Ic186d672726ad3412ffa1b473e2a7bb3184a8169

9 years agopepper: Destroy buffer immediately when the resource is destroyed
Taekyun Kim [Wed, 2 Sep 2015 08:40:52 +0000 (17:40 +0900)]
pepper: Destroy buffer immediately when the resource is destroyed

Buffer should be immediately destroyed when the resource is destroy by the
client. Any references to the buffer should listen the destruction event and
detach themselves from the buffer.

Change-Id: I1b13921eb987fce9789ac2ba0e19dc46e44c0893

9 years agopepper: Remove event listeners still remaining after object destruction
Taekyun Kim [Wed, 2 Sep 2015 08:38:42 +0000 (17:38 +0900)]
pepper: Remove event listeners still remaining after object destruction

Change-Id: I414632465cafba6f0f251312abd5b5a8343570d9

9 years agodrm: Bug fix
Taekyun Kim [Wed, 2 Sep 2015 07:44:43 +0000 (16:44 +0900)]
drm: Bug fix

Change-Id: I23b33d9d6ee1480bbdc2a08e5add6d954f7bf580

9 years agopepper: Implement compositor clock
Taekyun Kim [Wed, 2 Sep 2015 07:34:18 +0000 (16:34 +0900)]
pepper: Implement compositor clock

Change-Id: I1fe399204e9bf9f9e02401bd7e796886ddada408

9 years agopepper: Emit missed object events
Taekyun Kim [Wed, 2 Sep 2015 05:26:39 +0000 (14:26 +0900)]
pepper: Emit missed object events

Change-Id: I28da05146738f78b30b4049c7f133dc70b13078e

9 years agodrm: Refactoring
Taekyun Kim [Wed, 2 Sep 2015 04:52:03 +0000 (13:52 +0900)]
drm: Refactoring

Split into several implementation files.
Rudimentary support for frame buffer plane.
Bug fix in damage accumulation for pixman renderer.

Change-Id: I7d4d842b787ef3a39ce58350880440d4e5775de6

9 years agox11: Fix pointer button index correctly and handle axis event
Jaehoon Jeong [Wed, 26 Aug 2015 03:49:53 +0000 (12:49 +0900)]
x11: Fix pointer button index correctly and handle axis event

Change-Id: If3d90a5b685aa7b50c3dc604399da21f98dfb09c

9 years agopepper: Add helper macro for error handling
Taekyun Kim [Wed, 2 Sep 2015 04:50:07 +0000 (13:50 +0900)]
pepper: Add helper macro for error handling

Change-Id: I0635285c6a2d6561e19401991133e40f0549be27

9 years agopepper: fix matrix calculation
Junghoon [Fri, 28 Aug 2015 16:51:51 +0000 (01:51 +0900)]
pepper: fix matrix calculation

    - translation, scaling
    - rotation around x, y, z axis
        - rotation flag setting

Change-Id: If6b0c79c88224440cebf430ccc74ece3b8cc958b

9 years agopepper: pepper_compositor_pick_view() implementation
Taekyun Kim [Wed, 26 Aug 2015 05:52:13 +0000 (14:52 +0900)]
pepper: pepper_compositor_pick_view() implementation

Change-Id: I5dd1cc61ef080788117afce00d73d76519b0cbec

9 years agopepper: Conversion between global and view local space
Taekyun Kim [Wed, 26 Aug 2015 05:41:09 +0000 (14:41 +0900)]
pepper: Conversion between global and view local space

Change-Id: I7a8e13b71b745218cbac9f051f157290f71c03b7

9 years agopepper: Add pepper_mat4_inverse()
Taekyun Kim [Wed, 26 Aug 2015 05:32:03 +0000 (14:32 +0900)]
pepper: Add pepper_mat4_inverse()

Change-Id: I6a009d9bc84353085d2df6490ff2b80e74fa7000

9 years agopepper: Use column major convection for pepper_mat4_t
Taekyun Kim [Wed, 26 Aug 2015 05:14:45 +0000 (14:14 +0900)]
pepper: Use column major convection for pepper_mat4_t

Change-Id: Ia8064402ada2c4cfb23d9895fe41b11ac351a6e6

9 years agodesktop-shell: Bugfix in input event handler
Jaehoon Jeong [Tue, 25 Aug 2015 09:03:15 +0000 (18:03 +0900)]
desktop-shell: Bugfix in input event handler

    - Fix redundant list add and device add
    - Fix pointer setting bug in pointer_grab

Change-Id: I76d9e75c9fc305ec54f2c2edc08126dd9d2dc844

9 years agopepper: pepper_list_t refactoring and replace wl_list with pepper_list_t
Taekyun Kim [Tue, 25 Aug 2015 10:15:16 +0000 (19:15 +0900)]
pepper: pepper_list_t refactoring and replace wl_list with pepper_list_t

Removed unused functions so that pepper_list_t becomes much simpler.
Added macros which corresponds to those of wl_list.
Removed wl_list and replaced it with pepper_list_t except list for wl_resource

Change-Id: I7a061b085fadb888a66d8df68b50fd5a0b1d4cf9

9 years agodesktop-shell: Fix redundant list add and device add
Taekyun Kim [Tue, 25 Aug 2015 07:27:20 +0000 (16:27 +0900)]
desktop-shell: Fix redundant list add and device add

Change-Id: I36e72e3b878e302503d35d5a1eeafa55a5e32c82

9 years agopepper: Refactored pepper_list_t, pepper_container_of
Taekyun Kim [Tue, 25 Aug 2015 07:10:26 +0000 (16:10 +0900)]
pepper: Refactored pepper_list_t, pepper_container_of

Change-Id: I21807f807c8786adab896bcf4d72e5b202d3348b

9 years agopepper: Output backend interface refactoring
Taekyun Kim [Mon, 24 Aug 2015 10:58:56 +0000 (19:58 +0900)]
pepper: Output backend interface refactoring

wl_signal is no longer used, instead, backend calls output functions provided
from pepper-output-backend.h.

Change-Id: I049da322382dcd8b06c44422855fdff38ec01000

9 years agopepper: Better output mode handling
Taekyun Kim [Mon, 24 Aug 2015 09:00:54 +0000 (18:00 +0900)]
pepper: Better output mode handling

Change-Id: I89e5697e9b6adf9a2bb607bfbc9d3b6148e0833f

9 years agopepper: Error handling and some cleanups in compositor.c
Taekyun Kim [Mon, 24 Aug 2015 06:49:02 +0000 (15:49 +0900)]
pepper: Error handling and some cleanups in compositor.c

Change-Id: Iebd7e07ef4a579f2617a4cdcc8ee7dc4ed9ab7ec

9 years agodesktop-shell: Implement shell_surface.resize
Jaehoon Jeong [Mon, 24 Aug 2015 07:05:16 +0000 (16:05 +0900)]
desktop-shell: Implement shell_surface.resize

    - Implement wl_shell_surface.resize() and xdg_surface.resize()
    - Implement resize_grab

Change-Id: Ieeff13d8408d0ddca769ff88d53e3a77049998c3

9 years agodesktop-shell: Implement shell_surface.move
Jaehoon Jeong [Mon, 24 Aug 2015 06:46:02 +0000 (15:46 +0900)]
desktop-shell: Implement shell_surface.move

    - Implement wl_shell_surface.move(), xdg_surface.move()
    - Implement move_grab

Change-Id: I9b4040ae045b7a38092baa56f788470a6e81ca10

9 years agopepper: minor bugfix.
Junghoon [Mon, 24 Aug 2015 06:52:51 +0000 (15:52 +0900)]
pepper: minor bugfix.

Change-Id: Ideca2e426b17e1641dc6d175e9734d7576b40068

9 years agodesktop-shell: Implement defualt pointer grab
Jaehoon Jeong [Fri, 21 Aug 2015 13:20:41 +0000 (22:20 +0900)]
desktop-shell: Implement defualt pointer grab

Change-Id: I67354a57e1c90f42334cede8eb3e3d3b4eefe4c9

9 years agopepper: Add function prototypes that needed by shell_grab
Jaehoon Jeong [Fri, 21 Aug 2015 13:15:39 +0000 (22:15 +0900)]
pepper: Add function prototypes that needed by shell_grab

    - pepper_compositor_pick_view()
    - function prototypes for sending events of pepper_pointer
    - function prototypes for sending events of pepper_keyboard

Change-Id: I1e53ed6f183eb4a070b5fd7c68e8cebef297b042

9 years agodesktop-shell: Add shell_pointer_grab
Jaehoon Jeong [Fri, 21 Aug 2015 04:12:42 +0000 (13:12 +0900)]
desktop-shell: Add shell_pointer_grab

    - Add initial version of poiner_grab
    - Add dummy default pointer grab

Change-Id: Id42388ec4c5fece3f23ba6dcbf35528e613c968c

9 years agopepper: bugfix in pepper_seat_add_input_device
Jaehoon Jeong [Fri, 21 Aug 2015 04:01:55 +0000 (13:01 +0900)]
pepper: bugfix in pepper_seat_add_input_device

    - bugfix

Change-Id: I573bb0386b986defe048a3e74dcb91a732f3993a

9 years agopepper: Add pointer functions and feed some events
Jaehoon Jeong [Fri, 21 Aug 2015 03:58:00 +0000 (12:58 +0900)]
pepper: Add pointer functions and feed some events

    - Add pepper_pointer_get/set_position()
    - Feed PEPPER_EVENT_COMPOSITOR_SEAT_ADD/PEPPER_EVENT_POINTER_MOTION

Change-Id: I492a91d4c7ec743290176b2df69183f4ead0f057

9 years agodrm: change to create specified renderer only
Junghoon [Fri, 21 Aug 2015 04:39:22 +0000 (13:39 +0900)]
drm: change to create specified renderer only

Change-Id: I39164cd2a2c0095cd497356989a2c4f3169c1536

9 years agox11: feed keyboard event
Jaehoon Jeong [Tue, 18 Aug 2015 12:51:04 +0000 (21:51 +0900)]
x11: feed keyboard event

    - Use xkbcommon, xkbcommon-x11 libs for translate keycode to keysym
    - TODO: Handle additional modifiers

Change-Id: I90ff5411e42ae662013d270a346e3a2e2fc1d570

9 years agox11: sample: export pepper_x11_input_create()
Jaehoon Jeong [Tue, 18 Aug 2015 12:38:17 +0000 (21:38 +0900)]
x11: sample: export pepper_x11_input_create()

    - rename pepper_x11_seat_create() to pepper_x11_input_create()
      like as pepper_libinput style

Change-Id: I5e9c4b8aed151b638670162810ce90565c78b6d9

9 years agox11: feed pointer events
Jaehoon Jeong [Tue, 18 Aug 2015 12:29:12 +0000 (21:29 +0900)]
x11: feed pointer events

 - TODO: axis up/down, keyboard events

Change-Id: I2eb64e994aab6c7bbbfed938e70e1b72fd08d805

9 years agodesktop-shell: Handle PEPPER_EVENT_SEAT_{DEVICES}_ADD events
Jaehoon Jeong [Wed, 19 Aug 2015 05:47:01 +0000 (14:47 +0900)]
desktop-shell: Handle PEPPER_EVENT_SEAT_{DEVICES}_ADD events

    - Handle pepper_seat's logical device add/remove event
    - Add dummy event_handler

Change-Id: I60d2934fa6f8eb8884bc5ff3c9e124292f13ec16

9 years agodesktop-shell: Handle input_device_add event
Jaehoon Jeong [Wed, 19 Aug 2015 05:33:38 +0000 (14:33 +0900)]
desktop-shell: Handle input_device_add event

Change-Id: I1216c226019fb98bfb80bade07a9d15272d02e85

9 years agopepper: Expose seat/input functions as APIs
Jaehoon Jeong [Wed, 19 Aug 2015 05:12:57 +0000 (14:12 +0900)]
pepper: Expose seat/input functions as APIs

    - pepper_input_device_get_property()
    - pepper_seat_get_name()

Change-Id: I2af7b5f928873dc0a77362375fcd59322668a186

9 years agodrm: overlay implentation
Junghoon [Tue, 18 Aug 2015 04:54:18 +0000 (13:54 +0900)]
drm: overlay implentation

    - create, assign & set planes
    - handle vblank

Change-Id: Icc97bd87f8445bea1cc9966cbf5a6b67141c7b2d

9 years agorender: set renderer of surface state
Yuyeon Oh [Thu, 13 Aug 2015 10:46:58 +0000 (19:46 +0900)]
render: set renderer of surface state

Change-Id: Id1441f7eaa8f433f35bb02a3892bca784815ee4d

9 years agopepper: Add PEPPER_TRACE macro for debugging purpose
Taekyun Kim [Thu, 13 Aug 2015 05:04:19 +0000 (14:04 +0900)]
pepper: Add PEPPER_TRACE macro for debugging purpose

Change-Id: Ie43a4a777c060116732b8958b6677a82cb6b5b96