update check only once daily, fixes that were causing things to lock up

on window move
This commit is contained in:
benfry
2005-05-03 04:43:46 +00:00
parent bf3ec90c72
commit ca58d05985
7 changed files with 490 additions and 382 deletions

View File

@@ -77,6 +77,8 @@ class MessageSiphon implements Runnable {
//if (e.getMessage().indexOf("Bad file descriptor") == -1) {
//System.err.println("MessageSiphon err " + e);
//e.printStackTrace();
} else {
e.printStackTrace();
}
thread = null;
}

View File

@@ -345,7 +345,8 @@ public class Runner implements MessageConsumer {
}
public void message(String s) {
// made synchronized for rev 87
synchronized public void message(String s) {
if (s.trim().length() == 0) return;
//System.out.println("M" + s.length() + ":" + s);
@@ -360,7 +361,7 @@ public class Runner implements MessageConsumer {
// this is the PApplet sending us a message that the applet
// is being moved to a new window location
if (s.indexOf(PApplet.EXTERNAL_MOVE) == 0) {
String nums = s.substring(s.indexOf(' ') + 1);
String nums = s.substring(s.indexOf(' ') + 1).trim();
int space = nums.indexOf(' ');
int left = Integer.parseInt(nums.substring(0, space));
int top = Integer.parseInt(nums.substring(space + 1));
@@ -465,10 +466,19 @@ java.lang.NullPointerException
}
}
if (codeIndex != -1) {
// this may have a paren on the end, if so need to strip
// down to just the digits
int lastNumberIndex = colonIndex + 1;
while (Character.isDigit(fileAndLine.charAt(lastNumberIndex))) {
lastNumberIndex++;
}
// lineIndex is 1-indexed, but editor wants zero-indexed
lineIndex = Integer.parseInt(fileAndLine.substring(colonIndex + 1));
exception = new RunnerException(exception.getMessage(),
codeIndex, lineIndex - 1, -1);
lineIndex =
Integer.parseInt(fileAndLine.substring(colonIndex + 1,
lastNumberIndex));
exception =
new RunnerException(exception.getMessage(),
codeIndex, lineIndex - 1, -1);
exception.hideStackTrace = true;
foundMessageSource = true;
}

View File

@@ -264,6 +264,16 @@ public class Sketch {
// make sure the user didn't hide the sketch folder
ensureExistence();
// if read-only, give an error
if (isReadOnly()) {
// if the files are read-only, need to first do a "save as".
Base.showMessage("Sketch is Read-Only",
"Some files are marked \"read-only\", so you'll\n" +
"need to re-save the sketch in another location,\n" +
"and try again.");
return;
}
renamingCode = false;
editor.status.edit("Name for new file:", "");
}
@@ -273,6 +283,16 @@ public class Sketch {
// make sure the user didn't hide the sketch folder
ensureExistence();
// if read-only, give an error
if (isReadOnly()) {
// if the files are read-only, need to first do a "save as".
Base.showMessage("Sketch is Read-Only",
"Some files are marked \"read-only\", so you'll\n" +
"need to re-save the sketch in another location,\n" +
"and try again.");
return;
}
// ask for new name of file (internal to window)
// TODO maybe just popup a text area?
renamingCode = true;
@@ -505,6 +525,16 @@ public class Sketch {
// make sure the user didn't hide the sketch folder
ensureExistence();
// if read-only, give an error
if (isReadOnly()) {
// if the files are read-only, need to first do a "save as".
Base.showMessage("Sketch is Read-Only",
"Some files are marked \"read-only\", so you'll\n" +
"need to re-save the sketch in another location,\n" +
"and try again.");
return;
}
// confirm deletion with user, yes/no
Object[] options = { "OK", "Cancel" };
String prompt = (current == code[0]) ?
@@ -570,6 +600,19 @@ public class Sketch {
public void hideCode() {
// make sure the user didn't hide the sketch folder
ensureExistence();
// if read-only, give an error
if (isReadOnly()) {
// if the files are read-only, need to first do a "save as".
Base.showMessage("Sketch is Read-Only",
"Some files are marked \"read-only\", so you'll\n" +
"need to re-save the sketch in another location,\n" +
"and try again.");
return;
}
// don't allow hide of the main code
// TODO maybe gray out the menu on setCurrent(0)
if (current == code[0]) {
@@ -672,39 +715,6 @@ public class Sketch {
}
/**
* Make sure the sketch hasn't been moved or deleted by some
* nefarious user. If they did, try to re-create it and save.
*/
protected void ensureExistence() {
if (folder.exists()) return;
Base.showWarning("Sketch Disappeared",
"The sketch folder has disappeared.\n " +
"Will attempt to re-save in the same location,\n" +
"but anything besides the code will be lost.", null);
try {
folder.mkdirs();
modified = true;
for (int i = 0; i < codeCount; i++) {
code[i].save(); // this will force a save
}
for (int i = 0; i < hiddenCount; i++) {
hidden[i].save(); // this will force a save
}
calcModified();
} catch (Exception e) {
Base.showWarning("Could not re-save sketch",
"Could not properly re-save the sketch. " +
"You may be in trouble at this point,\n" +
"and it might be time to copy and paste " +
"your code to another text editor.", e);
}
}
/**
* Save all code in the current sketch.
*/
@@ -771,8 +781,9 @@ public class Sketch {
newName = Sketchbook.sanitizeName(newName);
// make sure there doesn't exist a tab with that name already
// (but allow it if it's just the main tab resaving itself.. oops)
File codeAlready = new File(folder, newName + ".pde");
if (codeAlready.exists()) {
if (codeAlready.exists() && (!newName.equals(name))) {
Base.showMessage("Nope",
"You can't save the sketch as \"" + newName + "\"\n" +
"because the sketch already has a tab with that name.");
@@ -924,6 +935,19 @@ public class Sketch {
* or .dll, .jnilib, or .so files for the code folder
*/
public void addFile() {
// make sure the user didn't hide the sketch folder
ensureExistence();
// if read-only, give an error
if (isReadOnly()) {
// if the files are read-only, need to first do a "save as".
Base.showMessage("Sketch is Read-Only",
"Some files are marked \"read-only\", so you'll\n" +
"need to re-save the sketch in another location,\n" +
"and try again.");
return;
}
// get a dialog, select a file to add to the sketch
String prompt =
"Select an image or other data file to copy to your sketch";
@@ -1966,6 +1990,41 @@ public class Sketch {
}
/**
* Make sure the sketch hasn't been moved or deleted by some
* nefarious user. If they did, try to re-create it and save.
* Only checks to see if the main folder is still around,
* but not its contents.
*/
protected void ensureExistence() {
if (folder.exists()) return;
Base.showWarning("Sketch Disappeared",
"The sketch folder has disappeared.\n " +
"Will attempt to re-save in the same location,\n" +
"but anything besides the code will be lost.", null);
try {
folder.mkdirs();
modified = true;
for (int i = 0; i < codeCount; i++) {
code[i].save(); // this will force a save
}
for (int i = 0; i < hiddenCount; i++) {
hidden[i].save(); // this will force a save
}
calcModified();
} catch (Exception e) {
Base.showWarning("Could not re-save sketch",
"Could not properly re-save the sketch. " +
"You may be in trouble at this point,\n" +
"and it might be time to copy and paste " +
"your code to another text editor.", e);
}
}
/**
* Returns true if this is a read-only sketch. Used for the
* examples directory, or when sketches are loaded from read-only

View File

@@ -58,6 +58,8 @@ public class UpdateCheck implements Runnable {
Editor editor;
String downloadURL = "http://processing.org/download/latest.txt";
static final long ONE_DAY = 24 * 60 * 60 * 1000;
public UpdateCheck(Editor editor) {
this.editor = editor;
@@ -92,6 +94,17 @@ public class UpdateCheck implements Runnable {
try {
int latest = readInt(downloadURL + "?" + info);
String lastString = Preferences.get("update.last");
long now = System.currentTimeMillis();
if (lastString != null) {
long when = Long.parseLong(lastString);
if (now - when < ONE_DAY) {
// don't annoy the shit outta people
return;
}
}
Preferences.set("update.last", String.valueOf(now));
String prompt =
"A new version of Processing is available,\n" +
"would you like to visit the Processing download page?";

View File

@@ -7,6 +7,32 @@ releases will be super crusty.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ABOUT REV 0087 - 2 may 2005
not tested as thoroughly as rev 86, gonna wait 24-48 hours before
setting this as the default download.
+ the reason for this release: dragging the sketch window should no
longer make things lock up. also found several bugs that were
probably contributing to the problem.
+ more file creating and saving fixes:
- new tab with a .java file was giving an error
http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1115059069;start=0
- "save as" with a read-only sketch wasn't letting you use the
same name as the old one.
- other small tweaks to new tab/save as/rename error messages
+ check for updates happens only once daily, rather than nagging
you on each startup
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ABOUT REV 0086 - 1 may 2005
fixes for a couple major bugs in the beta release.

View File

@@ -1,10 +1,24 @@
0087 core
fixed in previous releases
X The PushPop example in Transformations is not working
X with lights() callled
X The transparency of the Rotate3D example in Translformations
X is not as expected
X lighting totally sucks (both PGraphics3 and PGraphicsGL)
X bring in materials for opengl as well?
X don't include a class, just make it similar to the light functions
X sphere() and box() should set normals and take textures
X background color seems to be wrong?
X check this once lighting actually works
X printarr() of null array crashes without an error
X actually, errors from many crashes not coming through on the mac?
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
high priority
HIGH PRIORITY
_ polygons perpendicular to axis not drawing
_ is this a clipping error?
@@ -18,122 +32,37 @@ _ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Syntax;action=displ
_ new PGraphics2 objects are set as RGB, but on loadPixels/updatePixels
_ they're drawn as transparent and don't have their high bits set
http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Syntax;action=display;num=1113933055;start=0
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1115087536;start=0
_ vars like cameraX etc need to be in PGraphics
_ otherwise g.xxxx won't work
_ is mousePressed broken because of event queue?
_ or at least w/ framerate? or redraw and noLoop?
_ how far should this go? vertices etc?
X typed version of expand() and contract()
_ need to complete for the others:
_ append(), shorten(), splice, slice, subset, concat, reverse
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Suggestions;action=display;num=1114443601;start=0
_ simon reports borders on P3D and OPENGL if background() not called
present mode fixes
_ for present mode, need to set a default display
_ currently crashes if only --present is specified w/o --display
_ present mode is flakey.. applet doesn't always come up
_ seems like hitting stop helps shut it down?
_ is full screen window not being taken down properly?
_ esc should kill fullscreen mode
_ can a key handler be added to the window?
_ how can this be shut off for presentations?
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1114027594;start=0
_ implement full screen mode.. this takes over the screen as best it can
_ size(screen.width, screen.height, OPENGL);
_ if size is screen.width and screen.height, does its best
_ needs to get the size of the main screen
_ ability to select monitor via preferences panel
_ this applies to any applet that's run externally currently (verify)
_ make it also work with anything that's run inside of p5 itself
_ check current present code with multiple monitors
_ first pass on full screen
_ exceptions in full screen mode will quit the app completely
_ (can't keep window open because things are hosed)
_ default is that full screen app doesn't cover multiple displays
_ this is fine since opengl can't usually go across both
_ but include an example for how to use full in gl
_ (use toolkit.getscreensize)
_ seem to be problems with updatePixels() on the mac
_ appears to run asynchronously
_ don't do a loadPixels unless an updatePixels has completed
_ tho this won't affect anything, since either it's an image buffer
_ or it's the PGraphics object, which does an updatePixels() immediately
_ the draw() method must exist, otherwise the sketch won't run
_ web colors with alpha: 0xffcc0080 or unhex("ffcc0080")
_ point appears to be broken
_ could be a problem with java 1.5? (was using win2k)
noStroke();
colorMode(RGB, 100);
for(int i=0; i<100; i++) {
for(int j=0; j<100; j++) {
stroke(i, j, 0);
point(i, j);
}
}
As an aside, set() is at least 10x faster, and
perhaps should be used in these examples anyway.
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1114204116;start=0
_ is it the run() exception handler that's leaving off the CRLFs?
_ would be cool if could sort w/o the sort class..
_ meaning use reflection to sort objects, just by implementing a few methods
_ make a PException that extends RuntimeException but packages an ex?
_ http://java.sun.com/docs/books/tutorial/essential/exceptions/runtime.html
_ catch sun.dc.pr.PRException?
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1113990788;start=0
_ bizarre image loading error with c_Rollover.zip
_ text() with a z coordinate is now using translate, very slow
_ also puts up a weird error message about translate() in 2D mode
_ set upper bound on framerate so as not to completely hose things?
_ fix the flicker in java2d mode
_ not clear what's happening here
_ appears to be much worse (unfinished drawing) on macosx
_ try turning off hw accel on the mac to see if that's the problem
_ post() method to send a bunch of crap to a web url?
_ or an example that does this?
_ bit shifting in opengl, get down to 2 ops by using other image modes
_ i.e. ABGR_EXT might allow for just two shifts instead of 4
_ allow access to native pixel buffer in opengl and power of 2
_ so that no need to copy/update everything
_ need to write an error if people try to use opengl with 1.3 (i.e. on export)
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Contribution_3DOpenGL;action=display;num=1114368123;start=3
_ grabbing sun.cpu.endian throws a security exception with gl applets
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Contribution_3DOpenGL;action=display;num=1114368123;start=3
_ make the 1.4 code in PApplet load via reflection
_ doesn't appear necessary with 1.3 applets
_ don't do a loadPixels unless an updatePixels has completed
_ tho this won't affect anything, since either it's an image buffer
_ or it's the PGraphics object, which does an updatePixels() immediately
_ don't grab pixels of java2d images unless asked
_ this is the difference between a lot of loadPixels() and not
_ so important to have it in before beta if that's the change
_ if (modified) don't loadPixels again, just ignore it
_ make a note that updatePixels() only sets a flag in PImage
_ (but not PGraphics, which does it immediately)
_ make get/getImpl for PGraphics/PGraphics2
_ make sure there's a loadPixels/updatePixels in PGraphics2
_ rewrite getImpl/setImpl inside opengl
_ make screen space fonts use get/set as well?
_ too much to debug on their own
_ unfortunately tint not set with setImpl, but...
_ get/set doesn't use tint at all
_ (meaning that it's not so good for fonts)
_ apply tint() to textures as well
_ otherwise no good way to color textures
_ textMode(SCREEN) having issues
_ set(x, y, image)
_ x, y not setting with processing
@@ -144,6 +73,8 @@ _ will sorting based on depth help this? also ask simon for ideas
_ cellular automata examples broken
_ ComponentListener is probably what's needed for resize() to work
_ gl smoothing.. how to disable polygon but keep line enabled
_ or at least make a note of this?
_ leave smooth off, get the gl object, then enable line smooth
@@ -154,99 +85,21 @@ _ make illustrator lib
_ move really general things out of PConstants (X, Y, Z..)
sound
_ duration as an internal param, not a function
_ When a sound is finished playing, it should return to 0 so it can play again
_ Putting sound.loop() in draw() seemed to spawn multiple sounds threads?
_ After a sound is paused, it will only play from where it was paused
_ to its end and will not loop again
_ The ref in PSound2 says volume accepts vals from 0...1
_ but values larger than one increase the volume.
_ SoundEvent // is sound finished?? Can't access now.
_ don't grab pixels of java2d images unless asked
_ this is the difference between a lot of loadPixels() and not
_ so important to have it in before beta if that's the change
_ if (modified) don't loadPixels again, just ignore it
_ make a note that updatePixels() only sets a flag in PImage
_ (but not PGraphics, which does it immediately)
_ make vertexCount etc properly accessible in PGraphics3
_ so that people can do things like the dxf renderer
_ add something to PApplet to have constants for the platform
_ needed for error messages (don't talk about winvdig on mac)
_ and also useful for programs
PApplet
_ is mousePressed broken with noLoop() or redraw()?
_ check for what else inside PApplet should be static
_ maybe catch RuntimeExceptions in the called sub-functions
_ that way more stuff can be static w/o losing useful error handling
_ (emitting errors when closest to source.. i.e. w/ the filename)
PGraphics3
_ error message saying that strokeCap and strokeJoin don't work
_ PPolygon no longer in use and PLine is a mess
_ also have a simple way to hook in triangle leeches to PGraphics3
_ this exists, but needs to be documented, or have accessors
to be fixed with new lighting
_ The PushPop example in Transformations is not working
_ with lights() callled
_ The transparency of the Rotate3D example in Translformations
_ is not as expected
_ lighting totally sucks (both PGraphics3 and PGraphicsGL)
_ bring in materials for opengl as well?
_ don't include a class, just make it similar to the light functions
_ sphere() and box() should set normals and take textures
_ background color seems to be wrong?
_ check this once lighting actually works
_ don't let users on < 1.3 load JAVA2D, or < 1.4 load OPENGL
PApplet
_ printarr() of null array crashes without an error
_ actually, errors from many crashes not coming through on the mac?
_ allow save(), saveFrame() et al to properly pass in absolute paths
_ (so that it doesn't always save to the applet folder)
_ could require that save() takes an absolute path?
_ size() inside draw is missing a new call to cameraMode, etc
PGraphics
_ new PGraphics(PImage)
PGraphics2
_ textSpace(SCREEN_SPACE) needs to be faster
_ need flat image implementation that takes no transforms
_ along with 90, 180 and 270 versions of it as well
_ tie to glDrawPixels.. how to clear matrix properly for that?
_ gradient-painted lines
Color c = new Color(0x00FFFF00, true);
GradientPaint gradient =
new GradientPaint(0,0,Color.red,100,100,c);
GeneralPath gp = new GeneralPath();
gp.moveTo(10, 10);
gp.lineTo(100, 90);
gp.lineTo(20, 50);
gp.closePath();
Graphics2D g2 = ((PGraphics2)g).g2;
g2.setPaint(gradient);
g2.draw(gp);
PGraphics3
_ fix tint() for PGraphics3 (what could be wrong?)
_ tint() honoring alpha but not colored tint
_ maybe not setting fill color when drawing textures
_ guessing it's an implementation issue in sami's renderer
_ check with the a_Displaying example and tint(255, 0, 0, 100);
_ Stroking a rect() leaves the upper right pixel off.
_ beginShape()
_ don't allow you to draw stroked items unless stroke() is called
_ don't allow beginShape() if shape is already set
_ (otherwise will cause some very strange errors)
_ image loading bug is huge
_ figure out how to handle cached images, multiple images
@@ -367,56 +220,120 @@ The graphics library was formerly called Bagel.
CORE / PApplet
1 _ allow save(), saveFrame() et al to properly pass in absolute paths
1 _ (so that it doesn't always save to the applet folder)
1 _ could require that save() takes an absolute path?
1 _ size() inside draw is missing a new call to cameraMode, etc
1 _ framerate(30) is still flickery and jumpy..
1 _ fix param() to use a sketch.properties file when run as an app
1 _ make this also be used in generating the html file
1 _ fix link() to handle relative URLs
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081710684;start=0
1 _ put SecurityException things around file i/o for applets
1 _ rather than checking online(), since applets might be signed
1 _ saveFrame() at the end of a draw mode program is problematic
1 _ app might exit before the file has finished writing to disk
1 _ need to block other activity inside screenGrab until finished
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081706752
1 _ problems with defining fill(255) vs fill(0xff808080)
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1083650609;start=0
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1082481891;start=2
1 _ too many push() will silently stop the applet inside a loop
1 _ test winding polygons in different directions
1 _ test lighting to see how it compares with gl
1 _ better lockout inside beginShape() to keep other things from happening
1 _ is quad strip broken or not behaving as expected?
1 _ may be correct, it worked for nik
1 _ inside draw() mode, delay() does nothing
1 _ delay might be a good way to signal drawing to the screen/updating
1 _ catch security exceptions around applet i/o calls
1 _ not just for saving files, but provide better error msgs when
1 _ attempting to download from another server
1 _ array utilities on Object[] are worthless.. fix it with reflection?
1 _ see if reflection will allow expand for all class types
1 _ ed's thread re: fullscreen strategies
1 _ could add a new BApplet that uses BufferStrategy?
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Programs;action=display;num=1081335361;start=15
1 _ don't cache stuff from loadStrings and others
1 _ mac java vm won't give up old version of file
1 _ or use setUseCaches(false)
CORE / PImage
b _ dynamically load code for png and others on loadImage/saveFrame?
b _ updated png encoder
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1083792994
b _ more image file i/o.. more advanced in newer java
b _ read uncompressed tiff, read uncompressed tga files.
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1081190619
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Tools;action=display;num=1066742994;start=15
b _ loadImage() seems to be caching everything from the jar
b _ make a note of how to disable this
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Programs;action=display;num=1078795681#8
b _ get loadImage() to work properly with data folder
b _ should probably use the code from loadStream
b _ and the url stuff should be an alternate method altogether
b _ alpha not set on saveFrame, so can't be used in photoshop as a layer
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=general;action=display;num=1078441623;start=0
b _ expose function to write tiff header in PImage (advanced)
b _ helps with writing enormous images
1 _ loadImage must be used inside or after setup
1 _ either document this and/or provide a better error message
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Programs;action=display;num=1060879468;start=0
b _ more blend() modes (the five listed on the thread below?)
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1082056702
b _ figure out what the modes should actually be:
b _ photoshop: normal, dissolve; darken, multiply, color burn,
b _ linear burn; lighten, screen, color dodge, linear
b _ dodge; overlay, soft light, hard light, vivid light,
b _ linear light, pin light, hard mix; difference,
b _ exclusion; hue, saturation, color, luminosity
b _ illustrator: normal; darken, multiply, color burn; lighten,
b _ screen, color dodge; overlay, soft light, hard light;
b _ difference, exclusion; hue, sat, color, luminosity
b _ director: Copy, Transparent, Reverse, Ghost, Not copy,
b _ Not transparent, Not reverse, Not ghost, Matte, Mask;
b _ (below seems more useful:
b _ Blend, Add pin, Add, Subtract pin, Background transparent,
b _ Lightest, Subtract, Darkest, Lighten, Darken
b _ flash:
b _ DIFFERENCE: C = abs(A-B);
b _ MULTIPLY: C = (A * B ) / 255
b _ SCREEN: C= 255 - ( (255-A) * (255-B) / 255 )
b _ OVERLAY: C = B < 128 ? (2*A*B/255) : 255-2*(255-A)*(255-B)/255
b _ HARD_LIGHT: C = A < 128 ? (2*A*B/255) : 255-2*(255-A)*(255-B)/255
b _ SOFT_LIGHT: C = B < 128 ? 2*((A>>1)+64)*B/255 : 255-(2*(255-((A>>1)+64))*(255-B)/255)
CORE / PApplet - main()
_ make the 1.4 code in PApplet load via reflection
_ doesn't appear necessary with 1.3 applets
_ for present mode, need to set a default display
_ currently crashes if only --present is specified w/o --display
_ present mode is flakey.. applet doesn't always come up
_ seems like hitting stop helps shut it down?
_ is full screen window not being taken down properly?
_ esc should kill fullscreen mode
_ can a key handler be added to the window?
_ how can this be shut off for presentations?
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1114027594;start=0
_ implement full screen mode.. this takes over the screen as best it can
_ size(screen.width, screen.height, OPENGL);
_ if size is screen.width and screen.height, does its best
_ needs to get the size of the main screen
_ ability to select monitor via preferences panel
_ this applies to any applet that's run externally currently (verify)
_ make it also work with anything that's run inside of p5 itself
_ check current present code with multiple monitors
_ first pass on full screen
_ exceptions in full screen mode will quit the app completely
_ (can't keep window open because things are hosed)
_ default is that full screen app doesn't cover multiple displays
_ this is fine since opengl can't usually go across both
_ but include an example for how to use full in gl
_ (use toolkit.getscreensize)
CORE / PFont and text()
_ text() with a z coordinate is now using translate, very slow
_ also puts up a weird error message about translate() in 2D mode
_ make screen space fonts use get/set as well?
_ too much to debug on their own
_ unfortunately tint not set with setImpl, but...
1 _ optimize textMode(MODEL) with textMode(SCREEN)
1 _ in PGraphics and PGraphics3, check to see if matrix is within epsilon
1 _ of one of the rotation matrices (many fewer steps)
1 _ if identity, or just translate, or a rotate, make OBJECT into SCREEN
1 _ optimize fonts by using native fonts in PGraphics2
1 _ especially textMode(SCREEN) which is disastrously slow
1 _ in java2d, can quickly blit the image itself
1 _ this way, can isolate it for gl too, which will use glBitmap
1 _ danger of this setup is that it may run much nicer for the author
1 _ i.e. with the font installed, and then super slow for their users
_ not having kerning really blows
_ could this be pulled from the OpenType font stuff?
_ it could be placed at the end of the file
_ not having fractional widths on small fonts really blows
_ screen space text looks crappy
CORE / PGraphics
_ beginShape()
_ don't allow you to draw stroked items unless stroke() is called
_ don't allow beginShape() if shape is already set
_ (otherwise will cause some very strange errors)
_ point appears to be broken
_ could be a problem with java 1.5? (was using win2k)
noStroke();
colorMode(RGB, 100);
for(int i=0; i<100; i++) {
for(int j=0; j<100; j++) {
stroke(i, j, 0);
point(i, j);
}
}
As an aside, set() is at least 10x faster, and
perhaps should be used in these examples anyway.
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1114204116;start=0
b _ lines
b _ z value hack for lines is causing trouble for 2D
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1089737928;start=0
@@ -504,67 +421,116 @@ CORE / PGraphics
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1076660476;start=0
CORE / PFont
CORE / PGraphics2
1 _ optimize textMode(MODEL) with textMode(SCREEN)
1 _ in PGraphics and PGraphics3, check to see if matrix is within epsilon
1 _ of one of the rotation matrices (many fewer steps)
1 _ if identity, or just translate, or a rotate, make OBJECT into SCREEN
1 _ optimize fonts by using native fonts in PGraphics2
1 _ especially textMode(SCREEN) which is disastrously slow
1 _ in java2d, can quickly blit the image itself
1 _ this way, can isolate it for gl too, which will use glBitmap
1 _ danger of this setup is that it may run much nicer for the author
1 _ i.e. with the font installed, and then super slow for their users
_ not having kerning really blows
_ could this be pulled from the OpenType font stuff?
_ it could be placed at the end of the file
_ not having fractional widths on small fonts really blows
_ screen space text looks crappy
_ set upper bound on framerate so as not to completely hose things?
_ fix the flicker in java2d mode
_ not clear what's happening here
_ appears to be much worse (unfinished drawing) on macosx
_ try turning off hw accel on the mac to see if that's the problem
_ textSpace(SCREEN_SPACE) needs to be faster
_ need flat image implementation that takes no transforms
_ along with 90, 180 and 270 versions of it as well
_ tie to glDrawPixels.. how to clear matrix properly for that?
_ catch sun.dc.pr.PRException?
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1113990788;start=0
_ gradient-painted lines
Color c = new Color(0x00FFFF00, true);
GradientPaint gradient =
new GradientPaint(0,0,Color.red,100,100,c);
GeneralPath gp = new GeneralPath();
gp.moveTo(10, 10);
gp.lineTo(100, 90);
gp.lineTo(20, 50);
gp.closePath();
Graphics2D g2 = ((PGraphics2)g).g2;
g2.setPaint(gradient);
g2.draw(gp);
CORE / PGraphics3
_ simon reports borders on P3D and OPENGL if background() not called
_ fix tint() for PGraphics3 (what could be wrong?)
_ tint() honoring alpha but not colored tint
_ maybe not setting fill color when drawing textures
_ guessing it's an implementation issue in sami's renderer
_ check with the a_Displaying example and tint(255, 0, 0, 100);
_ apply tint() to textures as well
_ otherwise no good way to color textures
_ Stroking a rect() leaves off the upper right pixel
_ make vertexCount etc properly accessible in PGraphics3
_ so that people can do things like the dxf renderer
_ error message saying that strokeCap and strokeJoin don't work
_ PPolygon no longer in use and PLine is a mess
_ also have a simple way to hook in triangle leeches to PGraphics3
_ this exists, but needs to be documented, or have accessors
CORE / PImage
b _ dynamically load code for png and others on loadImage/saveFrame?
b _ updated png encoder
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1083792994
b _ more image file i/o.. more advanced in newer java
b _ read uncompressed tiff, read uncompressed tga files.
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1081190619
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Tools;action=display;num=1066742994;start=15
b _ loadImage() seems to be caching everything from the jar
b _ make a note of how to disable this
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Programs;action=display;num=1078795681#8
b _ get loadImage() to work properly with data folder
b _ should probably use the code from loadStream
b _ and the url stuff should be an alternate method altogether
b _ alpha not set on saveFrame, so can't be used in photoshop as a layer
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=general;action=display;num=1078441623;start=0
b _ expose function to write tiff header in PImage (advanced)
b _ helps with writing enormous images
1 _ loadImage must be used inside or after setup
1 _ either document this and/or provide a better error message
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Programs;action=display;num=1060879468;start=0
b _ more blend() modes (the five listed on the thread below?)
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1082056702
b _ figure out what the modes should actually be:
b _ photoshop: normal, dissolve; darken, multiply, color burn,
b _ linear burn; lighten, screen, color dodge, linear
b _ dodge; overlay, soft light, hard light, vivid light,
b _ linear light, pin light, hard mix; difference,
b _ exclusion; hue, saturation, color, luminosity
b _ illustrator: normal; darken, multiply, color burn; lighten,
b _ screen, color dodge; overlay, soft light, hard light;
b _ difference, exclusion; hue, sat, color, luminosity
b _ director: Copy, Transparent, Reverse, Ghost, Not copy,
b _ Not transparent, Not reverse, Not ghost, Matte, Mask;
b _ (below seems more useful:
b _ Blend, Add pin, Add, Subtract pin, Background transparent,
b _ Lightest, Subtract, Darkest, Lighten, Darken
b _ flash:
b _ DIFFERENCE: C = abs(A-B);
b _ MULTIPLY: C = (A * B ) / 255
b _ SCREEN: C= 255 - ( (255-A) * (255-B) / 255 )
b _ OVERLAY: C = B < 128 ? (2*A*B/255) : 255-2*(255-A)*(255-B)/255
b _ HARD_LIGHT: C = A < 128 ? (2*A*B/255) : 255-2*(255-A)*(255-B)/255
b _ SOFT_LIGHT: C = B < 128 ? 2*((A>>1)+64)*B/255 : 255-(2*(255-((A>>1)+64))*(255-B)/255)
CORE / PSound
1 _ duration as an internal param, not a function
1 _ When a sound is finished playing,
1 _ it should return to 0 so it can play again
1 _ Putting sound.loop() in draw() seemed to spawn multiple sounds threads?
1 _ After a sound is paused, it will only play from where it was paused
1 _ to its end and will not loop again
1 _ The ref in PSound2 says volume accepts vals from 0...1
1 _ but values larger than one increase the volume.
1 _ SoundEvent // is sound finished?? Can't access now.
1 _ make java 1.1 version of PSound work properly
1 _ merge PSound and PSound2 via reflection?
1 _ once debugged, merge these back together and use reflection
1 _ (unless it's a messy disaster)
CORE / PApplet
1 _ framerate(30) is still flickery and jumpy..
1 _ fix param() to use a sketch.properties file when run as an app
1 _ make this also be used in generating the html file
1 _ fix link() to handle relative URLs
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081710684;start=0
1 _ put SecurityException things around file i/o for applets
1 _ rather than checking online(), since applets might be signed
1 _ saveFrame() at the end of a draw mode program is problematic
1 _ app might exit before the file has finished writing to disk
1 _ need to block other activity inside screenGrab until finished
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081706752
1 _ problems with defining fill(255) vs fill(0xff808080)
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1083650609;start=0
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Syntax;action=display;num=1082481891;start=2
1 _ too many push() will silently stop the applet inside a loop
1 _ test winding polygons in different directions
1 _ test lighting to see how it compares with gl
1 _ better lockout inside beginShape() to keep other things from happening
1 _ is quad strip broken or not behaving as expected?
1 _ may be correct, it worked for nik
1 _ inside draw() mode, delay() does nothing
1 _ delay might be a good way to signal drawing to the screen/updating
1 _ catch security exceptions around applet i/o calls
1 _ not just for saving files, but provide better error msgs when
1 _ attempting to download from another server
1 _ array utilities on Object[] are worthless.. fix it with reflection?
1 _ see if reflection will allow expand for all class types
1 _ ed's thread re: fullscreen strategies
1 _ could add a new BApplet that uses BufferStrategy?
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Programs;action=display;num=1081335361;start=15
CORE / Documentation
1 _ write documentation on general use of processing.core
@@ -574,12 +540,33 @@ CORE / Documentation
CORE / Mac OS X
b _ still some weirdness with thread flickering on the mac
b _ and frenetic display updates on the pc
b _ little window showing up on macosx when running
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081284410
b _ flicker happening on osx java 1.4, but not 1.3:
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1083184297;start=0
b _ cursor() broken in applets on macosx?
b _ or is it a java 1.4 versus java 1.3 problem?
b _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081645955
_ textMode(SCREEN) having issues
_ seem to be problems with updatePixels() on the mac
_ appears to run asynchronously
_ still some weirdness with thread flickering on the mac
_ and frenetic display updates on the pc
_ little window showing up on macosx when running
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081284410
_ flicker happening on osx java 1.4, but not 1.3:
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1083184297;start=0
_ cursor() broken in applets on macosx?
_ or is it a java 1.4 versus java 1.3 problem?
_ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081645955
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
PGraphicsGL
_ rewrite getImpl/setImpl inside opengl
_ bit shifting in opengl, get down to 2 ops by using other image modes
_ i.e. ABGR_EXT might allow for just two shifts instead of 4
_ allow access to native pixel buffer in opengl and power of 2
_ so that no need to copy/update everything
_ need to write an error if people try to use opengl with 1.3 (i.e. on export)
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Contribution_3DOpenGL;action=display;num=1114368123;start=3
_ grabbing sun.cpu.endian throws a security exception with gl applets
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Contribution_3DOpenGL;action=display;num=1114368123;start=3

View File

@@ -1,8 +1,11 @@
0087 pde
X bug with creating a new tab that's a .java file
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1115059069;start=0
X http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1115059069;start=0
X shouldn't be able to add new tabs or files to a read-only sketch
X can't save a sketch with its own name because already has that name
X small explanation and tiny example(s) for the following?
X modelX(), modelY(), modelZ(), screenZ(), openStream(), normal()
X check for updates should happen only daily or weekly
already completed in 86
X remove requirement for osx to install fink
@@ -33,6 +36,8 @@ _ get(), set() and red() et al are one such example
_ is there a way to do xxx?
_ advanced users who are outgrowing the basic reference:
_ be sure to check the "complete" reference
_ web colors with alpha: 0xffcc0080 or unhex("ffcc0080")
_ the draw() method must exist, otherwise the sketch won't run
_ get platform checker into the latest exhibition piece
@@ -69,6 +74,8 @@ void serialEvent() {
}
_ set applet.frame on runner, so ppl can mess with the frame itself
_ is it the run() exception handler that's leaving off the CRLFs?
_ or is it that it needs to be \r\n not just \n?
_ option to suppress warning dialogs
_ starting with the one about modifying the sketch name for spaces
@@ -88,8 +95,6 @@ _ also re: what about eclipse? what about antlr?
_ move the useful serial buffering fxns into net library
_ check for updates should happen only daily or weekly
_ setup bugzilla and enter all the bugs
_ placement of 100x100 items is odd
@@ -175,25 +180,6 @@ _ too much to maintain the multiple versions, no dependencies, too much code
_ some type of sketch archive format for posting examples (.psk?)
_ would be nice to open a sketch directly from a zip file
capture
_ tearing and incomplete updates on capture?
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=VideoCamera;action=display;num=1114628335;start=0
_ pause and framerate aren't working
_ framerate does set the frequency which movieEvent will be called,
_ but it is not setting the "available" field corrrectly.
_ sketch .zip file in casey's email message
_ video wrong device name crashes things
_ when passing in 'null' as the capture, dialog pops up fine
_ but the applet craps out after a few seconds (pinwheel spin)
_ couldn't get req'd component also happens when the capture isn't ready
_ may also mean that no camera is plugged in
_ also, don't mention winvdig on the mac
_ if user cancels prompt, throws a '-128,userCanceledErr'
_ in which case, need to return null (or ""?) for the prompt
_ which will also just give you the last camera
_ should it be new Camera(PROMPT);
_ error messages from quicktime not coming through very well
check these errors to see if they still exist
_ odd error in System.err stream coming from running external
_ dies after a while or goes weird
@@ -331,13 +317,6 @@ PDE / Details
1 _ size() has memory limitations (pitaru)
1 _ catch OutOfMemoryError inside size() and let the user know
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1038847001
1 _ verify editor buttons working properly
1 _ they're not.. mostly unresponsive, and often get stuck
1 _ is play button properly unhighlighting?
1 _ does it unhighlight after compile or runtime errors?
1 _ also when using draw() instead of loop()
1 _ applet needs to notify runner that it has terminated
1 _ if export fails (compile error) need deselect
1 _ exceptions in draw() apps aren't caught
1 _ the program resize(200, 200); just does nothing (doesn't complain)
1 _ if 'void' left out before loop or setup, cryptic message about
@@ -360,18 +339,19 @@ PDE / Details
1 _ figure out how to cancel 'save changes' on macosx and windows
1 _ macosx handleQuit seems to force termination (at least on 1.3)
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1064732330;start=0
1 _ don't cache stuff from loadStrings and others
1 _ mac java vm won't give up old version of file
1 _ or use setUseCaches(false)
1 _ too many frames drawn before window visible - especially on mac
1 _ dim edit menus as appropriate during selection/no selection/etc
1 _ switch to newer revision of jedit?
1 _ is enormous horizontal scroller issue fixed properly
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1083787569
1 _ make export put a timestamp in the html code (hidden or visible)
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1075659029
PDE / Editor
1 _ tabs and spaces, command keys don't work w/ shift
1 _ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1114661169;start=0
1 _ switch to newer revision of jedit?
1 _ is enormous horizontal scroller issue fixed properly
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1083787569
PDE / Find & Replace
1 _ only enable "find next" in menu after a find has happened
@@ -380,6 +360,13 @@ PDE / Find & Replace
PDE / Editor Buttons
1 _ when holding down shift, show the alt behavior for EditorHeader
1 _ verify editor buttons working properly
1 _ they're not.. mostly unresponsive, and often get stuck
1 _ is play button properly unhighlighting?
1 _ does it unhighlight after compile or runtime errors?
1 _ also when using draw() instead of loop()
1 _ applet needs to notify runner that it has terminated
1 _ if export fails (compile error) need deselect
PDE / Editor Header
@@ -431,6 +418,7 @@ PDE / Runner
PDE / Compiler
1 _ an empty .java tab will throw an error
1 _ if NullPointerEx on a line that includes a "pixels["
1 _ give an error message saying "you may need to call loadPixels"
1 _ warn about writing non-1.1 code.
@@ -496,6 +484,12 @@ PDE / Preprocessor
1 _ (for casting, etc) particularly for Math.cos() et al
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
TOOLS / General
_ how to handle command keys
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=Suggestions;action=display;num=1114885272;start=0
@@ -562,6 +556,33 @@ TOOLS / Create Font
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
LIBRARIES / Video
_ tearing and incomplete updates on capture?
_ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=VideoCamera;action=display;num=1114628335;start=0
_ pause and framerate aren't working
_ framerate does set the frequency which movieEvent will be called,
_ but it is not setting the "available" field corrrectly.
_ sketch .zip file in casey's email message
_ video wrong device name crashes things
_ when passing in 'null' as the capture, dialog pops up fine
_ but the applet craps out after a few seconds (pinwheel spin)
_ couldn't get req'd component also happens when the capture isn't ready
_ may also mean that no camera is plugged in
_ also, don't mention winvdig on the mac
_ if user cancels prompt, throws a '-128,userCanceledErr'
_ in which case, need to return null (or ""?) for the prompt
_ which will also just give you the last camera
_ should it be new Camera(PROMPT);
_ error messages from quicktime not coming through very well
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////
@@ -571,8 +592,9 @@ DISTRIBUTION
How the environment gets packed up, downloaded, and installed.
DISTRIBUTION / General
PLATFORMS / General
1 _ update things for java 1.5 since it's inevitable
1 _ need .pde document icons
1 _ need .psk file icon
1 _ need exported application icons
@@ -606,23 +628,6 @@ DISTRIBUTION / General
1 _ avoid some confusion for when describing the libraries folder to users
BUGS / Windows
1 _ NullPointerException when alt is pressed
1 _ might be something to do with the applet frame being an awt not swing
1 _ event first goes to the applet listener, needs to consume the event
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1061802316;start=0
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1077058974
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081751451;start=0
1 _ p5's exe prolly has trouble when PATH has quotes (or spaces?)
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1068388889
1 _ CLASSPATH figured out what to do with quotes, but not PATH
PLATFORMS / General
1 _ update things for java 1.5 since it's inevitable
PLATFORMS / Windows
@@ -642,14 +647,16 @@ PLATFORMS / Windows
1 _ need splash screen, startup takes a long time
1 _ processing.exe: problem if expert version is run, and no java installed
1 _ call the person a genius and tell them to install java
PLATFORMS / Linux
1 _ doesn't seem interested in quitting properly (?)
1 _ splash screen
1 _ ctrl-t is not stopping a sketch
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1074810469
1 _ p5's exe has trouble when PATH has quotes (or spaces?)
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1068388889
1 _ CLASSPATH figured out what to do with quotes, but not PATH
1 _ NullPointerException when alt is pressed
1 _ (not our bug, but log it in the bug db anyways)
1 _ might be something to do with the applet frame being an awt not swing
1 _ event first goes to the applet listener, needs to consume the event
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1061802316;start=0
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1077058974
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_software_bugs;action=display;num=1081751451;start=0
PLATFORMS / Mac OS X
@@ -675,5 +682,9 @@ PLATFORMS / Mac OS X
1 _ although.. this only works on panther.. how many are using it?
1 _ mac standard key combinations for moving around in the editor
1 _ http://processing.org/discourse/yabb/YaBB.cgi?board=Proce55ing_Software;action=display;num=1093116515
1 _ tabs and spaces, command keys don't work w/ shift
1 _ http://processing.org/discourse/yabb_beta/YaBB.cgi?board=SoftwareBugs;action=display;num=1114661169;start=0
PLATFORMS / Linux
1 _ some reports of it not quitting properly, but not confirmed
1 _ splash screen