[gnome-shell] st-adjustment: Drop all animation-y stuff
- From: Ray Strode <halfline src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] st-adjustment: Drop all animation-y stuff
- Date: Mon, 29 Aug 2011 16:14:41 +0000 (UTC)
commit b12967b9300da2bb8837c3ca664168089bdc96eb
Author: Ray Strode <rstrode redhat com>
Date: Sun Aug 28 21:24:35 2011 -0400
st-adjustment: Drop all animation-y stuff
StAdjustment has some non-functional and unused animation vestiges
like the "elastic" property, st_adjustment_interpolate() and
st_adjustment_clamp().
This commit vacuums that stuff up so it doesn't tempt anyone into
trying to use it.
https://bugzilla.gnome.org/show_bug.cgi?id=657082
src/st/st-adjustment.c | 222 +-----------------------------------------------
src/st/st-adjustment.h | 13 ---
2 files changed, 4 insertions(+), 231 deletions(-)
---
diff --git a/src/st/st-adjustment.c b/src/st/st-adjustment.c
index 57f0d69..9ac9734 100644
--- a/src/st/st-adjustment.c
+++ b/src/st/st-adjustment.c
@@ -53,16 +53,6 @@ struct _StAdjustmentPrivate
gdouble step_increment;
gdouble page_increment;
gdouble page_size;
-
- /* For interpolation */
- ClutterTimeline *interpolation;
- gdouble old_position;
- gdouble new_position;
-
- /* For elasticity */
- gboolean elastic;
- guint bounce_source;
- ClutterAlpha *bounce_alpha;
};
enum
@@ -75,8 +65,6 @@ enum
PROP_STEP_INC,
PROP_PAGE_INC,
PROP_PAGE_SIZE,
-
- PROP_ELASTIC,
};
enum
@@ -152,10 +140,6 @@ st_adjustment_get_property (GObject *gobject,
g_value_set_double (value, priv->page_size);
break;
- case PROP_ELASTIC:
- g_value_set_boolean (value, priv->elastic);
- break;
-
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec);
break;
@@ -196,10 +180,6 @@ st_adjustment_set_property (GObject *gobject,
st_adjustment_set_page_size (adj, g_value_get_double (value));
break;
- case PROP_ELASTIC:
- st_adjustment_set_elastic (adj, g_value_get_boolean (value));
- break;
-
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (gobject, prop_id, pspec);
break;
@@ -207,39 +187,6 @@ st_adjustment_set_property (GObject *gobject,
}
static void
-stop_interpolation (StAdjustment *adjustment)
-{
- StAdjustmentPrivate *priv = adjustment->priv;
-
- if (priv->interpolation)
- {
- clutter_timeline_stop (priv->interpolation);
- g_object_unref (priv->interpolation);
- priv->interpolation = NULL;
-
- if (priv->bounce_alpha)
- {
- g_object_unref (priv->bounce_alpha);
- priv->bounce_alpha = NULL;
- }
- }
-
- if (priv->bounce_source)
- {
- g_source_remove (priv->bounce_source);
- priv->bounce_source = 0;
- }
-}
-
-static void
-st_adjustment_dispose (GObject *object)
-{
- stop_interpolation (ST_ADJUSTMENT (object));
-
- G_OBJECT_CLASS (st_adjustment_parent_class)->dispose (object);
-}
-
-static void
st_adjustment_class_init (StAdjustmentClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
@@ -249,7 +196,6 @@ st_adjustment_class_init (StAdjustmentClass *klass)
object_class->constructed = st_adjustment_constructed;
object_class->get_property = st_adjustment_get_property;
object_class->set_property = st_adjustment_set_property;
- object_class->dispose = st_adjustment_dispose;
g_object_class_install_property (object_class,
PROP_LOWER,
@@ -311,18 +257,6 @@ st_adjustment_class_init (StAdjustmentClass *klass)
0.0,
ST_PARAM_READWRITE |
G_PARAM_CONSTRUCT));
- g_object_class_install_property (object_class,
- PROP_ELASTIC,
- g_param_spec_boolean ("elastic",
- "Elastic",
- "Make interpolation "
- "behave in an "
- "'elastic' way and "
- "stop clamping value.",
- FALSE,
- ST_PARAM_READWRITE |
- G_PARAM_CONSTRUCT));
-
/**
* StAdjustment::changed:
*
@@ -373,14 +307,7 @@ st_adjustment_get_value (StAdjustment *adjustment)
priv = adjustment->priv;
- if (priv->interpolation)
- {
- return MAX (priv->lower,
- MIN (priv->upper - priv->page_size,
- priv->new_position));
- }
- else
- return priv->value;
+ return priv->value;
}
void
@@ -393,15 +320,12 @@ st_adjustment_set_value (StAdjustment *adjustment,
priv = adjustment->priv;
- stop_interpolation (adjustment);
-
/* Defer clamp until after construction. */
if (!priv->is_constructing)
{
- if (!priv->elastic)
- value = CLAMP (value,
- priv->lower,
- MAX (priv->lower, priv->upper - priv->page_size));
+ value = CLAMP (value,
+ priv->lower,
+ MAX (priv->lower, priv->upper - priv->page_size));
}
if (priv->value != value)
@@ -424,8 +348,6 @@ st_adjustment_clamp_page (StAdjustment *adjustment,
priv = adjustment->priv;
- stop_interpolation (adjustment);
-
lower = CLAMP (lower, priv->lower, priv->upper - priv->page_size);
upper = CLAMP (upper, priv->lower + priv->page_size, priv->upper);
@@ -578,8 +500,6 @@ st_adjustment_set_values (StAdjustment *adjustment,
priv = adjustment->priv;
- stop_interpolation (adjustment);
-
emit_changed = FALSE;
g_object_freeze_notify (G_OBJECT (adjustment));
@@ -648,137 +568,3 @@ st_adjustment_get_values (StAdjustment *adjustment,
*page_size = priv->page_size;
}
-static void
-interpolation_new_frame_cb (ClutterTimeline *timeline,
- guint msecs,
- StAdjustment *adjustment)
-{
- StAdjustmentPrivate *priv = adjustment->priv;
-
- priv->interpolation = NULL;
-
- if (priv->elastic)
- {
- gdouble progress = clutter_alpha_get_alpha (priv->bounce_alpha) / 1.0;
- gdouble dx = priv->old_position
- + (priv->new_position - priv->old_position)
- * progress;
-
- st_adjustment_set_value (adjustment, dx);
- }
- else
- st_adjustment_set_value (adjustment,
- priv->old_position +
- (priv->new_position - priv->old_position) *
- clutter_timeline_get_progress (timeline));
-
- priv->interpolation = timeline;
-}
-
-static void
-interpolation_completed_cb (ClutterTimeline *timeline,
- StAdjustment *adjustment)
-{
- StAdjustmentPrivate *priv = adjustment->priv;
-
- stop_interpolation (adjustment);
- st_adjustment_set_value (adjustment, priv->new_position);
-}
-
-/* Note, there's super-optimal code that does a similar thing in
- * clutter-alpha.c
- *
- * Tried this instead of CLUTTER_ALPHA_SINE_INC, but I think SINE_INC looks
- * better. Leaving code here in case this is revisited.
- */
-/*
- static guint32
- bounce_alpha_func (ClutterAlpha *alpha,
- gpointer user_data)
- {
- ClutterFixed progress, angle;
- ClutterTimeline *timeline = clutter_alpha_get_timeline (alpha);
-
- progress = clutter_timeline_get_progressx (timeline);
- angle = clutter_qmulx (CFX_PI_2 + CFX_PI_4/2, progress);
-
- return clutter_sinx (angle) +
- (CFX_ONE - clutter_sinx (CFX_PI_2 + CFX_PI_4/2));
- }
- */
-
-void
-st_adjustment_interpolate (StAdjustment *adjustment,
- gdouble value,
- guint duration)
-{
- StAdjustmentPrivate *priv = adjustment->priv;
-
- stop_interpolation (adjustment);
-
- if (duration <= 1)
- {
- st_adjustment_set_value (adjustment, value);
- return;
- }
-
- priv->old_position = priv->value;
- priv->new_position = value;
-
- priv->interpolation = clutter_timeline_new (duration);
-
- if (priv->elastic)
- priv->bounce_alpha = clutter_alpha_new_full (priv->interpolation,
- CLUTTER_LINEAR);
-
- g_signal_connect (priv->interpolation,
- "new-frame",
- G_CALLBACK (interpolation_new_frame_cb),
- adjustment);
- g_signal_connect (priv->interpolation,
- "completed",
- G_CALLBACK (interpolation_completed_cb),
- adjustment);
-
- clutter_timeline_start (priv->interpolation);
-}
-
-gboolean
-st_adjustment_get_elastic (StAdjustment *adjustment)
-{
- return adjustment->priv->elastic;
-}
-
-void
-st_adjustment_set_elastic (StAdjustment *adjustment,
- gboolean elastic)
-{
- adjustment->priv->elastic = elastic;
-}
-
-gboolean
-st_adjustment_clamp (StAdjustment *adjustment,
- gboolean interpolate,
- guint duration)
-{
- StAdjustmentPrivate *priv = adjustment->priv;
- gdouble dest = priv->value;
-
- if (priv->value < priv->lower)
- dest = priv->lower;
-
- if (priv->value > priv->upper - priv->page_size)
- dest = priv->upper - priv->page_size;
-
- if (dest != priv->value)
- {
- if (interpolate)
- st_adjustment_interpolate (adjustment, dest, duration);
- else
- st_adjustment_set_value (adjustment, dest);
-
- return TRUE;
- }
-
- return FALSE;
-}
diff --git a/src/st/st-adjustment.h b/src/st/st-adjustment.h
index 3cfce64..95c1593 100644
--- a/src/st/st-adjustment.h
+++ b/src/st/st-adjustment.h
@@ -99,19 +99,6 @@ void st_adjustment_get_values (StAdjustment *adjustment,
gdouble *step_increment,
gdouble *page_increment,
gdouble *page_size);
-
-void st_adjustment_interpolate (StAdjustment *adjustment,
- gdouble value,
- guint duration);
-
-gboolean st_adjustment_get_elastic (StAdjustment *adjustment);
-void st_adjustment_set_elastic (StAdjustment *adjustment,
- gboolean elastic);
-
-gboolean st_adjustment_clamp (StAdjustment *adjustment,
- gboolean interpolate,
- guint duration);
-
G_END_DECLS
#endif /* __ST_ADJUSTMENT_H__ */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]