* Port [http://developer.apple.com/opensource/internet/webkit.html WebKit] (using GCC 4.x with ObjC++ support). The WebKit team is willing to help whoever wants to take on this project, please see [http://lists.gnu.org/archive/html/discuss-gnustep/2007-03/msg00290.html this email]. (Difficulty: Very High, Experience needed: Expert at C/C++ and Core* Apple libraries)

Screen change support

handle resizing of the screen etc. It's now common to run in virtual machines or with multiple displays with different sizes, so we need to gracefully handle changes of screen size while an application is running.

Difficulty: Medium; Required Experience: Cocoa/ObjC

AppKit (GUI)

Complete theming support ... go through each control in the gui and make sure it draws itself using the theming engine, adding methods to the theming engine as required. Update/improve Thematic.app to match by providing wysiwyg editine/cretion of themes for each control.

Modify save and open panel, and perhaps browsers, to support multiple roots as needed on ms-windows where the filesystem has multiple roots (eg D:\... or //host/...)

Fix focusing bugs/issues making sure GNUstep apps can be used with all window managers

Text System should be cleaned, profiled and finished. Many methods in NSLayoutManager are unfinished or unimplemented, so we currently cannot tweak the test system as much as the one provided by Cocoa. (Quentin Mathe)

We need NSTypeSetter, NSGlyphStorage, NSGlyphInfo, and NSGlyphGenerator implementations. If NSTypeSetter and NSLayoutManager were implemented, they would probably be used in Etoile. (Quentin Mathe)

NSTextTable, NSTextTableBlock, NSTextList, & NSTextBlock implementations would also bring the GNUstep text system in line with that of Cocoa as of Mac OS 10.4. The classes could be useful to build a powerful word processor. (Quentin Mathe)

NSOpenGL Classes could be improved, made compatible with current Cocoa implementations, and further tested. Note sure about that anymore. Feedback from people using these classes would be useful? (Quentin Mathe)

NSBitmapImageRep formats: Currently, we support reading and writing for TIFF, GIF, JPEG, PNG, PNM (reading-only). We would like to complete NSEPSImageRep and NSPDFImageRep (with Cairo?). SVG reading and writing support, would be nice too. (Quentin Mathe)

NSFormatter isn't working very well at this time. Not sure anymore about this one… (Quentin Mathe)

Backend: especially xlib but also art could use performance improvements. NSImageView scrolling on xlib comes to my mind for example. (shouldn't improvements focus on the preferred, cairo backend rather than the deprecated ones?)

improve our RTF parser, to be able to correctly load OO and MS-Office created RTFs. Add support for reading NeXT RTFDs. Correct loading of Apple RTFs including char encoding

Foundation (Base)

Improve testsuite to have regression tests cover much more of base library.

NSDateComponents & NSCalendar implementation.

Implement Apple's scripting/apple-events classes as a subproject of the base library.

Complete separation of gnustep specific extensions from Apple APIs and implement new Apple methods missing from existing classes for compatibility.

Complete implementation of Apple's latest URL handling classes based on NSStream... testing on mswindows as well as unix.

Implement CoreFoundation on Base

Now that Apple have XML based keyed coding, implement a version of Distributed Objects to talk directly to Apple applications (Nicolaus has done some work towards this in mySTEP).

Core Data

Saso Kiselkov started implementing this framework and now hosted here [2] as part of GNUstep. However, NSManagedObjectContext & NSPersistentStoreCoordinator have yet to be tackled according to his web page. Presumably NSPersistentDocument also needs to be implemented.

DataBuilder.app needs some final graphics improvements. And, should become able to read and write model files from Xcode.

OpenGL extensions management API: before using an OpenGL extension a program must first determine its availability. The mechanism for doing this is platform-specific and libraries such as w:GLEW and w:GLEE exist to simplify the process. The target of this project is a multiplatform Objective-C wrapper around OpenGL platform-specific functions.

GAP (GNUstep Application Project) Ideas

Debug and Complete FlexiSheet, making sure it works on Cocoa as expected and noting incompatibilities with GNUstep. Those should be either fixed for both platforms (FlexiSheet portability of code improvment) or noted as a bug or missing feature in GNUstep.

implement (Extract from Addresses) an iSync compatible framework, its corresponding managment application and then integrating it with AddressBook (which already has part of such framework). The goal would be to have syncronization of Addresses (but in future, perhaps calendar, Vespucci bookmarks) gnustep to gnustep, gnustep to mac and gnustep to .Mac/MobileMe by having such account.

porting of Applications from OpenStep or Cocoa abandonware. This needs to be checked on application-per-application: License and dependencies can be a problem as defining the scope of the project well.

Some miscellaneous applications that run a Cocoa GUI could be ported to GNUstep: