summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas K. Hüttel <dilfridge@gentoo.org>2010-11-11 23:54:50 +0000
committerAndreas K. Hüttel <dilfridge@gentoo.org>2010-11-11 23:54:50 +0000
commit3645f7bc2d9ff6b7b4f87ed0188863ca9f45acc4 (patch)
tree4329da4f681ea076a1b0336986b71ba9f10cafbf /app-office/kmymoney/files
parentAdded patch to update docbook files to XML V4.2-Based Variant. Fixes bug 335023 (diff)
downloadgentoo-2-3645f7bc2d9ff6b7b4f87ed0188863ca9f45acc4.tar.gz
gentoo-2-3645f7bc2d9ff6b7b4f87ed0188863ca9f45acc4.tar.bz2
gentoo-2-3645f7bc2d9ff6b7b4f87ed0188863ca9f45acc4.zip
Added upstream ui fix for languages with accented characters. Fixes bug 344195
(Portage version: 2.1.9.24/cvs/Linux x86_64)
Diffstat (limited to 'app-office/kmymoney/files')
-rw-r--r--app-office/kmymoney/files/kmymoney-4.5-accentfix.patch133
1 files changed, 133 insertions, 0 deletions
diff --git a/app-office/kmymoney/files/kmymoney-4.5-accentfix.patch b/app-office/kmymoney/files/kmymoney-4.5-accentfix.patch
new file mode 100644
index 000000000000..643addcd9f38
--- /dev/null
+++ b/app-office/kmymoney/files/kmymoney-4.5-accentfix.patch
@@ -0,0 +1,133 @@
+Index: kmymoney/widgets/kmymoneycompletion.cpp
+===================================================================
+--- kmymoney/widgets/kmymoneycompletion.cpp (Revision 1193385)
++++ kmymoney/widgets/kmymoneycompletion.cpp (Revision 1193386)
+@@ -31,6 +31,8 @@
+ #include <QEvent>
+ #include <QDesktopWidget>
+ #include <QLineEdit>
++#include <QInputContext>
++#include <QInputContextFactory>
+
+ // ----------------------------------------------------------------------------
+ // KDE Includes
+@@ -47,13 +49,14 @@
+ kMyMoneyCompletion::kMyMoneyCompletion(QWidget *parent) :
+ KVBox(parent)
+ {
+- setWindowFlags(Qt::Popup);
+- setFrameStyle(QFrame::StyledPanel | QFrame::Raised);
++ setWindowFlags(Qt::ToolTip);
++ // make it look like the Qt completer
++ setMargin(0);
++ setLineWidth(0);
+
+ m_parent = parent;
+- setFocusProxy(parent);
+-
+ m_selector = new KMyMoneySelector(this);
++ m_selector->listView()->setFocusProxy(parent);
+
+ // to handle the keyboard events received by this widget in the same way as
+ // the keyboard events received by the other widgets
+@@ -130,9 +133,10 @@
+ }
+ }
+
+-void kMyMoneyCompletion::showEvent(QShowEvent*)
++void kMyMoneyCompletion::showEvent(QShowEvent* e)
+ {
+ show(true);
++ KVBox::showEvent(e);
+ }
+
+ void kMyMoneyCompletion::show(bool presetSelected)
+@@ -152,8 +156,12 @@
+ c->lineEdit()->installEventFilter(this);
+ }
+ }
+-
+ KVBox::show();
++ // after the popup is shown for the first time the input context of the combobox gets messed up
++ // so replace it whit a new input context of the same type to handle input methods correctly
++ if (m_parent) {
++ m_parent->setInputContext(QInputContextFactory::create(m_parent->inputContext()->identifierName(), m_parent));
++ }
+ }
+
+ void kMyMoneyCompletion::hide(void)
+@@ -176,6 +184,9 @@
+ KMyMoneyCombo *c = dynamic_cast<KMyMoneyCombo*>(m_parent);
+ if (o == m_parent || (c && o == c->lineEdit()) || o == this) {
+ if (isVisible()) {
++ if (e->type() == QEvent::FocusOut) {
++ hide();
++ }
+ if (e->type() == QEvent::KeyPress) {
+ QTreeWidgetItem* item = 0;
+ QKeyEvent* ev = static_cast<QKeyEvent*>(e);
+@@ -266,9 +277,6 @@
+ }
+ }
+ }
+- // forward any keyboard event that was received by this widget and was not handled to the parent widget
+- if (o == this && c && (e->type() == QEvent::KeyPress || e->type() == QEvent::KeyRelease))
+- c->event(e);
+ return KVBox::eventFilter(o, e);
+ }
+
+Index: kmymoney/widgets/kmymoneyaccountcompletion.cpp
+===================================================================
+--- kmymoney/widgets/kmymoneyaccountcompletion.cpp (Revision 1193385)
++++ kmymoney/widgets/kmymoneyaccountcompletion.cpp (Revision 1193386)
+@@ -43,7 +43,7 @@
+ {
+ delete m_selector;
+ m_selector = new kMyMoneyAccountSelector(this, 0, false);
+- m_selector->listView()->setFocusProxy(this);
++ m_selector->listView()->setFocusProxy(parent);
+
+ #ifndef KMM_DESIGNER
+ // Default is to show all accounts
+Index: kmymoney/widgets/kmymoneyselector.cpp
+===================================================================
+--- kmymoney/widgets/kmymoneyselector.cpp (Revision 1193385)
++++ kmymoney/widgets/kmymoneyselector.cpp (Revision 1193386)
+@@ -43,6 +43,8 @@
+ KMyMoneySelector::KMyMoneySelector(QWidget *parent, Qt::WFlags flags) :
+ QWidget(parent, flags)
+ {
++ setAutoFillBackground(true);
++
+ m_selMode = QTreeWidget::SingleSelection;
+
+ m_treeWidget = new QTreeWidget(this);
+@@ -52,11 +54,6 @@
+ m_treeWidget->setSortingEnabled(false);
+ m_treeWidget->setAlternatingRowColors(true);
+
+- if (parent) {
+- setFocusProxy(parent->focusProxy());
+- m_treeWidget->setFocusProxy(parent->focusProxy());
+- }
+-
+ m_treeWidget->setAllColumnsShowFocus(true);
+
+ m_layout = new QHBoxLayout(this);
+Index: kmymoney/widgets/kmymoneycombo.cpp
+===================================================================
+--- kmymoney/widgets/kmymoneycombo.cpp (Revision 1193385)
++++ kmymoney/widgets/kmymoneycombo.cpp (Revision 1193386)
+@@ -224,12 +224,6 @@
+
+ void KMyMoneyCombo::focusOutEvent(QFocusEvent* e)
+ {
+- // when showing m_completion we'll receive a focus out event even if the focus
+- // will still remain at this widget since this widget is the completion's focus proxy
+- // so ignore the focus out event caused by showin a widget of type Qt::Popup
+- if (e->reason() == Qt::PopupFocusReason)
+- return;
+-
+ if (m_inFocusOutEvent) {
+ KComboBox::focusOutEvent(e);
+ return;