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