← Back to team overview

ubuntu-multiseat team mailing list archive

Re: [Merge] lp:~ubuntu-multiseat/lightdm/automatic-multiseat into lp:lightdm

 

> Thanks for working on this.
> 
> I think we need to make login1.c a class now because it's getting too
> complicated, i.e. Login1Service or similar. That will solve the issue of the
> SeatAdded and SeatRemoved code in lightdm.c being complicated because this
> would then be replaced with GObject signals i.e. seat-added that has a
> Login1Seat object in it. Let me know if you need any help with this because I
> can set up some boilerplate code if you like.

It sound reasonable. We can even move login1_seat_new_id and logind_seat_removed_id to this new class (something like login1->priv->seat_new_id and login1->seat_removed_id). Yes, I would appreciate some boilerplate code from you, if possible.

I can go a step further before you do this, if you prefer. I could move current seat_new_login1_cb()/seat_removed_login1_cb() code to login1.c and update login1_start_monitor()/login1_sync_seats() to receive object display_manager as a parameter, and then pass it to internal callback functions.

> For tests we basically need to add all the new login1 d-bus interfaces to
> tests/src/test-runner.c. Then we need to make some test scripts that try a few
> of these cases. This should be the same as copying tests/scripts/multi-
> seat.conf and adding the appropriate prompts to our fake login1 service.
> Again, let me know if you want me to set up the boilerplate code for this.

Absolutely yes, I want it.

> I think we should just drop all the existing manual seat code. If you detect
> logind running, then that is the only information that is used to decide what
> seats are present. If logind is not running then we just assume there is one
> local seat, "seat0". Configuration for each seat should be in "[Seat:SEAT-
> NAME]" where SEAT-NAME is the XDG_SEAT name for the seat as provided by
> logind.

We have already discussed this possibility in Ubuntu Multiseat team. If we go in this direction, we could even merge seat properties "xdg-seat" and "seat-name". What do you think about it?

BTW, do we really need to maintain the "Seat:" prefix in config sections? Why not just [SEAT-NAME] for seats added from logind?
-- 
https://code.launchpad.net/~ubuntu-multiseat/lightdm/automatic-multiseat/+merge/229682
Your team Ubuntu Multiseat is subscribed to branch lp:~ubuntu-multiseat/lightdm/automatic-multiseat.


References