Recompute domain4inversion if domain changed

issue4174
review5611002
(grafted from 48af408313089ffb56eb6729eaa710cbd2c12e9b)

--HG--
branch : 3.0
extra : source : 48af408313089ffb56eb6729eaa710cbd2c12e9b
Ensure __and__/__or__ of PYSON is always boolean

issue4187
review9731002
(grafted from 7edbc454aabfbe895b42e941090f9ef4161de25f)

--HG--
branch : 3.0
extra : source : 7edbc454aabfbe895b42e941090f9ef4161de25f
Don't set adjustment value outside the range

If adjustement value is set to a value outside the range, GTK can no more
compute the visible range.

issue4075
review8561002
(grafted from c1358a6a791c244c0112b60ad47ec0cfb51ac7cb)

--HG--
branch : 3.0
extra : source : c1358a6a791c244c0112b60ad47ec0cfb51ac7cb