aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fiv-browser.c9
-rw-r--r--fiv-view.c6
2 files changed, 8 insertions, 7 deletions
diff --git a/fiv-browser.c b/fiv-browser.c
index 867786a..cfff7e2 100644
--- a/fiv-browser.c
+++ b/fiv-browser.c
@@ -275,14 +275,13 @@ relayout(FivBrowser *self, int width)
gtk_adjustment_set_page_size(self->hadjustment, width);
}
if (self->vadjustment) {
+ int height = gtk_widget_get_allocated_height(widget);
gtk_adjustment_set_lower(self->vadjustment, 0);
- gtk_adjustment_set_upper(self->vadjustment, total_height);
+ gtk_adjustment_set_upper(self->vadjustment, MAX(height, total_height));
gtk_adjustment_set_step_increment(self->vadjustment,
self->item_height + self->item_spacing + 2 * self->item_border_y);
- gtk_adjustment_set_page_increment(
- self->vadjustment, gtk_widget_get_allocated_height(widget) * 0.9);
- gtk_adjustment_set_page_size(
- self->vadjustment, gtk_widget_get_allocated_height(widget));
+ gtk_adjustment_set_page_increment(self->vadjustment, height * 0.9);
+ gtk_adjustment_set_page_size(self->vadjustment, height);
}
return total_height;
}
diff --git a/fiv-view.c b/fiv-view.c
index b05e30b..d3e634a 100644
--- a/fiv-view.c
+++ b/fiv-view.c
@@ -198,12 +198,14 @@ update_adjustments(FivView *self)
if (self->hadjustment) {
gtk_adjustment_configure(self->hadjustment,
- gtk_adjustment_get_value(self->hadjustment), 0, dw,
+ gtk_adjustment_get_value(self->hadjustment),
+ 0, MAX(dw, alloc.width),
alloc.width * 0.1, alloc.width * 0.9, alloc.width);
}
if (self->vadjustment) {
gtk_adjustment_configure(self->vadjustment,
- gtk_adjustment_get_value(self->vadjustment), 0, dh,
+ gtk_adjustment_get_value(self->vadjustment),
+ 0, MAX(dh, alloc.height),
alloc.height * 0.1, alloc.height * 0.9, alloc.height);
}
}