[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdelibs/kdeui
From: David Faure <faure () kde ! org>
Date: 2009-04-22 16:21:36
Message-ID: 1240417296.683514.6728.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 957645 by dfaure:
Revert r912265, whose idea was "let's always hide empty menus, so that noMerge=1 can be used to hide a \
standard menu". But that was a bad idea; 186382 says some apps have empty menus filled in by parts, so we \
need to keep them around for proper ordering. Instead, r896151 had the solution to the initial problem \
already: deleted="true".
BUG: 186382
M +16 -2 tests/kxmlgui_unittest.cpp
M +1 -1 xmlgui/kxmlguiclient.cpp
--- trunk/KDE/kdelibs/kdeui/tests/kxmlgui_unittest.cpp #957644:957645
@@ -463,16 +463,30 @@
QTest::newRow("noMerge empty file menu, implicit settings menu")
<< xmlBegin + "<Menu name=\"file\" noMerge=\"1\"/>\n" + xmlEnd
<< (QStringList() << "file_open" << "options_configure_toolbars")
- << (QStringList() << "settings");
+ << (QStringList() << "file" << "settings"); // we keep empty menus, see #186382
QTest::newRow("noMerge empty file menu, file_open moved elsewhere")
<< xmlBegin + "<Menu name=\"file\" noMerge=\"1\"/>\n<Menu name=\"foo\"><Action \
name=\"file_open\"/></Menu>" + xmlEnd << (QStringList() << "file_open")
- << (QStringList() << "foo");
+ << (QStringList() << "file" << "foo");
QTest::newRow("noMerge file menu with open before new")
<< xmlBegin + "<Menu name=\"file\" noMerge=\"1\"><Action name=\"file_open\"/><Action \
name=\"file_new\"/></Menu>" + xmlEnd << (QStringList() << "file_open" << "file_new")
<< (QStringList() << "file"); // TODO check the order of the actions in the menu? how?
+ // Tests for deleted="true"
+ QTest::newRow("deleted file menu, implicit settings menu")
+ << xmlBegin + "<Menu name=\"file\" deleted=\"true\"/>\n" + xmlEnd
+ << (QStringList() << "file_open" << "options_configure_toolbars")
+ << (QStringList() << "settings");
+ QTest::newRow("deleted file menu, file_open moved elsewhere")
+ << xmlBegin + "<Menu name=\"file\" deleted=\"true\"/>\n<Menu name=\"foo\"><Action \
name=\"file_open\"/></Menu>" + xmlEnd + << (QStringList() << "file_open")
+ << (QStringList() << "foo");
+ QTest::newRow("deleted file menu with actions (contradiction)")
+ << xmlBegin + "<Menu name=\"file\" deleted=\"true\"><Action name=\"file_open\"/><Action \
name=\"file_new\"/></Menu>" + xmlEnd + << (QStringList() << "file_open" << "file_new")
+ << (QStringList());
+
}
void KXmlGui_UnitTest::testUiStandardsMerging()
--- trunk/KDE/kdelibs/kdeui/xmlgui/kxmlguiclient.cpp #957644:957645
@@ -300,7 +300,7 @@
if ( additive.attribute(attrNoMerge) == attrOne ) // ### use toInt() instead? (Simon)
{
base.parentNode().replaceChild(additive, base);
- base = additive;
+ return true;
} else {
// iterate over all elements in the container (of the global DOM tree)
QDomNode n = base.firstChild();
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic