Timeline



Dec 18, 2003:

3:14 PM Changeset in webkit [5830] by rjw
  • 11 edits in trunk

WebKit:

Fixed 3511415. We have to un-visually order visually ordered text
before passing to ATSU.

Reviewed by John.

  • WebCoreSupport.subproj/WebTextRenderer.m: (reverseCharactersInRun): (-[WebTextRenderer _ATSU_drawHighlightForRun:style:atPoint:]): (-[WebTextRenderer _ATSU_drawRun:style:atPoint:]): (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:]):

WebCore:

Fixed 3511415. We have to un-visually order visually ordered text
before passing to ATSU.

Reviewed by John.

  • khtml/rendering/font.cpp: (Font::drawHighlightForText): (Font::drawText):
  • khtml/rendering/font.h:
  • khtml/rendering/render_text.cpp: (InlineTextBox::paintSelection): (RenderText::paintObject):
  • kwq/KWQPainter.h:
  • kwq/KWQPainter.mm: (QPainter::drawText): (QPainter::drawHighlightForText):
  • kwq/WebCoreTextRenderer.h:
  • kwq/WebCoreTextRendererFactory.m: (WebCoreInitializeEmptyTextStyle):

Dec 17, 2003:

7:56 PM Changeset in webkit [5829] by rjw
  • 6 edits in trunk/WebCore

Fixed build problem resulting from addition of KJS to Bindings namespace.

6:49 PM Changeset in webkit [5828] by rjw
  • 15 edits in trunk/JavaScriptCore

Ensure that all the symbols we export are in the KJS
namespace (3512245).

Also renamed JavaString.characters() to JavaString.UTF8String()
for enhanced clarity.

Added some sanity checking to constructor of JObjectWrapper.

Reviewed by Dave.

  • ChangeLog:
  • bindings/jni/jni_class.cpp:
  • bindings/jni/jni_class.h:
  • bindings/jni/jni_instance.cpp: (JavaInstance::invokeMethod): (JObjectWrapper::JObjectWrapper):
  • bindings/jni/jni_instance.h:
  • bindings/jni/jni_runtime.cpp: (JavaParameter::JavaParameter): (JavaField::JavaField): (JavaMethod::JavaMethod): (JavaMethod::signature):
  • bindings/jni/jni_runtime.h: (KJS::Bindings::JavaString::ascii): (KJS::Bindings::JavaString::UTF8String): (KJS::Bindings::JavaString::JavaString): (KJS::Bindings::JavaString::_commonInit): (KJS::Bindings::JavaString::uchars): (KJS::Bindings::JavaString::length): (KJS::Bindings::JavaString::ustring): (KJS::Bindings::JavaParameter::type): (KJS::Bindings::JavaField::name): (KJS::Bindings::JavaField::type): (KJS::Bindings::JavaMethod::name): (KJS::Bindings::JavaMethod::returnType):
  • bindings/jni/jni_utility.cpp: (KJS::Bindings::getJavaVM): (KJS::Bindings::getJNIEnv): (KJS::Bindings::callJNIVoidMethod): (KJS::Bindings::callJNIObjectMethod): (KJS::Bindings::callJNIBooleanMethod): (KJS::Bindings::callJNIByteMethod): (KJS::Bindings::callJNICharMethod): (KJS::Bindings::callJNIShortMethod): (KJS::Bindings::callJNIIntMethod): (KJS::Bindings::callJNILongMethod): (KJS::Bindings::callJNIFloatMethod): (KJS::Bindings::callJNIDoubleMethod): (KJS::Bindings::callJNIVoidMethodA): (KJS::Bindings::callJNIObjectMethodA): (KJS::Bindings::callJNIByteMethodA): (KJS::Bindings::callJNICharMethodA): (KJS::Bindings::callJNIShortMethodA): (KJS::Bindings::callJNIIntMethodA): (KJS::Bindings::callJNILongMethodA): (KJS::Bindings::callJNIFloatMethodA): (KJS::Bindings::callJNIDoubleMethodA): (KJS::Bindings::callJNIBooleanMethodA): (KJS::Bindings::getCharactersFromJString): (KJS::Bindings::releaseCharactersForJString): (KJS::Bindings::getCharactersFromJStringInEnv): (KJS::Bindings::releaseCharactersForJStringInEnv): (KJS::Bindings::getUCharactersFromJStringInEnv): (KJS::Bindings::releaseUCharactersForJStringInEnv): (KJS::Bindings::JNITypeFromClassName): (KJS::Bindings::signatureFromPrimitiveType): (KJS::Bindings::JNITypeFromPrimitiveType): (KJS::Bindings::getJNIField): (KJS::Bindings::convertValueToJValue):
  • bindings/jni/jni_utility.h:
  • bindings/jni_jsobject.cpp: (KJS::Bindings::JSObject::invoke): (KJS::Bindings::JSObject::JSObject): (KJS::Bindings::JSObject::call): (KJS::Bindings::JSObject::eval): (KJS::Bindings::JSObject::getMember): (KJS::Bindings::JSObject::setMember): (KJS::Bindings::JSObject::removeMember): (KJS::Bindings::JSObject::getSlot): (KJS::Bindings::JSObject::setSlot): (KJS::Bindings::JSObject::toString): (KJS::Bindings::JSObject::finalize): (KJS::Bindings::JSObject::createNative): (KJS::Bindings::JSObject::convertValueToJObject): (KJS::Bindings::JSObject::convertJObjectToValue): (KJS::Bindings::JSObject::listFromJArray):
  • bindings/jni_jsobject.h:
  • bindings/runtime.cpp:
  • bindings/runtime.h:
  • bindings/runtime_method.cpp:
  • bindings/runtime_method.h:
