[PATCH] libinput-seat: Don't regard no input devices as failure

Peter Hutterer peter.hutterer at who-t.net
Sun Jan 4 14:46:28 PST 2015


On Fri, Jan 02, 2015 at 02:22:04PM +0100, Sjoerd Simons wrote:
> On Fri, 2015-01-02 at 13:07 +0000, Daniel Stone wrote:
> > Hi,
> > 
> > On 2 January 2015 at 12:24, Sjoerd Simons <sjoerd.simons at collabora.co.uk>
> > wrote:
> > 
> > > Under the assumption that weston-launch is a tool for developers to
> > > start weston, then sure fine. If weston-launch gets used to autostart
> > > weston on bootup (as i'm doing in some cases), that behaviour is
> > > horrible.
> > >
> > 
> > It's not a developer tool. If you're launching weston directly, either
> > you've done something 'clever' with DRM/input device permissions,
> 
> In which case you're a display manager most likely :)
> 
> >  or you're
> > running as root. I'm not 100% sure if running weston directly even works.
> 
> Sure, but do you expect end-user to run it (which comes back to the
> discussion of, what is weston for, i guess)?
> 
> > Apart from blatent configuration issues there can be a lot of reasons
> > > why there are no input devices available at the time weston start,
> > > which can range from devices not being plugged in to devices not being
> > > enumerated yet (which can potentially happen with USB input devices,
> > > but are a lot more likely with bluetooth devices).. In those cases
> > > it's a lot more user-friendly to display an onscreen message indicating
> > > there are no input devices instead of simply aborting.
> > >
> > 
> > But what do you do after that? Do you display the message and abort
> > (leaving either console -> background -> error message in a tight loop if
> > auto-restart is enabled), in which case there's no real difference to the
> > current behaviour? Or do you display a message and leave the user no way to
> > kill weston other than SSH, in which case there's no difference to the
> > behaviour with this patch?
> 
> You display a message and give the user a chance to plug in input if
> you're a desktop that requires input? (Assuming you user interface
> requires input devices ofcourse)

sounds good to me.

"No input devices detected. Please plug in a device, otherwise Weston will
quit in 90 seconds"

And add a toggle in weston.ini to disable this behaviour. If you want to get
fancy you could make it per-seat, on most developer machines it's unlikely
you ever get 0 devices on seat0 (Power Button, Video Bus, etc.) without a
configuration error.

Cheers,
   Peter

> I did mention, "Apart from blatent configuration issue" for a
> reason :).. There are a lot of valid use-cases of
> temporarily/permanently not having input devices on a system, it doesn't
> seem to be something that a lower layer should enforce a policy on.


More information about the wayland-devel mailing list