clamp the value to [lower...upper-page_size] instead of only

2008-08-05  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkadjustment.c (gtk_adjustment_set_value): clamp the value
	to [lower...upper-page_size] instead of only [lower...upper].

	* README: add note about this change.

	While this fix is correct and should have been there forever, it
	has the potential to break some corner cases, however these cases
	would set page_size to a value != 0 which suggests they want it
	honored.


svn path=/trunk/; revision=21012
This commit is contained in:
Michael Natterer 2008-08-05 14:25:29 +00:00 committed by Michael Natterer
parent d4984773e8
commit 0affd82480
3 changed files with 20 additions and 1 deletions

View File

@ -1,3 +1,15 @@
2008-08-05 Michael Natterer <mitch@imendio.com>
* gtk/gtkadjustment.c (gtk_adjustment_set_value): clamp the value
to [lower...upper-page_size] instead of only [lower...upper].
* README: add note about this change.
While this fix is correct and should have been there forever, it
has the potential to break some corner cases, however these cases
would set page_size to a value != 0 which suggests they want it
honored.
2008-08-05 Michael Natterer <mitch@imendio.com>
* tests/testiconview.c: don't use the deprecated

7
README
View File

@ -42,6 +42,13 @@ Release notes for 2.14
the GtkFileSystem interface is no longer available, nor the filechooser
will load any GtkFileSystem implementation.
* gtk_adjustment_set_value() now correctly clamps the passed value to
[lower...upper-page_size] instead of just to [lower...upper].
This has the potential to break some corner cases, however these
cases would set page_size to a value != 0 which suggests they want
it honored. All manual clamping in code calling set_value() can now
be safely removed.
Release notes for 2.12
======================

View File

@ -354,7 +354,7 @@ gtk_adjustment_set_value (GtkAdjustment *adjustment,
{
g_return_if_fail (GTK_IS_ADJUSTMENT (adjustment));
value = CLAMP (value, adjustment->lower, adjustment->upper);
value = CLAMP (value, adjustment->lower, adjustment->upper - adjustment->page_size);
if (value != adjustment->value)
{