Comment 9 for bug 732867

Revision history for this message
Torsten Spindler (tspindler) wrote :

Calling "gsd_xrandr_manager_apply_configuration (mgr, error);" unconditionally from plugins/xrandr/gsd-xrandr-manager.c handle_fn_f7 will restore the existing configuration as well. But fn-f7 cycling through display modes stops working, as the existing configuration will always take precedence.

Unfortunately I don't think gnome-settings-daemon has any idea that the system is being docked. So only conditionally calling apply_configuration from gsd-xrandr-manager.c handle_fn_f7 will most likely not work.

Is there any other place in the system that is run only when a system is being docked? From there we could call ApplyConfiguration via dbus.

Alternatively the fn-f7 modes should contain the saved configuration, the configurations are generated upon docking in
generate_fn_f7_configs:

        g_ptr_array_add (array, gnome_rr_config_new_current (screen));
        g_ptr_array_add (array, make_clone_setup (screen));
        g_ptr_array_add (array, make_xinerama_setup (screen));
        g_ptr_array_add (array, make_laptop_setup (screen));
        g_ptr_array_add (array, make_other_setup (screen));
        g_ptr_array_add (array, gnome_rr_config_new_stored (screen, NULL)); /* NULL-GError - if this can't read the stored config, no big deal */