Skip to content

Commit

Permalink
2.0.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
SnowVolf committed Oct 30, 2017
1 parent 1c89e52 commit fd4b55b
Show file tree
Hide file tree
Showing 20 changed files with 119 additions and 82 deletions.
1 change: 1 addition & 0 deletions app/proguard-rules.pro
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,6 @@
-keep class okio.** { *; }
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
-keep interface okhttp3.**
-dontwarn b.a.a.h.**


5 changes: 4 additions & 1 deletion app/src/main/assets/changelog.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,21 @@
[*] - Изменено

--- [2.0.0] ---
[!] Изменён метод создания патча
[!] Данные вкладок теперь создаются и хранятся в ОЗУ
[!] Необходимо переназначить настройки
[!] Изменена структура приложения (для удобного управления вкладками)
[+] Вкладки - создание 2-х и более одинаковых правил
[+] Вкладки - создание 2-х и более одинаковых правил (спасибо RadiationX)
[+] Удаление правил в правом дровере, добавление в левом
[+] Подсветка ASSIGN, ADD_FILES, GOTO
[+] Экран помощи (появляется при первом запуске, повторно можно просмотреть в О программе -> Помощь)
[+] Скрытие клавиатуры при открытии дровера
[-] Работа с локалью на Android 8+
[*] Пережата PNG графика (конвертация в WEBP)
[*] Пункты: REGEXP, Настройки, О программе перенесены в header левого дровера
[*] Удалено меню
[*] Изменен вид предпросмотра патча. Действия с патчем вынесены в заголовок диалога
[*] Информация о RadiationX в About скрине
[*] Блюр в About
[*] Улучшен интерфейс
[*] Повышена стабильность
Expand Down
4 changes: 3 additions & 1 deletion app/src/main/assets/help/help.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Повторно это руководство можно просмотреть в О программе -> Помощь

Дата создания: 26.10.2017
Последнее обновление: 29.10.2017
Последнее обновление: 30.10.2017

1. Общее
PCompiler - это приложение созданное для автоматизации создания патчей для программы Apk Editor.
Expand Down Expand Up @@ -45,5 +45,7 @@
Добавление новой вкладки происходит в левом дровере, путем нажатия на конкретное правило. Вкладки about и dummy добавляются всего 1 раз. При повторном нажатии на пункт дровера будет открыта уже существующая вкладка.
Удаление вкладки осуществляется путём нажатия на иконку удаления "крестик". Если во вкладке было сохранено правило, то оно будет удалено из патча. При удалении дровер не закрывается. Сделано это для того, чтобы можно было легче удалить сразу несколько правил.
При закрытии последней открытой вкладки приложение завершает работу.
4. Технические ограничения
Правила нужно сохранять в том порядке, в котором вы хотите их видеть. Т.е. Если вы сохраните правило №4, а потом правило №1, то правило №4 будет первым. При обновлении данных (например при ошибках/опечатках) позиция правила меняться не будет. Такова особенность Java-объекта LinkedHashmap.

Возникли вопросы? Есть что добавить? Email для связи: [email protected]
26 changes: 1 addition & 25 deletions app/src/main/java/ru/SnowVolf/pcompiler/patch/PatchArray.java
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@

package ru.SnowVolf.pcompiler.patch;

import android.util.Log;

import android.widget.Toast;

import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.Locale;

import ru.SnowVolf.pcompiler.App;
import ru.SnowVolf.pcompiler.R;
import ru.SnowVolf.pcompiler.util.Constants;

/**
* Created by Snow Volf on 24.10.2017, 19:18
Expand All @@ -33,15 +31,6 @@ public void onError(int index) {
};
}

/*public void removeItemAt(int index) {
try {
if (size() >= index) {
Log.i(Constants.TAG, String.format("Trying to remove item at index: %d", index));
remove(index);
}
} catch (PatchException ignored) {
}
}*/

