Permalink
Browse files

Merge branch 'release'

Conflicts:
	plugins/com.aptana.editor.epl/src/org/eclipse/jface/text/source/CommonLineNumberRulerColumn.java
  • Loading branch information...
2 parents 1ba1ad9 + 0ba236d commit b770e5d6f46d53f7a5f3200b5c409cd59d391c10 @ingo ingo committed Jan 20, 2012
Showing with 7,520 additions and 1,428 deletions.
  1. +1 −1 features/com.aptana.feature/feature.xml
  2. +1 −1 plugins/com.aptana.branding/META-INF/MANIFEST.MF
  3. +3 −1 plugins/com.aptana.buildpath.core/src/com/aptana/buildpath/core/BuildPathManager.java
  4. +0 −52 plugins/com.aptana.core.epl/src/com/aptana/core/epl/IReadWriteMonitor.java
  5. +0 −127 plugins/com.aptana.core.epl/src/com/aptana/core/epl/ReadWriteMonitor.java
  6. +18 −3 plugins/com.aptana.core/src/com/aptana/core/CorePlugin.java
  7. +4 −161 plugins/com.aptana.core/src/com/aptana/core/resources/FileDeltaRefreshAdapter.java
  8. +18 −0 plugins/com.aptana.core/src/com/aptana/core/resources/Messages.java
  9. +220 −0 plugins/com.aptana.core/src/com/aptana/core/resources/RefreshThread.java
  10. +69 −22 plugins/com.aptana.core/src/com/aptana/core/resources/TaskTag.java
  11. +1 −0 plugins/com.aptana.core/src/com/aptana/core/resources/messages.properties
  12. +24 −0 plugins/com.aptana.core/src/com/aptana/core/util/IOUtil.java
  13. +85 −15 plugins/com.aptana.core/src/com/aptana/core/util/ZipUtil.java
  14. +3 −5 plugins/com.aptana.documentation/html/reference/index.html
  15. +1 −1 plugins/com.aptana.documentation/plugin.xml
  16. +3 −4 plugins/com.aptana.documentation/toc.xml
  17. +13 −2 plugins/com.aptana.documentation/tocgettingstarted.xml
  18. +1 −1 plugins/com.aptana.documentation/tocreference.xml
  19. +6 −8 plugins/com.aptana.editor.coffee/src/com/aptana/editor/coffee/CoffeeSourceConfiguration.java
  20. +1 −0 plugins/com.aptana.editor.common/META-INF/MANIFEST.MF
  21. +10 −0 ...com.aptana.editor.common/src/com/aptana/editor/common/contentassist/CommonCompletionProposal.java
  22. +1 −1 ...ins/com.aptana.editor.common/src/com/aptana/editor/common/internal/peer/CharacterPairMatcher.java
  23. +34 −0 ...com.aptana.editor.common/src/com/aptana/editor/common/preferences/CommonEditorPreferencePage.java
  24. +25 −10 plugins/com.aptana.editor.common/src/com/aptana/editor/common/util/EditorUtil.java
  25. +2 −1 plugins/com.aptana.editor.css.formatter/src/com/aptana/editor/css/formatter/CSSFormatter.java
  26. +52 −0 plugins/com.aptana.editor.css.formatter/src/com/aptana/editor/css/formatter/CSSFormatterFactory.java
  27. +4 −5 ....formatter/src/com/aptana/editor/css/formatter/preferences/CSSFormatterControlStatementsPage.java
  28. +4 −1 ....formatter/src/com/aptana/editor/css/formatter/preferences/CSSFormatterPreferenceInitializer.java
  29. +2 −2 plugins/com.aptana.editor.css/src/com/aptana/editor/css/CSSCodeScanner.java
  30. +1 −1 plugins/com.aptana.editor.css/src/com/aptana/editor/css/validator/CSSValidator.java
  31. +8 −3 plugins/com.aptana.editor.epl/src/org/eclipse/jface/text/source/CommonLineNumberRulerColumn.java
  32. +4 −1 plugins/com.aptana.editor.findbar/src/com/aptana/editor/findbar/impl/FindBarDecorator.java
  33. +2 −1 plugins/com.aptana.editor.html.formatter/src/com/aptana/editor/html/formatter/HTMLFormatter.java
  34. +53 −0 ...s/com.aptana.editor.html.formatter/src/com/aptana/editor/html/formatter/HTMLFormatterFactory.java
  35. +4 −4 ...l.formatter/src/com/aptana/editor/html/formatter/preferences/HTMLFormatterIndentationTabPage.java
  36. +4 −1 ...ormatter/src/com/aptana/editor/html/formatter/preferences/HTMLFormatterPreferenceInitializer.java
  37. +1 −1 ...s/com.aptana.editor.html/src/com/aptana/editor/html/contentassist/HTMLContentAssistProcessor.java
  38. +2 −2 plugins/com.aptana.editor.html/src/com/aptana/editor/html/contentassist/HTMLTagProposal.java
  39. +2 −1 plugins/com.aptana.editor.js.formatter/src/com/aptana/editor/js/formatter/JSFormatter.java
  40. +53 −0 plugins/com.aptana.editor.js.formatter/src/com/aptana/editor/js/formatter/JSFormatterFactory.java
  41. +2 −2 ...ins/com.aptana.editor.js.formatter/src/com/aptana/editor/js/formatter/JSFormatterNodeBuilder.java
  42. +4 −4 ...or.js.formatter/src/com/aptana/editor/js/formatter/preferences/JSFormatterIndentationTabPage.java
  43. +4 −1 ...js.formatter/src/com/aptana/editor/js/formatter/preferences/JSFormatterPreferenceInitializer.java
  44. +2 −1 plugins/com.aptana.editor.js/.options
  45. +6 −0 plugins/com.aptana.editor.js/metadata/JSMetadataSchema.json
  46. +9 −0 plugins/com.aptana.editor.js/src/com/aptana/editor/js/IDebugScopes.java
  47. +41 −29 plugins/com.aptana.editor.js/src/com/aptana/editor/js/contentassist/JSContentAssistProcessor.java
  48. +10 −0 ...ns/com.aptana.editor.js/src/com/aptana/editor/js/contentassist/JSContextInformationValidator.java
  49. +2 −1 plugins/com.aptana.editor.js/src/com/aptana/editor/js/contentassist/index/IJSIndexConstants.java
  50. +28 −2 ...om.aptana.editor.js/src/com/aptana/editor/js/contentassist/index/JSCAFileIndexingParticipant.java
  51. +371 −269 plugins/com.aptana.editor.js/src/com/aptana/editor/js/contentassist/index/JSCAHandler.java
  52. +6 −6 plugins/com.aptana.editor.js/src/com/aptana/editor/js/contentassist/index/JSCAReader.java
  53. +86 −3 .../com.aptana.editor.js/src/com/aptana/editor/js/contentassist/index/JSFileIndexingParticipant.java
  54. +48 −0 plugins/com.aptana.editor.js/src/com/aptana/editor/js/contentassist/index/JSIndexWriter.java
  55. +24 −0 plugins/com.aptana.editor.js/src/com/aptana/editor/js/contentassist/model/TypeElement.java
  56. +2 −1 plugins/com.aptana.editor.json/src/com/aptana/editor/json/formatter/JSONFormatter.java
  57. +52 −0 plugins/com.aptana.editor.json/src/com/aptana/editor/json/formatter/JSONFormatterFactory.java
  58. +4 −4 plugins/com.aptana.editor.json/src/com/aptana/editor/json/preferences/JSONFormatWhitespacePage.java
  59. +3 −1 plugins/com.aptana.editor.json/src/com/aptana/editor/json/preferences/JSONPreferenceInitializer.java
  60. +2 −1 plugins/com.aptana.editor.xml.formatter/src/com/aptana/editor/xml/formatter/XMLFormatter.java
  61. +52 −0 plugins/com.aptana.editor.xml.formatter/src/com/aptana/editor/xml/formatter/XMLFormatterFactory.java
  62. +4 −4 ...or.xml.formatter/src/com/aptana/editor/xml/formatter/preferences/XMLFormatterIndentationPage.java
  63. +4 −1 ....formatter/src/com/aptana/editor/xml/formatter/preferences/XMLFormatterPreferenceInitializer.java
  64. +145 −1 plugins/com.aptana.formatter.epl/src/com/aptana/formatter/AbstractScriptFormatterFactory.java
  65. +1 −0 plugins/com.aptana.formatter.epl/src/com/aptana/formatter/FormatterUtils.java
  66. +13 −0 plugins/com.aptana.formatter.epl/src/com/aptana/formatter/IScriptFormatterFactory.java
  67. +25 −2 ...om.aptana.formatter.epl/src/com/aptana/formatter/preferences/profile/GeneralProfileVersioner.java
  68. +11 −0 plugins/com.aptana.formatter.epl/src/com/aptana/formatter/ui/IFormatterControlManager.java
  69. +1 −1 .../src/com/aptana/formatter/ui/preferences/AbstractConfigurationBlockPropertyAndPreferencePage.java
  70. +20 −2 ...ana.formatter.ui.epl/src/com/aptana/formatter/ui/preferences/AbstractFormatterSelectionBlock.java
  71. +14 −0 .../com.aptana.formatter.ui.epl/src/com/aptana/formatter/ui/preferences/FormatterControlManager.java
  72. +5 −6 ...s/com.aptana.formatter.ui.epl/src/com/aptana/formatter/ui/preferences/FormatterModifyTabPage.java
  73. +1 −1 plugins/com.aptana.formatter.ui.epl/src/com/aptana/formatter/ui/preferences/messages.properties
  74. +38 −19 plugins/com.aptana.git.core/src/com/aptana/git/core/model/GitIndex.java
  75. +119 −65 plugins/com.aptana.git.core/src/com/aptana/git/core/model/GitRepository.java
  76. +10 −1 plugins/com.aptana.git.core/src/com/aptana/git/core/model/GitRevList.java
  77. +8 −0 plugins/com.aptana.git.core/src/com/aptana/git/core/model/Messages.java
  78. +4 −0 plugins/com.aptana.git.core/src/com/aptana/git/core/model/messages.properties
  79. +2 −0 plugins/com.aptana.git.core/src/com/aptana/git/internal/core/launching/Messages.java
  80. +35 −3 plugins/com.aptana.git.ui/src/com/aptana/git/ui/GitUIPlugin.java
  81. +6 −1 ...ins/com.aptana.git.ui/src/com/aptana/git/ui/internal/actions/AbstractSimpleGitCommandHandler.java
  82. +6 −1 plugins/com.aptana.git.ui/src/com/aptana/git/ui/internal/actions/MergeBranchHandler.java
  83. +1 −0 plugins/com.aptana.git.ui/src/com/aptana/git/ui/internal/actions/Messages.java
  84. +6 −1 plugins/com.aptana.git.ui/src/com/aptana/git/ui/internal/actions/PushToRemoteHandler.java
  85. +6 −1 plugins/com.aptana.git.ui/src/com/aptana/git/ui/internal/actions/RebaseBranchHandler.java
  86. +6 −1 plugins/com.aptana.git.ui/src/com/aptana/git/ui/internal/actions/SquashMergeBranchHandler.java
  87. +1 −0 plugins/com.aptana.git.ui/src/com/aptana/git/ui/internal/actions/messages.properties
  88. +29 −37 plugins/com.aptana.index.core/src/com/aptana/index/core/Index.java
  89. +12 −12 plugins/com.aptana.preview/.settings/org.eclipse.jdt.core.prefs
  90. +2 −2 plugins/com.aptana.preview/.settings/org.eclipse.jdt.ui.prefs
  91. +2 −1 plugins/com.aptana.preview/META-INF/MANIFEST.MF
  92. +362 −0 plugins/com.aptana.preview/src/com/aptana/preview/ui/properties/PreviewSettingComposite.java
  93. +9 −258 plugins/com.aptana.preview/src/com/aptana/preview/ui/properties/ProjectPreviewPropertyPage.java
  94. +11 −8 plugins/com.aptana.projects/src/com/aptana/projects/internal/wizards/NewProjectWizard.java
  95. +3 −0 plugins/com.aptana.samples.ui/src/com/aptana/samples/ui/project/NewSampleProjectWizard.java
  96. +5 −0 plugins/com.aptana.samples/src/com/aptana/samples/internal/SamplesManager.java
  97. +17 −0 plugins/com.aptana.samples/src/com/aptana/samples/model/SampleCategory.java
  98. +20 −0 plugins/com.aptana.samples/src/com/aptana/samples/model/SamplesReference.java
  99. +8 −0 plugins/com.aptana.scripting/framework/ruble/platform.rb
  100. +76 −9 plugins/com.aptana.ui.io/src/com/aptana/ide/ui/io/IOUIPlugin.java
  101. +3 −0 plugins/com.aptana.ui.io/src/com/aptana/ide/ui/io/navigator/actions/Messages.java
  102. +2 −0 plugins/com.aptana.ui.io/src/com/aptana/ide/ui/io/navigator/actions/messages.properties
  103. +23 −19 plugins/com.aptana.ui/src/com/aptana/ui/widgets/StepIndicatorComposite.java
  104. +1 −1 plugins/com.aptana.usage/src/com/aptana/usage/AptanaDB.java
  105. +147 −62 plugins/com.aptana.webserver.core/src/com/aptana/webserver/core/builtin/MimeTypesRegistry.java
  106. +3 −2 plugins/com.aptana.workbench/src/com/aptana/workbench/commands/EditorCommandsMenuContributor.java
  107. BIN tests/com.aptana.core.tests/resources/test_overwrite.zip
  108. BIN tests/com.aptana.core.tests/resources/test_overwrite_dir.zip
  109. +151 −2 tests/com.aptana.core.tests/src/com/aptana/core/util/ZipUtilTest.java
  110. +12 −0 ...com.aptana.editor.coffee.tests/src/com/aptana/editor/coffee/CoffeeSourcePartitionScannerTest.java
  111. +65 −3 ...tana.editor.common.tests/src/com/aptana/editor/common/internal/peer/CharacterPairMatcherTest.java
  112. +8 −0 tests/com.aptana.editor.css.tests/src/com/aptana/editor/css/validator/CSSValidatorTests.java
  113. +3,555 −0 tests/com.aptana.editor.js.formatter.tests/formatting/jquery-1.7.1.min.js
  114. +61 −0 tests/com.aptana.editor.js.formatter.tests/formatting/test104.js
  115. +61 −0 tests/com.aptana.editor.js.formatter.tests/formatting/test105.js
  116. +61 −0 tests/com.aptana.editor.js.formatter.tests/formatting/test106.js
  117. +2 −1 tests/com.aptana.editor.js.tests/build.properties
  118. +11 −0 tests/com.aptana.editor.js.tests/contextInfo/arrayArgs.js
  119. +15 −0 tests/com.aptana.editor.js.tests/contextInfo/invocationArgs.js
  120. +11 −0 tests/com.aptana.editor.js.tests/contextInfo/numberArgs.js
  121. +30 −0 tests/com.aptana.editor.js.tests/contextInfo/objectArgs.js
  122. +1 −0 tests/com.aptana.editor.js.tests/metadata/isInternalProperty.js
  123. +7 −0 tests/com.aptana.editor.js.tests/metadata/namespacedType.jsca
  124. +8 −0 tests/com.aptana.editor.js.tests/metadata/namespacedTypeInternal.jsca
  125. +11 −0 tests/com.aptana.editor.js.tests/metadata/namespacedTypeMixed.jsca
  126. +8 −0 tests/com.aptana.editor.js.tests/metadata/typeInternal.jsca
  127. +7 −0 tests/com.aptana.editor.js.tests/metadata/typeOnly.jsca
  128. +1 −0 tests/com.aptana.editor.js.tests/src/com/aptana/editor/js/contentassist/AllTests.java
  129. +212 −0 tests/com.aptana.editor.js.tests/src/com/aptana/editor/js/contentassist/JSContextInfoTests.java
  130. +1 −0 tests/com.aptana.editor.js.tests/src/com/aptana/editor/js/index/AllTests.java
  131. +215 −0 tests/com.aptana.editor.js.tests/src/com/aptana/editor/js/index/JSCAIndexingTests.java
  132. +58 −2 tests/com.aptana.git.core.tests/src/com/aptana/git/core/model/GitIndexTest.java
  133. +218 −129 tests/com.aptana.git.core.tests/src/com/aptana/git/core/model/GitRepositoryTest.java
  134. +4 −4 tests/com.aptana.git.core.tests/src/com/aptana/git/internal/core/storage/GitFileHistoryTest.java
  135. +1 −1 tests/com.aptana.samples.tests/src/com/aptana/samples/internal/SamplesManagerTest.java
