Changeset 546

Show
Ignore:
Timestamp:
03/07/08 16:35:16 (10 months ago)
Author:
kickback
Message:

sweep: make hand tool mimic inertia and not a rubber band. (if you stop moving the mouse before you let go, there is no inertia now)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • sweep/trunk/src/sample-display.c

    r545 r546  
    17451745  gint new_win_start, win_length; 
    17461746  gfloat step; 
     1747  gdouble elapsed; 
     1748     
     1749  if (s->release_timer != NULL) { 
     1750    elapsed = g_timer_elapsed (s->release_timer, NULL); 
     1751    g_timer_destroy (s->release_timer); 
     1752    s->release_timer = NULL; 
     1753 
     1754    if (elapsed > 0.13) { 
     1755      s->hand_scroll_delta = 0; 
     1756      return FALSE; 
     1757    } 
     1758  } 
    17471759   
    17481760  win_length = s->view->end - s->view->start; 
     
    20452057          s->hand_scroll_delta = delta; 
    20462058   
     2059  if (s->release_timer == NULL) 
     2060    s->release_timer = g_timer_new (); 
     2061  else 
     2062    g_timer_start (s->release_timer); 
     2063     
    20472064  if (s->view->hand_offset != x){ 
    20482065    move = s->view->hand_offset - x; 
     
    31093126  s->scroll_right_tag = 0; 
    31103127  s->scheme = NULL; 
     3128  s->release_timer = NULL; 
    31113129} 
    31123130 
  • sweep/trunk/src/sample-display.h

    r532 r546  
    8989  gint hand_scroll_tag;   /* gtk_timeout tag for natural hand scrolling */ 
    9090  gint hand_scroll_delta; /* natural hand scrolling */ 
     91  GTimer * release_timer; 
    9192 
    9293  /* Window panning */ 
  • sweep/trunk/src/sweep-scheme.c

    r545 r546  
    3232  LAST_SIGNAL 
    3333}; 
    34  
    35  
    3634 
    3735enum { 
     
    6967  "wave-shadow", 
    7068};  
    71  
    72  
    7369 
    7470G_DEFINE_TYPE (SweepScheme, sweep_scheme, G_TYPE_OBJECT)