5:41 PM Changeset in webkit [5827] by rjw
  • 2 edits in trunk/WebKit

Fixed 3503011 (really, this time). Always use integer width for '-' and '?', as we do for spaces, to ensure that 'words' (as defined by out rounding hack) start on integer boundaries.

Reviewed by John.

  • WebCoreSupport.subproj/WebTextRenderer.m: (widthForNextCharacter):
4:44 PM Changeset in webkit [5826] by cblu
  • 3 edits in trunk/WebKit

Fixed:
<rdar://problem/3393758>: REGRESSION (85-100): Flash onKeyUp event non-functional
<rdar://problem/3479020>: REGRESSION (85-100): Safari sends plug-in key events to wrong instance of plug-in

Reviewed by darin.

  • Plugins.subproj/WebBaseNetscapePluginView.h:
  • Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView sendEvent:]): set suspendKeyUpEvents to NO (-[WebBaseNetscapePluginView keyMessageForEvent:]): copied from CVS (-[WebBaseNetscapePluginView keyUp:]): if !suspendKeyUpEvents, send the keyUp event (-[WebBaseNetscapePluginView keyDown:]): set suspendKeyUpEvents to YES (-[WebBaseNetscapePluginView windowBecameKey:]): call SetUserFocusWindow
4:38 PM Changeset in webkit [5825] by darin
  • 3 edits in trunk/WebKit

Reviewed by Richard.

  • fixed 3513274: REGRESSION: anchor navigation within frames with "Back" is broken at tivofaq.com
  • WebView.subproj/WebDataSource.m: (-[WebDataSource _setURL:]): Since this method is only used when you do a fragment scroll, we need to update the original request as well as the request. This ensure that the fragment gets recorded in the history item (which goes in the back/forward history).
4:21 PM Changeset in webkit [5824] by kocienda
  • 7 edits
    7 adds
    2 deletes in branches

Reviewed by me.

Made editing subdirectory.
Moved htmlediting files into this new directory.
Added Caret and CaretImpl classes.

  • WebCore.pbproj/project.pbxproj:
  • khtml/editing/edit_caret.cpp: Added. (Caret::Caret): (Caret::~Caret): (Caret::node): (Caret::offset): (Caret::startOfLine): (Caret::setPosition): (Caret::setStartOfLine): (Caret::needsAdjustmentForEditing): (Caret::adjustForEditing): (Caret::adjustedForEditing): (Caret::handle): (operator==):
  • khtml/editing/edit_caret.h: Added.
  • khtml/editing/edit_caretimpl.cpp: Added. (CaretImpl::CaretImpl): (CaretImpl::~CaretImpl): (CaretImpl::setPosition): (CaretImpl::setStartOfLine): (CaretImpl::needsAdjustmentForEditing): (CaretImpl::adjustForEditing): (EditNodeFilter::acceptNode):
  • khtml/editing/edit_caretimpl.h: Added. (khtml::CaretImpl::node): (khtml::CaretImpl::offset): (khtml::CaretImpl::startOfLine): (khtml::CaretImpl::CaretImpl):
  • khtml/editing/htmlediting.cpp: Added. (EditCommand::notifyChanged): (InputTextCommand::commandID): (InputTextCommand::InputTextCommand): (InputTextCommand::isLineBreak): (InputTextCommand::isSpace): (InputTextCommand::applyToDocument): (InputTextCommand::canUndo): (DeleteTextCommand::commandID): (DeleteTextCommand::DeleteTextCommand): (DeleteTextCommand::applyToDocument): (DeleteTextCommand::canUndo):
  • khtml/editing/htmlediting.h: Added. (khtml::): (khtml::EditCommand::EditCommand): (khtml::EditCommand::~EditCommand): (khtml::EditCommand::selection): (khtml::InputTextCommand::~InputTextCommand): (khtml::InputTextCommand::text): (khtml::DeleteTextCommand::~DeleteTextCommand):
  • khtml/html/htmlediting.cpp: Removed.
  • khtml/html/htmlediting.h: Removed.
  • khtml/khtml_part.cpp: (KHTMLPart::setSelection): (KHTMLPart::slotClearSelection): (KHTMLPart::caret): (KHTMLPart::khtmlMousePressEvent): (KHTMLPart::khtmlMouseMoveEvent): (KHTMLPart::khtmlMouseReleaseEvent): (KHTMLPart::emitCaretPositionChanged): (KHTMLPart::moveCaretTo):
  • khtml/khtml_part.h:
  • khtml/khtmlpart_p.h:
  • khtml/khtmlview.cpp: (khtml::sanitizeCaretState): (KHTMLView::init): (KHTMLView::initCaret): (KHTMLView::moveCaretTo):
  • kwq/KWQKHTMLPart.mm: (KHTMLPart::caretPositionChanged):
4:21 PM Changeset in webkit [5823] by kocienda
  • in /

file edit_caret.h was initially added on branch HTML-editing-hacks-branch.

4:21 PM Changeset in webkit [5822] by kocienda
  • in /

file htmlediting.h was initially added on branch HTML-editing-hacks-branch.

4:21 PM Changeset in webkit [5821] by kocienda
  • in /

file edit_caretimpl.h was initially added on branch HTML-editing-hacks-branch.

4:21 PM Changeset in webkit [5820] by kocienda
  • in /

file htmlediting.cpp was initially added on branch HTML-editing-hacks-branch.

4:21 PM Changeset in webkit [5819] by kocienda
  • in /

file edit_caretimpl.cpp was initially added on branch HTML-editing-hacks-branch.

4:21 PM Changeset in webkit [5818] by kocienda
  • in /

file edit_caret.cpp was initially added on branch HTML-editing-hacks-branch.

3:48 PM Changeset in webkit [5817] by darin
  • 9 edits in trunk/WebCore

Reviewed by Dave.

  • fixed 3469085: can't tab to all links on aintitcool.com
  • khtml/html/html_inlineimpl.cpp: (HTMLAnchorElementImpl::isFocusable): Re-implemented this to check width and height of all continuations, not just the main render object. Also, check the absoluteRects after checking all the render objects to catch things like floats. (HTMLAnchorElementImpl::isMouseFocusable): Clean up the code here a bit.
  • khtml/rendering/render_inline.h:
  • khtml/rendering/render_inline.cpp: (RenderInline::absoluteRects):
  • khtml/rendering/render_object.h:
  • khtml/rendering/render_object.cpp: (RenderObject::absoluteRects):
  • khtml/rendering/render_text.h:
  • khtml/rendering/render_text.cpp: (RenderText::absoluteRects):
  • kwq/KWQAccObject.mm: (boundingBoxRect): Use QValueList instead of QPtrList for clarity and to fix storage leaks.
