- // print("\nlast child - this height = %f ==== new y %f\n ".printf(
- // last_child_bottom - this.el.height,
- // y));
- // y = float.min(0, y); //??
- // print("scroll event of %f - new y = %f ".printf(event.y, y));
- _this.filelayout.el.y = y;
- return true;
+ break;
+ case Clutter.ScrollDirection.SMOOTH:
+ double delta_x, delta_y;
+ event.get_scroll_delta(out delta_x, out delta_y);
+ //print("Scroll SMOOTH? by %f\n", delta_y * event.y);
+ y += ((float)delta_y * event.y * -1.0f) /2 ;
+ y = float.max(bottompos, y);
+ y = float.min(0, y); //
+
+ break;
+ default:
+ print("scroll event = bad direction %s\n", dir.to_string());
+ return false;
+ }
+ // range of scroll -- can go up -- eg.. -ve value.
+
+
+
+ print("Set scroll to %f (lcb=%f / height = %f)\n", y, last_child_bottom, this.el.height);
+
+ _this.filelayout.el.y = y;
+ return true;