2009-12-07 Rolf Bjarne Kvinge <RKvinge@novell.com>
[moon.git] / TODO
blob5604a5787ef76e9aa706b2f8bdca441420b3ecdc
2 Feel free to add items to this TODO list
4 * SupportedCulture:
6         This requires special handling on the XAML processor.
7         
8         There are no visible properties from SupportedCulture, instead the
9         XAML processor should read the content as in:
10         
11            <SupportedCulture>cultureName</SupportedCulture> 
12         
13         And use that to instantiate the supported cultures somewhere, not
14         clear where.
16 * SPECS:
18         Need information on the relative Uris that
19         Application.GetResourceStream accepts and their meaning.
21 Silverlight 2 Support
22 =====================
24         To get Silverlight 2 support to work, we need a few bits:
26         Application.LoadComponent:
28                 This requires changes to the XAML parser to allow the
29                 XAML parser to use an object that has been already
30                 created as its toplevel, and populate it with data
31                 from parsing a XAML file.
33         Surface::Attach:
35               Currently it only allows the passed object to be a
36               Canvas, with SL2 the passed object can be a UserControl.
38               Maybe we could wrap the object in a Canvas to keep
39               things simple?
41 Cleanup
42 ========
44         We are currently using `PluginHost.Handle' to track the handle
45         to the plugin, and in a couple of places we also use the
46         AppDomain to pass information, its not clear why this code was
47         added:
49             AppDomain.CurrentDomain.GetData ("PluginInstance");
52         In plugin/moonlight.cs, separate the appdomain management from
53         the Loader class.
55         Move plugin/moonlight.cs CreateApplication into its own helper
56         class.
58 * Consolidation
60         Now that Mono.Moonlight.dll has been rolled into
61         System.Windows.dll, and the AppDomain hacks have been removed
62         from moonlight.exe, we should be able to further reduce our
63         managed footprint and per-domain costs by removing
64         moonlight.exe altogether.
66 * AppDomains
68         Most of the AppDomain infrastructure (MarshalByRef,
69         Serialization, Remoting) is unavailable in SL 2.0, currently
70         we keep it all hidden with our linker, but it might be worth
71         exploring dropping this infrastructure if not required.
73         Need to pass the object initialization arguments to the
74         Application.Startup method, currently we pass an emty list, it
75         should be the list of arguments from the <object> tag.
77 * xaml.cpp:
79         How to register SupportedCultureCollection, as there is no
80         "SupportedCulture" really.