who cares if there are secret APIs or not? Just implement swing on the existing documented APIs. It's good enough for all the nice, beautiful native cocoa apps out there, why not good enough for Swing? So maybe we miss on some weird edge cases, big deal. Let's be honest, almost all of us use Java swing almost exclusively for developer apps like IntelliJ IDEA/Netbeans/DB Visualizer/Ruby Mine, etc. They use normal, standard type widgets - nothing too fancy.
The real problem is: who is going to take the project? Oracle should tell us what there plans are - if any. If they pass, then someone else will pick up the slack. On Mon, Nov 8, 2010 at 12:02 PM, Joe Nuxoll (Java Posse) <[email protected]> wrote: > Yes, Chris - I think I was trying to make this point. I think the > "secret" APIs argument is a red herring of speculation by JG. > > - Joe > > On Nov 8, 10:36 am, Chris Adamson <[email protected]> wrote: >> Just listening to #329 and I think undue attention is paid to OSX >> "secret APIs" in the context of a hypothetical community port of a Mac >> JDK. >> >> Gosling's >> bloghttp://nighthacks.com/roller/jag/entry/steve_jobs_comments_on_apple >> complains about secret APIs in graphics rendering, but then goes on to >> say (as Tor points out in this episode) that Java on the Mac uses the >> default Java graphics pipeline, meaning that any platform-specific >> graphics rendering abilities, secret or not, are off the table >> anyways. This is what Gosling is complaining about in the third graf: >> Oracle's insistence that Apple abandon its anti-aliased rendering >> pipeline, and stay pixel-for-pixel compatible with aliased Windows XP. >> >> Secondly, in the context of #329's discussion, it's not clear why >> secret APIs are even relevant. The things that an AWT/Swing port >> needs to provide are a known problem, and it is known that these >> things can all be done with public APIs. After all, SWT does them >> all, and is far more entangled with native widgets than Swing/AWT. >> And since SWT is open source, it should be straightforward to go see >> how they did it. So, I don't buy that secret APIs are necessary for a >> SwingAWT port. >> >> Frankly, I don't think there's a hidden empire of wonderful secret >> APIs in Mac OS X. If there are, then I'd like to know why iTunes is >> still such a goddamn train-wreck. As most people acknowledge, many >> secret APIs are hacks and kludges that haven't had adequate review and >> aren't fit for third-party use. Also for those secret APIs that are >> found through various means (method swizzing, memory inspection, >> etc.), there's no technical reason on OS X that you can't call them -- >> look at the Ars article that Gosling cites and you'll see that the >> problem isn't that Mozilla can't see the secret function that WebKit >> uses (they know it's called WKDisableCGDeferredUpdates), but that the >> licensing implications of calling it are unclear. Big difference, >> though still a blocker for Mozilla. >> >> One unrelated thing I thought of while mentally composing this note. >> The Mac has two viable graphics APIs: Quartz (aka, Core Graphics), and >> OpenGL. Quartz is implemented in OpenGL, which provides hardware- >> acceleration for all system graphics (yay). So a port of Java2D would >> presumably want to use Quartz. But then I wondered: has anyone >> implemented Java2D in OpenGL? I thought there was a project doing >> this years ago, but I couldn't remember. If so, then it might be >> worth investigating if it would be practical for a hypothetical port >> to use that for its Java2D implementation, using NSOpenGLViews all >> over the place and then drawing Java2D->OpenGL into them. >> >> --Chris > > -- > You received this message because you are subscribed to the Google Groups > "The Java Posse" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/javaposse?hl=en. > > -- You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.
