- Jul 25, 2017
-
-
Pekka Paalanen authored
It really is a boolean. Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
It's a little awkward to try to keep the weston_output::region and weston_output::previous_damage allocate exactly only when the output is enabled. There was also a leak: weston_output_move() was calling weston_output_init_geometry() on an already allocated regions without fini in between. Fix both issues by allocating the regions in weston_output_init(), always fini/init'ing them in weston_output_init_geometry(), and fini'ing for good in weston_output_destroy(). This nicely gets rid of weston_output_enable_undo() so I do not need to try to figure out what to do with it later. Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
Move the wl_output global management into weston_compositor_add_output() and weston_compositor_remove_output(). If weston_output_enable() fails, there is no need to clean up the global and the clients will not see a wl_output come and go. Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
Move the output id management into weston_compositor_add_output() and weston_compositor_remove_output(). This is a more logical place, and works towards assimilating weston_output_enable_undo(). The output id is no longer available to the backend enable() vfuncs, but it was not used there to begin with. v2: moved assert earlier in weston_compositor_add_output() Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
Enabling an already enabled output is an error, at least with the current implementation. However, disabling an output that has not been enabled is ok. Cope with the first and document the second. Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
It was ambiguous what this flag meant - it did not mean whether the backend is considering this output to be enabled, because weston_output_destroy() unsets it while deliberately not calling the backend disable() vfunc. Perhaps the most clear definition is with respect to the output's assignment in the pending vs. enabled output lists. There is also a whole bunch of variables that are allocated only when enabled is true. Since the flag is related to the list membership, set and clear the flag only when manipulating the lists. Assert that weston_compositor_add_output() and weston_compositor_remove_output() are not called in a wrong state. v2: - talk about "list of enabled outputs" - clear 'enabled' in weston_compositor_remove_output() earlier Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
weston_compositor_add_pending_output() is the point through which all backends must go when creating a new output. The enable and disable vfuns are essential for anything to be done with the output, so it makes sense to check them here, rather than when actually enabling or disabling. Particularly the disable vfunc is rarely called, so this gets the check better excercised. Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
Only used internally in core. Needs to happen automatically when something changes, so there should no need to call it from outside. Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
Only used by weston_output_enable(). Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
Document two more functions of the weston_output API. Exported functions marked internal are meant for backends only. Exported functions not marked internal are meant for libweston users. v2: talk about "list of enabled outputs". Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
A weston_output available to the compositor should always be either in the list of pending outputs or the list of enabled outputs. Let weston_compositor_add_output() and weston_compositor_remove_output() handle the moves between the lists. This way weston_output_enable() does not need to remove and oops-it-failed-add-it-back. weston_output_disable() does not need to manually re-add the output back to the pending list. To make everything nicely symmetric and fix any unbalancing caused by this: - weston_output_destroy() explicitly wl_list_remove()s - weston_compositor_add_pending_output() first removes then inserts, as we have the assumption that the link is always valid, even if empty. Update the documentations, too. v2: - talk about "list of enabled outputs" - keep wl_list_remove in weston_compositor_remove_output in its old place Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
To shorten lines. Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Pekka Paalanen authored
Trying to make it more readable. Things that happen in the same step are kept in the same paragraph. v2: talk about "list of enabled outputs" Signed-off-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by:
Armin Krezović <krezovic.armin@gmail.com>
-
Signed-off-by:
Michael Teyfel <mteyfel@de.adit-jv.com> Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-
- Jul 24, 2017
-
-
Dead code as orientation cannot be changed anymore, see patches: ivi-shell: remove layer_set_orientation API ivi-shell: remove surface_set_orientation API Signed-off-by:
Emre Ucan <eucan@de.adit-jv.com> [Pekka: added commit message] Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-
This API is used to rotate the contents of application's buffer, which are in the render order list of the layer. But this API is not needed because an application can rotate its buffers with set_buffer_transform request of wl_surface interface Signed-off-by:
Emre Ucan <eucan@de.adit-jv.com> Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-
This API is used to rotate the contents of application's buffer. But it is not needed because an application can rotate its buffers with set_buffer_transform request of wl_surface interface. Signed-off-by:
Emre Ucan <eucan@de.adit-jv.com> Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-
It is analagous to layer_remove_surface API. The API removes a layer from the render order of the screen. v3: add the new vfunc at the end of the ivi_layout_interface struct. Signed-off-by:
Emre Ucan <eucan@de.adit-jv.com> Reviewed-by:
Eugen Friedrich <friedrix@gmail.com> Reviewed-by:
Pekka Paalanen <pekka.paalanen@collabora.co.uk>
-
- Jul 21, 2017
-
-
Ilia Bozhinov authored
When we receive configure_notify we should update the surface's position by calling xwayland_api->set_xwayland(). Otherwise some surfaces like dnd surfaces from xwayland views are "stuck" at one place. When setting XWAYLAND state though we should always call view_set_position(), not just the first time we set this state. Signed-off-by:
Ilia Bozhinov <ammen99@gmail.com> Reviewed-by:
Quentin Glidic <sardemff7+git@sardemff7.net>
-
- Jul 20, 2017
-
-
Quentin Glidic authored
Now we keep track of serial->state association and we discard the states that the client ignored. Signed-off-by:
Quentin Glidic <sardemff7+git@sardemff7.net> Reviewed-by:
Jonas Ådahl <jadahl@gmail.com>
-
- Jul 18, 2017
-
-
Quentin Glidic authored
We were checking against the pending size, which lead some clients (simple-egl) to crash because they sent a buffer before acknowledging the latest configure event. Signed-off-by:
Quentin Glidic <sardemff7+git@sardemff7.net> Tested-by:
Emmanuel Gil Peyrot <emmanuel.peyrot@collabora.com> Reviewed-by:
Jonas Ådahl <jadahl@gmail.com>
-
- Jul 12, 2017
-
-
Quentin Glidic authored
Signed-off-by:
Quentin Glidic <sardemff7+git@sardemff7.net> Reviewed-by:
Jonas Ådahl <jadahl@gmail.com> Tested-by:
Emmanuel Gil Peyrot <emmanuel.peyrot@collabora.com>
-
Quentin Glidic authored
Signed-off-by:
Quentin Glidic <sardemff7+git@sardemff7.net> Reviewed-by:
Jonas Ådahl <jadahl@gmail.com> Tested-by:
Emmanuel Gil Peyrot <emmanuel.peyrot@collabora.com>
-
Bryce Harrington authored
-
- Jul 03, 2017
-
-
Derek Foreman authored
Cosmetic leftovers I missed when removing the configure option to --disable-xkbcommon Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
We need to make sure the client bound dmabuf with a high enough version to receive modifier events before sending them or the client will crash. Signed-off-by:
Derek Foreman <derekf@osg.samsung.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
We shouldn't free &modifier_invalid because it wasn't allocated with malloc() Signed-off-by:
Derek Foreman <derekf@osg.samsung.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
Some log messages weren't terminated with a newline. Signed-off-by:
Derek Foreman <derekf@osg.samsung.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
It looks like there are some code paths where this has been forgotten, so it likely doesn't work as is. It's probable that nobody has actually used this in a very long time, so it's not worth the maintenance burden of keeping xkbcommon vs raw keyboard code anymore. Signed-off-by:
Derek Foreman <derekf@osg.samsung.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
- Jun 25, 2017
-
-
Quentin Glidic authored
When switching a state twice in a row, we were overwriting the old value without setting it back, sending a wrong state to the client. Now we update our requested state, then check if we need to schedule a configure event, if we have one scheduled already or even if we can cancel it. Signed-off-by:
Quentin Glidic <sardemff7+git@sardemff7.net> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
Quentin Glidic authored
Signed-off-by:
Quentin Glidic <sardemff7+git@sardemff7.net> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
- Jun 12, 2017
-
-
mesa's freedreno driver supports importing dmabufs with format DRM_FORMAT_NV12 and DRM_FORMAT_MOD_SAMSUNG_64_32_TILE modifier. demonstrate weston modifier advertising and import path using this combination when run with --import-format=NV12. v2: - hard code format if platform doesn't implement EGL_EXT_image_dma_buf_import_modifiers and cannot advertise format/modifier support. - squash using valid frame data to fill dmabuf planes Signed-off-by:
Varad Gautam <varad.gautam@collabora.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
abstract drm specific bits to struct drm_device and support running on freedreno. introduce 'modifier' event. v2: rebase to master, deprecate 'format' event. Signed-off-by:
Varad Gautam <varad.gautam@collabora.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
this will allow adding other drm backends later. Signed-off-by:
Varad Gautam <varad.gautam@collabora.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
EGL_EXT_image_dma_buf_import_modifiers supports importing upto four dmabuf planes into an EGLImage. v2: correct PLANE3_PITCH token (Daniel Stone) Signed-off-by:
Varad Gautam <varad.gautam@collabora.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
pass over the modifier attributes to EGL. v2: ensure same modifier is passed for all planes (Daniel Stone) Signed-off-by:
Varad Gautam <varad.gautam@collabora.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
implement 'modifier' event to communicate available formats and modifiers to the client and support zwp_linux_dmabuf_v1 interface version 3. v2: handle zero modifiers case, deprecate 'format' event. Signed-off-by:
Varad Gautam <varad.gautam@collabora.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
EGL_EXT_image_dma_buf_import_modifiers allows querying the formats and modifiers supported by the platform. expose these to the compositor. v2: - change calloc args (Daniel Stone) - check for modifier support before querying formats (Daniel Stone) Signed-off-by:
Varad Gautam <varad.gautam@collabora.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
request immediate dmabuf import when run with "immed" arg. Signed-off-by:
Varad Gautam <varad.gautam@collabora.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-
handle create_immed() dmabuf import requests and support zwp_linux_dmabuf_v1_interface version 2. v2: terminate client with INVALID_WL_BUFFER when reason for create_immed failure is unknown. [daniels: Bump wayland-protocols dependency.] Signed-off-by:
Varad Gautam <varad.gautam@collabora.com> Reviewed-by:
Daniel Stone <daniels@collabora.com>
-