@@ -2,7 +2,7 @@
<feature
id="com.aptana.feature"
label="%featureName"
- version="3.0.7.qualifier"
+ version="3.0.8.qualifier"
provider-name="%providerName"
plugin="com.aptana.branding">
@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: com.aptana.branding
-Bundle-Version: 3.0.7.qualifier
+Bundle-Version: 3.0.8.qualifier
Bundle-Vendor: %providerName
@@ -308,7 +308,9 @@ public boolean hasBuildPath(IProject project, BuildPathEntry entry)
if (project != null && entry != null)
{
- getBuildPaths(project).contains(entry);
+ Set<BuildPathEntry> buildPathSet = getBuildPaths(project);
+
+ result = buildPathSet.contains(entry);
}
return result;
@@ -1,52 +0,0 @@
-/**
- * Aptana Studio
- * Copyright (c) 2005-2011 by Appcelerator, Inc. All Rights Reserved.
- * Licensed under the terms of the Eclipse Public License (EPL).
- * Please see the license-epl.html included with this distribution for details.
- * Any modifications to this file must keep this entire header intact.
- */
-package com.aptana.core.epl;
-
-public interface IReadWriteMonitor
-{
- /**
- * Concurrent reading is allowed Blocking only when already writing.
- */
- void enterRead();
-
- /**
- * Only one writer at a time is allowed to perform Blocking only when already writing or reading.
- */
- void enterWrite();
-
- /**
- * Only notify waiting writer(s) if last reader
- */
- void exitRead();
-
- /**
- * When writing is over, all readers and possible writers are granted permission to restart concurrently
- */
- void exitWrite();
-
- /**
- * Atomic exitRead/enterWrite: Allows to keep monitor in between exit read and next enter write. Use when writing
- * changes is optional, otherwise call the individual methods. Returns false if multiple readers are accessing the
- * index.
- */
- boolean exitReadEnterWrite();
-
- /**
- * Atomic exitWrite/enterRead: Allows to keep monitor in between exit write and next enter read. When writing is
- * over, all readers are granted permissing to restart concurrently. This is the same as:
- *
- * <pre>
- * synchronized (monitor)
- * {
- * monitor.exitWrite();
- * monitor.enterRead();
- * }
- * </pre>
- */
- void exitWriteEnterRead();
-}
@@ -1,127 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package com.aptana.core.epl;
-
-
-/**
- * Monitor ensuring no more than one writer working concurrently. Multiple readers are allowed to perform
- * simultaneously.
- */
-public class ReadWriteMonitor implements IReadWriteMonitor
-{
-
- /**
- * <0 : writing (cannot go beyond -1, i.e one concurrent writer)
- * =0 : idle
- * >0 : reading (number of concurrent readers)
- */
- private int status = 0;
-
- /* (non-Javadoc)
- * @see com.aptana.internal.index.core.IReadWriteMonitor#enterRead()
- */
- public synchronized void enterRead()
- {
- while (status < 0)
- {
- try
- {
- wait();
- }
- catch (InterruptedException e)
- {
- // ignore
- }
- }
- status++;
- }
-
- /* (non-Javadoc)
- * @see com.aptana.internal.index.core.IReadWriteMonitor#enterWrite()
- */
- public synchronized void enterWrite()
- {
- while (status != 0)
- {
- try
- {
- wait();
- }
- catch (InterruptedException e)
- {
- // ignore
- }
- }
- status--;
- }
-
- /* (non-Javadoc)
- * @see com.aptana.internal.index.core.IReadWriteMonitor#exitRead()
- */
- public synchronized void exitRead()
- {
-
- if (--status == 0)
- notifyAll();
- }
-
- /* (non-Javadoc)
- * @see com.aptana.internal.index.core.IReadWriteMonitor#exitWrite()
- */
- public synchronized void exitWrite()
- {
-
- if (++status == 0)
- notifyAll();
- }
-
- /* (non-Javadoc)
- * @see com.aptana.internal.index.core.IReadWriteMonitor#exitReadEnterWrite()
- */
- public synchronized boolean exitReadEnterWrite()
- {
- if (status != 1)
- return false; // only continue if this is the only reader
-
- status = -1;
- return true;
- }
-
- /* (non-Javadoc)
- * @see com.aptana.internal.index.core.IReadWriteMonitor#exitWriteEnterRead()
- */
- public synchronized void exitWriteEnterRead()
- {
- this.exitWrite();
- this.enterRead();
- }
-
- public String toString()
- {
- StringBuffer buffer = new StringBuffer();
- if (status == 0)
- {
- buffer.append("Monitor idle "); //$NON-NLS-1$
- }
- else if (status < 0)
- {
- buffer.append("Monitor writing "); //$NON-NLS-1$
- }
- else if (status > 0)
- {
- buffer.append("Monitor reading "); //$NON-NLS-1$
- }
- buffer.append("(status = "); //$NON-NLS-1$
- buffer.append(this.status);
- buffer.append(")"); //$NON-NLS-1$
- return buffer.toString();
- }
-}
@@ -44,6 +44,7 @@
import com.aptana.core.internal.preferences.PreferenceInitializer;
import com.aptana.core.logging.IdeLog;
import com.aptana.core.resources.FileDeltaRefreshAdapter;
+import com.aptana.core.resources.RefreshThread;
import com.aptana.core.util.EclipseUtil;
import com.aptana.filewatcher.FileWatcher;
import com.eaio.uuid.MACAddress;
@@ -369,17 +370,20 @@ public static String getAptanaStudioVersion()
{
private Map<IProject, Integer> fWatchers;
+ private RefreshThread fRefreshThread;
private FileDeltaRefreshAdapter fAdapter;
private boolean hooked;
ResourceListener()
{
- fAdapter = new FileDeltaRefreshAdapter();
+ fRefreshThread = new RefreshThread();
+ fAdapter = new FileDeltaRefreshAdapter(fRefreshThread);
EclipseUtil.instanceScope().getNode(CorePlugin.PLUGIN_ID).addPreferenceChangeListener(this);
}
public void start()
{
+ fRefreshThread.start();
if (autoHookFileWatcher())
{
hookAll();
@@ -417,6 +421,7 @@ private boolean autoHookFileWatcher()
public synchronized void dispose()
{
+ fRefreshThread.terminate();
// Don't listen to auto-refresh pref changes anymore
EclipseUtil.instanceScope().getNode(CorePlugin.PLUGIN_ID).removePreferenceChangeListener(this);
// Now remove all the existing file watchers
@@ -503,7 +508,7 @@ public void resourceChanged(IResourceChangeEvent event)
public boolean visit(IResourceDelta delta) throws CoreException
{
- IResource resource = delta.getResource();
+ final IResource resource = delta.getResource();
if (resource.getType() == IResource.FILE || resource.getType() == IResource.FOLDER)
{
return false;
@@ -519,7 +524,17 @@ public boolean visit(IResourceDelta delta) throws CoreException
|| (delta.getKind() == IResourceDelta.CHANGED
&& (delta.getFlags() & IResourceDelta.OPEN) != 0 && resource.isAccessible()))
{
- hookFilewatcher(resource.getProject());
+ Job job = new Job("Hooking file watcher to new project...") //$NON-NLS-1$
+ {
+ protected IStatus run(IProgressMonitor monitor)
+ {
+ hookFilewatcher(resource.getProject());
+ fRefreshThread.refresh(resource.getProject(), IResource.DEPTH_INFINITE);
+ return Status.OK_STATUS;
+ };
+ };
+ job.setSystem(EclipseUtil.showSystemJobs());
+ job.schedule(1000);
}
}
return false;
Oops, something went wrong.

0 comments on commit b770e5d

Please sign in to comment.