10:45 AM Changeset in webkit [5816] by vicki
  • 3 edits in trunk

The tree is open for Safari-119!

10:25 AM Changeset in webkit [5815]
  • 3 copies in tags/Safari-118

This commit was manufactured by cvs2svn to create tag 'Safari-118'.

10:25 AM Changeset in webkit [5814] by vicki
  • 6 edits in trunk

Safari-118 stamp

9:36 AM Changeset in webkit [5813] by sullivan
  • 2 edits in trunk/WebKit
  • fixed <rdar://problem/3512801>: REGRESSION (Safari 100-116): Mike Hay's Magic 8-ball game ignores slow clicks

Reviewed by Darin.

  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _handleAutoscrollForMouseDragged:]): start the autoscroll timer here, so the timer only runs when KHTML is handling the event. (-[WebHTMLView mouseDown:]): don't start the autoscroll timer here.

Dec 16, 2003:

8:03 PM Changeset in webkit [5812] by kocienda
  • 2 edits in trunk/WebKit

Reviewed by me

  • WebCoreSupport.subproj/WebBridge.m: ObjC runtime needs a declaration for new _calculatedExpiration SPI in NSURLResponse in Foundation
7:21 PM Changeset in webkit [5811] by rjw
  • 2 edits in trunk/WebKit

Fixed 3512348: Rewrote _CG_drawHighlightForRun:style:atPoint: to use width
iterators. Much faster, better cheaper, etc.

Reviewed by Dave.

  • WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _CG_drawHighlightForRun:style:atPoint:]):
5:46 PM Changeset in webkit [5810] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3510956, crash on mezzoblue.com. Relax the float-list searching code that runs when
a float is removed.

Reviewed by darin

  • khtml/rendering/render_object.cpp: (checkFloats): (RenderObject::removeFromObjectLists):
5:33 PM Changeset in webkit [5809] by rjw
  • 2 edits in trunk/WebKit

Fixed 3503011. Added '-' and '?' to rounding hack.

Reviewed by John.

  • WebCoreSupport.subproj/WebTextRenderer.m: (isRoundingHackCharacter): (widthForNextCharacter):
5:30 PM Changeset in webkit [5808] by darin
  • 2 edits in trunk/WebKit

Reviewed by Richard.

  • finished fix to 3109132: can't open movie file via open panel
  • WebView.subproj/WebView.m: (+[WebView _supportedFileExtensions]): Include all the extensions for each MIME type, not jus the preferred one.
4:53 PM Changeset in webkit [5807] by kocienda
  • 2 edits in trunk/WebKit

Reviewed by Darin

Fix for this bug:

<rdar://problem/3512199>: WebBridge expiresTimeForResponse can be
improved to use better expiration calculations

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge expiresTimeForResponse:]): Switch to use new _calculatedExpiration SPI method on NSURLResponse.
1:19 PM Changeset in webkit [5806] by rjw
  • 2 edits in trunk/JavaScriptCore

Ack! More assertions. Lock ALL entry points into the interpreter!
(3511733).

Reviewed by Ken.

  • bindings/jni_jsobject.cpp: (Bindings::JSObject::call): (Bindings::JSObject::eval): (Bindings::JSObject::getMember): (Bindings::JSObject::setMember): (Bindings::JSObject::removeMember): (Bindings::JSObject::getSlot): (Bindings::JSObject::setSlot): (Bindings::JSObject::convertJObjectToValue):
11:33 AM Changeset in webkit [5805] by sullivan
  • 2 edits in trunk/WebCore

fixed <rdar://problem/3482852>: oft-seen, non-repro, nil-deref in
HTMLTokenizer::notifyFinished (snapfish.com, etc.)

At least one of the dupes of this bug is a separate (still reproducible) issue;
I'll clone it back to life and test the others.

Reviewed by Darin.

  • khtml/html/htmltokenizer.cpp: (HTMLTokenizer::notifyFinished): Move check of cachedScript.isEmpty() until after scriptExecution() call, because cachedScript.isEmpty() value can be changed by that call.

Dec 15, 2003:

10:24 PM Changeset in webkit [5804] by rjw
  • 2 edits in trunk/JavaScriptCore

