ReactOS 0.2.0/Changelog

Here are following Changelog for ReactOS 0.2.0:

## Ntoskrnl.exe

* Implemented driver reinitialization (Eric Kohl)
* Added "addr" "x" and "tlist" commands to kdbg (Art Yerkes)
* Added the beginnings of an implementation of NtSetInformationToken (Art Yerkes)
* Implemented shared segments for images (Hartmut Birr)
* Work on the error log worker (Eric Kohl)
* IoReuseIrp, IoQueueThreadIrp, IoEnqueueIrp implementations (Gunnar Dalsnes)
* APC improvements (Gunnar Dalsnes)
* Exception handler on broken usermode stack pointer fix (Mike Nordell)

## Win32k.sys

* Window activation/focus (Filip Navara, Gé van Geldorp)
* StretchDIBits implementation (Filip Navara)
* Initial implementation of message hooks (Gé van Geldorp)
* Support for the FR\_PRIVATE and FR\_NOT\_ENUM flags for AddFontResourceEx (Thomas Weidenmueller)
* Implement real locking for GDIOBJ objects (Gé van Geldorp)
* Stretchblitting 32->32, 8->8 bpp implemented (Aleksey Bragin)
* GetMessageExtraInfo and SetMessageExtraInfo implementations (Thomas Weidenmueller)
* Initial implementation of maximize/restore and minimize buttons for windows (Thomas Weidenmueller)
* Implemented WM\_SETCURSOR messages (Thomas Weidenmueller)
* Serialize access to display driver (Gé van Geldorp)
* Implemented SetCursor and rewrote some cursor/icon routines (Thomas Weidenmueller)
* Support for RASTERCAPS in NtGdiGetDeviceCaps (Filip Navara)
* RLE4/8 Bitmap Compression support (Jonathan Wilson)
* LR\_SHARED flag support for LoadIcon and LoadCursor (Thomas Weidenmueller)
* Rewritten painting implementation (Filip Navara)
* Font smoothing implementation (Thomas Weidenmueller)
* GetGUIThreadInfo implementation (Thomas Weidenmueller)
* EnumProps, EnumPropsEx implementations (Thomas Weidenmueller)
* Marshall messages across process boundaries (not complete yet) and generalize message sending from kernel (Gé van Geldorp)
* Initial NtGdiStretchBlt implementation (Aleksey Bragin)
* Message queue fixes (Thomas Weidenmueller, Mike Nordell)
* Palette fixes (Filip Navara)

## User32.dll

* CopyImage, FindWindowExA implementations (Filip Navara)
* ScrollWindow, ScrollWindowEx, ScrollDC and DDE ported from WINE (Filip Navara)
* TabbedTextOutA, TEXT\_TabbedTextOut, TabbedTextOutW (Casper Hornstrup)
* Proper scrollbar implementation (Gé van Geldorp)
* Work on MDI child windows (Filip Navara)
* WndProc changes (Jonathan Wilson)
* CheckRadioButton implementation (Thomas Weidenmueller)
* WM\_MDICREATE support (Richard Campbell)

## Shell32.dll

* Fix shell image loading (icon index 0 is invalid) (Martin Fuchs)
* Tranparent icon labels on the desktop (Martin Fuchs)
* Implemented IShellExecuteHook for control panel (Martin Fuchs)
* MessageBox-implementation of RestartDialog and RestartDialogEx (Martin Fuchs)
* Allow SHGetPathFromIDListA to resolve items in special folders (Gé van Geldorp)
* Execute items by default using new function ShellView\_OpenSelectedItems (Gé van Geldorp)
* Czech translation (Filip Navara)
* Rewrote SHGetFolderPathA to call SHGetFolderPathA (Filip Navara)
* Rewrote SHGetSpecialFolderPath[AW] to call SHGetFolderPath[AW] (Filip Navara)
* Correct path parsing in ISF\_Desktop\_fnParseDisplayName (Martin Fuchs)
* Implementation of shell link resolving for ShellExecuteXYZ and IExtractIcon (Martin Fuchs)
* SHGetPathFromIDListA/W now functions as Microsoft(R) Windows(R); only real file system paths, no virtual CLSID paths (Martin Fuchs)
* ISvItemCm\_fnQueryContextMenu: distinguish between Open and Explore commands (Martin Fuchs)
* ShellView\_DoContextMenu: activate Explore-Context menu on the desktop (Martin Fuchs)
* ShellView\_CreateList, SIC\_Initialize, PidlToSicIndex: enabled transparent icons on the desktop (Martin Fuchs)
* Improved error handling for many functions (Martin Fuchs)
* IShellLink: implemented IPersistFile::IsDirty (Martin Fuchs)
* ShellExecuteExA, ISF\_MyComputer\_fnGetDisplayNameOf: handle shell links to virtual folders (Martin Fuchs)
* ExitWindowsDialog: implemented shutdown request (Martin Fuchs)
* Implementation of RestartDialog and RestartDialogEx (Martin Fuchs)
* SHELL32\_GetItemAttributes: implemented SFGAO\_LINK (Martin Fuchs)
* Implemented SHGetRealIDL (Martin Fuchs)
* SHBindToParent: call QueryInterface for Desktop (Martin Fuchs)

