[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
darin
darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:23:58 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 12af80ebf8c229b3783c0ae8bc229d59979c7772
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Jan 27 01:37:56 2004 +0000
Reviewed by Maciej.
- fixed <rdar://problem/3529120>: text-align style property not respected on input fields
* khtml/rendering/render_form.h: Added textAlignment function.
* khtml/rendering/render_form.cpp:
(RenderFormElement::textAlignment): Added. Converts style alignment to Qt alignment.
(RenderLineEdit::setStyle): Call textAlignment intead of using direction from style.
(RenderTextArea::setStyle): Call textAlignment intead of using direction from style.
* kwq/KWQLineEdit.h: Added KWQNSTextAlignmentForAlignmentFlags function.
* kwq/KWQLineEdit.mm:
(QLineEdit::setAlignment): Use KWQNSTextAlignmentForAlignmentFlags instead of code
that handles only left and right alignment.
(KWQNSTextAlignmentForAlignmentFlags): Added. Converts Qt alignment to NS alignment.
* kwq/KWQTextEdit.mm: (QTextEdit::setAlignment): Use KWQNSTextAlignmentForAlignmentFlags
instead of code that handles only left and right alignment.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5984 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 7dbfea4..1c1be6c 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,5 +1,25 @@
2004-01-26 Darin Adler <darin at apple.com>
+ Reviewed by Maciej.
+
+ - fixed <rdar://problem/3529120>: text-align style property not respected on input fields
+
+ * khtml/rendering/render_form.h: Added textAlignment function.
+ * khtml/rendering/render_form.cpp:
+ (RenderFormElement::textAlignment): Added. Converts style alignment to Qt alignment.
+ (RenderLineEdit::setStyle): Call textAlignment intead of using direction from style.
+ (RenderTextArea::setStyle): Call textAlignment intead of using direction from style.
+
+ * kwq/KWQLineEdit.h: Added KWQNSTextAlignmentForAlignmentFlags function.
+ * kwq/KWQLineEdit.mm:
+ (QLineEdit::setAlignment): Use KWQNSTextAlignmentForAlignmentFlags instead of code
+ that handles only left and right alignment.
+ (KWQNSTextAlignmentForAlignmentFlags): Added. Converts Qt alignment to NS alignment.
+ * kwq/KWQTextEdit.mm: (QTextEdit::setAlignment): Use KWQNSTextAlignmentForAlignmentFlags
+ instead of code that handles only left and right alignment.
+
+2004-01-26 Darin Adler <darin at apple.com>
+
Reviewed by Dave.
- fixed <rdar://problem/3477707>: background image with apostrophe in name missing at http://www.nbc.com
diff --git a/WebCore/khtml/rendering/render_form.cpp b/WebCore/khtml/rendering/render_form.cpp
index 07f0bd0..06dfd00 100644
--- a/WebCore/khtml/rendering/render_form.cpp
+++ b/WebCore/khtml/rendering/render_form.cpp
@@ -202,6 +202,27 @@ void RenderFormElement::slotClicked()
deref(arena);
}
+Qt::AlignmentFlags RenderFormElement::textAlignment() const
+{
+ switch (style()->textAlign()) {
+ case LEFT:
+ case KHTML_LEFT:
+ return AlignLeft;
+ case RIGHT:
+ case KHTML_RIGHT:
+ return AlignRight;
+ case CENTER:
+ case KHTML_CENTER:
+ return AlignHCenter;
+ case JUSTIFY:
+ // Just fall into the auto code for justify.
+ case TAAUTO:
+ return style()->direction() == RTL ? AlignRight : AlignLeft;
+ }
+ assert(false); // Should never be reached.
+ return AlignLeft;
+}
+
#if APPLE_CHANGES
void RenderFormElement::addIntrinsicMarginsIfAllowed(RenderStyle* _style)
@@ -595,8 +616,7 @@ void RenderLineEdit::setStyle(RenderStyle *s)
RenderFormElement::setStyle(s);
KLineEdit *w = widget();
-
- w->setAlignment(style()->direction() == RTL ? Qt::AlignRight : Qt::AlignLeft);
+ w->setAlignment(textAlignment());
#if APPLE_CHANGES
w->setWritingDirection(style()->direction() == RTL ? QPainter::RTL : QPainter::LTR);
#endif
@@ -1478,7 +1498,7 @@ void RenderTextArea::setStyle(RenderStyle *s)
RenderFormElement::setStyle(s);
TextAreaWidget* w = static_cast<TextAreaWidget*>(m_widget);
- w->setAlignment(style()->direction() == RTL ? Qt::AlignRight : Qt::AlignLeft);
+ w->setAlignment(textAlignment());
#if APPLE_CHANGES
w->setWritingDirection(style()->direction() == RTL ? QPainter::RTL : QPainter::LTR);
#endif
diff --git a/WebCore/khtml/rendering/render_form.h b/WebCore/khtml/rendering/render_form.h
index 0a85b17..1bf1faf 100644
--- a/WebCore/khtml/rendering/render_form.h
+++ b/WebCore/khtml/rendering/render_form.h
@@ -110,6 +110,8 @@ protected:
virtual bool isRenderButton() const { return false; }
virtual bool isEditable() const { return false; }
+ AlignmentFlags textAlignment() const;
+
QPoint m_mousePos;
int m_state;
int m_button;
diff --git a/WebCore/kwq/KWQLineEdit.h b/WebCore/kwq/KWQLineEdit.h
index 0c67fdf..39fb4df 100644
--- a/WebCore/kwq/KWQLineEdit.h
+++ b/WebCore/kwq/KWQLineEdit.h
@@ -78,4 +78,8 @@ private:
KWQSignal m_clicked;
};
+#ifdef __OBJC__
+NSTextAlignment KWQNSTextAlignmentForAlignmentFlags(Qt::AlignmentFlags);
+#endif
+
#endif
diff --git a/WebCore/kwq/KWQLineEdit.mm b/WebCore/kwq/KWQLineEdit.mm
index aa9768f..f3871b2 100644
--- a/WebCore/kwq/KWQLineEdit.mm
+++ b/WebCore/kwq/KWQLineEdit.mm
@@ -230,9 +230,8 @@ void QLineEdit::setAlignment(AlignmentFlags alignment)
{
KWQ_BLOCK_EXCEPTIONS;
- ASSERT(alignment == AlignLeft || alignment == AlignRight);
KWQTextField *textField = getView();
- [textField setAlignment:(alignment == AlignRight ? NSRightTextAlignment : NSLeftTextAlignment)];
+ [textField setAlignment:KWQNSTextAlignmentForAlignmentFlags(alignment)];
KWQ_UNBLOCK_EXCEPTIONS;
}
@@ -251,3 +250,17 @@ bool QLineEdit::checksDescendantsForFocus() const
{
return true;
}
+
+NSTextAlignment KWQNSTextAlignmentForAlignmentFlags(Qt::AlignmentFlags a)
+{
+ switch (a) {
+ default:
+ ERROR("unsupported alignment");
+ case Qt::AlignLeft:
+ return NSLeftTextAlignment;
+ case Qt::AlignRight:
+ return NSRightTextAlignment;
+ case Qt::AlignHCenter:
+ return NSCenterTextAlignment;
+ }
+}
diff --git a/WebCore/kwq/KWQTextEdit.mm b/WebCore/kwq/KWQTextEdit.mm
index dd73930..fd9cecf 100644
--- a/WebCore/kwq/KWQTextEdit.mm
+++ b/WebCore/kwq/KWQTextEdit.mm
@@ -27,6 +27,7 @@
#import "KWQAssertions.h"
#import "KWQExceptions.h"
+#import "KWQLineEdit.h"
#import "KWQTextArea.h"
QTextEdit::QTextEdit(QWidget *parent)
@@ -188,10 +189,8 @@ void QTextEdit::setAlignment(AlignmentFlags alignment)
{
KWQ_BLOCK_EXCEPTIONS;
- ASSERT(alignment == AlignLeft || alignment == AlignRight);
KWQTextArea *textArea = getView();
-
- [textArea setAlignment:(alignment == AlignRight ? NSRightTextAlignment : NSLeftTextAlignment)];
+ [textArea setAlignment:KWQNSTextAlignmentForAlignmentFlags(alignment)];
KWQ_UNBLOCK_EXCEPTIONS;
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list