Empty dict value should always be an empty dictionary

The client should not detect as changed a Dict field with None as value.

issue4231
review11531002
(grafted from 6185461c6dd3f52b6a11009ac50083a0db93478a)

--HG--
branch : 3.0
extra : source : 6185461c6dd3f52b6a11009ac50083a0db93478a
Don't restore text on many2one cleaning if not empty

The call to set_client in clean function could trigger a on_change that will
set a value to the current field. In such case, the previous text should not be
restored.

issue4238
review5701002
(grafted from 640cc0ee3838373038118d4af757af3c68ca1d62)

--HG--
branch : 3.0
extra : source : 640cc0ee3838373038118d4af757af3c68ca1d62
domain_parser must escape when quoting '"'

issue4247
review11571002
(grafted from 442c9b6e4a6ca1bef9ae9d17d8c24e5628df5858)

--HG--
branch : 3.0
extra : source : 442c9b6e4a6ca1bef9ae9d17d8c24e5628df5858
Don't deactivate save button for new record in WinForm

The save button is deactivated if the record is not modified but in case of new
record, it could be saved by a button on the form and so we still need to OK
the popup to get back the new records.

issue4254
review6601002
(grafted from b4e0282aad0c4c8fe4dc8ebe233db782252e71ba)

--HG--
branch : 3.0
extra : source : b4e0282aad0c4c8fe4dc8ebe233db782252e71ba