2 This is a short document with the progress of patches in the Safari codebase
3 being merged into khtml.
5 its ordered by directory and by files. Add here the parts that cannot be
6 immediately merged and need further negotiation.
8 Its recommended to add a //FIXME_SAFARI comment to places which need merging
9 in the khtml sourcecode.
11 ===========================================================================
13 ===========================================================================
15 - the font changes (except for the konq-body property) are still not merged.
16 They are partly not easily portable and I don't understand some parts of them.
17 a small part is merged but still unused (separate font sizes for fixed fonts)
19 - The Apple specific parts with their DPI settings.
21 - most of the html4.css changes are not in. I have already added the
24 ===========================================================================
26 ===========================================================================
28 - dom_doc.cpp / .h: preferred Stylesheet stuff. how does this correlate
29 to the changes in css_stylesheet.h / cpp ? <- It's independent (lars).
30 requires merging of the impl in xml/html first
32 - css_stylesheet.cpp / .h addition of preferredStyleSheet et all, but
35 - weird change in dom_doc.cpp: doctype()
37 - dom_string.h: removal of virtual destructor can't be merged, BIC.
38 doesn't make sense anyway, as one might want to inherit from it.
39 if it is a speed problem more stuff has to be handled with DOMStringImpl*
41 - html_document.cpp / .h setPolicyBaseURL for cookie handling. euhm?
43 ===========================================================================
45 ===========================================================================
48 - ScriptInterpreter domObjectsPerDocument + getDOMDocumentNode
51 - kjs_navigator (PluginBase refcount ; ProductSub)
52 hmm, why is e.g. the ref/deref stuff in APPLE_CHANGES?
53 - scope changes (kjs_events.cpp, DOMNode::pushEventHandlerScope)
54 - Image object: DOM::Document doc -> QGuardedPtr<DOM::DocumentImpl> doc;
55 (why? Or rather: should this also be done in all other domobject-wrappers?)
56 - window.scroll == scrollto or scrollby ??
57 - ScheduledAction: ObjectImp -> Object. Sounds good - why did we have an imp? refcount problem?
59 Needs other stuff before it can be applied:
60 - Identifier change (needs kjs2) (includes lengthPropertyName change)
62 ===========================================================================
64 ===========================================================================
66 - dtd.cpp: changes regarding ID_TEXT, ID_FORM, A and FONT left out
68 - html_formimpl.cpp/.h: many changes skipped. will need to integrate the
69 "activate first submit" button part.
71 - html_headimpl.cpp: changes for FOUC in external style loading
73 - html_image/html_form: name / id lookup cache skipped. want to do that
76 - html_miscimpl.cpp: case insensitive name / id matching
78 - html_parser: reapplying of dropped attributes. reported to be obsolete
80 ===========================================================================
82 ===========================================================================
84 - decoder.cpp/.h: changes in APPLE_CHANGES #ifdef that make decoder
85 being a null wrapper just using unicode directly instead of working
86 on charset specific 8bit data.
88 - htmltags.in: removal of <-konqblock>, not sure if that should ever
91 ===========================================================================
93 ===========================================================================
97 - RenderArena support. Usage of the arena is disabled for now. Needs
98 testing before I'll enable it.
100 - renamed print methods to paint
102 - RenderLayer code is used. Needs to be updated to apples latest version.
104 - Handling of block within inlines via continuations is done.
106 changes that need to be merged:
108 - bidi.h/cpp: lot's of changes to white space handling and others.
109 probably needs the merge of the tokenizer.
111 - font.cpp/h: some apple specific changes. Addition of a genericFamily enum,
112 IMO to speed up style stuff. Should IMO be separated out into a font_mac.cpp
115 - repaint has gotten a bool immediate
117 - render_applet.cpp: small #ifdef APPLE changes
120 paintBackground has some fixes for background position in
121 table cells and repeat handling. Need to examine in detail
123 calcWidth has some code for min and max width constraints
124 calcHeight has a hack for "height: 100%". Not sure I understand it.
127 some hack to avoid an infinite recursion on one of the evil tests.
128 Since I fixed anonymous table insertion, I doubt it is still needed. Needs testing.
133 ===========================================================================
135 ===========================================================================
137 - dom2_eventsimpl.cpp: computeLayerPos, requires mering of rendering/
139 - dom2_rangeimpl.cpp: createContextualFragment.. merging needed
142 renderArena support.. merging needed.
143 lowercase attribute names.. requires confirmation
144 preferred style sheet / delay recalcing style selector till
145 all external stylesheets are loaded.
147 - dom_nodeimpl.cpp: rendererNeedsClose. I don't fully understand this
148 seems to be only required for the avoid-unstyled-elements-flicker
149 restoreState -> QStringList change. will merge.
150 setLayouted(false) calls in attach(). this should imho be handled
151 in the rendering tree. needs feedback.
153 - dom_nodeimpl.cpp / .h: setMalformed() hack.
155 previous/nextrenderer addition
157 - dom_stringimpl.cpp: toLengthArray alternative implementation not merged
159 - dom_textimpl.cpp: setNodeValue: whitespace nuking needs merged!!
161 - xml_tokenizer.cpp/.h: completely skipped. unfinished work.