Bug 59954 - "&Bookmarks" illegal used in KMenu
Summary: "&Bookmarks" illegal used in KMenu
Status: RESOLVED FIXED
Alias: None
Product: kdelibs
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: unspecified
Platform: Mandrake RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: Stephan Kulow
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-06-17 18:20 UTC by Funda Wang
Modified: 2003-11-02 01:43 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Funda Wang 2003-06-17 18:20:06 UTC
Version:            (using KDE KDE 3.1)
Installed from:    Mandrake RPMs
OS:          Linux

There is a item named "Bookmarks" in KMenu.

To show the item, KMenu will first extract translation of "&Bookmarks" from kdelibs.mo, then remove "&" from the translation.

The situation is not suit for other languages, like Chinese/Japanese. We will translate "&Bookmarks" into "XXXX(&B)". According to above rule, users will get "XXXX(B)" as their menuitem. That is too ugly.

Suggesstion: Just put another seperated msgid "Bookmarks" in kdelibs.po.
Comment 1 Tobias Koenig 2003-11-02 01:43:50 UTC
Subject: kdebase/kicker/ui

CVS commit by tokoe: 

Add an i18n( "Bookmarks" ) to common_texts.cpp and make use of it.
That fixes bug #59954.
CCMAIL:59954-done@bugs.kde.org


  M +1 -5      k_mnu.cpp   1.79


--- kdebase/kicker/ui/k_mnu.cpp  #1.78:1.79
@@ -223,9 +223,5 @@ void PanelKMenu::initialize()
         bookmarkMenu = new KBookmarkMenu( KonqBookmarkManager::self(), bookmarkOwner, bookmarkParent, actionCollection, true, false );
 
-        QString bookmarkstring = i18n( "&Bookmarks" );
-        int p;
-        while ( ( p = bookmarkstring.find( '&' ) ) >= 0 )
-            bookmarkstring.remove( p, 1 );
-        insertItem( SmallIconSet("bookmark"), bookmarkstring, bookmarkParent );
+        insertItem( SmallIconSet("bookmark"), i18n( "Bookmarks" ), bookmarkParent );
         subMenus.append(bookmarkParent);
         need_separator = true;