From afbcc7f001e059ef66f10eb0b2232d90c770ee32 Mon Sep 17 00:00:00 2001
From: Ivica Ico Bukvic <ico@vt.edu>
Date: Mon, 8 Apr 2013 15:33:26 -0400
Subject: [PATCH] another reworking of the pd.tk scrolling algorithm--it
 appears tcl/tk's update call at the end of the getscroll resolves any
 asynchronous problems encountered before...

---
 pd/src/pd.tk | 36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/pd/src/pd.tk b/pd/src/pd.tk
index 6283c8a67..2724a6887 100644
--- a/pd/src/pd.tk
+++ b/pd/src/pd.tk
@@ -3568,53 +3568,53 @@ proc pdtk_canvas_getscroll {name} {
 		set canvaswidth [ expr {abs($xmaxval-$xminval)} ]
 		set canvasheight [ expr {abs($ymaxval-$yminval)} ]
 
-		puts stderr "BEFORE W: $winwidth ? $canvaswidth -- H: $winheight ? $canvasheight -- SC: $::xscrollable($parentname) $::yscrollable($parentname)"
+		#puts stderr "BEFORE W: $winwidth ? $canvaswidth -- H: $winheight ? $canvasheight -- SC: $::xscrollable($parentname) $::yscrollable($parentname)"
 
 		if {$::scroll($parentname) == 1} {
 
-			if {($::xscrollable($parentname) && $::yscrollable($parentname)
-					&& [expr $winwidth + 14] >= $canvaswidth
-					&& [expr $winheight + 14] >= $canvasheight)} {
-				puts stderr "TRYING TO ADJUST WIDTH & HEIGHT"
-				pack forget $parentname.scrollhort
-				set ::xscrollable($parentname) 0
-				pack forget $parentname.scrollvert
-				set ::yscrollable($parentname) 0
+			# if {($::xscrollable($parentname) && $::yscrollable($parentname)
+			#		&& [expr $winwidth + 14] >= $canvaswidth
+			#		&& [expr $winheight + 14] >= $canvasheight)} {
+				#puts stderr "TRYING TO ADJUST WIDTH & HEIGHT"
+			#	pack forget $parentname.scrollhort
+			#	set ::xscrollable($parentname) 0
+			#	pack forget $parentname.scrollvert
+			#	set ::yscrollable($parentname) 0
 				#set winwidth [expr {$winwidth + 14}]
 				#set winheight [expr {$winheight + 14}]
-			}
+			#}
 
 			if {$winwidth >= $canvaswidth && $::xscrollable($parentname)} {
-				puts stderr "NO HORIZONTAL NECESSARY"
+				#puts stderr "NO HORIZONTAL NECESSARY"
 				pack forget $parentname.scrollhort
 				set ::xscrollable($parentname) 0
-				set winheight [expr {$winheight + 14}]
+				#set winheight [expr {$winheight + 14}]
 			}
 
 			if {$winheight >= $canvasheight && $::yscrollable($parentname)} {
-				puts stderr "NO VERTICAL NECESSARY"
+				#puts stderr "NO VERTICAL NECESSARY"
 				pack forget $parentname.scrollvert
 				set ::yscrollable($parentname) 0
-				set winwidth [expr {$winwidth + 14}]
+				#set winwidth [expr {$winwidth + 14}]
 			}
 
-			puts stderr "AFTER W: $winwidth ? $canvaswidth -- H: $winheight ? $canvasheight -- SC: $::xscrollable($parentname) $::yscrollable($parentname)"
+			#puts stderr "AFTER W: $winwidth ? $canvaswidth -- H: $winheight ? $canvasheight -- SC: $::xscrollable($parentname) $::yscrollable($parentname)"
 
 			if {$winwidth < $canvaswidth && $::xscrollable($parentname) == 0} {
-				puts stderr "PUTTING HORIZONTAL"
+				#puts stderr "PUTTING HORIZONTAL"
 				pack $parentname.scrollhort -fill x \
 					-side bottom -before $parentname.c
 				set ::xscrollable($parentname) 1
 			}
 			if {$winheight < $canvasheight && $::yscrollable($parentname) == 0} {
-				puts stderr "PUTTING VERTICAL"
+				#puts stderr "PUTTING VERTICAL"
 				pack $parentname.scrollvert -fill y \
 					-side right -before $parentname.c
 				set ::yscrollable($parentname) 1
 			}
 		}
 
-		puts stderr "========================\n\n"
+		#puts stderr "========================\n\n"
 	
 		if {$pdtk_canvas_mouseup_name != $name || \
 				$pdtk_canvas_mouseup_xminval != $xminval || \
-- 
GitLab