Fixed a couple of snafus and removed some logging.

Reviewed by Maciej.

  • bindings/jni_jsobject.cpp: (Bindings::performJavaScriptAccess): (Bindings::completedJavaScriptAccess): (Bindings::dispatchToJavaScriptThread): Removed some annoying JS_LOG clutter.

(Bindings::RootObject::removeAllJavaReferencesForRoot):
Fixed allocation of key buffer that was called after it was needed.

(Bindings::JSObject::invoke):
(Bindings::JSObject::JSObject):
(Bindings::JSObject::getMember):
(Bindings::JSObject::getSlot):
Added additional interpreter locks around getMember and getSlot.
These functions may cause allocation of JS impls.

5:27 PM Changeset in webkit [5803] by rjw
  • 3 edits in trunk/JavaScriptCore

args weren't passed to 'call' invocation. d'oh.
lock interpreter when we create instances of JS impls.

Reviewed by Maciej.

  • bindings/jni_jsobject.cpp: (Bindings::JSObject::call): (Bindings::JSObject::eval): (Bindings::JSObject::getMember): (Bindings::JSObject::setMember): (Bindings::JSObject::getSlot): (Bindings::JSObject::convertValueToJObject): (Bindings::JSObject::convertJObjectToValue): (Bindings::JSObject::listFromJArray):
  • bindings/jni_jsobject.h:
4:45 PM Changeset in webkit [5802] by hyatt
  • 8 edits in trunk/WebCore

Fix for 3508807, positions/sizes wrong for text elts and multi-line elts for accessibility.

Reviewed by john

  • khtml/rendering/render_inline.cpp: (RenderInline::absoluteRects):
  • khtml/rendering/render_inline.h:
  • khtml/rendering/render_object.cpp: (RenderObject::absoluteRects):
  • khtml/rendering/render_object.h:
  • khtml/rendering/render_text.cpp: (RenderText::absoluteRects):
  • khtml/rendering/render_text.h:
  • kwq/KWQAccObject.mm: (boundingBoxRect): (-[KWQAccObject position]): (-[KWQAccObject size]):
3:14 PM Changeset in webkit [5801] by rjw
  • 9 edits in trunk

JavaScriptCore:

Last piece of LiveConnect! This checkin adds implementation
of the Java to JavaScript object conversion functions.

Reviewed by John.

  • bindings/jni/jni_instance.cpp: (JavaInstance::invokeMethod):
  • bindings/jni/jni_utility.cpp:
  • bindings/jni/jni_utility.h:
  • bindings/jni_jsobject.cpp: (Bindings::JSObject::invoke): (Bindings::JSObject::call): (Bindings::JSObject::eval): (Bindings::JSObject::getMember): (Bindings::JSObject::setMember): (Bindings::JSObject::getSlot): (Bindings::JSObject::setSlot): (Bindings::JSObject::createNative): (Bindings::JSObject::convertValueToJObject): (Bindings::JSObject::convertJObjectToValue): (Bindings::JSObject::listFromJArray):
  • bindings/jni_jsobject.h: (Bindings::):
  • bindings/runtime_method.cpp: (RuntimeMethodImp::get): (RuntimeMethodImp::codeType): (RuntimeMethodImp::execute):

WebCore:

Return 0 if the view doesn't have a bridge.

Reviewed by John.

  • kwq/WebCoreBridge.mm: (rootForView):
1:44 PM Changeset in webkit [5800] by cblu
  • 2 edits in trunk/WebKit

Fixed: <rdar://problem/3505546>: always get keychain prompt when sending mail using cert downloaded with Safari

Reviewed by john.

  • WebCoreSupport.subproj/WebKeyGeneration.cpp: (signedPublicKeyAndChallengeString): set up the SecAccessRef with "everything goes" restrictions
1:38 PM Changeset in webkit [5799] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3508792. Remove tables and cells as AxObjects.

Reviewed by john

  • kwq/KWQAccObject.mm: (-[KWQAccObject role]): (-[KWQAccObject accessibilityIsIgnored]):
1:28 PM Changeset in webkit [5798] by sullivan
  • 2 edits in trunk/WebCore
  • fixed <rdar://problem/3510459>: REGRESSION (100-113): Pressing button at google.com removes focus from text field