public void removeItemAt(String tabTag) {
try {
Expand All @@ -50,19 +39,6 @@ public void removeItemAt(String tabTag) {
}
}

/* public void setItemAt(int index, String s) {
try {
if (size() >= index) {
Log.i(Constants.TAG, String.format("Trying to update item at index: %d", index));
set(index, s);
mBuildListener.onSuccess();
} else mBuildListener.onError(index);
} catch (Exception e) {
Toast.makeText(App.getContext(), e.getMessage(), Toast.LENGTH_LONG).show();
e.printStackTrace();
}
}*/

public void setItemAt(String tabTag, String s) {
try {
put(tabTag, s);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,4 +93,12 @@ private static String escapeFind(String find){
}
return find;
}

public static String build(){
StringBuilder str = new StringBuilder();
for (String s: PatchCollection.getCollection().values()) {
str.append(s);
}
return str.toString();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ public class AboutActivity extends BaseActivity {
@BindView(R.id.about_author_artem_github_item) Button volfGitContact;
@BindView(R.id.relativeLayout) RelativeLayout appStatusBackground;
@BindView(R.id.scroll1) NestedScrollView contentLayout;
@BindView(R.id.about_radiationx_github_item) Button rxGitContact;
@BindView(R.id.about_radiationx_pda_item) Button rxPdaContact;

public final static String JSON_LINK = "https://raw.githubusercontent.com/SnowVolf/GirlUpdater/master/pcompiler_check.json";

Expand Down Expand Up @@ -98,8 +100,9 @@ protected void onCreate(Bundle savedInstanceState) {
});
volfPdaContact.setOnClickListener(__ -> startActivity(Intent.createChooser(new Intent(Intent.ACTION_VIEW, Uri.parse("http://4pda.ru/index.php?showuser=4324432")), null)));
htcPdaContact.setOnClickListener(__ -> startActivity(Intent.createChooser(new Intent(Intent.ACTION_VIEW, Uri.parse("http://4pda.ru/index.php?showuser=4857164")), null)));
rxPdaContact.setOnClickListener(__ -> startActivity(Intent.createChooser(new Intent(Intent.ACTION_VIEW, Uri.parse("http://4pda.ru/index.php?showuser=2556269")), null)));
volfGitContact.setOnClickListener(__ -> startActivity(Intent.createChooser(new Intent(Intent.ACTION_VIEW, Uri.parse("https://github.com/SnowVolf/")), null)));

rxGitContact.setOnClickListener(__ -> startActivity(Intent.createChooser(new Intent(Intent.ACTION_VIEW, Uri.parse("https://github.com/RadiationX/")), null)));
initAdditionalSheet();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@

import ru.SnowVolf.pcompiler.App;
import ru.SnowVolf.pcompiler.R;
import ru.SnowVolf.pcompiler.patch.PatchBuilder;
import ru.SnowVolf.pcompiler.patch.PatchCollection;
import ru.SnowVolf.pcompiler.patch.RegexPattern;
import ru.SnowVolf.pcompiler.settings.Preferences;
Expand Down Expand Up @@ -178,11 +179,7 @@ public void showSaveDialog() {
saveDialog.setOnItemClickListener((adapterView, view, i, l) -> {
switch (i) {
case 0: {
StringBuilder str = new StringBuilder();
for (String s: PatchCollection.getCollection().values()) {
str.append(s);
}
StringWrapper.copyToClipboard(str.toString());
StringWrapper.copyToClipboard(PatchBuilder.build());
Toast.makeText(TabbedActivity.this, R.string.message_copied_to_clipboard, Toast.LENGTH_SHORT).show();
break;
}
Expand All @@ -197,12 +194,7 @@ public void showSaveDialog() {
case 3:{
final Intent send = new Intent(Intent.ACTION_SEND);
send.setType("text/plain");
StringBuilder str = new StringBuilder();
for (String s: PatchCollection.getCollection().values()) {
str.append(s);
}
send.putExtra(Intent.EXTRA_TEXT, str.toString());

send.putExtra(Intent.EXTRA_TEXT, PatchBuilder.build());
startActivity(send);
break;
}
Expand All @@ -216,11 +208,7 @@ private void checkPermissionsText(){
if (Build.VERSION.SDK_INT >= 23 && !RuntimeUtil.isGranted(Manifest.permission.WRITE_EXTERNAL_STORAGE)){
RuntimeUtil.storage(this, RuntimeUtil.REQUEST_EXTERNAL_STORAGE_TEXT);
} else {
StringBuilder str = new StringBuilder();
for (String s: PatchCollection.getCollection().values()) {
str.append(s);
}
writeToFile(str.toString());
writeToFile(PatchBuilder.build());
}
}

Expand Down Expand Up @@ -326,11 +314,7 @@ private void showFullViewDialog(){
content.setTypeface(typeface);
}
content.setTextSize(Preferences.getFontSize());
StringBuilder str = new StringBuilder();
for (String s: PatchCollection.getCollection().values()) {
str.append(s);
}
content.setText(str);
content.setText(PatchBuilder.build());
spannable = new SpannableString(content.getText());
Matcher matcherAttr = RegexPattern.ATTRIBUTE.matcher(content.getText());
Matcher matcherSubAttr = RegexPattern.SUB_ATTRIBUTE.matcher(content.getText());
Expand Down Expand Up @@ -388,11 +372,7 @@ private void zipIo(){
//noinspection ResultOfMethodCallIgnored
dir.mkdirs();
}
StringBuilder str = new StringBuilder();
for (String s: PatchCollection.getCollection().values()) {
str.append(s);
}
File temp = writeToTempFile(str.toString());
File temp = writeToTempFile(PatchBuilder.build());

try {
ZipFile zipFile = new ZipFile(Preferences.getPatchOutput() + fileName + ".zip");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -187,34 +187,6 @@ private void selectMenuItem(MenuItems.MenuItem item) {
return;
}
try {
// if (item.getTabClass() == null) {
// Toast.makeText(activity, "SUKA SOSI HUI = " + item.getAction(), Toast.LENGTH_SHORT).show();
// } else {
// TabFragment tabFragment = TabManager.getInstance().get(item.getAttachedTabTag());
// if (tabFragment == null) {
// for (TabFragment fragment : TabManager.getInstance().getFragments()) {
// if (fragment.getClass() == item.getTabClass() && fragment.getConfiguration().isMenu()) {
// tabFragment = fragment;
// break;
// }
// }
// }
//
// if (tabFragment == null) {
// tabFragment = item.getTabClass().newInstance();
// tabFragment.getConfiguration().setMenu(true);
// TabManager.getInstance().add(tabFragment);
// item.setAttachedTabTag(tabFragment.getTag());
// } else {
// TabManager.getInstance().select(tabFragment);
// }
//
// if (lastActive != null)
// lastActive.setActive(false);
// item.setActive(true);
// lastActive = item;
// menuAdapter.notifyDataSetChanged();
// }
// About & Dummy section cannot be used more than once
if (item.getTabClass() == AboutPatchFragment.class || item.getTabClass() == DummyFragment.class){
TabFragment tabFragment = TabManager.getInstance().get(item.getAttachedTabTag());
Expand Down
Binary file removed app/src/main/res/drawable/censorship.jpg
Binary file not shown.
Binary file added app/src/main/res/drawable/censorship.webp
Binary file not shown.
Binary file removed app/src/main/res/drawable/circle_girl.png
Binary file not shown.
Binary file added app/src/main/res/drawable/circle_girl.webp
Binary file not shown.
Binary file removed app/src/main/res/drawable/htc_wallp.jpg
Binary file not shown.
Binary file added app/src/main/res/drawable/htc_wallp.webp
Binary file not shown.
Binary file added app/src/main/res/drawable/radiationx.webp
Binary file not shown.
Binary file removed app/src/main/res/drawable/small_girl.png
Binary file not shown.
Binary file added app/src/main/res/drawable/small_girl.webp
Binary file not shown.
87 changes: 87 additions & 0 deletions app/src/main/res/layout/content_about.xml
Original file line number Diff line number Diff line change
Expand Up @@ -282,6 +282,93 @@
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>

<android.support.v7.widget.CardView
android:id="@+id/about_radiationx_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
android:foreground="@drawable/ripple"
android:clickable="true"
style="?attr/cardStyle">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">

<ImageView
android:id="@+id/radiationx_img"
android:layout_width="match_parent"
android:layout_height="180dp"
android:scaleType="centerCrop"
android:clickable="true"
android:src="@drawable/htc_wallp"/>
<ru.SnowVolf.pcompiler.ui.widget.CircleImageView
android:src="@drawable/radiationx"
android:id="@+id/radiationx_profile_img"
android:layout_width="108dp"
android:layout_height="108dp"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="125dp"
app:civ_border_color="?colorAccent"
app:civ_border_width="2dp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_toRightOf="@id/radiationx_profile_img"
android:layout_marginTop="185dp">
<TextView
android:id="@+id/evgeniy_nizamiev"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiationx_name"
android:textSize="16sp"
android:textStyle="bold" />

<TextView
android:id="@+id/evgeniy_nizamiev_role"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/radiationx_role"
android:textSize="14sp" />
</LinearLayout>
</RelativeLayout>

<TextView
android:id="@+id/radiationx_description"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="16sp"
android:text="@string/radiationx_role_description"
android:textSize="14sp" />
<!--RADIATIONX LINKS -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="10sp">
<Button
android:id="@+id/about_radiationx_pda_item"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="4PDA"
style="@style/Base.Widget.AppCompat.Button.ButtonBar.AlertDialog"/>
<Button
android:id="@+id/about_radiationx_github_item"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="GitHub"
style="@style/Base.Widget.AppCompat.Button.ButtonBar.AlertDialog"/>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
</RelativeLayout>

Expand Down
2 changes: 2 additions & 0 deletions app/src/main/res/values-ru/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -204,4 +204,6 @@
<string name="title_activity_help">Помощь</string>
<string name="index_of_bounds_error" formatted="false"><![CDATA[Нельзя добавить правило с индексом %d, размер равен %d.
Подробнее: О программе -> Помощь]]></string>
<string name="radiationx_role">Android разработчик</string>
<string name="radiationx_role_description">Разработчик под Android. Благодаря ему в приложении появились вкладки, а также были исправлены баги дублирования правил патча; кликабельности пунктов настроек.</string>
</resources>
3 changes: 3 additions & 0 deletions app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -220,5 +220,8 @@
<string name="i_read">I read</string>
<string name="title_activity_help">Please read!</string>
<string name="index_of_bounds_error" formatted="false"><![CDATA[Cannot add rule with index %d, size is %d. More info: About -> Help]]></string>
<string name="radiationx_name" translatable="false">Евгений Низамиев</string>
<string name="radiationx_role">Android developer</string>
<string name="radiationx_role_description">Developer for Android. Thanks to him, the app now has tabs and bugs were duplicating rules, and settings items were fixed;</string>

</resources>

0 comments on commit fd4b55b

Please sign in to comment.