> 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. -- Mailing list: https://launchpad.net/~ubuntu-multiseat Post to : [email protected] Unsubscribe : https://launchpad.net/~ubuntu-multiseat More help : https://help.launchpad.net/ListHelp

