[Aptitude-svn-commit] r3474 - in branches/aptitude-0.3/aptitude: . src/vscreen

Daniel Burrows dburrows@costa.debian.org
Sun, 26 Jun 2005 18:22:40 +0000


Author: dburrows
Date: Sun Jun 26 18:22:38 2005
New Revision: 3474

Modified:
   branches/aptitude-0.3/aptitude/ChangeLog
   branches/aptitude-0.3/aptitude/src/vscreen/vscreen.cc
Log:
Get rid of the other use of getch.

Modified: branches/aptitude-0.3/aptitude/ChangeLog
==============================================================================
--- branches/aptitude-0.3/aptitude/ChangeLog	(original)
+++ branches/aptitude-0.3/aptitude/ChangeLog	Sun Jun 26 18:22:38 2005
@@ -1,5 +1,10 @@
 2005-06-26  Daniel Burrows  <dburrows@debian.org>
 
+	* src/vscreen/vscreen.cc:
+
+	  Update the other place where input is read to handle wide
+	  characters (oops).
+
 	* src/vscreen/testvscreen.cc:
 
 	  Update the test program for the new vscreen interfaces.

Modified: branches/aptitude-0.3/aptitude/src/vscreen/vscreen.cc
==============================================================================
--- branches/aptitude-0.3/aptitude/src/vscreen/vscreen.cc	(original)
+++ branches/aptitude-0.3/aptitude/src/vscreen/vscreen.cc	Sun Jun 26 18:22:38 2005
@@ -573,14 +573,15 @@
       // location; I just want to be sure that I reset the timeout of the
       // correct widget. (??)
 
-      chtype ch;
+      wint_t wch;
+      int result;
 
       do
 	{
 	  vscreen_releaselock();
-	  ch=curwidget->get_win().getch();
+	  result=curwidget->get_win().get_wch(&wch);
 	  vscreen_acquirelock();
-	} while(ch==KEY_RESIZE);
+	} while(wch==KEY_RESIZE);
 
       // used when asynchronous resizing was dangerous
       //if(resized)
@@ -597,7 +598,7 @@
 
       vscreen_checktimeouts();
 
-      if(ch==KEY_MOUSE)
+      if(wch==KEY_MOUSE)
 	{
 	  MEVENT ev;
 	  getmouse(&ev);
@@ -609,11 +610,11 @@
 	      vscreen_tryupdate();
 	    }
 	}
-      else if(global_bindings.key_matches(ch, "Refresh"))
+      else if(global_bindings.key_matches(wch, "Refresh"))
 	vscreen_redraw();
-      else if(ch!=(chtype) ERR && toplevel)
+      else if(result!=ERR && toplevel)
 	{
-	  toplevel->dispatch_char(ch);
+	  toplevel->dispatch_char(wch);
 	  main_hook();
 	  vscreen_tryupdate();
 	}