diff --git a/.gitignore b/.gitignore index e6aff51..10cfdbf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,10 @@ +*.iml +.gradle +/local.properties +/.idea .DS_Store - - +/build +/captures +.externalNativeBuild +.cxx +local.properties diff --git a/CorrectorSoftcatala/.gitignore b/CorrectorSoftcatala/.gitignore new file mode 100644 index 0000000..67e07b8 --- /dev/null +++ b/CorrectorSoftcatala/.gitignore @@ -0,0 +1,2 @@ +/build +/release diff --git a/CorrectorSoftcatala/build.gradle b/CorrectorSoftcatala/build.gradle index 6223345..cb89bec 100644 --- a/CorrectorSoftcatala/build.gradle +++ b/CorrectorSoftcatala/build.gradle @@ -1,12 +1,20 @@ -apply plugin: 'com.android.application' +plugins { + id 'com.android.application' +} + +gradle.projectsEvaluated { + tasks.withType(JavaCompile) { + options.compilerArgs << "-Xlint:deprecation" + } +} android { - compileSdkVersion 26 + compileSdk 33 defaultConfig { applicationId "org.softcatala.corrector" - minSdkVersion 19 - targetSdkVersion 26 + minSdk 19 + targetSdk 33 versionCode 11 versionName "1.0.10" } @@ -14,9 +22,13 @@ android { buildTypes { release { minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } signingConfigs { buildTypes { @@ -31,6 +43,8 @@ android { } dependencies { - implementation 'com.android.support:appcompat-v7:26.+' - implementation 'com.android.support.constraint:constraint-layout:+' -} + implementation 'androidx.appcompat:appcompat:1.5.1' + implementation 'androidx.preference:preference:1.1.1' // latest 1.2.0 gives 'Duplicate class androidx.lifecycle.ViewModelLazy found in modules lifecycle-viewmodel-2.5.1-runtime' + implementation 'com.google.android.material:material:1.6.1' + implementation("androidx.constraintlayout:constraintlayout:2.1.4") +} \ No newline at end of file diff --git a/CorrectorSoftcatala/proguard-rules.pro b/CorrectorSoftcatala/proguard-rules.pro new file mode 100644 index 0000000..481bb43 --- /dev/null +++ b/CorrectorSoftcatala/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/CorrectorSoftcatala/src/main/AndroidManifest.xml b/CorrectorSoftcatala/src/main/AndroidManifest.xml index ab7c6a1..db7e870 100644 --- a/CorrectorSoftcatala/src/main/AndroidManifest.xml +++ b/CorrectorSoftcatala/src/main/AndroidManifest.xml @@ -1,21 +1,6 @@ - + @@ -23,11 +8,15 @@ + android:label="@string/app_name" + android:theme="@style/Theme.AppCompat.Light" + tools:targetApi="33"> + + android:permission="android.permission.BIND_TEXT_SERVICE" + android:exported="true"> @@ -42,7 +31,8 @@ android:label="@string/sample_settings"> - + diff --git a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/Configuration.java b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/Configuration.java index a39e269..7d5468f 100644 --- a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/Configuration.java +++ b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/Configuration.java @@ -20,18 +20,27 @@ package org.softcatala.corrector; import android.content.SharedPreferences; -import android.os.Build; -import android.preference.PreferenceManager; + +import androidx.preference.PreferenceManager; import java.util.Date; +import java.util.HashSet; +import java.util.Set; public class Configuration { + private static final String languagetoolServerDefault = "https://api.languagetool.org"; + private static final String languageDefault = "system"; + private static final String motherTongueDefault = ""; + private static final Set preferredVariantsDefault = new HashSet<>(); private static volatile Configuration instance = null; - private static String PREF_DIALECT = "corrector.softcatala.dialect"; + private static final String PREF_SERVER = "corrector.softcatala.server"; + private static final String PREF_LANGUAGE = "corrector.softcatala.language"; + private static final String PREF_MOTHER_TONGUE = "corrector.softcatala.mother_tongue"; + private static final String PREF_PREFERRED_VARIANTS = "corrector.softcatala.preferred_variants"; private static int HttpConnections = 0; private static Date LastConnection = null; - //public static SpellCheckerSettingsActivity SettingsActivity; + public static SpellCheckerSettingsActivity SettingsActivity; public static synchronized Configuration getInstance() { if (instance == null) { @@ -41,23 +50,25 @@ public static synchronized Configuration getInstance() { return instance; } - /*public Boolean getDialect() + public String getServer() { - boolean previousTo50 = Build.VERSION.SDK_INT <= Build.VERSION_CODES.KITKAT; - - if (previousTo50) - return false; - - SharedPreferences spref = PreferenceManager.getDefaultSharedPreferences(SettingsActivity); - Boolean dialect = spref.getBoolean(PREF_DIALECT, false); - return dialect; + if (SettingsActivity == null) { + return languagetoolServerDefault; + } + SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(SettingsActivity); + return sharedPreferences.getString(PREF_SERVER, languagetoolServerDefault); } - public void setDialect(Boolean dialect) + public String setServer(String server) { - SharedPreferences spref = PreferenceManager.getDefaultSharedPreferences(SettingsActivity); - spref.edit().putBoolean(PREF_DIALECT, dialect).commit(); - }*/ + if (server.isEmpty()) { + server = languagetoolServerDefault; + } + + SharedPreferences sharedPreference = PreferenceManager.getDefaultSharedPreferences(SettingsActivity); + sharedPreference.edit().putString(PREF_SERVER, server).apply(); + return server; + } public int getHttpConnections() { return HttpConnections; @@ -74,4 +85,49 @@ public Date getLastConnection() { public void setLastConnection(Date date) { LastConnection = date; } + + public String getLanguage() + { + if (SettingsActivity == null) { + return languageDefault; + } + + SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(SettingsActivity); + return sharedPreferences.getString(PREF_LANGUAGE, languageDefault); + } + + public String getMotherTongue() + { + if (SettingsActivity == null) { + return motherTongueDefault; + } + + SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(SettingsActivity); + return sharedPreferences.getString(PREF_MOTHER_TONGUE, motherTongueDefault); + } + + public Set getPreferredVariants() + { + if (SettingsActivity == null) { + return preferredVariantsDefault; + } + + SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(SettingsActivity); + return sharedPreferences.getStringSet(PREF_PREFERRED_VARIANTS, preferredVariantsDefault); + } + + public void setLanguage(String language) { + SharedPreferences sharedPreference = PreferenceManager.getDefaultSharedPreferences(SettingsActivity); + sharedPreference.edit().putString(PREF_LANGUAGE, language).apply(); + } + + public void setMotherTongue(String motherTongue) { + SharedPreferences sharedPreference = PreferenceManager.getDefaultSharedPreferences(SettingsActivity); + sharedPreference.edit().putString(PREF_MOTHER_TONGUE, motherTongue).apply(); + } + + public void setPreferredVariants(Set preferredVariants) { + SharedPreferences sharedPreference = PreferenceManager.getDefaultSharedPreferences(SettingsActivity); + sharedPreference.edit().putStringSet(PREF_PREFERRED_VARIANTS, preferredVariants).apply(); + } } diff --git a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/LTSpellCheckerService.java b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/LTSpellCheckerService.java index 9858850..2254020 100755 --- a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/LTSpellCheckerService.java +++ b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/LTSpellCheckerService.java @@ -19,7 +19,6 @@ package org.softcatala.corrector; -import android.os.Build; import android.service.textservice.SpellCheckerService; import android.util.Log; import android.view.textservice.SentenceSuggestionsInfo; @@ -56,23 +55,18 @@ public static int[] convertIntegers(ArrayList integers) { int[] ret = new int[integers.size()]; Iterator iterator = integers.iterator(); for (int i = 0; i < ret.length; i++) { - ret[i] = iterator.next().intValue(); + ret[i] = iterator.next(); } return ret; } - private boolean isSentenceSpellCheckApiSupported() { - // Note that the sentence level spell check APIs work on Jelly Bean or later. - return Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN; - } - @Override public void onCreate() { if (DBG) { Log.d(TAG, "onCreate"); } mLocale = getLocale(); - mReportedErrors = new HashSet(); + mReportedErrors = new HashSet<>(); } @Override @@ -117,21 +111,15 @@ public SentenceSuggestionsInfo[] onGetSentenceSuggestionsMultiple( TextInfo[] textInfos, int suggestionsLimit) { try { - if (!isSentenceSpellCheckApiSupported()) { - Log.e(TAG, "Sentence spell check is not supported on this platform"); - return null; - } - - final ArrayList retval = new ArrayList(); - for (int i = 0; i < textInfos.length; ++i) { - final TextInfo ti = textInfos[i]; + final ArrayList retval = new ArrayList<>(); + for (final TextInfo ti : textInfos) { if (DBG) { Log.d(TAG, "onGetSentenceSuggestionsMultiple: " + ti.getText()); } - ArrayList sis = new ArrayList(); - ArrayList offsets = new ArrayList(); - ArrayList lengths = new ArrayList(); + ArrayList sis = new ArrayList<>(); + ArrayList offsets = new ArrayList<>(); + ArrayList lengths = new ArrayList<>(); removePreviouslyMarkedErrors(ti, sis, offsets, lengths); getSuggestionsFromLT(ti, sis, offsets, lengths); @@ -165,17 +153,17 @@ private void getSuggestionsFromLT(TextInfo ti, ArrayList sis, Suggestion[] suggestions = languageToolRequest .GetSuggestions(input); - for (int s = 0; s < suggestions.length; s++) { + for (Suggestion suggestion : suggestions) { SuggestionsInfo si = new SuggestionsInfo( SuggestionsInfo.RESULT_ATTR_LOOKS_LIKE_TYPO, - suggestions[s].Text); + suggestion.Text); si.setCookieAndSequence(ti.getCookie(), ti.getSequence()); sis.add(si); - offsets.add(suggestions[s].Position); - lengths.add(suggestions[s].Length); - String incorrectText = input.substring(suggestions[s].Position, - suggestions[s].Position + suggestions[s].Length); + offsets.add(suggestion.Position); + lengths.add(suggestion.Length); + String incorrectText = input.substring(suggestion.Position, + suggestion.Position + suggestion.Length); if (mReportedErrors.size() < MAX_REPORTED_ERRORS_STORED) { mReportedErrors.add(incorrectText); @@ -213,7 +201,7 @@ private void removePreviouslyMarkedErrors(TextInfo ti, ArrayList suggestions = new ArrayList(); + ArrayList suggestions = new ArrayList<>(); try { @@ -41,7 +41,6 @@ public Suggestion[] GetSuggestions(String jsonText) { JSONArray matches = json.getJSONArray("matches"); for (int i = 0; i < matches.length(); i++) { - JSONObject match = matches.getJSONObject(i); JSONArray replacements = match.getJSONArray("replacements"); @@ -50,7 +49,7 @@ public Suggestion[] GetSuggestions(String jsonText) { // Since we process fragments we need to skip the upper case // suggestion - if (ruleId.equals("UPPERCASE_SENTENCE_START") == true) + if (ruleId.equals("UPPERCASE_SENTENCE_START")) continue; Suggestion suggestion = new Suggestion(); @@ -60,13 +59,13 @@ public Suggestion[] GetSuggestions(String jsonText) { String msgText = String.format("(%s)", message); suggestion.Text = new String[]{msgText}; } else { - ArrayList list = new ArrayList(); + ArrayList list = new ArrayList<>(); for (int r = 0; r < replacements.length(); r++) { JSONObject replacement = replacements.getJSONObject(r); String value = replacement.getString("value"); list.add(value); } - suggestion.Text = list.toArray(new String[list.size()]); + suggestion.Text = list.toArray(new String[0]); } suggestion.Position = match.getInt("offset"); diff --git a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/LanguageToolRequest.java b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/LanguageToolRequest.java index 93dc335..f2bcf84 100755 --- a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/LanguageToolRequest.java +++ b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/LanguageToolRequest.java @@ -22,43 +22,62 @@ import java.io.DataOutputStream; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; +import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder; import java.io.BufferedReader; +import java.util.Arrays; import java.util.Date; import java.util.Random; +import java.util.Set; import android.util.Log; -import javax.net.ssl.HttpsURLConnection; - public class LanguageToolRequest { - //private static final String SERVER_URL = "https://www.softcatala.org/languagetool/api/"; - private static final String SERVER_URL = "https://lt.softcatala.org/v2/check"; private static final String ENCODING = "UTF-8"; private static final String TAG = LanguageToolRequest.class.getSimpleName(); private static final String m_sessionId = GetSessionID(); private final LanguageToolParsing languageToolParsing = new LanguageToolParsing(); String[][] mAndroidToLTLangMap = new String[][]{ - {"en", "en-US"}, - {"de", "de-DE"}, - {"pl", "pl"}, - {"fr", "fr"}, - {"ca", "ca"}, - {"uk", "uk"}, - {"es", "es"}, + {"ar", "ar"}, + {"ast", "ast-ES"}, + {"be", "be-BY"}, {"br", "br-FR"}, + {"ca", "ca-ES"}, + {"zh", "zh-CN"}, + {"da", "da-DK"}, + {"nl", "nl"}, + {"en", "en-US"}, {"eo", "eo"}, + {"fr", "fr"}, + {"gl", "gl-ES"}, + {"de", "de-DE"}, + {"el", "el-GR"}, + {"ga", "ga-IE"}, + {"it", "it"}, + {"ja", "ja-JP"}, + {"km", "km-KH"}, + {"nb", "nb"}, + {"no", "no"}, + {"fa", "fa"}, + {"pl", "pl-PL"}, + {"pt", "pt"}, + {"ro", "ro-RO"}, {"ru", "ru-RU"}, - {"nl", "nl"}, - {"it", "it"} + {"sk", "sk-SK"}, + {"sl", "sl-SI"}, + {"es", "es"}, + {"sv", "sv"}, + {"tl", "tl-PH"}, + {"ta", "ta-IN"}, + {"uk", "uk-UA"}, }; - private String m_language; + private final String system_language; public LanguageToolRequest(String language) { - m_language = ConvertLanguage(language); + system_language = language; } static private String GetSessionID() { @@ -68,13 +87,12 @@ static private String GetSessionID() { return Integer.toString(id); } - private String ConvertLanguage(String language) { String lang = ""; - for (int i = 0; i < mAndroidToLTLangMap.length; i++) { - if (language.startsWith(mAndroidToLTLangMap[i][0])) { - lang = mAndroidToLTLangMap[i][1]; + for (String[] strings : mAndroidToLTLangMap) { + if (language.startsWith(strings[0])) { + lang = strings[1]; break; } } @@ -87,25 +105,41 @@ public Suggestion[] GetSuggestions(String text) { } private String GetFillPostFields(String text) { + StringBuilder queryParameter = new StringBuilder(); + queryParameter.append(AddQueryParameter("", "useragent", "androidspell")); + queryParameter.append(AddQueryParameter("&", "text", text)); + + String settings_language = Configuration.getInstance().getLanguage(); + if (settings_language.equals("system")) { + queryParameter.append(AddQueryParameter("&", "language", ConvertLanguage(system_language))); + } else { + queryParameter.append(AddQueryParameter("&", "language", settings_language)); + + if (settings_language.equals("auto")) { + Set settings_preferred_variants = Configuration.getInstance().getPreferredVariants(); + if (!settings_preferred_variants.isEmpty()) { + queryParameter.append(AddQueryParameter("&", "preferredVariants", String.join(",", settings_preferred_variants))); + } + } + } - StringBuilder sb = new StringBuilder(); + String settings_mother_tongue = Configuration.getInstance().getMotherTongue(); + if (!settings_mother_tongue.isEmpty()) { + queryParameter.append(AddQueryParameter("&", "motherTongue", settings_mother_tongue)); + } - sb.append(AddQueryParameter("", "language", m_language)); - sb.append(AddQueryParameter("&", "text", text)); - /* Parameter to allow languagetool.org to distingish the origin of the request */ - sb.append(AddQueryParameter("&", "useragent", "androidspell")); - return sb.toString(); + return queryParameter.toString(); } // HTTP POST request private String sendPost(String text) { - try { String url = BuildURL(); + Log.d("softcatala", "URL: " + url); URL obj = new URL(url); - HttpsURLConnection con = (HttpsURLConnection) obj.openConnection(); + HttpURLConnection con = (HttpURLConnection) obj.openConnection(); con.setRequestMethod("POST"); String urlParameters = GetFillPostFields(text); @@ -125,7 +159,7 @@ private String sendPost(String text) { BufferedReader in = new BufferedReader( new InputStreamReader(con.getInputStream())); String inputLine; - StringBuffer response = new StringBuffer(); + StringBuilder response = new StringBuilder(); Log.d("softcatala", "Response : " + response); while ((inputLine = in.readLine()) != null) { @@ -153,16 +187,14 @@ public Suggestion[] Request(String text) { } catch (Exception e) { Log.e(TAG, "Error reading stream from URL.", e); } - Suggestion[] suggestions = {}; - return suggestions; + return new Suggestion[]{}; } private String BuildURL() { - StringBuilder sb = new StringBuilder(); - sb.append(SERVER_URL); - /* Parameter to help to track requests from the same IP */ - sb.append(AddQueryParameter("?", "sessionID", m_sessionId)); - return sb.toString(); + return Configuration.getInstance().getServer() + + "/v2/check" + + /* Parameter to help to track requests from the same IP */ + AddQueryParameter("?", "sessionID", m_sessionId); } String AddQueryParameter(String separator, String key, String value) { diff --git a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/SpellCheckerSettingsActivity.java b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/SpellCheckerSettingsActivity.java index 6521d51..cf3195c 100755 --- a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/SpellCheckerSettingsActivity.java +++ b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/SpellCheckerSettingsActivity.java @@ -31,7 +31,7 @@ public class SpellCheckerSettingsActivity extends PreferenceActivity { @Override public Intent getIntent() { final Intent modIntent = new Intent(super.getIntent()); - //Configuration.SettingsActivity = this; + Configuration.SettingsActivity = this; modIntent.putExtra(EXTRA_SHOW_FRAGMENT, SpellCheckerSettingsFragment.class.getName()); modIntent.putExtra(EXTRA_NO_HEADERS, true); return modIntent; diff --git a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/SpellCheckerSettingsFragment.java b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/SpellCheckerSettingsFragment.java index fa866ba..580a62e 100755 --- a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/SpellCheckerSettingsFragment.java +++ b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/SpellCheckerSettingsFragment.java @@ -20,12 +20,16 @@ package org.softcatala.corrector; import android.os.Bundle; -import android.preference.CheckBoxPreference; import android.preference.Preference; +import android.preference.EditTextPreference; import android.preference.PreferenceFragment; import android.util.Log; +import android.preference.ListPreference; +import android.preference.MultiSelectListPreference; + import java.util.Date; +import java.util.Set; /** @@ -47,22 +51,47 @@ public void onCreate(final Bundle savedInstanceState) { setHttpConnections(); setVersion(); - //setDialect(); + setServer(); + setLanguageChangeListener(); + setMotherTongueChangeListener(); + setPreferredVariantsChangeListener(); + } + + private void setServer() { + EditTextPreference serverField = ((EditTextPreference) findPreference("server")); + serverField.setSummary(Configuration.getInstance().getServer()); + + serverField.setOnPreferenceChangeListener((preference, newValue) -> { + String newServer = newValue.toString(); + newServer = Configuration.getInstance().setServer(newServer); + ((EditTextPreference) preference).setSummary(newServer); + return true; + }); + } + + private void setLanguageChangeListener() { + ListPreference languageField = ((ListPreference) findPreference("language")); + languageField.setOnPreferenceChangeListener((preference, newValue) -> { + Configuration.getInstance().setLanguage(newValue.toString()); + return true; + }); + } + + private void setMotherTongueChangeListener() { + ListPreference motherTongueField = ((ListPreference) findPreference("mother_tongue")); + motherTongueField.setOnPreferenceChangeListener((preference, newValue) -> { + Configuration.getInstance().setMotherTongue(newValue.toString()); + return true; + }); } - private void setDialect() { - /*Boolean dialect = Configuration.getInstance().getDialect(); - CheckBoxPreference cb = (CheckBoxPreference) findPreference("dialect"); - cb.setChecked(dialect); - - cb.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - public boolean onPreferenceChange(Preference preference, Object newValue) { - Boolean dialect = Configuration.getInstance().getDialect(); - Configuration.getInstance().setDialect(!dialect); - Log.d(TAG, "Pref " + preference.getKey() + " changed to " + newValue.toString()); - return true; - } - });*/ + @SuppressWarnings("unchecked") + private void setPreferredVariantsChangeListener() { + MultiSelectListPreference preferredVariantsField = ((MultiSelectListPreference) findPreference("preferred_variants")); + preferredVariantsField.setOnPreferenceChangeListener((preference, newValue) -> { + Configuration.getInstance().setPreferredVariants((Set) newValue); + return true; + }); } private void setVersion() { @@ -74,9 +103,7 @@ private void setVersion() { private String getVersion() { try { - String versionName = - getActivity().getPackageManager().getPackageInfo(getActivity().getPackageName(), 0).versionName; - return versionName; + return getActivity().getPackageManager().getPackageInfo(getActivity().getPackageName(), 0).versionName; } catch (Exception e) { return null; } diff --git a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/WelcomeActivity.java b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/WelcomeActivity.java index b840137..27095e2 100644 --- a/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/WelcomeActivity.java +++ b/CorrectorSoftcatala/src/main/java/org/softcatala/corrector/WelcomeActivity.java @@ -1,9 +1,7 @@ package org.softcatala.corrector; import android.app.Activity; -import android.support.v7.app.AppCompatActivity; import android.os.Bundle; -import android.view.View; import android.widget.Button; import android.widget.TextView; @@ -26,11 +24,6 @@ protected void onCreate(Bundle savedInstanceState) { String text = getResources().getString(R.string.button_close); okButton.setText(text); - okButton.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - finish(); - } - }); + okButton.setOnClickListener(v -> finish()); } } diff --git a/CorrectorSoftcatala/src/main/res/layout/activity_welcome.xml b/CorrectorSoftcatala/src/main/res/layout/activity_welcome.xml index 883fa0b..725ec52 100644 --- a/CorrectorSoftcatala/src/main/res/layout/activity_welcome.xml +++ b/CorrectorSoftcatala/src/main/res/layout/activity_welcome.xml @@ -1,5 +1,5 @@ - - @@ -82,4 +82,4 @@ - + diff --git a/CorrectorSoftcatala/src/main/res/values-br/strings.xml b/CorrectorSoftcatala/src/main/res/values-br/strings.xml index 2cb64ee..1cd1aca 100644 --- a/CorrectorSoftcatala/src/main/res/values-br/strings.xml +++ b/CorrectorSoftcatala/src/main/res/values-br/strings.xml @@ -4,6 +4,7 @@ Adlenner LanguageTool Perzhioù Stumm + Servijer Goulennoù savet da servijer an adlenner %s (savet war %s) diff --git a/CorrectorSoftcatala/src/main/res/values-ca/strings.xml b/CorrectorSoftcatala/src/main/res/values-ca/strings.xml index c7857ad..8f0b02c 100644 --- a/CorrectorSoftcatala/src/main/res/values-ca/strings.xml +++ b/CorrectorSoftcatala/src/main/res/values-ca/strings.xml @@ -4,6 +4,7 @@ Revisió de text LanguageTool Preferències Versió + Servidor Sol·licituds al servidor %s (compilat el %s) diff --git a/CorrectorSoftcatala/src/main/res/values-de/strings.xml b/CorrectorSoftcatala/src/main/res/values-de/strings.xml index f3dcaec..33aace8 100644 --- a/CorrectorSoftcatala/src/main/res/values-de/strings.xml +++ b/CorrectorSoftcatala/src/main/res/values-de/strings.xml @@ -4,6 +4,7 @@ LanguageTool Textprüfer Einstellungen Version + Server Anfragen an den Textprüfungs-Server %s (gebaut am %s) diff --git a/CorrectorSoftcatala/src/main/res/values-eo/strings.xml b/CorrectorSoftcatala/src/main/res/values-eo/strings.xml index 7c0e0a0..d4315c1 100644 --- a/CorrectorSoftcatala/src/main/res/values-eo/strings.xml +++ b/CorrectorSoftcatala/src/main/res/values-eo/strings.xml @@ -4,6 +4,7 @@ Kontrolilo Lingvoilo/LanguageTool Agordoj Versio + Servilo Petoj al la servilo de kontrolado %s (kunmetita ĉe %s) diff --git a/CorrectorSoftcatala/src/main/res/values-fr/strings.xml b/CorrectorSoftcatala/src/main/res/values-fr/strings.xml index eb3ab96..8c44b5e 100644 --- a/CorrectorSoftcatala/src/main/res/values-fr/strings.xml +++ b/CorrectorSoftcatala/src/main/res/values-fr/strings.xml @@ -4,6 +4,7 @@ Correcteur LanguageTool Préférences Version + Serveur Requêtes au serveur de correction %s (généré sur %s) diff --git a/CorrectorSoftcatala/src/main/res/values-pt-rBR/strings.xml b/CorrectorSoftcatala/src/main/res/values-pt-rBR/strings.xml index 0f5be59..36cc38c 100644 --- a/CorrectorSoftcatala/src/main/res/values-pt-rBR/strings.xml +++ b/CorrectorSoftcatala/src/main/res/values-pt-rBR/strings.xml @@ -4,6 +4,7 @@ Revisor LanguageTool Configurações Versão + Servidor Pedidos ao servidor do revisor %s (feito em %s) %d (último %s) diff --git a/CorrectorSoftcatala/src/main/res/values-ru/strings.xml b/CorrectorSoftcatala/src/main/res/values-ru/strings.xml index 1064468..8b10a2c 100644 --- a/CorrectorSoftcatala/src/main/res/values-ru/strings.xml +++ b/CorrectorSoftcatala/src/main/res/values-ru/strings.xml @@ -4,6 +4,7 @@ Корректор LanguageTool Настройки Версия + Cерверу Объём запросов к серверу проверки %s (сборка от %s) diff --git a/CorrectorSoftcatala/src/main/res/values-uk/strings.xml b/CorrectorSoftcatala/src/main/res/values-uk/strings.xml index 709ebfd..b73fc71 100644 --- a/CorrectorSoftcatala/src/main/res/values-uk/strings.xml +++ b/CorrectorSoftcatala/src/main/res/values-uk/strings.xml @@ -4,6 +4,7 @@ Коректор LanguageTool Налаштування Версія + Cервера Запити до сервера коректора %s (побудовано на %s) diff --git a/CorrectorSoftcatala/src/main/res/values/empty.xml b/CorrectorSoftcatala/src/main/res/values/empty.xml new file mode 100644 index 0000000..59678b9 --- /dev/null +++ b/CorrectorSoftcatala/src/main/res/values/empty.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/CorrectorSoftcatala/src/main/res/values/languages.xml b/CorrectorSoftcatala/src/main/res/values/languages.xml new file mode 100644 index 0000000..806a69f --- /dev/null +++ b/CorrectorSoftcatala/src/main/res/values/languages.xml @@ -0,0 +1,215 @@ + + + + + Use the system-language + Guess the language automatically + + Arabic + Asturian + Belarusian + Breton + Catalan + Catalan (Valencian) + Chinese + Danish + Dutch + Dutch (Belgium) + English + English (Australian) + English (Canadian) + English (GB) + English (New Zealand) + English (South African) + English (US) + Esperanto + French + Galician + German + German (Austria) + German (Germany) + German (Swiss) + Greek + Irish + Italian + Japanese + Khmer + Norwegian (Bokmål) + Persian + Polish + Portuguese + Portuguese (Angola preAO) + Portuguese (Brazil) + Portuguese (Moçambique preAO) + Portuguese (Portugal) + Romanian + Russian + Simple German + Slovak + Slovenian + Spanish + Spanish (voseo) + Swedish + Tagalog + Tamil + Ukrainian + + + + system + auto + + ar + ast-ES + be-BY + br-FR + ca-ES + ca-ES-valencia + zh-CN + da-DK + nl + nl-BE + en + en-AU + en-CA + en-GB + en-NZ + en-ZA + en-US + eo + fr + gl-ES + de + de-AT + de-DE + de-CH + el-GR + ga-IE + it + ja-JP + km-KH + nb + no + fa + pl-PL + pt + pt-AO + pt-BR + pt-MZ + pt-PT + ro-RO + ru-RU + de-DE-x-simple-language + sk-SK + sl-SI + es + es-AR + sv + tl-PH + ta-IN + uk-UA + + + + Arabic + Asturian + Belarusian + Breton + Catalan + Catalan (Valencian) + Chinese + Danish + Dutch + Dutch (Belgium) + English + English (Australian) + English (Canadian) + English (GB) + English (New Zealand) + English (South African) + English (US) + Esperanto + French + Galician + German + German (Austria) + German (Germany) + German (Swiss) + Greek + Irish + Italian + Japanese + Khmer + Norwegian (Bokmål) + Persian + Polish + Portuguese + Portuguese (Angola preAO) + Portuguese (Brazil) + Portuguese (Moçambique preAO) + Portuguese (Portugal) + Romanian + Russian + Simple German + Slovak + Slovenian + Spanish + Spanish (voseo) + Swedish + Tagalog + Tamil + Ukrainian + + + + ar + ast-ES + be-BY + br-FR + ca-ES + ca-ES-valencia + zh-CN + da-DK + nl + nl-BE + en + en-AU + en-CA + en-GB + en-NZ + en-ZA + en-US + eo + fr + gl-ES + de + de-AT + de-DE + de-CH + el-GR + ga-IE + it + ja-JP + km-KH + nb + no + fa + pl-PL + pt + pt-AO + pt-BR + pt-MZ + pt-PT + ro-RO + ru-RU + de-DE-x-simple-language + sk-SK + sl-SI + es + es-AR + sv + tl-PH + ta-IN + uk-UA + + \ No newline at end of file diff --git a/CorrectorSoftcatala/src/main/res/values/strings.xml b/CorrectorSoftcatala/src/main/res/values/strings.xml index dd83dff..df6e9cd 100644 --- a/CorrectorSoftcatala/src/main/res/values/strings.xml +++ b/CorrectorSoftcatala/src/main/res/values/strings.xml @@ -25,6 +25,7 @@ %s Preferences Version + Server Requests to the proofreader server %s (built on %s) @@ -45,4 +46,10 @@ \nOverall due to Android ecosystem fragmentation in API and UI configuration layers a significant combination of devices do not work with this application. Close + Language + Uses the system language by default, but you can also use automatic detection or set it to a specific language. + Mother tongue + The language code of your native language, enabling false friends checks for some language pairs. + Preferred variants + List of preferred language variants. The automatic language detector can detect e.g. English, but it cannot decide whether British English or American English is used. Thus this parameter can be used to specify the preferred variants like en-GB and de-AT. \ No newline at end of file diff --git a/CorrectorSoftcatala/src/main/res/xml/spell_checker_settings.xml b/CorrectorSoftcatala/src/main/res/xml/spell_checker_settings.xml index db1c0e4..ca70dae 100644 --- a/CorrectorSoftcatala/src/main/res/xml/spell_checker_settings.xml +++ b/CorrectorSoftcatala/src/main/res/xml/spell_checker_settings.xml @@ -37,4 +37,47 @@ android:key="version" android:title="@string/version" android:summary="" /> + + + + + + + + diff --git a/build.gradle b/build.gradle index 366804e..e3992be 100644 --- a/build.gradle +++ b/build.gradle @@ -1,22 +1,14 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. -buildscript { - repositories { - jcenter() - google() - } - dependencies { - classpath 'com.android.tools.build:gradle:3.2.1' - } +plugins { + id 'com.android.application' version '7.2.2' apply false + id 'com.android.library' version '7.2.2' apply false } -allprojects { - repositories { - jcenter() - google() - } +task clean(type: Delete) { + delete rootProject.buildDir } -def getDateAsMillis() { - def Calendar cal = Calendar.getInstance(); +static def getDateAsMillis() { + Calendar cal = Calendar.getInstance() return cal.getTimeInMillis().toString() } diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..dab7c28 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,21 @@ +# Project-wide Gradle settings. +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true +# AndroidX package structure to make it clearer which packages are bundled with the +# Android operating system, and which are packaged with your app"s APK +# https://developer.android.com/topic/libraries/support-library/androidx-rn +android.useAndroidX=true +# Enables namespacing of each library's R class so that its R class includes only the +# resources declared in the library itself and none from the library's dependencies, +# thereby reducing the size of the R class for that library +android.nonTransitiveRClass=true \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 05ef575..e708b1c 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 1c224d0..15059dd 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sat Oct 20 16:38:39 CEST 2018 +#Mon Sep 12 17:56:54 CEST 2022 distributionBase=GRADLE_USER_HOME +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip +zipStoreBase=GRADLE_USER_HOME diff --git a/gradlew b/gradlew index 9d82f78..f56da0f 100755 --- a/gradlew +++ b/gradlew @@ -1,4 +1,20 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ############################################################################## ## @@ -6,20 +22,38 @@ ## ############################################################################## -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ]; do + ls=$(ls -ld "$PRG") + link=$(expr "$ls" : '.*-> \(.*\)$') + if expr "$link" : '/.*' >/dev/null; then + PRG="$link" + else + PRG=$(dirname "$PRG")"/$link" + fi +done +SAVED="$(pwd)" +cd "$(dirname \"$PRG\")/" >/dev/null +APP_HOME="$(pwd -P)" +cd "$SAVED" >/dev/null APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` +APP_BASE_NAME=$(basename "$0") + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" -warn ( ) { +warn() { echo "$*" } -die ( ) { +die() { echo echo "$*" echo @@ -30,47 +64,33 @@ die ( ) { cygwin=false msys=false darwin=false -case "`uname`" in - CYGWIN* ) +nonstop=false +case "$(uname)" in + CYGWIN*) cygwin=true ;; - Darwin* ) + Darwin*) darwin=true ;; - MINGW* ) + MINGW*) msys=true ;; + NONSTOP*) + nonstop=true + ;; esac -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >/dev/null -APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null - CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar # Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then +if [ -n "$JAVA_HOME" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then # IBM's JDK on AIX uses strange locations for the executables JAVACMD="$JAVA_HOME/jre/sh/java" else JAVACMD="$JAVA_HOME/bin/java" fi - if [ ! -x "$JAVACMD" ] ; then + if [ ! -x "$JAVACMD" ]; then die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME Please set the JAVA_HOME variable in your environment to match the @@ -85,14 +105,14 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ]; then + MAX_FD_LIMIT=$(ulimit -H -n) + if [ $? -eq 0 ]; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ]; then MAX_FD="$MAX_FD_LIMIT" fi ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then + if [ $? -ne 0 ]; then warn "Could not set maximum file descriptor limit: $MAX_FD" fi else @@ -105,56 +125,60 @@ if $darwin; then GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" fi -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - JAVACMD=`cygpath --unix "$JAVACMD"` +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ]; then + APP_HOME=$(cygpath --path --mixed "$APP_HOME") + CLASSPATH=$(cygpath --path --mixed "$CLASSPATH") + + JAVACMD=$(cygpath --unix "$JAVACMD") # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + ROOTDIRSRAW=$(find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null) SEP="" - for dir in $ROOTDIRSRAW ; do + for dir in $ROOTDIRSRAW; do ROOTDIRS="$ROOTDIRS$SEP$dir" SEP="|" done OURCYGPATTERN="(^($ROOTDIRS))" # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then + if [ "$GRADLE_CYGPATTERN" != "" ]; then OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" fi # Now convert the arguments - kludge to limit ourselves to /bin/sh i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + for arg in "$@"; do + CHECK=$(echo "$arg" | egrep -c "$OURCYGPATTERN" -) + CHECK2=$(echo "$arg" | egrep -c "^-") ### Determine if an option - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ]; then ### Added a condition + eval $(echo args$i)=$(cygpath --path --ignore --mixed "$arg") else - eval `echo args$i`="\"$arg\"" + eval $(echo args$i)="\"$arg\"" fi - i=$((i+1)) + i=$(expr $i + 1) done case $i in - (0) set -- ;; - (1) set -- "$args0" ;; - (2) set -- "$args0" "$args1" ;; - (3) set -- "$args0" "$args1" "$args2" ;; - (4) set -- "$args0" "$args1" "$args2" "$args3" ;; - (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + 0) set -- ;; + 1) set -- "$args0" ;; + 2) set -- "$args0" "$args1" ;; + 3) set -- "$args0" "$args1" "$args2" ;; + 4) set -- "$args0" "$args1" "$args2" "$args3" ;; + 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; esac fi -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") +# Escape application args +save() { + for i; do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/"; done + echo " " } -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index aec9973..ac1b06f 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -1,3 +1,19 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + @if "%DEBUG%" == "" @echo off @rem ########################################################################## @rem @@ -8,20 +24,23 @@ @rem Set local scope for the variables with windows NT shell if "%OS%"=="Windows_NT" setlocal -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - set DIRNAME=%~dp0 if "%DIRNAME%" == "" set DIRNAME=. set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome set JAVA_EXE=java.exe %JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init +if "%ERRORLEVEL%" == "0" goto execute echo. echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. @@ -35,7 +54,7 @@ goto fail set JAVA_HOME=%JAVA_HOME:"=% set JAVA_EXE=%JAVA_HOME%/bin/java.exe -if exist "%JAVA_EXE%" goto init +if exist "%JAVA_EXE%" goto execute echo. echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% @@ -45,34 +64,14 @@ echo location of your Java installation. goto fail -:init -@rem Get command-line arguments, handling Windowz variants - -if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ - :execute @rem Setup the command line set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + @rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* :end @rem End local scope for the variables with windows NT shell diff --git a/local.properties b/local.properties deleted file mode 100644 index 95b3adb..0000000 --- a/local.properties +++ /dev/null @@ -1,7 +0,0 @@ -## This file must *NOT* be checked into Version Control Systems, -# as it contains information specific to your local configuration. -# -# Location of the SDK. This is only used by Gradle. -# -#Tue Dec 08 15:40:13 CET 2015 -sdk.dir=/Users/jordi/Library/Android/sdk diff --git a/project.properties b/project.properties deleted file mode 100644 index 4ab1256..0000000 --- a/project.properties +++ /dev/null @@ -1,14 +0,0 @@ -# This file is automatically generated by Android Tools. -# Do not modify this file -- YOUR CHANGES WILL BE ERASED! -# -# This file must be checked in Version Control Systems. -# -# To customize properties used by the Ant build system edit -# "ant.properties", and override values to adapt the script to your -# project structure. -# -# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): -#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt - -# Project target. -target=android-19 diff --git a/settings.gradle b/settings.gradle index 98d8f96..6d263b2 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1 +1,16 @@ +pluginManagement { + repositories { + gradlePluginPortal() + google() + mavenCentral() + } +} +dependencyResolutionManagement { + repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) + repositories { + google() + mavenCentral() + } +} +rootProject.name = "LanguageToolAndroidService" include ':CorrectorSoftcatala'