## Ntdll.dll

* Implemented fast loading of bounded images (Hartmut Birr)
* Implemented handling of tls sections (Hartmut Birr)

## Iphlpapi.dll

Nameservers are now correctly listed when per adapter nameservers are specified in the registry (Art Yerkes)

## Uxtheme.dll

* DrawThemeText and GetThemeBackgroundContentRect implementations (KJK::Hyperion)
* Button class work (KJK::Hyperion)

## Msvcrt.dll

* Port of WINE \_\_CxxFrameHandler and C++ functions (Steven Edwards)
* Make printf flush the output stream (Mike Nordell)

## Explorer.exe

* Basic support to display NTFS streams (Martin Fuchs)
* Context menu implementation for desktop window (Martin Fuchs)
* Beginning of drag'n'drop support on the desktop (Martin Fuchs)
* Implementation of control panel folder (Martin Fuchs)
* Now using a light weight approach without button controls (Martin Fuchs)
* Now a icon cache for start menu and quick launch bar (Martin Fuchs)
* Direct file system gains a huge speedup for the start menu (Martin Fuchs)
* Start menu now can be used by keyboard navigation (Martin Fuchs)
* Size of notification area and quicklaunch bar in the desktop bar are now automatically adjusted (Martin Fuchs)
* Better looking icons with 4, 8 and 32 bit colors (Everaldo Coelho)

## Csrss.exe

* Auto-detect whether to create a GUI or a TUI console (Gé van Geldorp)
* Improved keyboard handling (Art Yerkes)

## Pci.sys

* Use HAL PCI bus routines in order avoid race conditions (Eric Kohl)
* Use slot number to distinguish multiple device of the same kind (Eric Kohl)

## Afd.sys

* AfdDispCompleteListen, AfdDispListen, AfdKillListenRequest, TdiAddressSizeFromType, TdiBuildNullConnectionInfo, TdiListen implementations (Casper Hornstrup)

## Tcpip.sys

* IP addresses are now registry-configured, per-adapter (Vizzini)
* DisplayTCPPacket, TCPListen prototype implementations (Casper Hornstrup)
* DispTdiAssociateAddress, DispTdiListen, DisplayTCPHeader, DisplayTCPPacket, TCPListen, TCPiReceive, TCPReceive implementations (Casper Hornstrup)

## Ws2\_32.sys

CreateCatalog implementation (Casper Hornstrup)

## Cdfs.sys

* Finished media change support, except for prper volume dismount (Eric Kohl)

## FreeLoader

* Detect serial ports and serial pointer devices (Eric Kohl)
* Detect PS/2 Port and Pointer Device (Mouse) (Eric Kohl)
* Calculate CPU speed (Eric Kohl)

## General

* Work on winlogon.exe, msgina.dll (Thomas Weidenmueller)
* WinMM.dll ported from WINE (Steven Edwards, Casper Hornstrup)
* Work to compile ReactOS using other compilers than GCC (Mike Nordell, Aleksey Bragin)
* Initial version of VBE miniport driver (Filip Navara)
* Initial version of generic framebuffer display driver (Filip Navara)
* Addition of Kernel Javascript System: allows scripting of kernel debugger (Art Yerkes)
* Move desktop window proc from WIN32K to CSRSS (Gé van Geldorp)
* Import of shell32 from WINE (Gé van Geldorp)
* Swedish keyboard dll (Johannes Olofsson)