[gnome-shell] Don't use the default stage when setting up adjustments
- From: Owen Taylor <otaylor src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gnome-shell] Don't use the default stage when setting up adjustments
- Date: Thu, 1 Oct 2009 18:55:08 +0000 (UTC)
commit d67e54d3ee7ad3695f9ff6d5d5fecad98e585082
Author: Owen W. Taylor <otaylor fishsoup net>
Date: Mon Sep 21 17:20:34 2009 -0400
Don't use the default stage when setting up adjustments
If the actor isn't in a stage, then setting up the adjustment
based on the actor's size (which we can't compute) and the
size of the default stage (which isn't relevant), doesn't make
sense. Just use arbitrary default values.
The adjustments will be updated to reasonable values when first
the box is first allocated.
It's not entirely clear to me why we ever want to compute the
adjustment settings this way; perhaps we should always use
default values.
http://bugzilla.moblin.org/show_bug.cgi?id=6307
https://bugzilla.gnome.org/show_bug.cgi?id=595996
src/st/st-box-layout.c | 28 ++++++++++++++++++++--------
1 files changed, 20 insertions(+), 8 deletions(-)
---
diff --git a/src/st/st-box-layout.c b/src/st/st-box-layout.c
index ac211b2..2872eca 100644
--- a/src/st/st-box-layout.c
+++ b/src/st/st-box-layout.c
@@ -151,8 +151,6 @@ scrollable_get_adjustments (StScrollable *scrollable,
actor = CLUTTER_ACTOR (scrollable);
stage = clutter_actor_get_stage (actor);
- if (G_UNLIKELY (stage == NULL))
- stage = clutter_stage_get_default ();
if (hadjustment)
{
@@ -163,9 +161,16 @@ scrollable_get_adjustments (StScrollable *scrollable,
StAdjustment *adjustment;
gdouble width, stage_width, increment;
- width = clutter_actor_get_width (actor);
- stage_width = clutter_actor_get_width (stage);
- increment = MAX (1.0, MIN (stage_width, width));
+ if (stage)
+ {
+ width = clutter_actor_get_width (actor);
+ stage_width = clutter_actor_get_width (stage);
+ increment = MAX (1.0, MIN (stage_width, width));
+ }
+ else
+ {
+ width = increment = 1.0;
+ }
adjustment = st_adjustment_new (0,
0,
@@ -191,9 +196,16 @@ scrollable_get_adjustments (StScrollable *scrollable,
StAdjustment *adjustment;
gdouble height, stage_height, increment;
- height = clutter_actor_get_height (actor);
- stage_height = clutter_actor_get_height (stage);
- increment = MAX (1.0, MIN (stage_height, height));
+ if (stage)
+ {
+ height = clutter_actor_get_height (actor);
+ stage_height = clutter_actor_get_height (stage);
+ increment = MAX (1.0, MIN (stage_height, height));
+ }
+ else
+ {
+ height = increment = 1.0;
+ }
adjustment = st_adjustment_new (0,
0,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]