Protect against spurious view-as signals

Do not let the GAction and GSettings unnecessarily change each others
state and value when there has been no change.

Listen to the GAction's state for actually changing the UI, because
someone using dconf-editor will still be able to emit spurious
changed::view-as signals from GSettings.

https://bugzilla.gnome.org/show_bug.cgi?id=723690