diff options
author | Alexander Nedotsukov <bland@FreeBSD.org> | 2004-02-27 18:21:07 +0000 |
---|---|---|
committer | Alexander Nedotsukov <bland@FreeBSD.org> | 2004-02-27 18:21:07 +0000 |
commit | be586f2c5de483ecc3baf4bed15c2f338459ea8d (patch) | |
tree | 96c38850cc1a442a93486609cd6a990c7e306c46 /editors/abiword/files | |
parent | 9e154d0c21d5af804e661f5d9ce74e5836e794bd (diff) | |
download | ports-be586f2c5de483ecc3baf4bed15c2f338459ea8d.tar.gz ports-be586f2c5de483ecc3baf4bed15c2f338459ea8d.zip |
Notes
Diffstat (limited to 'editors/abiword/files')
-rw-r--r-- | editors/abiword/files/patch-src::af::ev::unix::ev_UnixMenu.cpp | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/editors/abiword/files/patch-src::af::ev::unix::ev_UnixMenu.cpp b/editors/abiword/files/patch-src::af::ev::unix::ev_UnixMenu.cpp new file mode 100644 index 000000000000..25bce4773cf3 --- /dev/null +++ b/editors/abiword/files/patch-src::af::ev::unix::ev_UnixMenu.cpp @@ -0,0 +1,47 @@ +--- src/af/ev/unix/ev_UnixMenu.cpp.orig Sat Feb 28 01:01:29 2004 ++++ src/af/ev/unix/ev_UnixMenu.cpp Sat Feb 28 03:05:52 2004 +@@ -433,22 +433,20 @@ + return true; + } + +-static char _ev_get_underlined_char(const char * szString) ++static guint _ev_get_underlined_char(const char * szString) + { + + UT_ASSERT(szString); + +- // return the char right after the underline +- const char * p = szString; +- while (*p && *(p+1)) ++ // return the keycode right after the underline ++ const UT_UCS4String str(szString); ++ for (int i = 0; i < str.length() - 1; ) + { +- if (*p == '_') +- return *++p; +- else +- p++; ++ if (str[i++] == '_') ++ return gdk_unicode_to_keyval(str[i]); + } + +- return 0; ++ return GDK_VoidSymbol; + } + + static void _ev_strip_underline(char * bufResult, +@@ -751,12 +749,12 @@ + // version of the underlined char, since all the menus ignore upper + // case (SHIFT-MOD1-[char]) invokations of accelerators. + +- if (bAltOnMod1) ++ if (keyCode != GDK_VoidSymbol && bAltOnMod1) + { + EV_EditEventMapper * pEEM = m_pFrame->getEditEventMapper(); + UT_ASSERT(pEEM); + EV_EditMethod * pEM = NULL; +- pEEM->Keystroke(EV_EKP_PRESS|EV_EMS_ALT|tolower(keyCode),&pEM); ++ pEEM->Keystroke(EV_EKP_PRESS|EV_EMS_ALT|keyCode,&pEM); + + // if the pointer is valid, there is a conflict + bConflict = (pEM != NULL); |