1 2008-08-19 Andreia Gaita <avidigal@novell.com>
3 * Assembly/AssemblyInfo.cs, ChangeLog,
4 Mono.WebBrowser/DOM/IAttribute.cs,
5 Mono.WebBrowser/DOM/IElementCollection.cs,
6 Mono.WebBrowser/DOM/IWindow.cs, Mono.WebBrowser/DOM/IDocument.cs,
7 Mono.WebBrowser/DOM/IAttributeCollection.cs,
8 Mono.WebBrowser/DOM/INodeList.cs,
9 Mono.WebBrowser/DOM/IWindowCollection.cs,
10 Mono.WebBrowser/DOM/INode.cs, Mono.WebBrowser/DOM/IElement.cs,
11 Mono.WebBrowser/DOM/INavigation.cs,
12 Mono.WebBrowser/DOM/IHistory.cs, Mono.WebBrowser/Exception.cs,
13 Mono.WebBrowser/IWebBrowser.cs, Mono.Mozilla/DOM/Document.cs,
14 Mono.Mozilla/DOM/HTMLElement.cs,
15 Mono.Mozilla/DOM/AttributeCollection.cs,
16 Mono.Mozilla/DOM/DocumentType.cs, Mono.Mozilla/DOM/NodeList.cs,
17 Mono.Mozilla/DOM/WindowCollection.cs, Mono.Mozilla/DOM/Node.cs,
18 Mono.Mozilla/DOM/NamedNodeMap.cs, Mono.Mozilla/DOM/Element.cs,
19 Mono.Mozilla/DOM/HTMLElementCollection.cs,
20 Mono.Mozilla/DOM/Navigation.cs, Mono.Mozilla/DOM/History.cs,
21 Mono.Mozilla/DOM/Attribute.cs, Mono.Mozilla/DOM/DOMObject.cs,
22 Mono.Mozilla/DOM/Window.cs, Mono.Mozilla/Callback.cs,
23 Mono.Mozilla/AsciiString.cs, Mono.Mozilla/WebBrowser.cs,
24 Mono.Mozilla/UniString.cs, Mono.Mozilla/Base.cs: Fix inconsistent
25 newlines. Add eol-style property.
27 2008-08-19 Andreia Gaita <avidigal@novell.com>
29 * Assembly/AssemblyInfo.cs, ChangeLog,
30 Mono.WebBrowser/DOM/IAttribute.cs,
31 Mono.WebBrowser/DOM/IElementCollection.cs,
32 Mono.WebBrowser/DOM/IWindow.cs, Mono.WebBrowser/DOM/IDocument.cs,
33 Mono.WebBrowser/DOM/IAttributeCollection.cs,
34 Mono.WebBrowser/DOM/INodeList.cs,
35 Mono.WebBrowser/DOM/IWindowCollection.cs,
36 Mono.WebBrowser/DOM/INode.cs, Mono.WebBrowser/DOM/IElement.cs,
37 Mono.WebBrowser/DOM/INavigation.cs,
38 Mono.WebBrowser/DOM/IHistory.cs, Mono.WebBrowser/Exception.cs,
39 Mono.WebBrowser/IWebBrowser.cs, Mono.Mozilla/DOM/Document.cs,
40 Mono.Mozilla/DOM/HTMLElement.cs,
41 Mono.Mozilla/DOM/AttributeCollection.cs,
42 Mono.Mozilla/DOM/DocumentType.cs, Mono.Mozilla/DOM/NodeList.cs,
43 Mono.Mozilla/DOM/WindowCollection.cs, Mono.Mozilla/DOM/Node.cs,
44 Mono.Mozilla/DOM/NamedNodeMap.cs, Mono.Mozilla/DOM/Element.cs,
45 Mono.Mozilla/DOM/HTMLElementCollection.cs,
46 Mono.Mozilla/DOM/Navigation.cs, Mono.Mozilla/DOM/History.cs,
47 Mono.Mozilla/DOM/Attribute.cs, Mono.Mozilla/DOM/DOMObject.cs,
48 Mono.Mozilla/DOM/Window.cs, Mono.Mozilla/Callback.cs,
49 Mono.Mozilla/AsciiString.cs, Mono.Mozilla/WebBrowser.cs,
50 Mono.Mozilla/UniString.cs, Mono.Mozilla/Base.cs: Fix inconsistent
51 newlines. Add eol-style property
53 2008-06-11 Andreia Gaita <avidigal@novell.com>
55 * Mono.Mozilla/DOM/Attribute.cs: Fix missing setter
57 2008-06-10 Andreia Gaita <avidigal@novell.com>
59 * Assembly/AssemblyInfo.cs: Version bump
60 * Mono.Mozilla/Callback.cs: Fix initial load bug (uri can be null on
61 first load). Add LoadStopped event for documents. Add Security
62 change and Context menu events.
63 * Mono.Mozilla/DOM/AttributeCollection.cs: Fix header. Add support for
64 creating empty collections.
65 * Mono.Mozilla/DOM/Document.cs, Mono.WebBrowser/DOM/IDocument.cs:
66 Optimize Window getter. Add CreateAttribute, LoadStoppedEvent
67 * Mono.Mozilla/DOM/DOMImplementation.cs,
68 Mono.Mozilla/DOM/Navigation.cs: Save documents to a list so they
69 can be looked up later for events.
70 * Mono.Mozilla/DOM/Element.cs, Mono.WebBrowser/DOM/IElement.cs: Add
71 Focus, Blur, ScrollIntoView
72 * Mono.Mozilla/DOM/EventListener.cs: Fix header. Add support for firing
73 events for any type of object
74 * Mono.Mozilla/DOM/History.cs, Mono.WebBrowser/DOM/IHistory.cs: Added
75 to support separate history on each window
76 * Mono.Mozilla/DOM/HTMLElement.cs: Moved AppendChild and InsertBefore
77 to the Node parent class
78 * Mono.Mozilla/DOM/Node.cs, Mono.WebBrowser/DOM/INode.cs: Fetch owner
79 document from a cached list if it's been looked up before. Add
80 Value setter. Add InsertBefore and AppendChild from HTMLElement,
81 implement ReplaceChild, RemoveChild. Add AttachEventHandler and
82 DetachEventHandler to support generic event firing. Add Focus, Blur
84 * Mono.Mozilla/DOM/NodeList.cs: add support for empty lists.
85 * Mono.Mozilla/DOM/Window.cs, Mono.WebBrowser/DOM/IWindow.cs: Fetch
86 owner document from a cached list if it's been looked up before.
87 Add history and focus support. Add Load, Unload, OnFocus, OnBlur,
89 * Mono.Mozilla/interfaces/extras/NodeType.cs,
90 Mono.Mozilla/interfaces/extras/Options.cs: Fix header
91 * Mono.Mozilla/WebBrowser.cs, Mono.WebBrowser/IWebBrowser.cs: Add
92 hashtable for caching document objects. Remove ScrollbarsEnabled
93 implementation, not needed (webbrowser is using javascript
94 instead). Add Security and Context menu events.
95 * Mono.WebBrowser.dll.sources, Mono.WebBrowser2K5.csproj: Added new
96 classes/interfaces: Mono.Mozilla/DOM/History.cs,
97 Mono.WebBrowser/DOM/IHistory.cs, Mono.WebBrowser/DOM/EventArgs.cs,
98 Mono.WebBrowser/DOM/EventHandlers.cs. Removed classes/interfaces:
99 Mono.WebBrowser/DOM/NodeEventArgs.cs,
100 Mono.WebBrowser/DOM/NodeEventHandler.cs
101 * Mono.WebBrowser/DOM/EventArgs.cs,
102 Mono.WebBrowser/DOM/EventHandlers.cs: Consolidate events into a
104 * Mono.WebBrowser/DOM/NodeEventArgs.cs: Removed, event declarations are
106 * Mono.WebBrowser/DOM/NodeEventHandler.cs: Removed, event declarations
107 are now in EventHandlers
109 2008-06-02 Andreia Gaita <avidigal@novell.com>
111 * Mono.WebBrowser.dll.sources, Mono.WebBrowser2K5.csproj: Added new
113 * Mono.WebBrowser/DOM/IMediaList.cs: Added (Stylesheet.Media support)
114 * Mono.WebBrowser/DOM/IDocument.cs: Added Doctype, Implementation,
116 * Mono.WebBrowser/DOM/IDocumentType.cs,
117 Mono.Mozilla/DOM/DocumentType.cs: Added (Document.DocumentType
119 * Mono.WebBrowser/DOM/IStylesheetList.cs,
120 Mono.Mozilla/DOM/StylesheetList.cs,
121 Mono.Mozilla/interfaces/nsIDOMHTMLStyleElement.cs,
122 Mono.Mozilla/interfaces/nsIDOMDocumentStyle.cs,
123 Mono.Mozilla/interfaces/nsIDOMStyleSheetList.cs: Added
124 (Document.Stylesheets support)
125 * Mono.WebBrowser/DOM/IDOMImplementation.cs,
126 Mono.Mozilla/DOM/DOMImplementation.cs: Added
127 (Document.Implementation support)
128 * Mono.WebBrowser/DOM/INamedNodeMap.cs,
129 Mono.Mozilla/DOM/NamedNodeMap.cs: Added (Node collection for named
130 node access - DocumentType.Entities, DocumentType.Notations)
131 * Mono.WebBrowser/DOM/IStylesheet.cs, Mono.Mozilla/DOM/Stylesheet.cs:
132 Added (StylesheetList.Item support)
133 * Mono.WebBrowser/Exception.cs: Added error code for Preferences
135 * Mono.WebBrowser/IWebBrowser.cs, Mono.Mozilla/WebBrowser.cs: Add
136 Offline, ScrollbarsEnabled
137 * Mono.Mozilla/DOM/Document.cs: This class wraps both dom Document and
138 HTMLDocument, so assume that the object is a Document (which
139 HTMLDocument inherits from), and cast appropriately when calling
140 properties or methods that are from the child class. Add DocType,
141 Implementation, Stylesheets acessors
142 * Mono.Mozilla/interfaces/nsIPrefBranch.cs,
143 Mono.Mozilla/interfaces/nsIPrefService.cs: Added (browser
145 * Mono.Mozilla/interfaces/nsIClassInfo.cs: Added (interface querying
147 * Assembly/AssemblyInfo.cs: Version bump
149 2008-05-22 Andreia Gaita <avidigal@novell.com>
151 * Makefile: Fix build target
153 2008-05-22 Andreia Gaita <avidigal@novell.com>
155 * README: Warning about dependencies
157 2008-05-22 Andreia Gaita <avidigal@novell.com>
159 * Assembly/AssemblyInfo.cs, build-csproj2k5,
160 Mono.WebBrowser.dll.sources, Mono.WebBrowser.csproj,
161 Mono.WebBrowser2K5.csproj, Makefile: Long overdue rename of
162 Mono.Mozilla to Mono.WebBrowser. step 2 - renaming the assembly,
163 project files, version bump
165 2008-05-22 Andreia Gaita <avidigal@novell.com>
167 * Makefile: Long overdue rename of Mono.Mozilla to Mono.WebBrowser.
168 step 1 - directory moving
170 2008-05-22 Andreia Gaita <avidigal@novell.com>
172 * Mono.WebBrowser/DOM/INavigation.cs: GetHashCode is not needed here
173 * Mono.WebBrowser/IWebBrowser.cs, Mono.Mozilla/WebBrowser.cs: Hide the
174 generic event, internal use only
175 * Mono.Mozilla/Callback.cs: Add more xpcom helper objects for
176 OnProgress. Cache the current uri for events.
178 2008-05-20 Andreia Gaita <avidigal@novell.com>
180 * Mono.WebBrowser/IWebBrowser.cs, Mono.Mozilla/WebBrowser.cs: Refactor
181 loading events to something more sane and usable
182 * Mono.Mozilla/DOM/Document.cs: Check for nulls
183 * Mono.Mozilla/Callback.cs: Added progress and request objects from the
184 loading events. Track progress updates.
186 2008-05-08 Andreia Gaita <avidigal@novell.com>
188 * Mono.Mozilla2K5.csproj, Mono.Mozilla.dll.sources: Interfaces added to
189 support stylesheet getters/setters
190 * Mono.WebBrowser/DOM/IElement.cs, Mono.Mozilla/DOM/Node.cs: Implement
192 * Mono.Mozilla/interfaces/nsIDOMMediaList.cs,
193 Mono.Mozilla/interfaces/nsIDOMCSSValue.cs,
194 Mono.Mozilla/interfaces/nsIDOMCSSStyleSheet.cs,
195 Mono.Mozilla/interfaces/nsIDOMCSSRuleList.cs,
196 Mono.Mozilla/interfaces/nsIDOMStyleSheet.cs,
197 Mono.Mozilla/interfaces/nsIDOMCSSStyleDeclaration.cs,
198 Mono.Mozilla/interfaces/nsIDOMViewCSS.cs,
199 Mono.Mozilla/interfaces/nsIDOMCSSRule.cs: Added to support
200 stylesheet getters/setters
202 2008-05-07 Andreia Gaita <avidigal@novell.com>
204 * Mono.WebBrowser/DOM/IElement.cs, Mono.Mozilla/DOM/HTMLElement.cs,
205 Mono.Mozilla/DOM/Element.cs: Implement TabIndex
207 2008-05-07 Andreia Gaita <avidigal@novell.com>
209 * Mono.WebBrowser/DOM/IElement.cs, Mono.Mozilla/DOM/HTMLElement.cs,
210 Mono.Mozilla/DOM/Element.cs: Implement InnerHTML setter
212 2008-05-07 Andreia Gaita <avidigal@novell.com>
214 * Mono.WebBrowser/DOM/IDocument.cs, Mono.Mozilla/DOM/Document.cs,
215 Mono.Mozilla/DOM/Window.cs: Helper to retrieve the window of a
218 2008-04-23 Andreia Gaita <avidigal@novell.com>
220 * Mono.Mozilla/DOM/Node.cs: No need to proxy event objects, they should
223 2008-04-23 Andreia Gaita <avidigal@novell.com>
225 * Mono.Mozilla/DOM/Node.cs: Add support for different types of events
226 that can be injected into the embedded browser
228 2008-04-23 Andreia Gaita <avidigal@novell.com>
230 * Mono.Mozilla/DOM/Node.cs, Mono.WebBrowser/DOM/INode.cs: Add event
232 * Mono.Mozilla/interfaces/nsIDOMDocumentEvent.cs,
233 Mono.Mozilla.dll.sources, Mono.Mozilla2K5.csproj: Interface to
234 support firing events
235 * Mono.Mozilla/WebBrowser.cs: Hide away debug CWLs
237 2008-04-18 Andreia Gaita <avidigal@novell.com>
239 * Mono.WebBrowser/DOM/IDocument.cs, Mono.Mozilla/DOM/Document.cs,
240 Mono.Mozilla/Base.cs: Add javascript script evaluation support
241 * Mono.WebBrowser/IWebBrowser.cs, Mono.Mozilla/WebBrowser.cs: Add
242 StatusChanged event handler and args
243 * Mono.Mozilla/Callback.cs: Change OnStatusChange callback signature to
244 unicode, implement listeners call.
246 2008-04-18 Andreia Gaita <avidigal@novell.com>
248 * Mono.Mozilla.dll.sources, Mono.Mozilla2K5.csproj: Added new generated
249 interfaces for "Save to Disk" support and page loading monitoring
250 * Mono.Mozilla/interfaces/nsICancelable.cs,
251 Mono.Mozilla/interfaces/nsIWebBrowserPersist.cs: Interfaces for
252 "Save to Disk" support
253 * Mono.Mozilla/interfaces/nsIWebProgress.cs,
254 Mono.Mozilla/interfaces/nsIWebProgressListener.cs: Interfaces for
255 page loading monitoring
257 2008-04-18 Andreia Gaita <avidigal@novell.com>
259 * build-csproj2k5: Fix line endings
261 2008-04-16 Andreia Gaita <avidigal@novell.com>
263 * Mono.Mozilla/DOM/Navigation.cs, Mono.WebBrowser/DOM/INavigation.cs:
264 Add history count getter
266 2008-04-09 Andreia Gaita <avidigal@novell.com>
268 * Mono.Mozilla2K5.csproj, Mono.Mozilla.dll.sources,
269 Mono.Mozilla/interfaces/nsIDOMNSRange.cs: New interface for
270 OuterHTML setter support
271 * Mono.WebBrowser/DOM/INode.cs: Add Attributes accessor
272 * Mono.WebBrowser/DOM/IElement.cs: Add OuterText, OuterHTML
273 * Mono.Mozilla/DOM/HTMLElement.cs: Use the base class's unmanaged
274 object directly instead of storing a copy locally. Makes it easier
275 to replace the object if needed (outerHTML setter). Implement
277 * Mono.Mozilla/DOM/AttributeCollection.cs: Update nodeCount on parent
279 * Mono.Mozilla/DOM/NodeList.cs: Use the Count property getter on all
280 methods at least once to make sure the list always gets a chance to
282 * Mono.Mozilla/DOM/Node.cs: Use the base class's unmanaged object
283 directly instead of storing a copy locally. Makes it easier to
284 replace the object if needed (outerHTML setter).
285 * Mono.Mozilla/DOM/Element.cs: Use the base class's unmanaged object
286 directly instead of storing a copy locally. Makes it easier to
287 replace the object if needed (outerHTML setter). Implement
290 2008-04-07 Andreia Gaita <avidigal@novell.com>
292 * Mono.Mozilla/Base.cs: Change the initialization logic so that
293 gluezilla_init is only called once for every app run (no matter how
294 many browser windows end up being created).
296 2008-04-04 Andreia Gaita <avidigal@novell.com>
298 * Mono.Mozilla/DOM/Element.cs,
299 * Mono.Mozilla/DOM/HTMLElement.cs,
300 * Mono.WebBrowser/DOM/IElement.cs: Implement ClientWidth, ClientHeight,
301 ScrollWidth, ScrollHeight, ScrollLeft, ScrollTop, OffsetHeight,
302 OffsetWidth, OffsetLeft, OffsetTop, OffsetParent, Disabled.
304 2008-04-04 Andreia Gaita <avidigal@novell.com>
306 * Mono.Mozilla/DOM/Document.cs: Differentiate between html and non-html
307 elements when creating the wrapper object for the active element, as
308 certain properties are only implemented in html elements.
310 2008-04-04 Andreia Gaita <avidigal@novell.com>
312 * Mono.Mozilla/AsciiString.cs, Mono.Mozilla/UniString.cs: Fix for string
313 getter cache, always mark the string as dirty when fetching the handle.
315 2008-03-27 Andreia Gaita <avidigal@novell.com>
317 * Mono.WebBrowser/IWebBrowser.cs, Mono.Mozilla/WebBrowser.cs: Add
318 Initialized property so users can check whether everything loaded
319 properly. Abstract the stream behind nice Render methods.
320 * Mono.Mozilla/AsciiString.cs, Mono.Mozilla/UniString.cs: Add missing
321 field to the string container structure. Fix handle getter.
322 * Mono.Mozilla/Base.cs: Debug helper method change
324 2008-03-03 Andreia Gaita <avidigal@novell.com>
326 * Mono.WebBrowser/Exception.cs: Fix 1.1 build. Add header.
328 2008-03-03 Andreia Gaita <avidigal@novell.com>
330 * Mono.Mozilla/Base.cs: Add service manager getter.
331 * Mono.Mozilla/interfaces/nsIWebBrowserStream.cs: Send basic IntPtr instead of byte array, arrays
333 * Mono.Mozilla/WebBrowser.cs: Proper streaming support, and exception handling
334 * Mono.WebBrowser/Exception.cs, Manager.cs: exception handling
336 2008-03-02 Andreia Gaita <avidigal@novell.com>
338 * Mono.Mozilla.dll.sources: Added yet another bunch of interfaces to support
339 streaming and services
340 * Mono.Mozilla/Base.cs: Added a ServiceManager getter to allow direct access
341 to all mozilla services through contract IDs
342 * Mono.Mozilla/WebBrowser.cs: Stream support, for sending data directly to
343 the embedded browser.
345 2008-02-28 Andreia Gaita <avidigal@novell.com>
347 * Mono.Mozilla/DOM/EventListener.cs: Implementation of the
348 nsIDOMEventListener, so that events can be registered as-needed
349 for each dom object, instead of gluezilla firing everything up.
350 This class will eventually replace gluezilla's EventListener.
352 * Mono.Mozilla/DOM/Node.cs: Store the hashcode of the unmanaged
353 object before proxying so we can use it to match events to objects.
354 Implement event handling for dom objects. These events are registered
355 on the managed EventListener and go straight out to the caller (don't
356 go out through the Callback class).
358 * Mono.Mozilla/DOM/HTMLElement.cs,
359 Mono.Mozilla/DOM/Attribute.cs,
360 Mono.Mozilla/DOM/Element.cs: Use the hashcode stored on the
361 parent Node class instead of the local object hashcode (the
362 local object is a proxy, while the stored hashcode is from
365 * Mono.Mozilla/DOM/Navigation.cs: Implement navigation through
368 * Mono.Mozilla/WebBrowser.cs: Move callback-related code to
369 the Callback class. Add support for registering and firing events
370 coming from the Callback class (generic window events, element
371 specific events come through the element it was registered on).
373 * Mono.Mozilla/Callback.cs: Cleaned up unused callbacks, moved
374 callback-related code from WebBrowser.cs to here to keep all
375 callback code together. All events coming through here are
376 window-related and get sent to the handlers registered through
377 the WebBrowser class/interface.
379 * Mono.Mozilla/ICallback.cs: Removed, unnecessary overhead.
380 * Mono.Mozilla/Base.cs: new pinvokes to support the string classes
381 * Mono.Mozilla/UniString.cs: Wrapper for mozilla's nsString class
382 * Mono.Mozilla/AsciiString.cs: Wrapper for mozilla's nsCString class
384 * Mono.Mozilla.dll.sources:
385 new files: AsciiString, UniString, EventListener, nsIDOMEvent,
386 nsIDOMEventListener, nsIDOMEventTarget, nsIDOMKeyEvent, nsIDOMMouseEvent,
387 nsIDOMUIEvent, NodeEventArgs, NodeEventHandler
390 2008-02-06 Andreia Gaita <avidigal@novell.com>
392 * Navigation.cs: Pass the proper flags to reload
394 2008-01-28 Andreia Gaita <avidigal@novell.com>
396 * Assembly/AssemblyInfo.cs: Version change
398 2008-01-28 Andreia Gaita <avidigal@novell.com>
400 * Mono.WebBrowser/DOM/IWindow.cs, Mono.Mozilla/DOM/Window.cs:
401 Add Document, Frames, StatusText properties, Load and Unload events.
403 * Mono.Mozilla/WebBrowser.cs: Add StatusText getter and update it on
404 callback. Add Load and Unload events and bubble them to the current
407 * Mono.Mozilla/ICallback.cs, Mono.Mozilla/Callback.cs: Rearrange callbacks,
408 FocusIn and FocusOut are now Focus and Blur. Add Load and Unload callbacks.
410 * Mono.Mozilla/DOM/DOMObject.cs: Add event handler support.
412 2008-01-24 Andreia Gaita <avidigal@novell.com>
414 * Mono.Mozilla.dll.sources, Mono.Mozilla.2K5.csproj: Added files.
416 * Mono.Mozilla/interfaces/*.cs: Add yet more mozilla interfaces to
417 support getting windows, page encodings, dealing with focused elements.
418 Update GetProxyForObject signature.
420 * Mono.Mozilla/Base.cs: Remove unneeded navigation methods, Navigation
421 now goes through the Navigation object.
422 (GetProxyForObject): Use GetObjectForIUnknown instead of
423 GetTypedObjectForIUnknown, this one is not working properly. GetProxyForObject
424 now has two parameters, instead of three (no need to send the type). All the
425 interfaces have been regenerated and xpidl2cs changed for the new signature.
427 * Mono.WebBrowser/IWebBrowser.cs, Mono.Mozilla/WebBrowser.cs:
428 Implement Window getter. Add events and event watcher to track page loading.
430 * Mono.Mozilla/DOM/Attribute.cs, Mono.WebBrowser/DOM/IAttribute.cs:
433 * Mono.WebBrowser/DOM/IDocument.cs, Mono.Mozilla/DOM/Document.cs:
434 Implemented: Active, ActiveLinkColor, Anchors, Applets, Background, BackColor,
435 Charset, Cookie, Domain, ForeColor, Forms, Images, LinkColor, Links,
436 VisitedLinkColor, GetElement, Equals, GetHashCode
438 * Mono.WebBrowser/DOM/IElement.cs, Mono.Mozilla/DOM/Element.cs:
439 Implemented: Children, TagName, AppendChild, Equals, GetElementsByTagName,
440 GetHashCode, SetAttribute.
441 Changed get_All to return all children recursively.
443 * Mono.WebBrowser/DOM/IElementCollection.cs: Fix header. Add GetHashCode.
445 * Mono.Mozilla/DOM/HTMLElementCollection.cs: Fix header. Change Load() so
446 it only includes html elements in the collection.
448 * Mono.WebBrowser/DOM/INavigation.cs, Mono.Mozilla/DOM/Navigation.cs:
449 Implement GetHashCode. Add CharsetChange option to the load flags so support
450 refreshing a page after an encoding change.
452 * Mono.WebBrowser/DOM/INode.cs, Mono.Mozilla/DOM/Node.cs:
453 Implement: InsertBefore, LastChild, Next, Owner, Parent, Previous, GetHashCode
455 * Mono.WebBrowser/DOM/INodeList.cs, Mono.Mozilla/DOM/NodeList.cs:
456 Fix header. Implement GetHashCode. Add support for creating empty
457 collections that get nodes added later, add support for removing nodes.
459 * Mono.WebBrowser/DOM/IWindow.cs, Mono.Mozilla/DOM/Window.cs:
460 Added. Represents a window (top level or frame) and wraps nsIDOMWindow.
462 * Mono.WebBrowser/DOM/IWindowCollection.cs,
463 Mono.Mozilla/DOM/WindowCollection.cs:
464 Added. Represents a collection of windows, wraps nsIDOMWindowCollection.
466 2008-01-21 Andreia Gaita <avidigal@novell.com>
468 * Mono.WebBrowser/DOM/INavigation.cs: Add Go overload with flags,
469 and LoadFlags enumeration.
471 * Mono.WebBrowser/DOM/IDocument.cs: Add CreateElement, GetElement,
474 * Mono.Mozilla/DOM/Document.cs: Add CreateElement, GetElement,
475 Equals and Write implementations.
476 Fix GetElementsByTagName to return a proper IElementCollection instance.
478 * Mono.Mozilla/DOM/Element.cs: Add Top, Left, Width and Height
479 properties to support retrieving elements by location.
481 * Mono.Mozilla/DOM/Navigation.cs: Reset WebBrowser object cache
482 so that the next time Document (and others, eventually) is accessed,
483 it will be retrieved from mozilla. This should happen on any
484 action that causes a document reload.
486 Add Go overload to support flags when loading an uri (bypassing proxies,
487 refreshing from cache, etc).
489 * Mono.Mozilla/DOM/HTMLElementCollection.cs: Fix inheritance
491 2008-01-21 Andreia Gaita <avidigal@novell.com>
493 * Mono.Mozilla/WebBrowser.cs: fix Document accessor
495 2008-01-14 Andreia Gaita <avidigal@novell.com>
497 * Mono.Mozilla.dll.sources, Mono.Mozilla2K5.csproj: Updated.
499 * build-csproj2k5: Fix guid.
501 * Mono.Mozilla/DOM/*, Mono.WebBrowser/DOM/*:
502 - Reorganization to get rid of unneeded DOM prefix.
503 - All constructors now get a proxy only if the application is running under
504 a different toolkit than the mozilla engine. If they match, no proxies are
505 needed since there is no need to switch threads.
507 * Mono.Mozilla/DOM/DOMObject.cs:
508 - Move resources list to here since most objects need one.
509 - WebBrowser now has some internal methods, so store the class instead of the
510 interface for child classes to use.
512 * Mono.Mozilla/DOM/HTMLElement.cs, Mono.Mozilla/DOM/Element.cs:
513 IElement represents all element types (html or not), and is implemented
514 by two classes, one that wraps html elements, and another that wraps other
515 element types. IElement represents both in the public API so it's easier
516 to deal with for the api user.
518 * Mono.Mozilla/DOM/Attribute.cs,
519 Mono.Mozilla/DOM/AttributeCollection.cs,
520 Mono.WebBrowser/DOM/IAttributeCollection.cs,
521 Mono.WebBrowser/DOM/IAttribute.cs:
522 Added. Represent attributes from an element.
524 * Mono.Mozilla/DOM/Document.cs, Mono.WebBrowser/DOM/IDocument.cs:
525 - renamed from DOMHTMLDocument and IDOMHTMLDocument, respectively
526 - Added GetElementsByTagName method.
527 - Document is now retrieved from the WebNavigation interface, so get a proxy for
528 it in the constructor.
529 - Add an internal method that returns the unmanaged resource, the Element.InnerText
530 property needs to use it.
532 * Mono.Mozilla/DOM/Element.cs, Mono.WebBrowser/DOM/IElement.cs:
533 - renamed from DOMElement and IDOMElement, respectively
534 - Added the following properties: InnerText, InnerHTML, All (returns all child
535 elements), HasAttribute, GetAttribute. InnerHTML is virtual, and is implemented
538 * Mono.Mozilla/DOM/HTMLElement.cs: Implement InnerHTML property.
540 * Mono.Mozilla/DOM/HTMLElementCollection.cs: Added. Subclass of NodeList that
541 represents a list of html elements.
543 * Mono.Mozilla/DOM/Navigation.cs: Added a Document property that uses the
544 nsIWebNavigation interface to access the Document directly instead of going
547 * Mono.Mozilla/DOM/Node.cs, Mono.WebBrowser/DOM/INode.cs: Renamed from
548 DOMNode and IDOMNode, respectively. Added the following properties:
549 - Attributes (returns the attributes of a node)
551 - Type (returns the type of a node, i.e., Element, Attribute, etc)
554 Added public enumeration to determine a node type.
556 * Mono.Mozilla/DOM/NodeList.cs, Mono.WebBrowser/DOM/INodeList.cs: Renamed
557 from DOMNodeList and IDOMNodeList, respectively. Allow subclasses to fill in and
558 access the collection of nodes, as well as override the loading method.
560 * Mono.Mozilla/interfaces/extras/NodeType.cs: Added. Represents the various
561 types of a Node (element, attribute, etc).
563 * Mono.WebBrowser/DOM/IDOMHTMLElement.cs: Removed. Merged with IElement.
565 * Mono.Mozilla/Base.cs: Add support for tracking which toolkit the
566 application is running under, so I know if I need to create threads and
567 proxies or not. Send that info to gluezilla, and get back which toolkit
568 the mozilla engine is using.
570 * Mono.Mozilla/WebBrowser.cs: Save the application and engine toolkit info.
571 Change the Document accessor so it goes through the Navigation object instead
574 2008-01-14 Andreia Gaita <avidigal@novell.com>
576 * Mono.Mozilla/interfaces/nsIDOMNSHTMLElement.cs: Added. Interface to
577 access the InnerHtml property of an element.
579 2008-01-09 Andreia Gaita <avidigal@novell.com>
581 * Mono.Mozilla/Base.cs,
582 Mono.Mozilla/WebBrowser.cs,
583 Mono.WebBrowser/IWebBrowser.cs,
584 Mono.WebBrowser/Manager.cs:
585 Add initial support for specifying the toolkit the application is running
586 on (gtk or winforms). Knowing this allows gluezilla not to initialize
587 a gtk loop if the application is already running one (and is passing
588 gluezilla a gtk handle and not an X/HWND handle). This should make it
589 easy to also use gluezilla/Mono.Mozilla with gtk apps.
591 2008-01-09 Andreia Gaita <avidigal@novell.com>
593 * build-csproj2k5: take out weird characters creeping in, vstudio
594 doesn't appreciate them.
596 2008-01-07 Andreia Gaita <avidigal@novell.com>
598 * build-csproj2k5: Added to generate Mono.Mozilla2K5.csproj from .sources
599 * Mono.Mozilla2K5.csproj: updated
600 * Makefile: run the build-csproj2k5
602 2008-01-07 Andreia Gaita <avidigal@novell.com>
604 * Mono.Mozilla.dll.sources: Added new classes (see below).
606 * Mono.Mozilla/DOM/DOMObject.cs:
607 - Store reference to the IWebBrowser control that created this (and
608 subclassed) object. This reference needs to be used in any gluezilla calls
609 that have to invoke methods on the mozilla ui thread (any Widget method,
610 whose ptr reference is stored in Base and indexed by IWebBrowser control).
612 - Tweak the Dispose pattern: subclasses don't have their own private
613 dispose field to keep track of whether they've been disposed already, this
614 base class takes care of that.
616 * Mono.Mozilla/DOM/DOMNode.cs:
617 - Initialize a proxy to the nsI object that this wrapper encapsulates.
618 - Cache all objects returned from this object in an hashtable, so that
619 1) we can keep track of all objects and release them earlier and
621 2) we don't have to keep creating new objects everytime we get requests
623 - Implement FirstChild and LocalName
624 - Add Dispose pattern
626 * Mono.Mozilla/DOM/DOMHTMLElement.cs:
627 - Change the inheritance to DOMElement.
628 - Change the constructor to send the nsI object and IWebBrowser up the tree.
629 - Get a proxy to the nsI object.
630 - Add dispose pattern.
632 * Mono.Mozilla/DOM/DOMHTMLDocument.cs:
633 - Change the constructor to send the IWebBrowser instance up the tree.
634 - Add resources hashtable to keep track of already-fetched objects.
635 Particularly useful here since getElementById can be called n times, so it
636 would be complicated to keep track and dispose properly of all the objects.
637 - Implement DocumentElement
638 - Change Body and GetElementById to use resources cache
639 - Fix GetElementById case
641 * Mono.Mozilla/DOM/DOMElement.cs: Added. Inherits from DOMNode, so the
642 parent class also keeps track of the nsI object.
643 * Mono.Mozilla/DOM/DOMNodeList.cs: Added to support easy iteration of nodes.
644 * Mono.Mozilla/DOM/Navigation.cs: Tweak dispose pattern and constructor to
647 * Mono.Mozilla/WebBrowser.cs: Fix the DOMHTMLDocument creation.
649 * Mono.WebBrowser/DOM/IDOMHTMLDocument.cs: Fix case on GetElementById, add
650 DocumentElement property.
652 * Mono.WebBrowser/DOM/IDOMNodeList.cs,
653 Mono.WebBrowser/DOM/IDOMElement.cs:
654 Added, no external functionality for now.
656 2008-01-07 Andreia Gaita <avidigal@novell.com>
658 * Mono.Mozilla/DOM/Navigation.cs: Fix calls to the nsIWebNavigation
659 interface (case change from being generated through xpidl2cs. that's what
660 I get for merging in batches :/ )
662 2008-01-07 Andreia Gaita <avidigal@novell.com>
664 * Mono.Mozilla/Base.cs: Add GetProxyForObject method to create proxies
666 Remove trace listener.
668 2008-01-07 Andreia Gaita <avidigal@novell.com>
670 * Mono.Mozilla/interfaces/nsIDOMRange.cs,
671 Mono.Mozilla/interfaces/nsIDOMDocumentRange.cs:
672 Added to get the content of elements.
674 * Mono.Mozilla/interfaces/*.cs: Regenerated with the xpidl2cs.pl script.
675 Add helper class to create a proxy for all native mozilla interfaces.
677 * Mono.Mozilla/interfaces/extras/: classes for the mozilla interfaces that
678 don't get generated automatically, like enums, delegates, etc.
680 * Mono.Mozilla/interfaces/extras/nsIWriteSegmentFun.cs:
681 Delegate callback for a writer function for mozilla streams
682 (nsIInputStream.readSegments)
684 * Mono.Mozilla/interfaces/extras/Options.cs: Enum for nsIWebNavigation.stop
686 2007-12-25 Andreia Gaita <avidigal@novell.com>
688 * Mono.Mozilla/DOM/DOMHTMLDocument.cs,
689 Mono.Mozilla/DOM/DOMObject.cs
690 Mono.Mozilla/DOM/Navigation.cs:
692 Properly dispose unmanaged resources.
693 Use native mozilla dom interfaces through com directly instead
694 of going through the glue, as they are now proxies that invoke
695 the methods on the main mozilla ui properly (avoiding threading problems).
696 Check if library was properly initialized.
697 Add Go method - implements navigation
698 directly through COM instead of going through the glue.
700 * Mono.Mozilla/interfaces/nsIWebNavigation.cs: Use typed flags instead of
701 generic uint32. Remove comments about threading (as it is now safe to use
704 * Mono.Mozilla/Base.cs: Return bool on initialization so I can track if
705 library was properly initialized from the interfaces that go directly
706 through COM and not through the glue
708 * Mono.Mozilla/WebBrowser.cs: Save initialization result so interfaces
709 don't get called if the library was not initialized.
711 2007-11-08 Andreia Gaita <avidigal@novell.com>
713 * Mono.Mozilla.csproj, Mono.Mozilla2K5.csproj: Synch with .sources
715 2007-11-08 Andreia Gaita <avidigal@novell.com>
717 * Mono.Mozilla.dll.sources,
718 Mono.Mozilla/DOM/Navigation.cs,
719 Mono.Mozilla/interfaces/nsIHistoryEntry.cs,
720 Mono.Mozilla/interfaces/nsIInputStream.cs,
721 Mono.Mozilla/interfaces/nsISHistory.cs,
722 Mono.Mozilla/interfaces/nsISHistoryListener.cs,
723 Mono.Mozilla/interfaces/nsISimpleEnumerator.cs,
724 Mono.Mozilla/interfaces/nsIURI.cs,
725 Mono.Mozilla/interfaces/nsIWebNavigation.cs,
726 Mono.WebBrowser/DOM/INavigation.cs:
728 Add nsIWebNavigation interface and related
729 dependencies to access navigation-related properties directly (CanGoBack, etc).
730 Add INavigation interface and implementation to expose navigation properties.
731 Navigation is now done through this interface (Reload(), Stop(), etc).
733 Please note: Due to threading issues on linux (namely, mozilla being run
734 on a different thread), only methods that do not affect drawing can be
735 invoked through the interfaces, so although Reload is now called from
736 the INavigation interface, it is still being routed through the Base
737 class and the glue code (and not through the nsIWebNavigation.Reload
738 call, as are other non-drawing-affecting methods like GetTitle).
740 * Mono.Mozilla/ICallback.cs, Callback.cs: Remove unneeded events, adjust parameters,
741 add support enumeration for tracking loading state.
743 * Mono.Mozilla/DOM/DOMHTMLDocument.cs, Mono.WebBrowser/DOM/IDOMHTMLDocument.cs:
746 * Mono.WebBrowser/IWebBrowser.cs, Mono.Mozilla/WebBrowser.cs:
747 Add Navigation interface getter.
748 Add Navigated event support through the StateChange and LocationChange
750 Clean up cached objects when navigating.
751 Remove Reload, Forward, Stop, Home methods, these are now accessible
752 through the INavigation interface.
754 * Mono.Mozilla/Base.cs: Add call to return the navigation interface.
755 Add MarshalAs so that returning interfaces directly works on mono.
757 2007-10-31 Andreia Gaita <avidigal@novell.com>
759 * Base.cs: Send (and create if needed) user dir to store local mozilla data
761 2007-10-30 Andreia Gaita <avidigal@novell.com>
763 * Base.cs: use the blur method to signal when the webbrowser loses
766 2007-10-18 Andreia Gaita <avidigal@novell.com>
768 * use the newly-renamed gluezilla library
770 2007-10-07 Andreia Gaita <avidigal@novell.com>
772 * More dialog event options.
773 * Mono.Mozilla/interfaces/nsIDOM*: Added mozilla dom interfaces.
774 * Mono.WebBrowser/DOM/IDOM*: Added generic interfaces for public
776 * Mono.Mozilla/DOM/DOM*: corresponding implementations for
778 * WebBrowser.cs: moved to Mono.Mozilla, since it is a
779 mozilla-specific implementation of the generic public
782 2007-09-23 Andreia Gaita <avidigal@novell.com>
784 * Added implementation of dialog popups - alert,
785 alertcheck, confirm, confirmcheck, confirmex, prompt,
786 promptusernameandpassword, promptpassword, select.
789 2007-09-19 Andreia Gaita <avidigal@novell.com>
791 * Forgot to commit an update on the xulbrowser check :/
793 2007-09-13 Andreia Gaita <avidigal@novell.com>
795 * add check for xulbrowser library, if it's not
796 present complain then leave (don't blow up)
797 * change blur method to call deactivate (mozilla seems
798 to need it to know when it loses focus)
799 * add FocusOption enumeration for finer focus control
801 2007-09-12 Andreia Gaita <avidigal@novell.com>
803 * Base.cs, IWebBrowser.cs, WebBrowser.cs: setup shutdown routine
805 2007-08-11 Andreia Gaita <avidigal@novell.com>
807 * AssemblyInfo.cs: fix version and attributes
809 2007-08-10 Andreia Gaita <avidigal@novell.com>
811 * Reorganize sources by namespace, fix csproj
813 2007-08-10 Andreia Gaita <avidigal@novell.com>
817 2007-08-10 Andreia Gaita <avidigal@novell.com>
819 * Add file headers. Take out generic collections, because
820 we'll need to use this on 1.1 as well.
822 2007-08-09 Andreia Gaita <avidigal@novell.com>
824 * Change external generic interfaces to Mono.WebBrowser
825 namespace, while mozilla-specific stuff is Mono.Mozilla.
826 Encapsulate code even further with a Manager, so that
827 callers can only use what's available in the IWebBrowser
828 interface by asking for a new instance from the Manager.
829 Everything not in the IWebBrowser interface is private.
830 Navigation control, new window creation events.
832 2007-07-30 Andreia Gaita <avidigal@novell.com>
834 * Add focus and activation management
835 Add new ICallback interface to encapsulate callbacks
836 from xulbrowser. IWebBrowser has all calls and events
838 Implement mouse, focus and key handlers
840 2007-07-21 Andreia Gaita <avidigal@novell.com>
842 * MozilaInvoke is now called Base, and encapsulates all the
843 pinvokes plus a list of web controls that have been loaded
844 indexed the control, with binding info (callback object and
845 IntPtr to the native xulbrowser instance.
846 WebBrowser.cs implements IWebBrowser and is the entry point
847 to the library - the WebControl api keeps a reference and
849 Add vstudio 2005 project for 2.0 api
851 2007-06-25 Andreia Gaita <avidigal@novell.com>
853 * Callback.cs, IWebBrowser.cs, WebBrowser.cs:
854 Change OnWidgetLoaded callback to send the new
855 handle when it's called.
857 2007-06-18 Andreia Gaita <avidigal@novell.com>