On Tue, 04 Apr 2017 14:45:13 +0200 Bastien Nocera said:
> On Tue, 2017-04-04 at 20:32 +0900, Carsten Haitzler wrote:
> > On Tue, 4 Apr 2017 10:22:24 +1000 Peter Hutterer > t.net>
> > said:
> >
> > > On Tue, Apr 04, 2017 at 08:16:03AM +0900, Carsten Haitzler wrote:
> > > > On Fri, 31 Mar 2017 17
On Tue, Apr 4, 2017 at 6:25 PM, Peter Hutterer wrote:
> On Tue, Apr 04, 2017 at 05:01:53PM -0600, Chris Murphy wrote:
>> On Tue, Apr 4, 2017 at 4:36 PM, Peter Hutterer
>> wrote:
>> > On Tue, Apr 04, 2017 at 12:33:32PM -0600, Chris Murphy wrote:
>> >> Before filing a bug...
>> >>
>> >> I'm having
On Tue, Apr 04, 2017 at 05:01:53PM -0600, Chris Murphy wrote:
> On Tue, Apr 4, 2017 at 4:36 PM, Peter Hutterer
> wrote:
> > On Tue, Apr 04, 2017 at 12:33:32PM -0600, Chris Murphy wrote:
> >> Before filing a bug...
> >>
> >> I'm having tap to click annoyances. When typing, the cursor insert
> >> p
On Tue, Apr 4, 2017 at 4:36 PM, Peter Hutterer wrote:
> On Tue, Apr 04, 2017 at 12:33:32PM -0600, Chris Murphy wrote:
>> Before filing a bug...
>>
>> I'm having tap to click annoyances. When typing, the cursor insert
>> point changes somewhere else, and suddenly I'm typing where I don't
>> want to
On Tue, Apr 04, 2017 at 12:33:32PM -0600, Chris Murphy wrote:
> Before filing a bug...
>
> I'm having tap to click annoyances. When typing, the cursor insert
> point changes somewhere else, and suddenly I'm typing where I don't
> want to be; a nearby background application gets "palm tapped" and
>
Hi,
On 4 April 2017 at 20:22, Armin Krezović wrote:
> On 04.04.2017 12:58, Pekka Paalanen wrote:
>> Reorder some paragraphs to be more logically ordered. Rewrite the
>> description of the backend-specific disable function to explain the
>> semantics instead of the mechanics. Remove the paragraph
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> This is a simple wrapper for casting the user data of a wl_resource into
> a struct weston_output pointer. Using the wrapper clearly marks all the
> places where a wl_output protocol object is used.
>
> Replace ALL wl_output r
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> It really is a boolean.
>
> Signed-off-by: Pekka Paalanen
Reviewed-by: Armin Krezović
Thanks, Armin.
> ---
> libweston/compositor-drm.c | 2 +-
> libweston/compositor.h | 2 +-
> 2 files changed, 2 insertions(+), 2 d
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> 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_ini
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> 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
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> 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 lon
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
Hi,
> Enabling an already enabled output is an error, at least with the
> current implementation.
Ouch, how embarrasing.
>
> However, disabling and output that has not been enabled is ok.
an output ^
>
> Cope w
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
Hi,
> 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() vf
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> 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 c
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> 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
Reviewed-by: Armin Krezović
Thanks, Armin.
> ---
>
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> Only used by weston_output_enable().
>
> Signed-off-by: Pekka Paalanen
Reviewed-by: Armin Krezović
Thanks, Armin.
> ---
> libweston/compositor.c | 2 +-
> libweston/compositor.h | 3 ---
> 2 files changed, 1 insertion(+)
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> 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.
>
> Signed-off-by: Pekka Paalan
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> A weston_output available to the compositor should always be either in
> the pending or the live outputs list. Let weston_compositor_add_output()
> and weston_compositor_remove_output() handle the moves between the
> lists.
>
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> To shorten lines.
>
> Signed-off-by: Pekka Paalanen
Trivial.
Reviewed-by: Armin Krezović
Thanks, Armin.
> ---
> libweston/compositor.c | 7 ---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/lib
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> Trying to make it more readable. Things that happen in the same step are
> kept in the same paragraph.
>
> Signed-off-by: Pekka Paalanen
> ---
> libweston/compositor.c | 24
> 1 file changed, 16 inse
On 04.04.2017 12:58, Pekka Paalanen wrote:
> From: Pekka Paalanen
>
> Reorder some paragraphs to be more logically ordered. Rewrite the
> description of the backend-specific disable function to explain the
> semantics instead of the mechanics. Remove the paragraph about
> pending_output_list as u
Before filing a bug...
I'm having tap to click annoyances. When typing, the cursor insert
point changes somewhere else, and suddenly I'm typing where I don't
want to be; a nearby background application gets "palm tapped" and
becomes foreground. That sort of thing. So it's taken some getting
used t
During a maximize event, a surface was previously always put back to
the primary output after one frame on the correct output, while keeping
its size. This was caused by the shell surface’s last_{width,height}
not being reset when it was either fullscreen or maximized, leading to
the unmaximize/ma
From: Emil Velikov
We implement v2 so use that instead of the DRM_EVENT_CONTEXT_VERSION
macro.
The latter defines the version of the drmEventContext struct declared in
the header [used in the current build] and can be 2, 3 or even 1000.
Cc: Daniel Stone
Signed-off-by: Emil Velikov
---
libwes
Since we now incrementally test atomic state as we build it, we can
loosen restrictions on what we can do with planes, and let the kernel
tell us whether or not it's OK.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1536
Signed-off-by: Daniel Stone
---
During a maximize event, a surface was previously always put back to
the primary output after one frame on the correct output, while keeping
its size. This was due to unset_maximized() resetting the output of
the shell surface to the primary output whenever the surface received a
commit.
This fix
The atomic API can allow us to test state before we apply it, to see if
it will be valid. Add support for this, which we will later use in
assign_planes to ensure our plane configuration is valid.
Differential Revision: https://phabricator.freedesktop.org/D1533
Signed-off-by: Daniel Stone
---
l
For atomic modesetting support, the mode is identified by a blob
property ID, rather than being passed inline. Add a blob_id member to
drm_mode to handle this, including refactoring mode destruction into a
helper function.
Differential Revision: https://phabricator.freedesktop.org/D1504
Signed-of
Now that we can sensibly test proposed plane configurations with atomic,
sprites are not broken.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1537
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 22 +++---
1 file changed,
From: Tomohito Esaki
Rather than relying on GBM for dmabuf import, perform the import
directly through libdrm. This creates a specialised drm_fb type for
dmabufs.
This also supports multi-planar dmabuf.
[daniels: Rebased on top of recent drm_fb/drm_plane_state/etc.]
Signed-off-by: Daniel Stone
Rather than open-coding it ourselves, use the new apply_state helper in
drm_output_start_repaint.
Signed-off-by: Daniel Stone
Reported-by: Fabien DESSENNE
Differential Revision: https://phabricator.freedesktop.org/D1514
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 33 +---
We currently do the same thing in two places, and will soon have a
third.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1523
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 63 +++---
1 file changed
If AddFB2 ever fails for any reason, we fall back to legacy AddFB, which
doesn't support the same swathe of formats, or multi-planar formats, or
modifiers.
This can happen with arbitrary client buffers, condemning us to the
fallback forever more. Remove this, at the cost of an unnecessary ioctl
fo
Use a real drm_plane to back the scanout plane, displacing
output->fb_{last,cur,pending} to their plane-tracked equivalents.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1416
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 156 ++
drm_pending_state is currently skeletal, but will be used to retain
data through begin_repaint -> assign_planes -> repaint -> repaint_flush.
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 100 +
1 file changed, 100 insertions(+)
diff --g
Use the extended GBM allocator interface to support modifiers and
multi-planar BOs.
Depends on bwidawsk's 'modifiers' tree.
Signed-off-by: Daniel Stone
---
configure.ac | 3 +++
libweston/compositor-drm.c | 52 +++---
libweston/meson.build
From: Tomohito Esaki
The drm_fb destroy callback to mostly the same thing regardless of
whether the buffer is a dumb buffer or gbm buffer. This patch refactors
the common parts into a new function that can be called for both cases.
[daniels: Rebased on top of fb->fd changes, cosmetic changes.]
Add support for multiple modes: toggling whether or not the renderer
and/or planes are acceptable. This will be used to implement a smarter
plane-placement heuristic when we have support for testing output
states.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop
All planes being displayed have a framebuffer. What makes 'fb_plane'
special is that it's being displayed as the primary plane by KMS.
Previous patchsets renamed this to 'primary_plane' to match the KMS
terminology, namely the CRTC's base plane, which is controlled by
drmModeSetCrtc in the legacy
GetPlane2 adds information about format modifiers; we can use these to
both feed GBM with the set of modifiers we want to use for rendering,
and also as an early-out test when we're trying to see if a FB will go
on a particular plane.
XXX: Depends on krh/bwidawsk's unmerged kernel/libdrm patches.
Move drm_assign_planes into two functions: one which proposes a plane
configuration, and another which applies that state to the Weston
internal structures. This will be used to try multiple configurations
and see which is supported.
Signed-off-by: Daniel Stone
Differential Revision: https://pha
Use the new helper to populate the cursor state as well, with some
special-case handling to account for how we always upload a full-size
BO.
Signed-off-by: Daniel Stone
Reported-by: Derek Foreman
Differential Revision: https://phabricator.freedesktop.org/D1519
Signed-off-by: Daniel Stone
---
Retain drm_plane tracking objects for all actual DRM planes when using
universal planes, not just overlay planes. Rename uses of 'sprite' to
'plane' to make it clear that it can now be any kind of plane, not just
an overlay/sprite.
These are currently unused.
Differential Revision: https://phabri
We make the differentiation where planes are an abstract framebuffer
with a position within a CRTC/output, and sprites are special cases of
planes that are neither the primary (base/framebuffer) nor cursor plane.
drm_sprite, OTOH, contains nothing that's actually specific to sprites,
and we end up
When trying to assign planes, keep track of the areas which are
already occluded, and ignore views which are completely occluded. This
allows us to build a state using planes only, when there are occluded
views which cannot go into a plane behind views which can.
Signed-off-by: Daniel Stone
Diff
Make it a bit more clear what the purpose of the variable is.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1528
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 11 ++-
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a
Use the new drmModeAddFB2WithModifiers interface to import buffers with
modifiers.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1526
Signed-off-by: Daniel Stone
---
configure.ac | 3 +++
libweston/compositor-drm.c | 25
From: Pekka Paalanen
Add awareness of, rather than support for, universal planes. Activate
the client cap when we start if possible, and if this is activated,
studiously ignore non-overlay planes. For now.
Differential Revision: https://phabricator.freedesktop.org/D1495
Signed-off-by: Daniel St
Add support for using the atomic-modesetting API to apply output state.
Unlike previous series, this commit does not unflip sprites_are_broken,
until further work has been done with assign_planes to make it reliable.
Differential Revision: https://phabricator.freedesktop.org/D1507
Signed-off-by:
Sometimes we need to duplicate an existing drm_fb, e.g. when
pageflipping to the same buffer to kickstart the repaint loop. To handle
situations like these, and simplify resource management for dumb and
cursor buffers, refcount drm_fb.
drm_fb_get_from_bo has a path where it may reuse a drm_fb, if
Much like we already have to_drm_output and to_drm_backend.
Differential Revision: https://phabricator.freedesktop.org/D1505
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/libweston/compositor-drm.c b/libwest
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1524
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 45 -
1 file changed, 24 insertions(+), 21 deletions(-)
diff --git a/libweston/compositor-drm.c
We only need it for the GBM surface the FB was originally created
against; a mismatch here is very bad indeed, so no reason to pass it in
explictly every time rather than store it.
Following patches change drm_fb to be explicitly reference counted; in
order to reduce churn, rename drm_output_relea
Return a pointer to the plane state, rather than indirecting via a
weston_plane.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1534
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 54 --
1 file
In our new and improved helper to determine the src/dest values for a
buffer on a given plane, make sure we account for all buffer
transformations, including viewport clipping.
Rather than badly open-coding it ourselves, just use the helper which
does exactly this.
Signed-off-by: Daniel Stone
Re
Use the same codepath, which has the added advantage of being able to
import dmabufs.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1521
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 54 +++---
1
From: Pekka Paalanen
Set the atomic client cap, where it exists, and use this to discover the
plane/CRTC/connector properties we require for atomic modesetting.
Differential Revision: https://phabricator.freedesktop.org/D1503
Signed-off-by: Daniel Stone
Co-authored-by: Pekka Paalanen
---
con
Split repaint into two stages, as implied by the grouped-repaint
interface: drm_output_repaint generates the repaint state only, and
drm_repaint_flush applies it.
This also moves DPMS into output state. Previously, the usual way to
DPMS off was that repaint would be called and apply its state, fol
When we come to assign_planes, try very hard to ignore views which are
only visible on other outputs, rather than forcibly moving them to the
primary plane, which causes damage all round and unnecessary repaints.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.
Rather than a hardcoded ARGB -> XRGB translation inside a
GBM-specific helper, just determine whether or not the view is opaque,
and use the generic helpers to implement the format translation.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1515
... in order to be able to use it from scanout as well.
Differential Revision: https://phabricator.freedesktop.org/D1520
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 221 -
1 file changed, 119 insertions(+), 102 deletions(-)
diff --gi
Nothing in this loop reorders views within the compositor's view_list.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1527
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git
Add a cache for DRM property IDs and values, and use it for the two
connector properties we currently update: DPMS and EDID.
As DRM property ID values are not stable, we need to do a name -> ID
lookup each run in order to discover the property IDs and enum values to
use for those properties. Rathe
Change the type of cursor_plane from a weston_plane (base tracking
structure) to a drm_plane (wrapper containing additional DRM-specific
details), and make it a dynamically-allocated pointer.
Using the standard drm_plane allows us to reuse code which already deals
with drm_planes, e.g. a common cl
When leaving Weston, don't attempt to restore the previous CRTC
settings. The framebuffer may well have disappeared, and in every
likelihood, whoever gets the KMS device afterwards will be repainting
anyway.
Differential Revision: https://phabricator.freedesktop.org/D1502
Signed-off-by: Daniel St
Currently this doesn't actually really do anything, but will be used in
the future to track the state for both modeset and repaint requests.
Completion of the request gives us a single request-completion path for
both pageflip and vblank events.
Differential Revision: https://phabricator.freedeskt
Pull this into a helper function, so we can use it everywhere.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1516
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 157 +
1 file changed, 88 insert
If we have an unused CRTC or connector, explicitly disable it during the
end of the repaint cycle, or when we get VT-switched back in.
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 46 ++
1 file changed, 46 insertions(+)
diff --git a/li
From: Pekka Paalanen
This moves the single sprite creation code from create_sprites() into a
new function. The readability clean-up is small, but my intention is to
write an alternate version of create_sprites(), and sharing the single
sprite creation code is useful.
[daniels: Genericised from d
Now we have a more comprehensive overview of the transform we're going
to apply, use this to explicitly disallow scaling and rotation.
XXX: This does not actually disallow rotation for square surfaces.
We would have to build up a full buffer->view->output transform
matrix, and then analy
Now that we have better types in drm_fb, use it for cursor buffers as
well. This gives us easier refcounting for our cursors, as well as a
unified buffer-destruction path.
Currently this makes no difference, as the KMS legacy cursor update API
uses GEM names directly, and never touches DRM FBs. Ho
Use the shiny new helper we have for working through scanout as well.
Signed-off-by: Daniel Stone
Differential Revision: https://phabricator.freedesktop.org/D1518
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 66 --
1 file changed, 23
Track dynamic plane state (CRTC, FB, position) in separate structures,
rather than as part of the plane. This will make it easier to handle
state management later, and much more closely tracks what the kernel
does with atomic modesets.
The fb_last pointer previously used in drm_plane now becomes p
If we don't have any damage for the primary plane, then don't force a
repaint; simply reuse the old buffer we already have.
Differential Revision: https://phabricator.freedesktop.org/D1499
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 15 +--
1 file changed, 13 insert
Rather than a more piecemeal approach at backend creation, explicitly
track connectors and CRTCs we do not intend to use, so we can ensure
they are disabled where appropriate.
Signed-off-by: Daniel Stone
---
libweston/compositor-drm.c | 53 ++
1 file c
page_flip_pending is only be set when do a pageflip to a newly-rendered
buffer; if the flag is not set, we have landed in the start_repaint_loop
path where the vblank query fails, and thus we must pageflip to the same
buffer.
This test was not sufficient for what it was supposed to guard:
releasin
Make drm_output_set_cursor more deterministic, by calculating more state
and performing more plane manipulation, inside
drm_output_prepare_cursor_view.
Signed-off-by: Daniel Stone
Reviewed-by: Derek Foreman
Reviewed-by: Pekka Paalanen
---
libweston/compositor-drm.c | 39 ---
Rather than duplicating knowledge of pixel formats across several
components, create a custom central repository.
Signed-off-by: Daniel Stone
---
Makefile.am | 2 +
libweston/pixel-formats.c | 430 ++
libweston/pixel-formats.h | 194 +++
This uses the new pixel-format helpers, so we can also replace depth/bpp
with these.
Signed-off-by: Daniel Stone
Reviewed-by: Pekka Paalanen
---
libweston/compositor-drm.c | 44
1 file changed, 28 insertions(+), 16 deletions(-)
diff --git a/libwesto
Previously, framebuffers were stored as fb_current and fb_pending.
In this scheme, current was the last buffer that the kernel/hardware had
acknowledged displaying: a framebuffer would be created, set as
fb_pending, and Weston would request the kernel display it. When the
kernel signals that the re
Call drm_output_render unconditionally, doing an early exit if we're
already rendering a client buffer on the primary plane.
Signed-off-by: Daniel Stone
Reviewed-by: Pekka Paalanen
---
libweston/compositor-drm.c | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/libwest
Rather than magically trying to infer what the buffer is and what we
should do with it when we go to destroy it, add an explicit type
instead.
In doing so, the test for dumb images (destroying them, but only if
they're not the 'live' ones) is removed. This was dead code, as the only
path which cou
Since performing the surface -> buffer translation may introduce
rounding error taking our desired co-ordinates out of bounds, introduce
a hard clip to the bounds specified by the client's viewport.
Signed-off-by: Daniel Stone
---
libweston/compositor.c | 9 +
1 file changed, 9 insertion
Instead of setting state members directly in the drm_output_render
functions (to paint using Pixman or GL), just return a drm_fb, and let
the core function place it in state.
This brings damage handling in line with repaint state, so we do not
clear damage if repaint fails.
Signed-off-by: Daniel
'next' is used as a framebuffer which has either been rendered but not
had a configuration request (pageflip or CRTC set) applied to it, or
when for a framebuffer that has had configuration requested but not
applied (delayed pageflip where the event has not been applied).
'current' is used as the
vblank_pending is currently a bool, which is reset on every vblank
requests (i.e. sprite pageflip). This can occur more than once per
frame, so turn it into a callback, so we only fire frame-done when we've
collected all the events.
This fixes unexpected behaviour when multiple views per output ha
Hi,
v10 has very few changes to the end result. Probably most notable is
that viewporting now works correctly into planes, including scaling.
Mostly though it's a bunch of refactoring to the earlier patches
(pixel formats, fb refcounting) to make sure that we don't introduce
leaks or asserts in int
From: Emmanuel Gil Peyrot
This fetches the _NET_WM_ICON property of the X11 window, and use the
first image found as the frame icon.
This has been tested with various X11 programs, and improves usability
and user-friendliness a bit.
Changes since v1:
- Changed frame_button_create() to use
fra
On Tue, 2017-04-04 at 20:32 +0900, Carsten Haitzler wrote:
> On Tue, 4 Apr 2017 10:22:24 +1000 Peter Hutterer t.net>
> said:
>
> > On Tue, Apr 04, 2017 at 08:16:03AM +0900, Carsten Haitzler wrote:
> > > On Fri, 31 Mar 2017 17:29:19 +1000 Peter Hutterer > > @who-t.net>
> > > said:
> > >
> > > If
On Tue, 28 Mar 2017 at 15:33:41 -0700, Jordan Sissel wrote:
> I am interested in the security concerns here, but are there reliable barriers
> between different processes run by the same user in the same desktop session?
> What is the threat model y'all are defending against?
D-Bus was mentioned e
On Tue, 04 Apr 2017 11:29:30 +0200 Bastien Nocera said:
> On Tue, 2017-04-04 at 08:16 +0900, Carsten Haitzler wrote:
> > On Fri, 31 Mar 2017 17:29:19 +1000 Peter Hutterer > -t.net>
> > said:
> >
> > If you're going to do this ... why not just do it for keyboards,
> > mice, touch
> > panels etc.
On Tue, 4 Apr 2017 10:22:24 +1000 Peter Hutterer
said:
> On Tue, Apr 04, 2017 at 08:16:03AM +0900, Carsten Haitzler wrote:
> > On Fri, 31 Mar 2017 17:29:19 +1000 Peter Hutterer
> > said:
> >
> > If you're going to do this ... why not just do it for keyboards, mice, touch
> > panels etc. too?
>
From: Pekka Paalanen
This is a simple wrapper for casting the user data of a wl_resource into
a struct weston_output pointer. Using the wrapper clearly marks all the
places where a wl_output protocol object is used.
Replace ALL wl_output related calls to wl_resource_get_user_data() with
a call t
From: Pekka Paalanen
It really is a boolean.
Signed-off-by: Pekka Paalanen
---
libweston/compositor-drm.c | 2 +-
libweston/compositor.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/libweston/compositor-drm.c b/libweston/compositor-drm.c
index 3f7e97e..3de11b8 100
From: Pekka Paalanen
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.
Signed-off-by: Pekka Paalanen
---
libweston/compositor.c | 40 ++
From: Pekka Paalanen
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
fi
From: Pekka Paalanen
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
---
From: Pekka Paalanen
Enabling an already enabled output is an error, at least with the
current implementation.
However, disabling and output that has not been enabled is ok.
Cope with the first and document the second.
Signed-off-by: Pekka Paalanen
---
libweston/compositor.c | 13 +++
From: Pekka Paalanen
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
From: Pekka Paalanen
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 th
1 - 100 of 120 matches
Mail list logo