- if (GTK_PROGRESS (pbar)->activity_mode)
- {
- guint size;
-
- /* advance the block */
-
- if (pbar->orientation == GTK_PROGRESS_LEFT_TO_RIGHT ||
- pbar->orientation == GTK_PROGRESS_RIGHT_TO_LEFT)
- {
- /* Update our activity step. */
-
- pbar->activity_step = widget->allocation.width * pbar->pulse_fraction;
-
- size = MAX (2, widget->allocation.width / pbar->activity_blocks);
-
- if (pbar->activity_dir == 0)
- {
- pbar->activity_pos += pbar->activity_step;
- if (pbar->activity_pos + size >=
- widget->allocation.width -
- widget->style->xthickness)
- {
- pbar->activity_pos = widget->allocation.width -
- widget->style->xthickness - size;
- pbar->activity_dir = 1;
- }
- }
- else
- {
- pbar->activity_pos -= pbar->activity_step;
- if (pbar->activity_pos <= widget->style->xthickness)
- {
- pbar->activity_pos = widget->style->xthickness;
- pbar->activity_dir = 0;
- }
- }
- }
- else
- {
- /* Update our activity step. */
-
- pbar->activity_step = widget->allocation.height * pbar->pulse_fraction;
-
- size = MAX (2, widget->allocation.height / pbar->activity_blocks);
-
- if (pbar->activity_dir == 0)
- {
- pbar->activity_pos += pbar->activity_step;
- if (pbar->activity_pos + size >=
- widget->allocation.height -
- widget->style->ythickness)
- {
- pbar->activity_pos = widget->allocation.height -
- widget->style->ythickness - size;
- pbar->activity_dir = 1;
- }
- }
- else
- {
- pbar->activity_pos -= pbar->activity_step;
- if (pbar->activity_pos <= widget->style->ythickness)
- {
- pbar->activity_pos = widget->style->ythickness;
- pbar->activity_dir = 0;
- }
- }
- }
- }
- pbar->dirty = TRUE;
- gtk_widget_queue_draw (GTK_WIDGET (progress));
- }
- else
- {
- gint in_block;
-
- in_block = -1 + (gint)(gtk_progress_get_current_percentage (progress) *
- (gdouble)pbar->blocks);
-
- if (pbar->in_block != in_block)
- {
- pbar->in_block = in_block;
- pbar->dirty = TRUE;
- gtk_widget_queue_draw (GTK_WIDGET (progress));
- }
+ /* advance the block */
+ if (priv->activity_dir == 0)
+ {
+ priv->activity_pos += priv->pulse_fraction;
+ if (priv->activity_pos > 1.0)
+ {
+ priv->activity_pos = 1.0;
+ priv->activity_dir = 1;
+ }
+ }
+ else
+ {
+ priv->activity_pos -= priv->pulse_fraction;
+ if (priv->activity_pos <= 0)
+ {
+ priv->activity_pos = 0;
+ priv->activity_dir = 0;
+ }
+ }