From linuxhippy at gmail.com Fri Jul 1 02:38:03 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Fri, 01 Jul 2011 09:38:03 +0000 Subject: hg: caciocavallo/ng: 2 new changesets Message-ID: <20110701093804.8B079470DB@hg.openjdk.java.net> Changeset: d796ffc7a8b8 Author: ceisserer Date: 2011-07-01 12:27 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/d796ffc7a8b8 either lock, or not ;) ! src/web/native/WebSurfaceData.c Changeset: fae0885447a3 Author: ceisserer Date: 2011-07-01 13:28 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/fae0885447a3 implement copyArea ourself, so we can optimize it later ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java From linuxhippy at gmail.com Sat Jul 2 05:51:48 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Sat, 02 Jul 2011 12:51:48 +0000 Subject: hg: caciocavallo/ng: 4 new changesets Message-ID: <20110702125148.9BB9447130@hg.openjdk.java.net> Changeset: 7e4f18c60f9a Author: ceisserer Date: 2011-07-02 16:39 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/7e4f18c60f9a prepare javascript code to copyArea and receive more than one rendering command. ! src/web/servlet/StreamBase.html Changeset: f7af15b4ff90 Author: ceisserer Date: 2011-07-02 16:40 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/f7af15b4ff90 factor out command-stream generation into seperate classes, now we have a copyArea command ! src/web/classes/net/java/openjdk/cacio/servlet/AppContextCreator.java ! src/web/classes/net/java/openjdk/cacio/servlet/AppStarter.java + src/web/classes/net/java/openjdk/cacio/servlet/CopyAreaScreenUpdate.java ! src/web/classes/net/java/openjdk/cacio/servlet/EventReceiver.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java ! src/web/classes/net/java/openjdk/cacio/servlet/ScreenUpdate.java Changeset: 1b991e32d2fc Author: ceisserer Date: 2011-07-02 16:41 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/1b991e32d2fc lock surface-private lock to enhance scalability ! src/web/native/WebSurfaceData.c Changeset: 43a7e2ff09a2 Author: ceisserer Date: 2011-07-02 16:41 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/43a7e2ff09a2 various adaptions and restructurizations ! src/web/classes/net/java/openjdk/awt/peer/web/WebGraphicsConfiguration.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebScreen.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebToolkit.java From linuxhippy at gmail.com Sun Jul 3 13:56:59 2011 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Sun, 3 Jul 2011 22:56:59 +0200 Subject: Policy regarding external / other licensed code? Message-ID: Hi, The current cacio-web implementation uses quite a bit of external code: - Some keyboard-handling code from noVNC (with the permission of the author, licensed as LGPL) - Base64 encoder (licensed as BSD, LGPL, ...) - PngEncoder - LGPL The Base64 encoder was slightly modified, as some browsers had problems with the encoding it used. The PngEncoder is a generic png encoder, much faster than what is provided by ImageIO. The keyboard-handling code is really tightly integrated with the current code (which is quite a bit of a mess anyway), but it should be possible to factor it out - at least into its own independent JavaScript file. What is the current policy regarding such external code? As far as I've seen external libraries code is not included in the mercurial tree, however what should I do in this case? Thanks, Clemens From neugens.limasoftware at gmail.com Sun Jul 3 14:42:50 2011 From: neugens.limasoftware at gmail.com (=?utf-8?B?bmV1Z2Vucy5saW1hc29mdHdhcmVAZ21haWwuY29t?=) Date: Sun, 03 Jul 2011 23:42:50 +0200 Subject: =?utf-8?B?UmU6IFBvbGljeSByZWdhcmRpbmcgZXh0ZXJuYWwgLyBvdGhlciBsaWNlbnNlZCBjb2RlPw==?= Message-ID: <4e10e25b.9139e30a.0cfe.106c@mx.google.com> We cannot have any external dependency that did not sign the OCA in the main repository. We can, however, host a secondary repository with the code upon which Cacio depends, and explicitly state the various licenses. I don't know if this repository can reside side by side with cacio, be a sub repo of it, or even just a separate source tree, I think that as soon as: 1. The license is compatible and clear for each source file 2. Files are completely separate from the main line There is no problem, but we need to ask Oracle if we can use their infrastructures or we need an external repo for this. In general we need to follow the GB rules. Can you please prepare a mail for Mark and Dalibor, we review it when I'm back tomorrow and we solve this? I think is less of an issue as we think, but better to be on the safe side. Cheers, Mario -- Sent from HTC Desire... pgp key: http://subkeys.pgp.net/ PGP Key ID: 80F240CF Fingerprint: BA39 9666 94EC 8B73 27FA FC7C 4086 63E3 80F2 40CF http://www.icedrobot.org Proud GNU Classpath developer: http://www.classpath.org/ Read About us at: http://planet.classpath.org OpenJDK: http://openjdk.java.net/projects/caciocavallo/ Please, support open standards: http://endsoftpatents.org/ ----- Reply message ----- Da: "Clemens Eisserer" Data: dom, lug 3, 2011 22:56 Oggetto: Policy regarding external / other licensed code? A: Hi, The current cacio-web implementation uses quite a bit of external code: - Some keyboard-handling code from noVNC (with the permission of the author, licensed as LGPL) - Base64 encoder (licensed as BSD, LGPL, ...) - PngEncoder - LGPL The Base64 encoder was slightly modified, as some browsers had problems with the encoding it used. The PngEncoder is a generic png encoder, much faster than what is provided by ImageIO. The keyboard-handling code is really tightly integrated with the current code (which is quite a bit of a mess anyway), but it should be possible to factor it out - at least into its own independent JavaScript file. What is the current policy regarding such external code? As far as I've seen external libraries code is not included in the mercurial tree, however what should I do in this case? Thanks, Clemens -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/caciocavallo-dev/attachments/20110703/9309980d/attachment.html From mark at klomp.org Mon Jul 4 00:22:47 2011 From: mark at klomp.org (Mark Wielaard) Date: Mon, 4 Jul 2011 09:22:47 +0200 (CEST) Subject: Policy regarding external / other licensed code? In-Reply-To: References: Message-ID: <57072.80.101.103.228.1309764167.squirrel@gnu.wildebeest.org> Hi Clemens, On Sun, July 3, 2011 22:56, Clemens Eisserer wrote: > The current cacio-web implementation uses quite a bit of external code: > - Some keyboard-handling code from noVNC (with the permission of the > author, licensed as LGPL) > - Base64 encoder (licensed as BSD, LGPL, ...) > - PngEncoder - LGPL > > What is the current policy regarding such external code? > As far as I've seen external libraries code is not included in the > mercurial tree, however what should I do in this case? I tried to bring this up a couple of times, as there are some external code bases in the repositories, but it is unclear how new external code bases can be added. But as far as I know there never has been a resolution to this issue. If you are blocked while this is being resolved please feel free to request a repository on icedtea.classpath.org. As long as what you want to hack on is free software it can be hosted there for now. All the above seems just fine. Cheers, Mark From linuxhippy at gmail.com Mon Jul 4 11:01:29 2011 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Mon, 4 Jul 2011 20:01:29 +0200 Subject: Policy regarding external / other licensed code? In-Reply-To: <4e10e25b.9139e30a.0cfe.106c@mx.google.com> References: <4e10e25b.9139e30a.0cfe.106c@mx.google.com> Message-ID: Hi Mario, Wow - didn't know there are such strict requirements, I'll send an email to Mark and Dalibor immediatly. The licenses in question are LGPL, which as far as I know is more permissive than GPL+Classpath Exception, but I am no license expert. I hope to get rid of Base64 encoding anyway in the second GSoC phase, as its a dirty hack arround XMLHttpRequest limitations, and the PNGEncoder class could be made an optional plugin, with the ImageIO based encoder beeing used if not present. That leaves the keyboard event handling code. If I can make it an independent library licensed under LGPL, and beeing used as any other external dependency (e.g. jetty http server) I guess it should work. Thanks, Clemens From linuxhippy at gmail.com Mon Jul 4 11:04:12 2011 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Mon, 4 Jul 2011 20:04:12 +0200 Subject: Policy regarding external / other licensed code? In-Reply-To: References: <4e10e25b.9139e30a.0cfe.106c@mx.google.com> Message-ID: > Wow - didn't know there are such strict requirements, I'll send an > email to Mark and Dalibor immediatly. Sorry, I ment I'll prepare one. - Clemens From neugens.limasoftware at gmail.com Mon Jul 4 11:36:48 2011 From: neugens.limasoftware at gmail.com (Mario Torre) Date: Mon, 04 Jul 2011 20:36:48 +0200 Subject: Policy regarding external / other licensed code? In-Reply-To: References: <4e10e25b.9139e30a.0cfe.106c@mx.google.com> Message-ID: <1309804609.2700.11.camel@galactica> Il giorno lun, 04/07/2011 alle 20.01 +0200, Clemens Eisserer ha scritto: > Hi Mario, > > Wow - didn't know there are such strict requirements, I'll send an > email to Mark and Dalibor immediatly. > > The licenses in question are LGPL, which as far as I know is more > permissive than GPL+Classpath Exception, but I am no license expert. Well, depends on the definition of permissive. This is a IANAL understanding of the main differences: LGPL allows hacking on the closed linked libraries, while GPL+Classpath doesn't address this. In other words, you are free to change the closed source linked libraries with your own version for reverse engineering purpose if you use the LGPL, the distributor cannot enforce any legal requirement as the license explicitly grant the end user this privilege. The GPL+Classpath exception doesn't put this "limitation" on the distributors, or in other wording, doesn't enforce this right to the end user. In the real world, this is a small, but very important, difference for the mobile and embedded market. > I hope to get rid of Base64 encoding anyway in the second GSoC phase, > as its a dirty hack arround XMLHttpRequest limitations, and the > PNGEncoder class could be made an optional plugin, with the ImageIO > based encoder beeing used if not present. > That leaves the keyboard event handling code. If I can make it an > independent library licensed under LGPL, and beeing used as any other > external dependency (e.g. jetty http server) I guess it should work. For my side, I see no problem in using all of them. I would prefer to merge as much as possible up stream of course, but you are free to mix all the things you like, but I think Oracle will want to enforce the rules also on our small rogue project :) I think is safer to ask what management thinks about this. It's also a very good proof of some of our concerns, btw. I hope we can address this somehow (it may be enough to do in good guidelines for now I think) in the GB rules. If you are really stuck, I would go for the IcedTea temporary repos, especially to host the dependencies, but I would prefer to not fork cacio if possible, even if all the code was written by me and Roman, it's still a "Sun" sponsored project. Cheers, Mario From linuxhippy at gmail.com Tue Jul 5 02:15:56 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Tue, 05 Jul 2011 09:15:56 +0000 Subject: hg: caciocavallo/ng: 2 new changesets Message-ID: <20110705091558.06E6E471C0@hg.openjdk.java.net> Changeset: a686c4a930e0 Author: ceisserer Date: 2011-07-05 13:05 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/a686c4a930e0 remove lgpl licensed code out of repo for now - src/web/classes/net/java/openjdk/cacio/servlet/Base64Coder.java - src/web/classes/net/java/openjdk/cacio/servlet/PngEncoder.java - src/web/classes/net/java/openjdk/cacio/servlet/PngEncoderB.java ! src/web/servlet/StreamBase.html Changeset: 3a2b1d32a6ec Author: ceisserer Date: 2011-07-05 13:06 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/3a2b1d32a6ec implement servlet for loading resources + src/web/classes/net/java/openjdk/cacio/servlet/ResourceLoaderServlet.java From linuxhippy at gmail.com Wed Jul 6 09:11:15 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Wed, 06 Jul 2011 16:11:15 +0000 Subject: hg: caciocavallo/ng: 4 new changesets Message-ID: <20110706161115.E5D8D4720E@hg.openjdk.java.net> Changeset: cee58f276efc Author: ceisserer Date: 2011-07-05 13:21 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/cee58f276efc start resource-loader servlet by default ! src/web/classes/net/java/openjdk/cacio/server/CacioServer.java Changeset: 16843a82dcd6 Author: ceisserer Date: 2011-07-06 17:56 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/16843a82dcd6 no need for an event-pump thread, because we do not poll for events but get notified ! src/web/classes/net/java/openjdk/awt/peer/web/WebScreen.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebWindowFactory.java Changeset: 4f4c12bdf3be Author: ceisserer Date: 2011-07-06 17:58 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/4f4c12bdf3be first attemps to improve damage-tracking by introducing an grid-based approach + src/web/classes/net/java/openjdk/awt/peer/web/DamageRect.java + src/web/classes/net/java/openjdk/awt/peer/web/GridDamageTracker.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebGraphicsDevice.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebKeyboardStateTracker.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java Changeset: 3351d58bb5ca Author: ceisserer Date: 2011-07-06 17:59 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/3351d58bb5ca Adoptions to seperate lgpl dependencies into a seperated library ! build.properties ! src/web/build.xml ! src/web/servlet/StreamBase.html From linuxhippy at gmail.com Thu Jul 7 12:21:19 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Thu, 07 Jul 2011 19:21:19 +0000 Subject: hg: caciocavallo/ng: 2 new changesets Message-ID: <20110707192119.7CC1D47261@hg.openjdk.java.net> Changeset: 886d7e68878c Author: ceisserer Date: 2011-07-07 21:20 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/886d7e68878c set system properties in server starter ! src/web/classes/net/java/openjdk/cacio/server/CacioServer.java Changeset: a753f024e775 Author: ceisserer Date: 2011-07-07 21:21 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/a753f024e775 disable in-progress damage tracking for now ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java From linuxhippy at gmail.com Thu Jul 7 13:29:19 2011 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Thu, 7 Jul 2011 22:29:19 +0200 Subject: RFC: Changes to shared cacio code Message-ID: Hi, After chatting with Roman about the idea behind AWT's event pump thread I noticed cacio-web doesn't need a seperate thread, as it doesn't have to pull events. Instead it gets the events pushed by the event servlet, which calls into cacio-web as soon as a client submits events which quite simplifies things a bit :) I would be happy if you could review the webrev attached, it contains the changes to the shared cacio source I've in my local repo. If you think it should be better solved in another way, I am curious to hear your suggestions. (especially about messing a bit with cacio/managed/* internals). Thanks, Clemens -------------- next part -------------- A non-text attachment was scrubbed... Name: webrev.tar.bz2 Type: application/x-bzip2 Size: 19548 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/caciocavallo-dev/attachments/20110707/035539fe/webrev.tar.bz2 From neugens.limasoftware at gmail.com Thu Jul 7 13:48:19 2011 From: neugens.limasoftware at gmail.com (Mario Torre) Date: Thu, 07 Jul 2011 22:48:19 +0200 Subject: RFC: Changes to shared cacio code In-Reply-To: References: Message-ID: <1310071700.4394.5.camel@galactica> Il giorno gio, 07/07/2011 alle 22.29 +0200, Clemens Eisserer ha scritto: > Hi, > > After chatting with Roman about the idea behind AWT's event pump > thread I noticed cacio-web doesn't need a seperate thread, as it > doesn't have to pull events. > Instead it gets the events pushed by the event servlet, which calls > into cacio-web as soon as a client submits events which quite > simplifies things a bit :) > > I would be happy if you could review the webrev attached, it contains > the changes to the shared cacio source I've in my local repo. > If you think it should be better solved in another way, I am curious > to hear your suggestions. (especially about messing a bit with > cacio/managed/* internals). > > Thanks, Clemens Hi Clemens, Can you post it on some web space instead of sending the binary archive to the mailing list? I think (but better ask Mark R. again) that you can use the shared cr.openjdk.java.net space, as this is an official OpenJDK project. I'll review the code asap (or perhaps Roman will?). Thanks, Mario From roman at kennke.org Thu Jul 7 14:07:27 2011 From: roman at kennke.org (Roman Kennke) Date: Thu, 07 Jul 2011 23:07:27 +0200 Subject: RFC: Changes to shared cacio code In-Reply-To: References: Message-ID: <1310072847.11748.3.camel@debian> Hi Clemens, The change looks good to me. Correct me if I am wrong, but it's mostly relaxing access modifiers to be able for you to overried/call certain things. Correct? What is getScreenManagedWindowContainer() in FullScreenWindowFactory used for? In any case, this change looks like it has no impact on the other backends, so it's good for me to go. Cheers, Roman Am Donnerstag, den 07.07.2011, 22:29 +0200 schrieb Clemens Eisserer: > Hi, > > After chatting with Roman about the idea behind AWT's event pump > thread I noticed cacio-web doesn't need a seperate thread, as it > doesn't have to pull events. > Instead it gets the events pushed by the event servlet, which calls > into cacio-web as soon as a client submits events which quite > simplifies things a bit :) > > I would be happy if you could review the webrev attached, it contains > the changes to the shared cacio source I've in my local repo. > If you think it should be better solved in another way, I am curious > to hear your suggestions. (especially about messing a bit with > cacio/managed/* internals). > > Thanks, Clemens From linuxhippy at gmail.com Thu Jul 7 14:20:50 2011 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Thu, 7 Jul 2011 23:20:50 +0200 Subject: RFC: Changes to shared cacio code In-Reply-To: <1310072847.11748.3.camel@debian> References: <1310072847.11748.3.camel@debian> Message-ID: Hi Roman, Thanks for taking a look. > The change looks good to me. Correct me if I am wrong, but it's mostly > relaxing access modifiers to be able for you to overried/call certain > things. Correct? Correct. > What is getScreenManagedWindowContainer() in FullScreenWindowFactory > used for? When an event is pushed by the servlet, I only know the PlatformScreen of the current session, but not the ScreenManagedWindowContainer backing it, which provides dispatchEvent(). But I am a bit unsure here. > In any case, this change looks like it has no impact on the other > backends, so it's good for me to go. Great, thanks =) - Clemens From linuxhippy at gmail.com Thu Jul 7 14:56:01 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Thu, 07 Jul 2011 21:56:01 +0000 Subject: hg: caciocavallo/ng: relax a few access modifiers Message-ID: <20110707215601.CCBDB47269@hg.openjdk.java.net> Changeset: 5a413bec2224 Author: ceisserer Date: 2011-07-07 23:55 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/5a413bec2224 relax a few access modifiers ! src/share/classes/sun/awt/peer/cacio/CacioEventPump.java ! src/share/classes/sun/awt/peer/cacio/managed/FullScreenEventPump.java ! src/share/classes/sun/awt/peer/cacio/managed/ManagedWindowContainer.java ! src/share/classes/sun/awt/peer/cacio/managed/ScreenManagedWindowContainer.java From linuxhippy at gmail.com Thu Jul 7 22:08:24 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Fri, 08 Jul 2011 05:08:24 +0000 Subject: hg: caciocavallo/ng: Add getScreenManagedWindowContainer Message-ID: <20110708050824.B539D4727C@hg.openjdk.java.net> Changeset: c46228d72952 Author: ceisserer Date: 2011-07-08 07:08 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/c46228d72952 Add getScreenManagedWindowContainer ! src/share/classes/sun/awt/peer/cacio/managed/FullScreenWindowFactory.java From linuxhippy at gmail.com Wed Jul 13 01:27:47 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Wed, 13 Jul 2011 08:27:47 +0000 Subject: hg: caciocavallo/ng: 3 new changesets Message-ID: <20110713082747.E649D473CA@hg.openjdk.java.net> Changeset: 2ee6e5e16aac Author: ceisserer Date: 2011-07-13 10:17 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/2ee6e5e16aac remove servlet-annotations, as they don't seem present in servlet-api 2.5 ! src/web/classes/net/java/openjdk/cacio/servlet/AppStarter.java ! src/web/classes/net/java/openjdk/cacio/servlet/EventReceiver.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java ! src/web/classes/net/java/openjdk/cacio/servlet/ResourceLoaderServlet.java Changeset: abaa2f23b11f Author: ceisserer Date: 2011-07-13 10:18 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/abaa2f23b11f adopt build-file to support external jetty libraries ! src/web/build.xml Changeset: ee941eabf26a Author: ceisserer Date: 2011-07-13 10:21 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/ee941eabf26a further damage tracking work ! src/web/classes/net/java/openjdk/awt/peer/web/GridDamageTracker.java From linuxhippy at gmail.com Wed Jul 13 01:33:44 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Wed, 13 Jul 2011 08:33:44 +0000 Subject: hg: caciocavallo/ng: include web specific build.xml in main build.xml Message-ID: <20110713083344.9AF62473CB@hg.openjdk.java.net> Changeset: 3b0225063d86 Author: ceisserer Date: 2011-07-13 10:27 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/3b0225063d86 include web specific build.xml in main build.xml ! build.xml From linuxhippy at gmail.com Wed Jul 13 02:08:25 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Wed, 13 Jul 2011 09:08:25 +0000 Subject: hg: caciocavallo/ng: 2 new changesets Message-ID: <20110713090825.996A1473CD@hg.openjdk.java.net> Changeset: 30ee4cc89a97 Author: ceisserer Date: 2011-07-13 10:52 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/30ee4cc89a97 disable building x11 backend for now ! build.xml Changeset: c25999afbd0f Author: ceisserer Date: 2011-07-13 10:53 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/c25999afbd0f include dependency-jar in cacio-web-runtime.jar, as we already do with the jetty libs ! src/web/build.xml From linuxhippy at gmail.com Wed Jul 13 02:46:54 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Wed, 13 Jul 2011 09:46:54 +0000 Subject: hg: caciocavallo/ng: 5 new changesets Message-ID: <20110713094655.64B2C473D1@hg.openjdk.java.net> Changeset: 56f8595db22e Author: ceisserer Date: 2011-07-13 11:07 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/56f8595db22e dispatch event after it has been completly processed, instead of before ! src/web/classes/net/java/openjdk/awt/peer/web/WebKeyboardStateTracker.java Changeset: 912bd5fd522c Author: ceisserer Date: 2011-07-13 11:21 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/912bd5fd522c FontConfiguration is now obtained through a FontManager ! README ! build.xml + src/x11/classes/sun/awt/peer/x11/EscherFontManager.java ! src/x11/classes/sun/awt/peer/x11/X11GraphicsEnvironment.java ! src/x11/classes/sun/awt/peer/x11/X11PlatformWindow.java ! src/x11/classes/sun/awt/peer/x11/X11PlatformWindowFactory.java Changeset: ee62a649c78c Author: ceisserer Date: 2011-07-13 11:37 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/ee62a649c78c Add documentation for building the web backend ! README Changeset: a39337511597 Author: ceisserer Date: 2011-07-13 11:40 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/a39337511597 use global target-names, otherwise ant seems to be confused ! src/web/build.xml Changeset: 77f8a40c5383 Author: ceisserer Date: 2011-07-13 11:41 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/77f8a40c5383 x11 peers are not based on escher, so choose a better name for the new FontManager - src/x11/classes/sun/awt/peer/x11/EscherFontManager.java + src/x11/classes/sun/awt/peer/x11/XFontManager.java From linuxhippy at gmail.com Wed Jul 13 02:54:33 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Wed, 13 Jul 2011 09:54:33 +0000 Subject: hg: caciocavallo/ng: disable keyboard debug output Message-ID: <20110713095433.F27F9473D2@hg.openjdk.java.net> Changeset: 4afb7ce432d3 Author: ceisserer Date: 2011-07-13 11:49 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/4afb7ce432d3 disable keyboard debug output ! src/web/classes/net/java/openjdk/awt/peer/web/WebKeyboardStateTracker.java From linuxhippy at gmail.com Wed Jul 13 06:21:24 2011 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Wed, 13 Jul 2011 15:21:24 +0200 Subject: Status Update & early preview Message-ID: Hi, The code in the repo should now have demo-quality, it should build and run the app you try ;) I've extended the README with instructions how to build the caciocavallo-web backend and how to start applications. For now only german keyboards are partially supported. All the stuff I've been working on lately (improved damage tracking, image-data transport, ...) is disabled, I thought now with midterm evaluations it would be good to produce an actually working version before breaking everything during the changes ;) I've removed the external lgpl licensed dependencies, and for now placed them on a private server: http://93.83.133.214/cacioweb/cacio_dependencies.jar I would like to get rid of the dependencies, except for the keyboard code. What do you think about starting a gnu/svannah project for the keyboard code, as it could be useful for many more projects (actually there are quite a few using their own versions of the code already). - Clemens -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/caciocavallo-dev/attachments/20110713/9438d113/attachment.html From neugens.limasoftware at gmail.com Wed Jul 13 23:17:17 2011 From: neugens.limasoftware at gmail.com (=?utf-8?B?bmV1Z2Vucy5saW1hc29mdHdhcmVAZ21haWwuY29t?=) Date: Thu, 14 Jul 2011 08:17:17 +0200 Subject: =?utf-8?B?UmU6IFN0YXR1cyBVcGRhdGUgJiBlYXJseSBwcmV2aWV3?= Message-ID: <4e1e89fb.c64ed80a.56c5.ffffd74c@mx.google.com> Hello Clemens, Did you submit your mid term evaluation? Melange is broken as usual and doesn't let me check this, so I wanted to be sure. BTW, cacio-web is uber cool :) Cheers, Mario -- Sent from HTC Desire... pgp key: http://subkeys.pgp.net/ PGP Key ID: 80F240CF Fingerprint: BA39 9666 94EC 8B73 27FA FC7C 4086 63E3 80F2 40CF http://www.icedrobot.org Proud GNU Classpath developer: http://www.classpath.org/ Read About us at: http://planet.classpath.org OpenJDK: http://openjdk.java.net/projects/caciocavallo/ Please, support open standards: http://endsoftpatents.org/ ----- Reply message ----- Da: "Clemens Eisserer" Data: mer, lug 13, 2011 15:21 Oggetto: Status Update & early preview A: Hi, The code in the repo should now have demo-quality, it should build and run the app you try ;) I've extended the README with instructions how to build the caciocavallo-web backend and how to start applications. For now only german keyboards are partially supported. All the stuff I've been working on lately (improved damage tracking, image-data transport, ...) is disabled, I thought now with midterm evaluations it would be good to produce an actually working version before breaking everything during the changes ;) I've removed the external lgpl licensed dependencies, and for now placed them on a private server: http://93.83.133.214/cacioweb/cacio_dependencies.jar I would like to get rid of the dependencies, except for the keyboard code. What do you think about starting a gnu/svannah project for the keyboard code, as it could be useful for many more projects (actually there are quite a few using their own versions of the code already). - Clemens -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/caciocavallo-dev/attachments/20110714/2c83f5fd/attachment.html From linuxhippy at gmail.com Fri Jul 15 02:55:50 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Fri, 15 Jul 2011 09:55:50 +0000 Subject: hg: caciocavallo/ng: cleanup Message-ID: <20110715095550.D93A84744E@hg.openjdk.java.net> Changeset: 8785465c8e80 Author: ceisserer Date: 2011-07-15 11:49 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/8785465c8e80 cleanup ! .hgtags ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java From linuxhippy at gmail.com Sat Jul 16 13:36:05 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Sat, 16 Jul 2011 20:36:05 +0000 Subject: hg: caciocavallo/ng: 4 new changesets Message-ID: <20110716203606.526DF474A3@hg.openjdk.java.net> Changeset: efa0deb01b5b Author: ceisserer Date: 2011-07-16 21:35 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/efa0deb01b5b encode command stream in image, to avoid base64 encoding + a lot more damage tracking work ! src/web/classes/net/java/openjdk/awt/peer/web/DamageRect.java ! src/web/classes/net/java/openjdk/awt/peer/web/GridDamageTracker.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java + src/web/classes/net/java/openjdk/cacio/servlet/BlitScreenUpdate.java ! src/web/classes/net/java/openjdk/cacio/servlet/CopyAreaScreenUpdate.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java ! src/web/classes/net/java/openjdk/cacio/servlet/ScreenUpdate.java + src/web/classes/net/java/openjdk/cacio/servlet/TreeImagePacker.java Changeset: 8b72aa3e9abc Author: ceisserer Date: 2011-07-16 21:41 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/8b72aa3e9abc set http headers to avoid caching of image-data ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java Changeset: d791f01e7420 Author: ceisserer Date: 2011-07-16 21:53 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/d791f01e7420 adopted javascript-side to parse command-stream out of image send random token to futher minimize probability of caching ! src/web/servlet/StreamBase.html Changeset: bd3bbbba1d85 Author: ceisserer Date: 2011-07-16 22:01 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/bd3bbbba1d85 send empty image after timeout, so the client has something to work with ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java From linuxhippy at gmail.com Sat Jul 16 15:13:18 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Sat, 16 Jul 2011 22:13:18 +0000 Subject: hg: caciocavallo/ng: 3 new changesets Message-ID: <20110716221318.E619F474A7@hg.openjdk.java.net> Changeset: 677ce3627d96 Author: ceisserer Date: 2011-07-16 23:19 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/677ce3627d96 add simple image packer for debugging/test purposes + src/web/classes/net/java/openjdk/cacio/servlet/SimpleImagePacker.java Changeset: 95418215a1d3 Author: ceisserer Date: 2011-07-17 00:05 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/95418215a1d3 introduce mergle-limit for damaged grids, to ease later packing ! src/web/classes/net/java/openjdk/awt/peer/web/GridDamageTracker.java Changeset: 3de3ebbbc91b Author: ceisserer Date: 2011-07-17 00:12 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/3de3ebbbc91b switch to tile-based image transfer ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java ! src/web/classes/net/java/openjdk/cacio/servlet/BlitScreenUpdate.java ! src/web/classes/net/java/openjdk/cacio/servlet/TreeImagePacker.java From linuxhippy at gmail.com Sun Jul 17 02:26:59 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Sun, 17 Jul 2011 09:26:59 +0000 Subject: hg: caciocavallo/ng: 6 new changesets Message-ID: <20110717092700.B8A3F474C0@hg.openjdk.java.net> Changeset: 522f088f2d2b Author: ceisserer Date: 2011-07-17 10:50 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/522f088f2d2b do only copy "evacuate" surface-data, if a not tracked operation (copyArea) will invalidate same tracked areas. ! src/web/classes/net/java/openjdk/cacio/servlet/BlitScreenUpdate.java Changeset: adff15b890d4 Author: ceisserer Date: 2011-07-17 10:52 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/adff15b890d4 factor out the whole command-stream encoding logic, so we can later re-introduce a Base64 based fallback ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java + src/web/classes/net/java/openjdk/cacio/servlet/ImageCmdStreamEncoder.java Changeset: 68dc35e1a673 Author: ceisserer Date: 2011-07-17 10:53 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/68dc35e1a673 provide two coordinates for src/packed positions ! src/web/classes/net/java/openjdk/cacio/servlet/TreeImagePacker.java Changeset: b3cd87f0e06a Author: ceisserer Date: 2011-07-17 10:54 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/b3cd87f0e06a remove benchmarking code from grid-based damage-tracker, we know its fast ;) ! src/web/classes/net/java/openjdk/awt/peer/web/GridDamageTracker.java Changeset: a6d96e4fe801 Author: ceisserer Date: 2011-07-17 10:55 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/a6d96e4fe801 also update packed position in the SimplePacker implementation ! src/web/classes/net/java/openjdk/cacio/servlet/SimpleImagePacker.java Changeset: d09eb9ae8ca6 Author: ceisserer Date: 2011-07-17 11:10 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/d09eb9ae8ca6 re-introduce base64 command-stream encoder + src/web/classes/net/java/openjdk/cacio/servlet/Base64CmdStreamEncoder.java + src/web/classes/net/java/openjdk/cacio/servlet/CmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageCmdStreamEncoder.java From linuxhippy at gmail.com Sun Jul 17 14:01:17 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Sun, 17 Jul 2011 21:01:17 +0000 Subject: hg: caciocavallo/ng: 6 new changesets Message-ID: <20110717210118.6321B474D8@hg.openjdk.java.net> Changeset: bad6f9e26c67 Author: ceisserer Date: 2011-07-17 14:21 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/bad6f9e26c67 switch to 2-byte per pixel encoding scheme ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java ! src/web/classes/net/java/openjdk/cacio/servlet/Base64CmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/BlitScreenUpdate.java ! src/web/classes/net/java/openjdk/cacio/servlet/CmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/CopyAreaScreenUpdate.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageCmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java ! src/web/classes/net/java/openjdk/cacio/servlet/ScreenUpdate.java ! src/web/servlet/StreamBase.html Changeset: 94319edcd4e2 Author: ceisserer Date: 2011-07-17 14:33 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/94319edcd4e2 Implement Base64 command-stream encoding & decoding ! src/web/classes/net/java/openjdk/cacio/servlet/Base64CmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java ! src/web/servlet/StreamBase.html Changeset: 229248359e0a Author: ceisserer Date: 2011-07-17 20:56 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/229248359e0a make merge size configureable ! src/web/classes/net/java/openjdk/awt/peer/web/GridDamageTracker.java Changeset: 0df008881fd7 Author: ceisserer Date: 2011-07-17 20:57 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/0df008881fd7 get rid of signedBytetoUnsignedInt method, don't need it anymore ! src/web/classes/net/java/openjdk/cacio/servlet/CmdStreamEncoder.java Changeset: e5cbffe0fe57 Author: ceisserer Date: 2011-07-17 21:28 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/e5cbffe0fe57 factor the transport backends out + src/web/servlet/ImgTransport.js ! src/web/servlet/StreamBase.html + src/web/servlet/XHRTransport.js Changeset: 70fcb4069af0 Author: ceisserer Date: 2011-07-17 21:59 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/70fcb4069af0 return empty WebGraphicsConfiguration for getDefaultConfiguration() if thread is not in AppContext, as its the case for the strikecache cleanup routine. ! src/web/classes/net/java/openjdk/awt/peer/web/WebGraphicsDevice.java From linuxhippy at gmail.com Mon Jul 18 07:00:21 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Mon, 18 Jul 2011 14:00:21 +0000 Subject: hg: caciocavallo/ng: add a third data transportation backend using brand new XHR2 functionality Message-ID: <20110718140021.DB6DD474FE@hg.openjdk.java.net> Changeset: 4b13548ef860 Author: ceisserer Date: 2011-07-18 15:08 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/4b13548ef860 add a third data transportation backend using brand new XHR2 functionality ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java + src/web/classes/net/java/openjdk/cacio/servlet/BinaryCmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageCmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java ! src/web/servlet/ImgTransport.js ! src/web/servlet/StreamBase.html + src/web/servlet/XHR2Transport.js ! src/web/servlet/XHRTransport.js From linuxhippy at gmail.com Tue Jul 19 12:00:36 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Tue, 19 Jul 2011 19:00:36 +0000 Subject: hg: caciocavallo/ng: avoid frequent creation of canvas-elements for command-stream retrieval, as it causes memory leaks with many browsers Message-ID: <20110719190036.C903547543@hg.openjdk.java.net> Changeset: d550f6f366d8 Author: ceisserer Date: 2011-07-19 20:59 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/d550f6f366d8 avoid frequent creation of canvas-elements for command-stream retrieval, as it causes memory leaks with many browsers ! src/web/servlet/ImgTransport.js From linuxhippy at gmail.com Thu Jul 21 09:42:39 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Thu, 21 Jul 2011 16:42:39 +0000 Subject: hg: caciocavallo/ng: 11 new changesets Message-ID: <20110721164241.538A9475B4@hg.openjdk.java.net> Changeset: ee09ef371c29 Author: ceisserer Date: 2011-07-21 15:40 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/ee09ef371c29 refactoring of the different backends, avoid excessive data-copying ! src/web/classes/net/java/openjdk/cacio/servlet/Base64CmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryCmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/CmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageCmdStreamEncoder.java Changeset: d35ea6de0a6d Author: ceisserer Date: 2011-07-21 15:41 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/d35ea6de0a6d further abstract XHR based backends, so we later can easily integrate the RLE based one + src/web/classes/net/java/openjdk/cacio/servlet/BinaryPngStreamEncoder.java Changeset: 7f343540d7f4 Author: ceisserer Date: 2011-07-21 15:44 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/7f343540d7f4 introduce fast and dynamic byte buffers, which are a lot faster for writing than ByteBufferOutputStream. + src/web/classes/net/java/openjdk/cacio/servlet/DynamicByteBuffer.java Changeset: 4ac97a70f9d8 Author: ceisserer Date: 2011-07-21 15:44 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/4ac97a70f9d8 RLE image data encoder + src/web/classes/net/java/openjdk/cacio/servlet/RLEImageEncoder.java Changeset: d0791dbe3f37 Author: ceisserer Date: 2011-07-21 18:37 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/d0791dbe3f37 store last run in runBuffer, not in dataBuffer ! src/web/classes/net/java/openjdk/cacio/servlet/RLEImageEncoder.java Changeset: 508dd617d7dc Author: ceisserer Date: 2011-07-21 18:38 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/508dd617d7dc client-side support for RLE decompression ! src/web/servlet/XHR2Transport.js Changeset: 4e1e7bedc7e7 Author: ceisserer Date: 2011-07-21 18:38 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/4e1e7bedc7e7 move polling-for-changes from Servlet into WebSurfaceData ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java Changeset: a4c614740830 Author: ceisserer Date: 2011-07-21 18:39 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/a4c614740830 calculate size dynamically, instead of (not) counting every inserted byte ! src/web/classes/net/java/openjdk/cacio/servlet/DynamicByteBuffer.java Changeset: 64f318cbe349 Author: ceisserer Date: 2011-07-21 18:40 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/64f318cbe349 disable some debug output ! src/web/classes/net/java/openjdk/cacio/servlet/CmdStreamEncoder.java Changeset: d522cacfab0c Author: ceisserer Date: 2011-07-21 18:40 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/d522cacfab0c disable even more debug output ! src/web/classes/net/java/openjdk/awt/peer/web/GridDamageTracker.java Changeset: d9b58be662b7 Author: ceisserer Date: 2011-07-21 18:41 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/d9b58be662b7 backend for streaming down RLE encoded images in binary format + src/web/classes/net/java/openjdk/cacio/servlet/BinaryRLEStreamEncoder.java From linuxhippy at gmail.com Thu Jul 21 14:01:43 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Thu, 21 Jul 2011 21:01:43 +0000 Subject: hg: caciocavallo/ng: 6 new changesets Message-ID: <20110721210144.17AFC47622@hg.openjdk.java.net> Changeset: 68e3c9d549ea Author: ceisserer Date: 2011-07-21 19:27 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/68e3c9d549ea only pass an outputstream instead of a httpservletresponse, to ease debugging ! src/web/classes/net/java/openjdk/cacio/servlet/Base64CmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryCmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryPngStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryRLEStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/CmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageCmdStreamEncoder.java Changeset: e3c5aae88ec8 Author: ceisserer Date: 2011-07-21 22:08 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/e3c5aae88ec8 refactoring of javascript-side ! src/web/servlet/ImgTransport.js ! src/web/servlet/StreamBase.html + src/web/servlet/XHR2PngTransport.js + src/web/servlet/XHR2RLETransport.js + src/web/servlet/XHR2Shared.js ! src/web/servlet/XHR2Transport.js + src/web/servlet/XHRBase64Transport.js Changeset: 31d42d35dbbc Author: ceisserer Date: 2011-07-21 22:14 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/31d42d35dbbc adopt binary-png backend to using an Uint8 buffer ! src/web/servlet/XHR2PngTransport.js Changeset: 382727f7ee4e Author: ceisserer Date: 2011-07-21 22:15 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/382727f7ee4e introduce start-request method for binary rle backend ! src/web/servlet/XHR2RLETransport.js Changeset: 5315b6c7e2a9 Author: ceisserer Date: 2011-07-21 22:25 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/5315b6c7e2a9 rename generic handleResponse to interpretCommands, as we have already enough methods named handleResponse lurking arround ! src/web/servlet/ImgTransport.js ! src/web/servlet/StreamBase.html ! src/web/servlet/XHR2PngTransport.js ! src/web/servlet/XHR2RLETransport.js ! src/web/servlet/XHRBase64Transport.js Changeset: 86a0061bd34e Author: ceisserer Date: 2011-07-21 23:00 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/86a0061bd34e refactoring, and improved code-sharing between the different XHR based transports ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java ! src/web/servlet/StreamBase.html ! src/web/servlet/XHR2PngTransport.js ! src/web/servlet/XHR2RLETransport.js ! src/web/servlet/XHR2Shared.js ! src/web/servlet/XHRBase64Transport.js + src/web/servlet/XHRShared.js From linuxhippy at gmail.com Fri Jul 22 08:55:16 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Fri, 22 Jul 2011 15:55:16 +0000 Subject: hg: caciocavallo/ng: 7 new changesets Message-ID: <20110722155517.E85AF4764F@hg.openjdk.java.net> Changeset: ea11c21c63f4 Author: ceisserer Date: 2011-07-22 16:03 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/ea11c21c63f4 don't reconnect after error for now ! src/web/servlet/XHRShared.js Changeset: f8db76c1811f Author: ceisserer Date: 2011-07-22 16:04 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/f8db76c1811f decide on cheaper heuristics wether packing is worth the trouble ! src/web/classes/net/java/openjdk/awt/peer/web/GridDamageTracker.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java Changeset: f0dae342f122 Author: ceisserer Date: 2011-07-22 16:05 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/f0dae342f122 switch to incremental, tree based packing algorithm ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryRLEStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/TreeImagePacker.java Changeset: 9e8029beb0aa Author: ceisserer Date: 2011-07-22 16:37 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/9e8029beb0aa track packed boundingbox while packing, instead of seperate ! src/web/classes/net/java/openjdk/cacio/servlet/TreeImagePacker.java Changeset: 62e0e31da4d3 Author: ceisserer Date: 2011-07-22 17:07 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/62e0e31da4d3 allow to compress an arbitary part of an image, therefor saving us one blit ! src/web/classes/net/java/openjdk/cacio/servlet/RLEImageEncoder.java Changeset: 9f757016d717 Author: ceisserer Date: 2011-07-22 17:08 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/9f757016d717 implement a fast-path for the RLE backend: iff only one blit-update is pending, compress directly from the SurfaceData and avoid additional blits ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryRLEStreamEncoder.java Changeset: 4d7532141e46 Author: ceisserer Date: 2011-07-22 17:54 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/4d7532141e46 disable debug/benchmarking output ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryRLEStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/RLEImageEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/TreeImagePacker.java From linuxhippy at gmail.com Fri Jul 22 16:27:38 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Fri, 22 Jul 2011 23:27:38 +0000 Subject: hg: caciocavallo/ng: 8 new changesets Message-ID: <20110722232739.DC6B74766B@hg.openjdk.java.net> Changeset: 0f945444c6c6 Author: ceisserer Date: 2011-07-22 19:46 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/0f945444c6c6 make RLEEncoder stateless and be more restrict with access modifiers ! src/web/classes/net/java/openjdk/cacio/servlet/RLEImageEncoder.java Changeset: 6800ee5551c7 Author: ceisserer Date: 2011-07-22 19:47 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/6800ee5551c7 re-use RLE encoder ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryRLEStreamEncoder.java Changeset: fc2917e21a40 Author: ceisserer Date: 2011-07-22 19:48 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/fc2917e21a40 wrong response-handler function was set for base64 backend ! src/web/servlet/XHRBase64Transport.js Changeset: dca72cdcb17c Author: ceisserer Date: 2011-07-22 20:25 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/dca72cdcb17c move rle image decoding into a seperate file, soon more transports will make use of it + src/web/servlet/RLEImageDecoder.js ! src/web/servlet/XHR2RLETransport.js Changeset: a80d3d1f52d0 Author: ceisserer Date: 2011-07-22 20:27 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/a80d3d1f52d0 Transport for rle encoded image data over XHR1, for browser which dont support XHR2. quite ugly. + src/web/servlet/XHR1RLETransport.js Changeset: 0eb5c377ff81 Author: ceisserer Date: 2011-07-22 20:28 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/0eb5c377ff81 general refactoring of the backend code ! src/web/servlet/StreamBase.html ! src/web/servlet/XHR2Shared.js ! src/web/servlet/XHRShared.js Changeset: 60014b7b15d8 Author: ceisserer Date: 2011-07-22 21:15 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/60014b7b15d8 XHRTransport is no more, as we now have multiple backend using XHR1 - src/web/servlet/XHRTransport.js Changeset: 1f79814c6b82 Author: ceisserer Date: 2011-07-22 21:17 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/1f79814c6b82 reduce array creation in internet-explorer-9 XHR1 codepaths ! src/web/servlet/XHR1RLETransport.js From linuxhippy at gmail.com Mon Jul 25 02:11:00 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Mon, 25 Jul 2011 09:11:00 +0000 Subject: hg: caciocavallo/ng: 4 new changesets Message-ID: <20110725091101.85D79476EF@hg.openjdk.java.net> Changeset: 29eeeaaa2eb1 Author: ceisserer Date: 2011-07-23 11:24 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/29eeeaaa2eb1 move ScreenUpdate handling into GridDamageTracker, as it doesn't have to do a whole lot with the surface itself ! src/web/classes/net/java/openjdk/awt/peer/web/GridDamageTracker.java Changeset: ae001298d6a9 Author: ceisserer Date: 2011-07-23 11:26 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/ae001298d6a9 refactoring: move command-buffer from surfacedata to webscreen, as we quite likely will stream other commands than rendering-commands (e.g. mouse-pointer stuff) down to the client ! src/web/classes/net/java/openjdk/awt/peer/web/WebScreen.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryRLEStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/CopyAreaScreenUpdate.java ! src/web/classes/net/java/openjdk/cacio/servlet/DynamicByteBuffer.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java ! src/web/classes/net/java/openjdk/cacio/servlet/RLEImageEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/ScreenUpdate.java Changeset: 96bc249f7d6f Author: ceisserer Date: 2011-07-23 11:28 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/96bc249f7d6f add initialization routine for the image-transport ! src/web/servlet/ImgTransport.js Changeset: 12415aea6445 Author: ceisserer Date: 2011-07-23 11:30 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/12415aea6445 do not unescessarily pass the root-node arround ! src/web/classes/net/java/openjdk/cacio/servlet/TreeImagePacker.java From linuxhippy at gmail.com Mon Jul 25 04:39:43 2011 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Mon, 25 Jul 2011 13:39:43 +0200 Subject: Cursor-Handling questions Message-ID: Hi all, I had a look at cursor-handling, as it should be relativly easy to do and looks cool for demo-purposes ;) Unfourtunatly I didn't find a lot of cursor related stuff in cacio, except CacioComponentPeer.updateCursorImmediately, which mentions a global cursor manager. What was the original design idea here? I noticed managed top-level windows can't be moved/resized and don't repaint their background when closed, what would be a good point to start? Thanks, Clemens -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/caciocavallo-dev/attachments/20110725/b71e77c3/attachment.html From linuxhippy at gmail.com Mon Jul 25 09:59:20 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Mon, 25 Jul 2011 16:59:20 +0000 Subject: hg: caciocavallo/ng: 2 new changesets Message-ID: <20110725165921.5B02F476FF@hg.openjdk.java.net> Changeset: bd7e9dfa6f0b Author: ceisserer Date: 2011-07-25 12:43 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/bd7e9dfa6f0b further tune run length coding's inner loop ! src/web/classes/net/java/openjdk/cacio/servlet/RLEImageEncoder.java Changeset: 8be64c6f08e7 Author: ceisserer Date: 2011-07-25 13:29 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/8be64c6f08e7 grab the toolkit-lock while event-dispatch ! src/web/classes/net/java/openjdk/awt/peer/web/WebScreen.java From roman at kennke.org Tue Jul 26 13:35:20 2011 From: roman at kennke.org (Roman Kennke) Date: Tue, 26 Jul 2011 22:35:20 +0200 Subject: Cursor-Handling questions In-Reply-To: References: Message-ID: <1311712520.2223.3.camel@moonlight> Hi Clemens, > I had a look at cursor-handling, as it should be relativly easy to do > and looks cool for demo-purposes ;) > Unfourtunatly I didn't find a lot of cursor related stuff in cacio, > except CacioComponentPeer.updateCursorImmediately, which mentions a > global cursor manager. > What was the original design idea here? We did not really care much about cursor handling so far. So far I believed the updateCursorImmediately() together with the GlobalCursorManager (search for it in the JDK sources) provides a nice and flexible enough abstraction for this. I guess you need to study that and see if it matches what you want to do. If not, I'd be happy to work with you on an improved framework for this in Cacio. > I noticed managed top-level windows can't be moved/resized and don't > repaint their background when closed, what would be a good point to > start? They can't? I thought I remember that I spent quite some time to implement this. I know that it wasn't working very well, e.g. it was slow as hell etc, but I believe it was possible. But I don't know from the top off my head how/where to start. (IOW, you need to study the code and find out, I can assist you on IRC if you like.) Cheers, Roman From neugens.limasoftware at gmail.com Tue Jul 26 14:15:12 2011 From: neugens.limasoftware at gmail.com (Mario Torre) Date: Tue, 26 Jul 2011 23:15:12 +0200 Subject: Cursor-Handling questions In-Reply-To: <1311712520.2223.3.camel@moonlight> References: <1311712520.2223.3.camel@moonlight> Message-ID: 2011/7/26 Roman Kennke : Hi Clemens, > They can't? I thought I remember that I spent quite some time to > implement this. I know that it wasn't working very well, e.g. it was > slow as hell etc, but I believe it was possible. But I don't know from > the top off my head how/where to start. (IOW, you need to study the code > and find out, I can assist you on IRC if you like.) I think managed windows are not resizable, non managed windows are resizable, and we spent time on that, if my memory is right. Managed windows are screen, a screen is like a device, to resize you need to trick a display size change (and take care to regenerated the Surface window accordingly). Cheers, Mario -- pgp key: http://subkeys.pgp.net/ PGP Key ID: 80F240CF Fingerprint: BA39 9666 94EC 8B73 27FA? FC7C 4086 63E3 80F2 40CF IcedRobot: www.icedrobot.org Proud GNU Classpath developer: http://www.classpath.org/ Read About us at: http://planet.classpath.org OpenJDK: http://openjdk.java.net/projects/caciocavallo/ Please, support open standards: http://endsoftpatents.org/ From linuxhippy at gmail.com Fri Jul 29 08:03:57 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Fri, 29 Jul 2011 15:03:57 +0000 Subject: hg: caciocavallo/ng: 16 new changesets Message-ID: <20110729150400.1A860477EB@hg.openjdk.java.net> Changeset: 2257d42e21b0 Author: ceisserer Date: 2011-07-26 11:13 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/2257d42e21b0 support negative values in command-stream decoding ! src/web/servlet/XHRShared.js Changeset: 49f0b99ed70a Author: ceisserer Date: 2011-07-28 14:31 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/49f0b99ed70a introduce our own wire-format for signed multiple byte numbers, as we can't use java's overflow semanntics in javascript ! src/web/servlet/XHRShared.js Changeset: d878a65aad5c Author: ceisserer Date: 2011-07-28 14:31 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/d878a65aad5c own binary format ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryCmdStreamEncoder.java Changeset: 7df41c480389 Author: ceisserer Date: 2011-07-29 16:06 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/7df41c480389 Add parameter to skip fast-path in damage tracking. useful if there are preceeding operations queued - where the non-packing case would lead to unoptimal packing results ! src/web/classes/net/java/openjdk/awt/peer/web/GridDamageTracker.java Changeset: 94aa4d5e5443 Author: ceisserer Date: 2011-07-29 16:06 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/94aa4d5e5443 small cleanup and comment clarification ! src/web/classes/net/java/openjdk/awt/peer/web/WebGraphicsDevice.java Changeset: 2502b358c776 Author: ceisserer Date: 2011-07-29 16:08 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/2502b358c776 simple benchmark servlet for testing client performance + src/web/classes/net/java/openjdk/cacio/servlet/benchmark/ImgBenchServlet.java Changeset: 2bbce40d219f Author: ceisserer Date: 2011-07-29 16:09 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/2bbce40d219f small simplification in readShort ! src/web/servlet/XHRShared.js Changeset: 9856f3f02b17 Author: ceisserer Date: 2011-07-29 16:10 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/9856f3f02b17 do no longer cache the XHR1 data arrays, as with the introduction of copyArea commands we depend on the exact length ! src/web/servlet/XHR1RLETransport.js Changeset: 0ba7efa814cf Author: ceisserer Date: 2011-07-29 16:11 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/0ba7efa814cf handle the case when no BlitScreenUpdates (aka no image-data at all) is sent ! src/web/servlet/RLEImageDecoder.js Changeset: df4ab2a41c30 Author: ceisserer Date: 2011-07-29 16:12 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/df4ab2a41c30 Interpret copyArea commands (cmd=1) ! src/web/servlet/StreamBase.html Changeset: 2f2fabf92710 Author: ceisserer Date: 2011-07-29 16:39 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/2f2fabf92710 fix negativ coordinate format for Image-Transport ! src/web/classes/net/java/openjdk/cacio/servlet/ImageCmdStreamEncoder.java ! src/web/servlet/ImgTransport.js Changeset: 8b67dc1adb95 Author: ceisserer Date: 2011-07-29 16:40 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/8b67dc1adb95 fix no-image-data case for other backends too ! src/web/classes/net/java/openjdk/cacio/servlet/Base64CmdStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryPngStreamEncoder.java ! src/web/classes/net/java/openjdk/cacio/servlet/BinaryRLEStreamEncoder.java Changeset: 79213141c849 Author: ceisserer Date: 2011-07-29 16:48 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/79213141c849 remove some debug-code and switch to SHR2Rle by default again ! src/web/servlet/StreamBase.html Changeset: 72b9af3736c7 Author: ceisserer Date: 2011-07-29 16:50 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/72b9af3736c7 CopyArea acceleration as well as refactorings to make it possible - manifest.mf ! src/web/classes/net/java/openjdk/awt/peer/web/WebScreen.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java ! src/web/classes/net/java/openjdk/cacio/server/CacioServer.java ! src/web/classes/net/java/openjdk/cacio/servlet/CopyAreaScreenUpdate.java ! src/web/classes/net/java/openjdk/cacio/servlet/ImageStreamer.java ! src/web/classes/net/java/openjdk/cacio/servlet/TreeImagePacker.java Changeset: 2cb1ce96ab2b Author: ceisserer Date: 2011-07-29 16:54 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/2cb1ce96ab2b remove small debug-left-over ! src/web/servlet/StreamBase.html Changeset: 599b1cb4f8de Author: ceisserer Date: 2011-07-29 16:54 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/599b1cb4f8de look up Blit with imageType specified in SunGraphics ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java From linuxhippy at gmail.com Sat Jul 30 00:45:48 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Sat, 30 Jul 2011 07:45:48 +0000 Subject: hg: caciocavallo/ng: simply use copyArea of the Graphics2D instance provided by the backing BufferedImage Message-ID: <20110730074548.C9C5E47811@hg.openjdk.java.net> Changeset: 5e9b23eacd2a Author: ceisserer Date: 2011-07-29 22:30 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/5e9b23eacd2a simply use copyArea of the Graphics2D instance provided by the backing BufferedImage ! src/web/classes/net/java/openjdk/awt/peer/web/WebSurfaceData.java From linuxhippy at gmail.com Sun Jul 31 08:13:23 2011 From: linuxhippy at gmail.com (linuxhippy at gmail.com) Date: Sun, 31 Jul 2011 15:13:23 +0000 Subject: hg: caciocavallo/ng: 4 new changesets Message-ID: <20110731151324.6FCBF47856@hg.openjdk.java.net> Changeset: 0744bd693df8 Author: ceisserer Date: 2011-07-30 12:30 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/0744bd693df8 store app-context in session-state, so we can dispose it when the session times out ! src/web/classes/net/java/openjdk/awt/peer/web/WebSessionState.java ! src/web/classes/net/java/openjdk/cacio/servlet/AppContextCreator.java Changeset: 404c5be86742 Author: ceisserer Date: 2011-07-30 12:31 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/404c5be86742 add dummy system tray support, required for AppContext disposal + src/web/classes/net/java/openjdk/awt/peer/web/WebSystemTrayPeer.java ! src/web/classes/net/java/openjdk/awt/peer/web/WebToolkit.java Changeset: a442cfca5aba Author: ceisserer Date: 2011-07-30 12:31 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/a442cfca5aba add method for disposing all sub-sessions contained in a session ! src/web/classes/net/java/openjdk/cacio/servlet/WebSessionManager.java Changeset: 51bae35eabef Author: ceisserer Date: 2011-07-30 12:36 +0200 URL: http://hg.openjdk.java.net/caciocavallo/ng/rev/51bae35eabef dispose sessions and their assicioated AppContext when HttpSession times out ! src/web/classes/net/java/openjdk/cacio/server/CacioServer.java + src/web/classes/net/java/openjdk/cacio/server/CacioSessionListener.java