clean up prefs, remove old 32/64-bit stuff from OS X

This commit is contained in:
Ben Fry
2014-07-30 15:52:53 -04:00
parent 8d532f8569
commit ad6430b988
4 changed files with 41 additions and 489 deletions
+2 -242
View File
@@ -117,7 +117,6 @@ public class Preferences {
JCheckBox memoryOverrideBox;
JTextField memoryField;
JCheckBox checkUpdatesBox;
//JTextField fontSizeField;
JComboBox fontSizeField;
JComboBox consoleSizeField;
JCheckBox inputMethodBox;
@@ -131,13 +130,9 @@ public class Preferences {
JCheckBox importSuggestionsBox;
JCheckBox codeCompletionTriggerBox;
//JRadioButton bitsThirtyTwoButton;
//JRadioButton bitsSixtyFourButton;
JComboBox displaySelectionBox;
int displayCount;
//Font[] monoFontList;
String[] monoFontFamilies;
JComboBox fontSelectionBox;
@@ -168,16 +163,6 @@ public class Preferences {
// check for platform-specific properties in the defaults
String platformExt = "." + PConstants.platformNames[PApplet.platform]; //$NON-NLS-1$
int platformExtLength = platformExt.length();
// Enumeration e = table.keys();
// while (e.hasMoreElements()) {
// String key = (String) e.nextElement();
// if (key.endsWith(platformExt)) {
// // this is a key specific to a particular platform
// String actualKey = key.substring(0, key.length() - platformExtLength);
// String value = get(key);
// table.put(actualKey, value);
// }
// }
// Get a list of keys that are specific to this platform
ArrayList<String> platformKeys = new ArrayList<String>();
@@ -201,17 +186,6 @@ public class Preferences {
// other things that have to be set explicitly for the defaults
setColor("run.window.bgcolor", SystemColor.control); //$NON-NLS-1$
// Load a prefs file if specified on the command line
// if (commandLinePrefs != null) {
// try {
// load(new FileInputStream(commandLinePrefs));
//
// } catch (Exception poe) {
// Base.showError("Error",
// "Could not read preferences from " +
// commandLinePrefs, poe);
// }
// } else if (!Base.isCommandLine()) {
// next load user preferences file
preferencesFile = Base.getSettingsFile(PREFS_FILE);
if (!preferencesFile.exists()) {
@@ -232,7 +206,6 @@ public class Preferences {
preferencesFile.getAbsolutePath() +
" and restart Processing.", ex);
}
// }
}
PApplet.useNativeSelect =
@@ -257,11 +230,6 @@ public class Preferences {
dialog = new JFrame("Preferences");
dialog.setResizable(false);
// GroupLayout layout = new GroupLayout(getContentPane());
// dialog.getContentPane().setLayout(layout);
// layout.setAutoCreateGaps(true);
// layout.setAutoCreateContainerGaps(true);
Container pain = dialog.getContentPane();
pain.setLayout(null);
@@ -296,11 +264,6 @@ public class Preferences {
PApplet.selectFolder("Select new sketchbook location",
"sketchbookCallback", dflt,
Preferences.this, dialog);
// File file =
// Base.selectFolder("Select new sketchbook location", dflt, dialog);
// if (file != null) {
// sketchbookLocationField.setText(file.getAbsolutePath());
// }
}
});
pain.add(button);
@@ -357,12 +320,9 @@ public class Preferences {
label = new JLabel("Editor font size: ");
box.add(label);
//fontSizeField = new JTextField(4);
fontSizeField = new JComboBox<Integer>(FONT_SIZES);
fontSizeField.setEditable(true);
box.add(fontSizeField);
// label = new JLabel(" (requires restart of Processing)");
// box.add(label);
box.add(Box.createHorizontalStrut(GUI_BETWEEN));
label = new JLabel("Console font size: ");
@@ -374,9 +334,6 @@ public class Preferences {
pain.add(box);
d = box.getPreferredSize();
box.setBounds(left, top, d.width, d.height);
// Font editorFont = Preferences.getFont("editor.font");
//fontSizeField.setText(String.valueOf(editorFont.getSize()));
// fontSizeField.setSelectedItem(editorFont.getSize());
fontSizeField.setSelectedItem(Preferences.getFont("editor.font.size"));
top += d.height + GUI_BETWEEN;
@@ -509,8 +466,6 @@ public class Preferences {
// [ ] Use smooth text in editor window
editorAntialiasBox = new JCheckBox("Use smooth text in editor window");
// new JCheckBox("Use smooth text in editor window " +
// "(requires restart of Processing)");
pain.add(editorAntialiasBox);
d = editorAntialiasBox.getPreferredSize();
// adding +10 because ubuntu + jre 1.5 truncating items
@@ -585,19 +540,6 @@ public class Preferences {
top += d.height + GUI_BETWEEN;
// // [ ] Use multiple .jar files when exporting applets
//
// exportSeparateBox =
// new JCheckBox("Use multiple .jar files when exporting applets " +
// "(ignored when using libraries)");
// pain.add(exportSeparateBox);
// d = exportSeparateBox.getPreferredSize();
// // adding +10 because ubuntu + jre 1.5 truncating items
// exportSeparateBox.setBounds(left, top, d.width + 10, d.height);
// right = Math.max(right, left + d.width);
// top += d.height + GUI_BETWEEN;
// [ ] Delete previous application folder on export
deletePreviousBox =
@@ -609,17 +551,7 @@ public class Preferences {
top += d.height + GUI_BETWEEN;
// // [ ] Use external editor
//
// externalEditorBox = new JCheckBox("Use external editor");
// pain.add(externalEditorBox);
// d = externalEditorBox.getPreferredSize();
// externalEditorBox.setBounds(left, top, d.width + 10, d.height);
// right = Math.max(right, left + d.width);
// top += d.height + GUI_BETWEEN;
// [ ] Use external editor
// [ ] Hide tab/toolbar background image
whinyBox = new JCheckBox("Hide tab/toolbar background image (requires restart)");
pain.add(whinyBox);
@@ -672,30 +604,6 @@ public class Preferences {
}
// Launch programs as [ ] 32-bit [ ] 64-bit (Mac OS X only)
/*
if (Base.isMacOS()) {
box = Box.createHorizontalBox();
label = new JLabel("Launch programs in ");
box.add(label);
bitsThirtyTwoButton = new JRadioButton("32-bit mode ");
box.add(bitsThirtyTwoButton);
bitsSixtyFourButton = new JRadioButton("64-bit mode");
box.add(bitsSixtyFourButton);
ButtonGroup bg = new ButtonGroup();
bg.add(bitsThirtyTwoButton);
bg.add(bitsSixtyFourButton);
pain.add(box);
d = box.getPreferredSize();
box.setBounds(left, top, d.width, d.height);
top += d.height + GUI_BETWEEN;
}
*/
// More preferences are in the ...
label = new JLabel("More preferences can be edited directly in the file");
@@ -889,52 +797,12 @@ public class Preferences {
System.err.println("Ignoring bad memory setting");
}
/*
// was gonna use this to check memory settings,
// but it quickly gets much too messy
if (getBoolean("run.options.memory")) {
Process process = Runtime.getRuntime().exec(new String[] {
"java", "-Xms" + memoryMin + "m", "-Xmx" + memoryMax + "m"
});
processInput = new SystemOutSiphon(process.getInputStream());
processError = new MessageSiphon(process.getErrorStream(), this);
}
*/
/*
// If a change has been made between 32- and 64-bit, the libraries need
// to be reloaded so that their native paths are set correctly.
if (Base.isMacOS()) {
String oldBits = get("run.options.bits"); //$NON-NLS-1$
String newBits = bitsThirtyTwoButton.isSelected() ? "32" : "64"; //$NON-NLS-1$ //$NON-NLS-2$
if (!oldBits.equals(newBits)) {
set("run.options.bits", newBits); //$NON-NLS-1$
for (Mode m : base.getModeList()) {
m.rebuildLibraryList();
}
}
}
*/
// Don't change anything if the user closes the window before fonts load
if (fontSelectionBox.isEnabled()) {
String fontFamily = (String) fontSelectionBox.getSelectedItem();
set("editor.font.family", fontFamily);
}
/*
String newSizeText = fontSizeField.getText();
try {
int newSize = Integer.parseInt(newSizeText.trim());
//String pieces[] = PApplet.split(get("editor.font"), ','); //$NON-NLS-1$
//pieces[2] = String.valueOf(newSize);
//set("editor.font", PApplet.join(pieces, ',')); //$NON-NLS-1$
set("editor.font.size", String.valueOf(newSize));
} catch (Exception e) {
Base.log("Ignoring invalid font size " + newSizeText); //$NON-NLS-1$
}
*/
try {
Object selection = fontSizeField.getSelectedItem();
if (selection instanceof String) {
@@ -988,23 +856,11 @@ public class Preferences {
warningsCheckerBox.setSelected(getBoolean("pdex.warningsEnabled"));
codeCompletionBox.setSelected(getBoolean("pdex.ccEnabled"));
codeCompletionTriggerBox.setSelected(getBoolean("pdex.ccTriggerEnabled"));
// set all settings entry boxes to their actual status
// exportSeparateBox.
// setSelected(getBoolean("export.applet.separate_jar_files"));
deletePreviousBox.
setSelected(getBoolean("export.delete_target_folder")); //$NON-NLS-1$
//closingLastQuitsBox.
// setSelected(getBoolean("sketchbook.closing_last_window_quits"));
//sketchPromptBox.
// setSelected(getBoolean("sketchbook.prompt"));
//sketchCleanBox.
// setSelected(getBoolean("sketchbook.auto_clean"));
sketchbookLocationField.
setText(get("sketchbook.path")); //$NON-NLS-1$
// externalEditorBox.
// setSelected(getBoolean("editor.external"));
checkUpdatesBox.
setSelected(getBoolean("update.check")); //$NON-NLS-1$
@@ -1013,9 +869,7 @@ public class Preferences {
updateDisplayList();
int displayNum = getInteger("run.display"); //$NON-NLS-1$
// System.out.println("display is " + displayNum + ", d count is " + displayCount);
if (displayNum >= 0 && displayNum < displayCount) {
// System.out.println("setting num to " + displayNum);
displaySelectionBox.setSelectedIndex(displayNum);
}
@@ -1037,22 +891,6 @@ public class Preferences {
memoryField.
setText(get("run.options.memory.maximum")); //$NON-NLS-1$
/*
if (Base.isMacOS()) {
String bits = Preferences.get("run.options.bits"); //$NON-NLS-1$
if (bits.equals("32")) { //$NON-NLS-1$
bitsThirtyTwoButton.setSelected(true);
} else if (bits.equals("64")) { //$NON-NLS-1$
bitsSixtyFourButton.setSelected(true);
}
// in case we go back and support OS X 10.5...
if (System.getProperty("os.version").startsWith("10.5")) { //$NON-NLS-1$ //$NON-NLS-2$
bitsSixtyFourButton.setSelected(true);
bitsThirtyTwoButton.setEnabled(false);
}
}
*/
if (autoAssociateBox != null) {
autoAssociateBox.
setSelected(getBoolean("platform.auto_file_type_associations")); //$NON-NLS-1$
@@ -1080,37 +918,11 @@ public class Preferences {
void initFontList() {
/*
if (monoFontList == null) {
monoFontList = Toolkit.getMonoFontList().toArray(new Font[0]);
fontSelectionBox.setModel(new DefaultComboBoxModel(monoFontList));
fontSelectionBox.setRenderer(new FontNamer());
// Preferred size just makes it extend to the container
//fontSelectionBox.setSize(fontSelectionBox.getPreferredSize());
// Minimum size is better, but cuts things off (on OS X), so we add 20
//Dimension minSize = fontSelectionBox.getMinimumSize();
//Dimension minSize = fontSelectionBox.getPreferredSize();
//fontSelectionBox.setSize(minSize.width + 20, minSize.height);
fontSelectionBox.setEnabled(true);
}
*/
if (monoFontFamilies == null) {
monoFontFamilies = Toolkit.getMonoFontFamilies();
fontSelectionBox.setModel(new DefaultComboBoxModel(monoFontFamilies));
String family = get("editor.font.family");
// System.out.println("family is " + family);
// System.out.println("font sel items = " + fontSelectionBox.getItemCount());
// for (int i = 0; i < fontSelectionBox.getItemCount(); i++) {
// String item = (String) fontSelectionBox.getItemAt(i);
// if (fontSelectionBox.getItemAt(i) == family) {
// System.out.println("found at index " + i);
// } else if (item.equals(family)) {
// System.out.println("equals at index " + i);
// } else {
// System.out.println("nothing doing: " + item);
// }
// }
// Set a reasonable default, in case selecting the family fails
fontSelectionBox.setSelectedItem("Monospaced");
fontSelectionBox.setSelectedItem(family);
@@ -1134,22 +946,6 @@ public class Preferences {
}
// Workaround for Apple bullsh*t caused by their not releasing a 32-bit
// version of Java for Mac OS X 10.5.
// static public String checkBits() {
// String bits = Preferences.get("run.options.bits");
// if (bits == null) {
// if (System.getProperty("os.version").startsWith("10.5")) {
// bits = "64";
// } else {
// bits = "32";
// }
// Preferences.set("run.options.bits", bits);
// }
// return bits;
// }
// .................................................................
@@ -1208,20 +1004,8 @@ public class Preferences {
// all the information from preferences.txt
//static public String get(String attribute) {
//return get(attribute, null);
//}
static public String get(String attribute /*, String defaultValue */) {
return table.get(attribute);
/*
//String value = (properties != null) ?
//properties.getProperty(attribute) : applet.getParameter(attribute);
String value = properties.getProperty(attribute);
return (value == null) ?
defaultValue : value;
*/
}
@@ -1359,28 +1143,4 @@ public class Preferences {
}
return new Font("Dialog", Font.PLAIN, 12);
}
/*
static public SyntaxStyle getStyle(String what) {
String str = get("editor." + what + ".style"); //, dflt); //$NON-NLS-1$ //$NON-NLS-2$
StringTokenizer st = new StringTokenizer(str, ","); //$NON-NLS-1$
String s = st.nextToken();
if (s.indexOf("#") == 0) s = s.substring(1); //$NON-NLS-1$
Color color = Color.DARK_GRAY;
try {
color = new Color(Integer.parseInt(s, 16));
} catch (Exception e) { }
s = st.nextToken();
boolean bold = (s.indexOf("bold") != -1); //$NON-NLS-1$
// boolean italic = (s.indexOf("italic") != -1); //$NON-NLS-1$
//System.out.println(what + " = " + str + " " + bold + " " + italic);
// return new SyntaxStyle(color, italic, bold);
return new SyntaxStyle(color, bold);
}
*/
}
@@ -63,19 +63,6 @@ public class Runner implements MessageConsumer {
// Thread transferring remote output stream to our output stream
protected Thread outThread = null;
// Mode for tracing the Trace program (default= 0 off)
// protected int debugTraceMode = 0;
// Do we want to watch assignments to fields
// protected boolean watchFields = false;
// // Class patterns for which we don't want events
// protected String[] excludes = {
// "java.*", "javax.*", "sun.*", "com.sun.*",
// "apple.*",
// "processing.*"
// };
protected SketchException exception;
protected Editor editor;
protected JavaBuild build;
@@ -138,60 +125,6 @@ public class Runner implements MessageConsumer {
// Everyone works the same under Java 7 (also on OS X)
String[] commandArgs = new String[] { Base.getJavaPath(), jdwpArg };
/*
String[] commandArgs = null;
if (!Base.isMacOS()) {
commandArgs = new String[] {
Base.getJavaPath(),
jdwpArg
};
} else {
// Decided to just set this to 1.6 only, because otherwise it's gonna
// be a shitshow if folks are getting Apple's 1.6 with 32-bit and
// Oracle's 1.7 when run in 64-bit mode. ("Why does my sketch suck in
// 64-bit? Why is retina broken?)
// The --request flag will prompt to install Apple's 1.6 JVM if none is
// available. We're specifying 1.6 so that we can get support for both
// 32- and 64-bit, because Oracle won't be releasing Java 1.7 in 32-bit.
// Helpfully, the --request flag is not present on Mac OS X 10.6
// (luckily it is also not needed, because 1.6 is installed by default)
// but it requires an additional workaround to not use that flag,
// otherwise will see an error about an unsupported option. The flag is
// available with 10.7 and 10.8, the only other supported versions of
// OS X at this point, because we require 10.6.8 and higher. That also
// means we don't need to check for any other OS versions, the user is
// a douchebag and modifies Info.plist to get around the restriction.
if (false) {
if (System.getProperty("os.version").startsWith("10.6")) {
commandArgs = new String[] {
"/usr/libexec/java_home",
"--version", "1.6",
"--exec", "java",
"-d" + Base.getNativeBits(),
jdwpArg
};
} else { // for 10.7, 10.8, etc
commandArgs = new String[] {
"/usr/libexec/java_home",
"--request", // install on-demand
"--version", "1.6",
"--exec", "java",
"-d" + Base.getNativeBits(),
// debugArg,
jdwpArg
};
}
} else {
// testing jdk-7u40
commandArgs = new String[] {
//"/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home/bin/java",
Base.getJavaPath(),
jdwpArg
};
}
}
*/
commandArgs = PApplet.concat(commandArgs, vmParams);
commandArgs = PApplet.concat(commandArgs, sketchParams);
// PApplet.println(commandArgs);
@@ -482,153 +415,6 @@ public class Runner implements MessageConsumer {
}
/*
protected VirtualMachine launchVirtualMachine(String[] vmParams,
String[] classParams) {
//vm = launchTarget(sb.toString());
LaunchingConnector connector = (LaunchingConnector)
findConnector("com.sun.jdi.RawCommandLineLaunch");
//PApplet.println(connector); // gets the defaults
//Map arguments = connectorArguments(connector, mainArgs);
Map arguments = connector.defaultArguments();
Connector.Argument commandArg =
(Connector.Argument)arguments.get("command");
// Using localhost instead of 127.0.0.1 sometimes causes a
// "Transport Error 202" error message when trying to run.
// http://dev.processing.org/bugs/show_bug.cgi?id=895
// String addr = "127.0.0.1:" + (8000 + (int) (Math.random() * 1000));
//String addr = "localhost:" + (8000 + (int) (Math.random() * 1000));
// Better yet, host is not needed, so using just the port for the address
String addr = "" + (8000 + (int) (Math.random() * 1000));
String commandArgs =
"java -Xrunjdwp:transport=dt_socket,address=" + addr + ",suspend=y ";
if (Base.isMacOS()) {
// Decided to just set this to 1.6 only, because otherwise it's gonna
// be a shitshow if folks are getting Apple's 1.6 with 32-bit and
// Oracle's 1.7 when run in 64-bit mode. ("Why does my sketch suck in
// 64-bit? Why is retina broken?)
// The --request flag will prompt to install Apple's 1.6 JVM if none is
// available. We're specifying 1.6 so that we can get support for both
// 32- and 64-bit, because Oracle won't be releasing Java 1.7 in 32-bit.
// Helpfully, the --request flag is not present on Mac OS X 10.6
// (luckily it is also not needed, because 1.6 is installed by default)
// but it requires an additional workaround to not use that flag,
// otherwise will see an error about an unsupported option. The flag is
// available with 10.7 and 10.8, the only other supported versions of
// OS X at this point, because we require 10.6.8 and higher. That also
// means we don't need to check for any other OS versions, unless
// is a douchebag and modifies Info.plist to get around the restriction.
addr = "" + (8000 + (int) (Math.random() * 1000));
commandArgs =
"/usr/libexec/java_home " +
(System.getProperty("os.version").startsWith("10.6") ? "" : "--request ") +
"--version 1.6 " +
"--exec java " +
"-d" + Base.getNativeBits() + " " +
"-Xrunjdwp:transport=dt_socket,address=" + addr + ",suspend=y ";
}
for (int i = 0; i < vmParams.length; i++) {
commandArgs = addArgument(commandArgs, vmParams[i], ' ');
}
if (classParams != null) {
for (int i = 0; i < classParams.length; i++) {
commandArgs = addArgument(commandArgs, classParams[i], ' ');
}
}
System.out.println("commandArgs is " + commandArgs);
commandArg.setValue(commandArgs);
Connector.Argument addressArg =
(Connector.Argument)arguments.get("address");
addressArg.setValue(addr);
//PApplet.println(connector); // prints the current
//com.sun.tools.jdi.AbstractLauncher al;
//com.sun.tools.jdi.RawCommandLineLauncher rcll;
//System.out.println(PApplet.javaVersion);
// http://java.sun.com/j2se/1.5.0/docs/guide/jpda/conninv.html#sunlaunch
try {
return connector.launch(arguments);
} catch (IOException exc) {
throw new Error("Unable to launch target VM: " + exc);
} catch (IllegalConnectorArgumentsException exc) {
throw new Error("Internal error: " + exc);
} catch (VMStartException exc) {
Process p = exc.process();
//System.out.println(p);
String[] errorStrings = PApplet.loadStrings(p.getErrorStream());
//String[] inputStrings =
PApplet.loadStrings(p.getInputStream());
if (errorStrings != null && errorStrings.length > 1) {
if (errorStrings[0].indexOf("Invalid maximum heap size") != -1) {
Base.showWarning("Way Too High",
"Please lower the value for \u201Cmaximum available memory\u201D in the\n" +
"Preferences window. For more information, read Help \u2192 Troubleshooting.",
exc);
} else {
PApplet.println(errorStrings);
System.err.println("Using startup command:");
PApplet.println(arguments);
}
} else {
exc.printStackTrace();
System.err.println("Could not run the sketch (Target VM failed to initialize).");
if (Preferences.getBoolean("run.options.memory")) {
// Only mention this if they've even altered the memory setup
System.err.println("Make sure that you haven't set the maximum available memory too high.");
}
System.err.println("For more information, read revisions.txt and Help \u2192 Troubleshooting.");
}
// changing this to separate editor and listener [091124]
//if (editor != null) {
listener.statusError("Could not run the sketch.");
//}
return null;
}
}
private static boolean hasWhitespace(String string) {
int length = string.length();
for (int i = 0; i < length; i++) {
if (Character.isWhitespace(string.charAt(i))) {
return true;
}
}
return false;
}
private static String addArgument(String string, String argument, char sep) {
if (hasWhitespace(argument) || argument.indexOf(',') != -1) {
// Quotes were stripped out for this argument, add 'em back.
StringBuffer buffer = new StringBuffer(string);
buffer.append('"');
for (int i = 0; i < argument.length(); i++) {
char c = argument.charAt(i);
if (c == '"') {
buffer.append('\\');
// buffer.append("\\\\");
}
buffer.append(c);
}
buffer.append('"');
buffer.append(sep);
return buffer.toString();
} else {
return string + argument + String.valueOf(sep);
}
}
*/
/**
* Generate the trace.
* Enable events, start thread to display events,
+23 -22
View File
@@ -11,10 +11,6 @@ X move to native OS X full screen (gets rid of native code)
X https://github.com/processing/processing/issues/2641
_ sometimes causes placement to temporarily be in the wrong spot
_ need a better method for "missing" data in Table
_ if missing int is zero, can't just remove those values from saving a table
_ but for NaN values, it's a necessity
pulls
X implement A and a (elliptical arcs)
@@ -30,7 +26,13 @@ applet removal
_ remove Applet as base class
_ performance issues on OS X (might be threading due to Applet)
_ https://github.com/processing/processing/issues/2423
_ play with improvements to full screen here
processing.data
_ need a better method for "missing" data in Table
_ if missing int is zero, can't just remove those values from saving a table
_ but for NaN values, it's a necessity
_ fix for maxValue() and minValue() when all entries are bad
_ on FloatDict it was NaN, check across the lists and other dict types
_ StringDict should always put NaN values at the end on sort
@@ -40,11 +42,21 @@ _ get() methods in List/Dict shouldn't allow you to get bad values
_ but set() methods can automatically resize the arrays
_ though that means insert() should allow you to insert past the end
_ should we allow negative indices so that we can work relative to the end?
_ add print() method to other data types (not just IntList)
_ 'collector' class.. Dict that points to a list
_ String as a key, int/float/string list as values
_ addRow() is not efficient, probably need to do the doubling
o or have a setIncrement() function?
_ it would default to 1 on tables loaded from a file
_ and default to doubling when created with "new Table"
_ row count and array size are combined.. need to break apart
_ match and iterators
_ add match version that returns table that's only a pointer to original
_ save the constructor for the version that actually copies data
_ the table pointer version will be speedy and allow chaining
_ better full screen mode for OS X
_ https://github.com/processing/processing/issues/2641
_ http://stackoverflow.com/questions/6873568/fullscreen-feature-for-java-apps-on-osx-lion
later
_ bring back chaining in JSON (and add to XML)
_ maybe once we make the PVector change
@@ -54,8 +66,6 @@ _ Closing opengl sketch from the PDE doesn't stop java process on windows
_ https://github.com/processing/processing/issues/2335
_ StingList.insert() error (should be an easy fix)
_ https://github.com/processing/processing/issues/2548
_ pull for image resize and alpha issues
_ https://github.com/processing/processing/pull/2324
_ dataPath() not working when app is not run from app dir on Linux
_ https://github.com/processing/processing/issues/2195
_ "Buffers have not been created" error for sketches w/o draw()
@@ -66,6 +76,7 @@ _ some sort of threading issue happening here
_ https://github.com/processing/processing/issues/1672
_ https://github.com/processing/processing/issues/2039 (dupe)
_ https://github.com/processing/processing/issues/2294 (dupe)
_ also check this out with the new full screen code on OS X
_ point() rendering differently in 2.0.3 and 2.1
_ https://github.com/processing/processing/issues/2278
_ internally, we probably have to call set() if it's a 1 pixel point
@@ -75,13 +86,10 @@ _ https://github.com/processing/processing/issues/2428
_ default font fixes
_ https://github.com/processing/processing/issues/2331
_ https://github.com/processing/processing/pull/2338
_ add print() method to other data types (not just IntList)
_ Sort out blending differences with P2D/P3D
_ might be that compatible images not setting alpha mode correctly
_ image = gc.createCompatibleVolatileImage(source.width, source.height, Transparency.TRANSLUCENT);
_ https://github.com/processing/processing/issues/1844
_ 'collector' class.. Dict that points to a list
_ String as a key, int/float/string list as values
_ add option to have full screen span across screens
_ display=all in cmd line
_ sketchDisplay() -> 0 for all, or 1, 2, 3...
@@ -93,6 +101,7 @@ _ draw(s) doesn't work on the returned PShape
_ TGA files writing strangely
_ https://github.com/processing/processing/issues/2096
hidpi
_ saveFrame() with retina render is making black images
_ zero alpha values still a problem with retina renderer
@@ -109,21 +118,13 @@ _ https://github.com/processing/processing/issues/2411
_ retina sketches slow to start
_ https://github.com/processing/processing/issues/2357
cantfix
_ crash on startup when "Mirror Displays" selected
_ suspect that this is a specific chipset since Oracle didn't reproduce
_ https://github.com/processing/processing/issues/2186
_ test with JG's 13" retina laptop
table
_ addRow() is not efficient, probably need to do the doubling
_ or have a setIncrement() function?
_ it would default to 1 on tables loaded from a file
_ and default to doubling when created with "new Table"
_ row count and array size are combined.. need to break apart
_ match and iterators
_ add match version that returns table that's only a pointer to original
_ save the constructor for the version that actually copies data
_ the table pointer version will be speedy and allow chaining
decisions/misc
_ make join() work with Iterable?
+16 -11
View File
@@ -11,6 +11,8 @@ X possible to open a sketch multiple times
X by double-clicking one of its files instead of the main pde file
X user opens non-main pde of already open sketch, it'll open again
X https://github.com/processing/processing/issues/2506
X remove the prefs for 32/64-bit from Preferences
X also remove the extra OS X cruft inside Runner.java
gsoc
X clear status messages in the Contribution Manager
@@ -41,15 +43,6 @@ o https://github.com/processing/processing/issues/2639
X moving p5 examples to the web repo
X remove reference.zip from main repo
_ SOCKS proxy not working:
_ https://github.com/processing/processing/issues/2643
_ detect proxy settings?
_ old issue: https://github.com/processing/processing/issues/1476
_ http://docs.oracle.com/javase/7/docs/technotes/guides/net/proxies.html
_ http://docs.oracle.com/javase/1.5.0/docs/guide/net/proxies.html
_ http://stackoverflow.com/questions/4933677/detecting-windows-ie-proxy-setting-using-java
_ http://www.java2s.com/Code/Java/Network-Protocol/DetectProxySettingsforInternetConnection.htm
_ huge i18n patch
_ https://github.com/processing/processing/pull/2084
@@ -85,6 +78,7 @@ _ make reference and examples build process part of dist
_ separate ant targets, but only require them for dist
_ as separate targets, folks can build explicitly if they'd like
gsoc/help me
_ `return` keyword not treated as such when followed by a bracket
_ https://github.com/processing/processing/issues/2099
@@ -97,6 +91,7 @@ _ https://github.com/processing/processing/issues/2531
_ closing the color selector makes things freeze (only Linux and Windows?)
_ https://github.com/processing/processing/issues/2381
medium
_ check on why 2x core.jar inside the Java folder
_ maybe OS X Java can't look in subfolders? (just auto-adds things)
@@ -146,9 +141,19 @@ _ PDE and sketches are 2x smaller on high-res Windows 8 machines
_ https://github.com/processing/processing/issues/2411
lower
_ SOCKS proxy not working:
_ https://github.com/processing/processing/issues/2643
_ the code that gets/sets the pref is in Preferences
_ detect proxy settings?
_ old issue: https://github.com/processing/processing/issues/1476
_ http://docs.oracle.com/javase/7/docs/technotes/guides/net/proxies.html
_ http://docs.oracle.com/javase/1.5.0/docs/guide/net/proxies.html
_ http://stackoverflow.com/questions/4933677/detecting-windows-ie-proxy-setting-using-java
_ http://www.java2s.com/Code/Java/Network-Protocol/DetectProxySettingsforInternetConnection.htm
post 2.1 cleaning
_ remove the prefs for 32/64-bit from Preferences
_ remove the extra OS X cruft inside Runner.java
_ exclude 'fonts' folder from build (since it's going into the JRE)