Re: [gnome-flashback] End session dialog improvements



2014-10-23 3:14 GMT+02:00 Alberts Muktupāvels <alberts muktupavels gmail com>:


On Thu, Oct 23, 2014 at 12:25 AM, Balló György <ballogyor gmail com> wrote:

2014-10-22 22:53 GMT+02:00 Alberts Muktupāvels
<alberts muktupavels gmail com>:


On Wed, Oct 22, 2014 at 11:29 PM, Balló György <ballogyor gmail com>
wrote:

2014-10-22 20:59 GMT+02:00 Alberts Muktupāvels
<alberts muktupavels gmail com>:
1. Add support for suspend and hibernate with logind. This adds
'Suspend', 'Hibernate' and 'Hybrid Sleep' buttons to the shutdown
dialog if logind is available on the system, and the user is
allowed
for these actions.


I agree that we should add these options, but I would like this to
be
done
in different way.

1) GNOME Flashback.
1.1) Add new enums to FlashbackLogoutAction -
FLASHBACK_LOGOUT_ACTION_HIBERNATE, FLASHBACK_LOGOUT_ACTION_SUSPEND,
FLASHBACK_LOGOUT_ACTION_HYBRID_SLEEP.
1.2) Update update_dialog_text, setup_dialog for new actions.
1.3) Update inhibit_dialog_response to emit confirmed for new
actions
1.4) Update org.gnome.SessionManager.EndSessionDialog.xml:
1.4.1) Update summary for dialog types - 3 for .., 4 for ..., 5 for.
1.4.2) Add new signals - ConfirmedHibernate, ConfirmedSuspend,
ConfirmedHybridSleep

2) GNOME Panel.
Did not think much here but I think that we should do something like
this.
2.1) First i think we should update panel-session-manager.
2.1.1) Add new proxy for communication directly with
EndSessionDialog.
Should connect to new signals ConfirmedHibernetate,
ConfirmedSuspend,
ConfirmedHybridSleep.
2.1.2) Add new functions that will return if these new options are
available to user. Just like
panel_session_manager_is_shutdown_available.
2.1.3) Add new functions to request new actions. Just like
panel_session_manager_request_shutdown, but only using end session
dialog
proxy and calling directly Open method.
2.1.4) Update user-menu. Here I want see ubuntu style - all
available
options should be shown here. - Logout, Reboot, Shutdown, Hibernate,
Suspend, Hybrid Sleep.

I would like to leave end-session-dialog for only showing dialog to
confirm or cancel action. Also I do not like adding extra buttons to
dialog.

What do you think about this?


I already done GNOME Flashback part.

It's a much more complicated implementation than mine, but fine for me
if you implement this. Why don't you call logind directly from the end
session dialog rather than sending the signal back to the panel? I
would prefer if the end session dialog would be able to do
suspend/hibernate on its own, without the panel.


I don't like idea to add extra buttons in that dialog. You added extra
response for restart, but it is already supported by dialog. It only
needs
to be opened as restart dialog.

I agree with this. I just modeled it after the old end session dialog,
but if you add a separated menu item for the restart action on the
panel, then it's not needed.

Also I think that lock screen button should be removed from dialog, but
I
will leave it at least for now. What point of opening dialog if you want
lock screen? Simply choose lock screen from user menu.

Agree.

Why open dialog through session manager if we are not going to use it in
any
way if we want simply hibernate or suspend? If you want suspend and will
leave dialog open for 60 seconds it will take default action - shutdown.

Agree. I didn't say to use the session manager for suspend/hibernate.
Use logind directly.

And gnome-flashback is not meant to be used without gnome-panel so this
is
not a problem in any way.

I disagree with this. I think that flashback components should be
reusable as much as possible. If I understand, you want to implement
hibernate/suspend in the following way:

1. User click on the menu item in gnome-panel.
2. End session dialog opens, user click on the accept button.
3. End session dialog passes back the signal to gnome-panel.
4. gnome-panel calls logind.
5. logind do the action.

But I would prefer this:

1. User click on the menu item in gnome-panel.
2. End session dialog opens, user click on the accept button.
3. End session dialog calls logind.
4. logind do the action.


Any real life case where it could be reused? We should focus on fixing
broken things not focus on making it reusable to other.

Most parts I have already done. GNOME Flashback part is completed, GNOME
Panel partially - only adding actions to menu is missing...

But not sure what to do next. First I want to get ride of internal objects
making everything on panel as real applets. Secondly we are probably
removing presence from user menu. So I think that easier would be to make
new system menu applet that will replace user menu. Should I go with new
applet or edit existing?

Is there any benefit of turning the internal applets into real
applets? Those internal applets are reuse their components, e.g. you
can see the user menu also in the "Main menu" applet.

I've already sent a patch that removes telepathy integration and
presence API support from gnome-panel. You can simply rename the "User
menu" applet to "System menu". And don't forget about adding support
for user switch with LightDM (patch sent).

BTW, why don't you merge the 'wip/gnome-3.10+' branch into master?

--
György Balló
Arch Linux Trusted User


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]