Reviewed by Dave.

  • khtml/khtmlview.cpp: (KHTMLView::dispatchMouseEvent): Don't clear the focused widget when a mousedown occurs on a widget that is focusable in the abstract sense but is not mouse focusable or currently keyboard focusable. This matches the behavior of older Safaris (clicking in background or page text will make the webview itself be first responder, but clicking on a button won't).

Dec 14, 2003:

8:58 PM Changeset in webkit [5797] by darin
  • 2 edits in trunk/WebCore

Reviewed by Maciej.

  • fixed 3458937: nil-deref in timed layout
  • khtml/khtmlview.cpp: (KHTMLView::layout): Add a nil check for m_part.
4:46 PM Changeset in webkit [5796] by darin
  • 9 edits in trunk

WebCore:

Reviewed by Maciej.

  • fixed 3311205: click() on a file input type form element does not work bring up the file chooser as it does in IE
  • khtml/html/html_formimpl.cpp: (HTMLInputElementImpl::click): Add a case for FILE that calls RenderFileButton's click() function. Get rid of the default case and list more cases explicitly. (HTMLInputElementImpl::accessKeyAction): Change FILE from just focus to focus/click.
  • khtml/rendering/render_form.h: Added a click() function to RenderFileButton.
  • khtml/rendering/render_form.cpp: (RenderFileButton::slotTextChanged): Added call to onChange on the element to match text input fields; helpful for the test case Adobe supplied. (RenderFileButton::click): Added. Calls click() on KWQFileButton.
  • kwq/KWQFileButton.h: Added a click function.
  • kwq/KWQFileButton.mm: (KWQFileButton::click): Added. Calls performClick on the file button.
  • kwq/WebCoreBridge.h: Add a performClick method to WebCoreFileButton.

WebKit:

Reviewed by Maciej.

  • fixed 3311205: click() on a file input type form element does not work bring up the file chooser as it does in IE
  • WebCoreSupport.subproj/WebFileButton.m: (-[WebFileButton performClick]): Add method for clicking, now part of the WebCoreFileButton protocol. The rest of the fix is in WebCore.
3:50 PM Changeset in webkit [5795] by mjs
  • 5 edits in trunk/WebCore

Reviewed by Darin.

<rdar://problem/3269212>: FILEMAKER: can't use Option objects created in a different window

  • khtml/ecma/kjs_binding.cpp: (ScriptInterpreter::updateDOMObjectDocument): Update per-document caching for the DOM object - let it be protected by both the old and the new document.
  • khtml/ecma/kjs_binding.h: Prototype new method.
  • khtml/xml/dom_nodeimpl.cpp: (NodeImpl::setDocument): New method to change a node's document pointer. (NodeImpl::checkAddChild): If the new child node is owned by the wrong document but not actually in it, change its document (using the two aforementioned methods) instead of throwing an exception.
  • khtml/xml/dom_nodeimpl.h: Prototype new method.
9:10 AM Changeset in webkit [5794] by darin
  • 3 edits in trunk/WebCore

Reviewed by Maciej.

  • fixed 3332280: REGRESSION (74-85): setting src of iframe results in two GETs
  • khtml/html/html_baseimpl.h: Added openURL virtual function.
  • khtml/html/html_baseimpl.cpp: (HTMLFrameElementImpl::updateForNewURL): Call openURL to do the meat of the work, since it's different for frames and iframes. (HTMLFrameElementImpl::openURL): Move the part that's different for frames in here. (HTMLFrameElementImpl::parseAttribute): Call setLocation to share code. (HTMLFrameElementImpl::setLocation): Do nothing if the location is not changing. Not needed to fix this bug, but could eliminate other cases of extra GETs. (HTMLIFrameElementImpl::parseAttribute): Remove special handling of SRC, because now we will end up calling openURL, which will do the right thing for iframes. (HTMLIFrameElementImpl::openURL): Instead of doing the change to the frame directly, use updateWidget, since that's what we do for other changes to iframes. To trigger a call to updateWidget(), set needWidgetUpdate and mark the node changed.
Note: See TracTimeline for information about the timeline view.