Implement get_preferred_width/height instead of size_request. Also, don't pretend that we have a changed signal when we don't.
Copied from the accounts-dialog git module.