Hello community, here is the log from the commit of package libyui-ncurses for openSUSE:Factory checked in at 2014-04-13 13:13:15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libyui-ncurses (Old) and /work/SRC/openSUSE:Factory/.libyui-ncurses.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libyui-ncurses" Changes: -------- --- /work/SRC/openSUSE:Factory/libyui-ncurses/libyui-ncurses.changes 2014-03-01 14:38:33.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.libyui-ncurses.new/libyui-ncurses.changes 2014-04-13 13:13:22.000000000 +0200 @@ -1,0 +2,7 @@ +Tue Apr 8 12:42:03 CEST 2014 - [email protected] + +- Display menu (function keys) correctly in non UTF-8 environment + (bnc #865597) +- 2.46.4 + +------------------------------------------------------------------- Old: ---- libyui-ncurses-2.46.3.tar.bz2 New: ---- libyui-ncurses-2.46.4.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libyui-ncurses-doc.spec ++++++ --- /var/tmp/diff_new_pack.2iKmw5/_old 2014-04-13 13:13:24.000000000 +0200 +++ /var/tmp/diff_new_pack.2iKmw5/_new 2014-04-13 13:13:24.000000000 +0200 @@ -17,7 +17,7 @@ Name: libyui-ncurses-doc -Version: 2.46.3 +Version: 2.46.4 Release: 0 Source: libyui-ncurses-%{version}.tar.bz2 ++++++ libyui-ncurses.spec ++++++ --- /var/tmp/diff_new_pack.2iKmw5/_old 2014-04-13 13:13:24.000000000 +0200 +++ /var/tmp/diff_new_pack.2iKmw5/_new 2014-04-13 13:13:24.000000000 +0200 @@ -17,7 +17,7 @@ Name: libyui-ncurses -Version: 2.46.3 +Version: 2.46.4 Release: 0 Source: libyui-ncurses-%{version}.tar.bz2 ++++++ libyui-ncurses-2.46.3.tar.bz2 -> libyui-ncurses-2.46.4.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-2.46.3/ChangeLog new/libyui-ncurses-2.46.4/ChangeLog --- old/libyui-ncurses-2.46.3/ChangeLog 2014-02-28 13:31:51.000000000 +0100 +++ new/libyui-ncurses-2.46.4/ChangeLog 2014-04-08 14:05:46.000000000 +0200 @@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Tue Apr 8 12:42:03 CEST 2014 - [email protected] + +- Display menu (function keys) correctly in non UTF-8 environment + (bnc #865597) +- 2.46.4 + +------------------------------------------------------------------- Fri Feb 28 12:35:39 CET 2014 - [email protected] - fixed segfault in tree widget (bnc #866145) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-2.46.3/VERSION.cmake new/libyui-ncurses-2.46.4/VERSION.cmake --- old/libyui-ncurses-2.46.3/VERSION.cmake 2014-02-28 13:31:51.000000000 +0100 +++ new/libyui-ncurses-2.46.4/VERSION.cmake 2014-04-08 14:05:46.000000000 +0200 @@ -1,6 +1,6 @@ SET( VERSION_MAJOR "2" ) SET( VERSION_MINOR "46" ) -SET( VERSION_PATCH "3" ) +SET( VERSION_PATCH "4" ) SET( VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}${GIT_SHA1_VERSION}" ) ##### This is need for the libyui core, ONLY. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-2.46.3/src/NCDialog.cc new/libyui-ncurses-2.46.4/src/NCDialog.cc --- old/libyui-ncurses-2.46.3/src/NCDialog.cc 2014-02-21 15:00:50.000000000 +0100 +++ new/libyui-ncurses-2.46.4/src/NCDialog.cc 2014-04-08 14:05:46.000000000 +0200 @@ -1257,9 +1257,9 @@ * $[ 1: "Help", 2: "Info",... ] * NCurses::SetStatusLine will process this. **/ -std::map<int, std::string> NCDialog::describeFunctionKeys( ) +std::map<int, NCstring> NCDialog::describeFunctionKeys( ) { - std::map<int, std::string> fkeys; + std::map<int, NCstring> fkeys; for ( tnode<NCWidget*> * c = this->Next(); c; c = c->Next() ) { @@ -1270,7 +1270,7 @@ // Retrieve the widget's "shortcut property" that describes // whatever it is - regardless of widget type (PushButton, ...) - fkeys[ w->functionKey()] = w->debugLabel(); + fkeys[ w->functionKey()] = NCstring(w->debugLabel()); } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-2.46.3/src/NCDialog.h new/libyui-ncurses-2.46.4/src/NCDialog.h --- old/libyui-ncurses-2.46.3/src/NCDialog.h 2014-02-21 11:37:26.000000000 +0100 +++ new/libyui-ncurses-2.46.4/src/NCDialog.h 2014-04-08 14:05:46.000000000 +0200 @@ -101,7 +101,7 @@ void processInput( int timeout_millisec ); - std::map<int, std::string> describeFunctionKeys(); + std::map<int, NCstring> describeFunctionKeys(); wint_t getinput(); // get the input (respect terminal encoding) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-2.46.3/src/NCurses.cc new/libyui-ncurses-2.46.4/src/NCurses.cc --- old/libyui-ncurses-2.46.3/src/NCurses.cc 2014-02-21 15:00:50.000000000 +0100 +++ new/libyui-ncurses-2.46.4/src/NCurses.cc 2014-04-08 14:05:46.000000000 +0200 @@ -481,7 +481,7 @@ } -void NCurses::SetStatusLine( std::map <int, std::string> fkeys ) +void NCurses::SetStatusLine( std::map <int, NCstring> fkeys ) { if ( myself && myself->status_w ) @@ -491,9 +491,9 @@ ::werase( myself->status_w ); char key[10]; - char value[100]; + std::wstring value; - std::map<int, std::string>::iterator it; + std::map<int, NCstring>::iterator it; for ( it = fkeys.begin(); it != fkeys.end(); ++it ) { @@ -503,8 +503,18 @@ ::waddstr( myself->status_w, key ); ::wattroff( myself->status_w, A_REVERSE ); - sprintf( value, "%s ", ( *it ).second.c_str() ); - ::waddstr( myself->status_w, value ); + value = (*it ).second.str(); + if ( NCstring::terminalEncoding() != "UTF-8" ) + { + std::string out; + NCstring::RecodeFromWchar( value, NCstring::terminalEncoding(), &out ); + ::waddstr( myself->status_w, (char *)out.c_str() ); + } + else + { + ::waddwstr( myself->status_w, (wchar_t *)value.c_str() ); + } + ::waddch( myself->status_w, ' ' ); } ::wnoutrefresh( myself->status_w ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-2.46.3/src/NCurses.h new/libyui-ncurses-2.46.4/src/NCurses.h --- old/libyui-ncurses-2.46.3/src/NCurses.h 2014-02-21 11:37:26.000000000 +0100 +++ new/libyui-ncurses-2.46.4/src/NCurses.h 2014-04-08 14:05:46.000000000 +0200 @@ -41,6 +41,7 @@ #include "ncursesp.h" #include "position.h" #include "NCstyle.h" +#include "NCstring.h" class NCWidget; class NCDialog; @@ -163,7 +164,7 @@ WINDOW * status_w; std::string title_t; - std::map <int, std::string> status_line; + std::map <int, NCstring> status_line; NCstyle * styleset; NCursesPanel * stdpan; @@ -203,7 +204,7 @@ static void Redraw(); static void Refresh(); static void SetTitle( const std::string & str ); - static void SetStatusLine( std::map <int, std::string> fkeys ); + static void SetStatusLine( std::map <int, NCstring> fkeys ); static void ScreenShot( const std::string & name = "screen.shot" ); static void drawTitle(); -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
