From 78f6c7e6e2458c791e09469058626ac25ab7030f Mon Sep 17 00:00:00 2001 From: Gregor Santner Date: Sun, 7 Aug 2016 02:28:37 +0200 Subject: [PATCH 1/8] Optionally allow exit button in nav drawer --- .../activity/MainActivity.java | 19 +++++++++++++++++-- .../activity/SettingsActivity.java | 17 +++++++++++++++++ .../diaspora_android/data/AppSettings.java | 4 ++++ .../res/drawable/ic_cancel_black_48px.xml | 4 ++++ app/src/main/res/menu/main__navdrawer.xml | 6 ++++++ .../main/res/values/strings-preferences.xml | 11 +++++++++-- app/src/main/res/values/strings.xml | 1 - app/src/main/res/xml/preferences.xml | 6 ++++++ 8 files changed, 63 insertions(+), 5 deletions(-) create mode 100644 app/src/main/res/drawable/ic_cancel_black_48px.xml diff --git a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java index ea87ed23..4d910e3c 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java @@ -114,6 +114,7 @@ public class MainActivity extends AppCompatActivity public static final String ACTION_CHANGE_ACCOUNT = "com.github.dfa.diaspora_android.MainActivity.change_account"; public static final String ACTION_CLEAR_CACHE = "com.github.dfa.diaspora_android.MainActivity.clear_cache"; public static final String ACTION_UPDATE_TITLE_FROM_URL = "com.github.dfa.diaspora_android.MainActivity.set_title"; + public static final String ACTION_RELOAD_ACTIVITY = "com.github.dfa.diaspora_android.MainActivity.reload_activity"; public static final String URL_MESSAGE = "URL_MESSAGE"; public static final String EXTRA_URL = "com.github.dfa.diaspora_android.extra_url"; @@ -408,6 +409,10 @@ public class MainActivity extends AppCompatActivity app.getAvatarImageLoader().startImageDownload(navheaderImage, appSettings.getAvatarUrl()); } } + + Menu navMenu = navView.getMenu(); + navMenu.findItem(R.id.nav_exit).setVisible(appSettings.isShowExitButtonInNavAlso()); + } @OnClick(R.id.toolbar) @@ -454,6 +459,9 @@ public class MainActivity extends AppCompatActivity Helpers.animateToActivity(MainActivity.this, PodSelectionActivity.class, true); } else if (ACTION_CLEAR_CACHE.equals(action)) { webView.clearCache(true); + } else if (ACTION_RELOAD_ACTIVITY.equals(action)) { + recreate(); + return; } else if (Intent.ACTION_SEND.equals(action) && type != null) { switch (type) { case "text/plain": @@ -1062,8 +1070,8 @@ public class MainActivity extends AppCompatActivity } else { snackbarNoInternet.show(); } + break; } - break; case R.id.nav_public: { if (Helpers.isOnline(MainActivity.this)) { @@ -1071,8 +1079,15 @@ public class MainActivity extends AppCompatActivity } else { snackbarNoInternet.show(); } + break; + } + + + case R.id.nav_exit: { + moveTaskToBack(true); + finish(); + break; } - break; case R.id.nav_settings_app: { startActivity(new Intent(this, SettingsActivity.class)); diff --git a/app/src/main/java/com/github/dfa/diaspora_android/activity/SettingsActivity.java b/app/src/main/java/com/github/dfa/diaspora_android/activity/SettingsActivity.java index c5d40ac0..87f429b0 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/activity/SettingsActivity.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/activity/SettingsActivity.java @@ -38,6 +38,7 @@ import com.github.dfa.diaspora_android.R; public class SettingsActivity extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener { private SharedPreferences sharedPreferences; + private boolean activityRestartRequired = false; @Override public void onCreate(Bundle savedInstanceState) { @@ -124,6 +125,12 @@ public class SettingsActivity extends PreferenceActivity implements SharedPrefer intent.setAction(MainActivity.ACTION_CLEAR_CACHE); break; } + case R.string.pref_title__show_exit_button_in_nav_also: + case R.string.pref_title__intellihide_toolbars: { + activityRestartRequired = true; + return true; + } + default: { intent = null; break; @@ -136,4 +143,14 @@ public class SettingsActivity extends PreferenceActivity implements SharedPrefer } return super.onPreferenceTreeClick(screen, preference); } + + @Override + protected void onStop() { + super.onStop(); + if (activityRestartRequired){ + Intent intent = new Intent(this, MainActivity.class); + intent.setAction(MainActivity.ACTION_RELOAD_ACTIVITY); + startActivity(intent); + } + } } diff --git a/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java b/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java index 938e8bfd..82daf248 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java @@ -234,4 +234,8 @@ public class AppSettings { public boolean isIntellihideToolbars() { return getBoolean(prefApp, R.string.pref_key__intellihide_toolbars, true); } + + public boolean isShowExitButtonInNavAlso(){ + return getBoolean(prefApp, R.string.pref_key__show_exit_button_in_nav_also, false); + } } diff --git a/app/src/main/res/drawable/ic_cancel_black_48px.xml b/app/src/main/res/drawable/ic_cancel_black_48px.xml new file mode 100644 index 00000000..789bf6f4 --- /dev/null +++ b/app/src/main/res/drawable/ic_cancel_black_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/menu/main__navdrawer.xml b/app/src/main/res/menu/main__navdrawer.xml index a9fff831..35569e1e 100644 --- a/app/src/main/res/menu/main__navdrawer.xml +++ b/app/src/main/res/menu/main__navdrawer.xml @@ -45,6 +45,12 @@ android:id="@+id/nav_public" android:icon="@drawable/jb_aspects" android:title="@string/nav_public_activities" /> + + diff --git a/app/src/main/res/values/strings-preferences.xml b/app/src/main/res/values/strings-preferences.xml index d3afc808..864b90bd 100644 --- a/app/src/main/res/values/strings-preferences.xml +++ b/app/src/main/res/values/strings-preferences.xml @@ -14,6 +14,8 @@ pref_key_category_network pref_key_load_images pref_key_clear_cache + pref_key__show_exit_button_in_nav_also + pref_key_append_shared_via_app pref_key_proxy_enabled pref_key_proxy_host @@ -21,6 +23,8 @@ wasProxyEnabled + + podUserProfile_avatar podUserProfile_name podUserProfile_guid @@ -55,11 +59,13 @@ Enable Proxy Proxy Diaspora\'s traffic to circumvent firewalls.\nMay require restart - Host - Port + Exit button in navigation slider + Adds an additional »Exit App« button to the navigation slider + + Personal settings Open your diaspora account settings @@ -83,4 +89,5 @@ Append shared-by-notice Append a reference to this app ("shared by…") to shared texts + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 9bb88634..ab79e952 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -169,7 +169,6 @@ <i>The splashscreen images can be found on flickr: https://www.flickr.com/photos/129581906@N06/sets/72157651933980136/with/16594947123. They were published by \"Lydia\" and are licensed under cc by-nc-sa.</i> - diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml index f1c8778a..336ac6df 100644 --- a/app/src/main/res/xml/preferences.xml +++ b/app/src/main/res/xml/preferences.xml @@ -24,6 +24,12 @@ android:summary="@string/pref_desc__append_shared_via_app" android:title="@string/pref_title__append_shared_via_app"/> + + From 4b9bbdb5d78c8cc44b45c7e54813a787e616573d Mon Sep 17 00:00:00 2001 From: Gregor Santner Date: Sun, 7 Aug 2016 03:30:44 +0200 Subject: [PATCH 2/8] Update icons #40 --- .../diaspora_android/activity/MainActivity.java | 16 ++++++++-------- .../ic_bell_outline_white_24dp.png | Bin 490 -> 0 bytes .../drawable-hdpi/ic_bell_ring_white_24dp.png | Bin 600 -> 0 bytes .../ic_message_text_outline_white_24dp.png | Bin 354 -> 0 bytes .../ic_message_text_white_24dp.png | Bin 346 -> 0 bytes .../ic_bell_outline_white_24dp.png | Bin 311 -> 0 bytes .../drawable-mdpi/ic_bell_ring_white_24dp.png | Bin 400 -> 0 bytes .../ic_message_text_outline_white_24dp.png | Bin 250 -> 0 bytes .../ic_message_text_white_24dp.png | Bin 244 -> 0 bytes .../ic_bell_outline_white_24dp.png | Bin 540 -> 0 bytes .../drawable-xhdpi/ic_bell_ring_white_24dp.png | Bin 706 -> 0 bytes .../ic_message_text_outline_white_24dp.png | Bin 384 -> 0 bytes .../ic_message_text_white_24dp.png | Bin 360 -> 0 bytes .../ic_bell_outline_white_24dp.png | Bin 868 -> 0 bytes .../drawable-xxhdpi/ic_bell_ring_white_24dp.png | Bin 1060 -> 0 bytes .../ic_message_text_outline_white_24dp.png | Bin 518 -> 0 bytes .../ic_message_text_white_24dp.png | Bin 495 -> 0 bytes .../ic_bell_outline_white_24dp.png | Bin 1062 -> 0 bytes .../ic_bell_ring_white_24dp.png | Bin 1444 -> 0 bytes .../ic_message_text_outline_white_24dp.png | Bin 614 -> 0 bytes .../ic_message_text_white_24dp.png | Bin 590 -> 0 bytes .../main/res/drawable/ic_email_colored_48px.xml | 4 ++++ .../res/drawable/ic_favorite_black_48px.xml | 4 ++++ .../ic_format_align_left_black_48px.xml | 4 ++++ .../main/res/drawable/ic_group_black_48px.xml | 4 ++++ .../main/res/drawable/ic_history_black_48px.xml | 4 ++++ .../main/res/drawable/ic_info_black_48px.xml | 4 ++++ .../res/drawable/ic_local_offer_black_48px.xml | 4 ++++ .../main/res/drawable/ic_mail_white_48px.xml | 4 ++++ .../drawable/ic_notifications_colored_48px.xml | 4 ++++ .../drawable/ic_notifications_white_48px.xml | 4 ++++ .../main/res/drawable/ic_public_black_48px.xml | 4 ++++ .../res/drawable/ic_settings_black_48px.xml | 4 ++++ app/src/main/res/drawable/jb_activities.png | Bin 604 -> 0 bytes app/src/main/res/drawable/jb_aspects.png | Bin 811 -> 0 bytes app/src/main/res/drawable/jb_commented.png | Bin 349 -> 0 bytes app/src/main/res/drawable/jb_heart.png | Bin 675 -> 0 bytes app/src/main/res/drawable/jb_license.png | Bin 916 -> 0 bytes app/src/main/res/drawable/jb_settings.png | Bin 788 -> 0 bytes app/src/main/res/drawable/jb_tag2.png | Bin 798 -> 0 bytes app/src/main/res/menu/main__menu_top.xml | 4 ++-- app/src/main/res/menu/main__navdrawer.xml | 16 ++++++++-------- app/src/main/res/values-de/strings.xml | 1 - app/src/main/res/values-fr/strings.xml | 1 - 44 files changed, 66 insertions(+), 20 deletions(-) delete mode 100644 app/src/main/res/drawable-hdpi/ic_bell_outline_white_24dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_bell_ring_white_24dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_message_text_outline_white_24dp.png delete mode 100644 app/src/main/res/drawable-hdpi/ic_message_text_white_24dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_bell_outline_white_24dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_bell_ring_white_24dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_message_text_outline_white_24dp.png delete mode 100644 app/src/main/res/drawable-mdpi/ic_message_text_white_24dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_bell_outline_white_24dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_bell_ring_white_24dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_message_text_outline_white_24dp.png delete mode 100644 app/src/main/res/drawable-xhdpi/ic_message_text_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_bell_outline_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_bell_ring_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_message_text_outline_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxhdpi/ic_message_text_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_bell_outline_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_bell_ring_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_message_text_outline_white_24dp.png delete mode 100644 app/src/main/res/drawable-xxxhdpi/ic_message_text_white_24dp.png create mode 100644 app/src/main/res/drawable/ic_email_colored_48px.xml create mode 100644 app/src/main/res/drawable/ic_favorite_black_48px.xml create mode 100644 app/src/main/res/drawable/ic_format_align_left_black_48px.xml create mode 100644 app/src/main/res/drawable/ic_group_black_48px.xml create mode 100644 app/src/main/res/drawable/ic_history_black_48px.xml create mode 100644 app/src/main/res/drawable/ic_info_black_48px.xml create mode 100644 app/src/main/res/drawable/ic_local_offer_black_48px.xml create mode 100644 app/src/main/res/drawable/ic_mail_white_48px.xml create mode 100644 app/src/main/res/drawable/ic_notifications_colored_48px.xml create mode 100644 app/src/main/res/drawable/ic_notifications_white_48px.xml create mode 100644 app/src/main/res/drawable/ic_public_black_48px.xml create mode 100644 app/src/main/res/drawable/ic_settings_black_48px.xml delete mode 100644 app/src/main/res/drawable/jb_activities.png delete mode 100644 app/src/main/res/drawable/jb_aspects.png delete mode 100644 app/src/main/res/drawable/jb_commented.png delete mode 100644 app/src/main/res/drawable/jb_heart.png delete mode 100644 app/src/main/res/drawable/jb_license.png delete mode 100644 app/src/main/res/drawable/jb_settings.png delete mode 100644 app/src/main/res/drawable/jb_tag2.png diff --git a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java index 4d910e3c..34ffb569 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java @@ -604,16 +604,16 @@ public class MainActivity extends AppCompatActivity MenuItem itemNotification = menu.findItem(R.id.action_notifications); if (itemNotification != null) { if (notificationCount > 0) { - itemNotification.setIcon(R.drawable.ic_bell_ring_white_24dp); + itemNotification.setIcon(R.drawable.ic_notifications_colored_48px); } else { - itemNotification.setIcon(R.drawable.ic_bell_outline_white_24dp); + itemNotification.setIcon(R.drawable.ic_notifications_white_48px); } MenuItem itemConversation = menu.findItem(R.id.action_conversations); if (conversationCount > 0) { - itemConversation.setIcon(R.drawable.ic_message_text_white_24dp); + itemConversation.setIcon(R.drawable.ic_email_colored_48px); } else { - itemConversation.setIcon(R.drawable.ic_message_text_outline_white_24dp); + itemConversation.setIcon(R.drawable.ic_mail_white_48px); } } return super.onPrepareOptionsMenu(menu); @@ -944,11 +944,11 @@ public class MainActivity extends AppCompatActivity if (item != null) { if (notificationCount > 0) { - item.setIcon(R.drawable.ic_bell_ring_white_24dp); + item.setIcon(R.drawable.ic_notifications_colored_48px); if (!snackbarNewNotification.isShown() && !webView.getUrl().equals("https://" + podDomain + "/notifications")) snackbarNewNotification.show(); } else { - item.setIcon(R.drawable.ic_bell_outline_white_24dp); + item.setIcon(R.drawable.ic_notifications_white_48px); } } @@ -978,11 +978,11 @@ public class MainActivity extends AppCompatActivity if (item != null) { if (conversationCount > 0) { - item.setIcon(R.drawable.ic_message_text_white_24dp); + item.setIcon(R.drawable.ic_email_colored_48px); if (!snackbarNewNotification.isShown() && !webView.getUrl().equals("https://" + podDomain + "/notifications")) snackbarNewNotification.show(); } else { - item.setIcon(R.drawable.ic_message_text_outline_white_24dp); + item.setIcon(R.drawable.ic_mail_white_48px); } } diff --git a/app/src/main/res/drawable-hdpi/ic_bell_outline_white_24dp.png b/app/src/main/res/drawable-hdpi/ic_bell_outline_white_24dp.png deleted file mode 100644 index b53dde90e59829f56fb93945c2149e68567297f9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 490 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbB*pj^6U4S$Y{B+)352QE?JR*yM zvQ&rUPlPeufHm>3#+V#!^og$B>A_Z*S=4hy;qXJuFUSW^2;qY)hFu z$;#{21cxT4z;3mbZ}?Z{vvMxb;Iff&b`sDqC}oMf$gpf>CaXeJvx16^sA)UvF6)_* zZU*zMjCbC*d~aL+?3};L^8cPQ4yy5eU|E{Gz<2+vvb%HCvwrFG%beeKb!K+OtMc4L z#^?V;PpI6JShqex^0jGe^bL7Nwb!bCz0A+p_APa?|G;Bz*m!wIi)xKTL)F!czBNL_!q+!ugMPIgC6Pcuvqjy@YCDJKEej-A1zh)1s}Y9`1q5(w^=S+ol?L* z^_#Aa`v2E~Hix-lJU_Z=K21Mrx!3ojkFbNV=DpP%!h#!TKl<#;@bvc9tnx)uKH19l zZIQoPJI!<*-wNhe4N=Ta_DW*2b=rO(KK7-r@n%OyomH*uYSWo=3SOH0tIsU5|M1V4 zkN0f|Ta>gh&x%bc@0A}Fo?ZG6I z{TuQqUFA6dM$!O12yHSO;kgF9pk3d9N#IP#f8LyQpiQ9H1?Cd)%XTur0I*21 zc7T?iDYJH4dFEY!KB@(ufF4yF1HL=JXe|IW)#J9R9mNhgFlvg)rO^;}l9yPBh73>QS? zoXPEp$dbwTh{(Of;Y-$85t&fW?^Qh71|%X^RBpxdJWSjak-i*&L`23_{8`0AQ9yN- zTT}6HPB6jC1zJ~e-MIrWox}VD`t7o3C86%QG;vhT#gqipb(KIRPzh8R5dL@cRGymw zGg%ila`@!1DIHXYVbVhZ4?7G4fNlS3L~cbyp5{3_CsV*H%WYgN3g}h@%ok$*@4Ept m0jvT)@qc&v3xg?Dl>Px_b)QL{YKqPP0000|k1|%Oc%$NbB*pj^6U4S$Y{B+)352QE?JR*yM zvQ&rUPlPeufHm>3$&Rt*47)NW|f{Q&00AG7xY{7vM5=a4k8)*%|F3 z=^^64eJ4Z3lRu`-yG2L)+_TpzlkT6Dubf}D*KEQKqe(`d<({q2maj-o&2_3|5uAUg zbb)#ZlZBg}kLxE9p-c6RDf5GW3w3Snp2Is?C1vCLO`exhyAo91KaGVkx4qffXoVxmt kIo3Ka6N~EiNz(qqP`>L-YnD)v9?;_qp00i_>zopr0K}MoGXMYp diff --git a/app/src/main/res/drawable-hdpi/ic_message_text_white_24dp.png b/app/src/main/res/drawable-hdpi/ic_message_text_white_24dp.png deleted file mode 100644 index a086bcbb4f87a51dde5b16b89e7995832e2b5d3a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 346 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbB*pj^6U4S$Y{B+)352QE?JR*yM zvQ&rUPlPeufHm>3$&Rsi%u$NW|f{QyuvZDTuhRCs(oCdX~$1m+#89 zY3md(eC~QnE;;7L40$JR4&4bK%9dRCKPizZKvQxO?@8;E^Il)}-#kloVIH&KTt6!f z-wcL=8x}JHHB09RKRRX<&$+ZtuKM&n^M>#zKXn@>U-paMXQ)tlvHisR-8Yz>H@aS% zWaB<>r$l(!^j$kn)I>kKry%YWot8C$`;+`p*JrmkJ=l?TI%mz#X|3jZ&!V4Qwy0dU z(}6TtKSPDj(q%x-Ax{^_5Rc<;r=I3)b`Wu$%X7p^C6wbjvMr)IU;vVnCv=lLEDPYo|`<*xlQ=}F7X}*+rje;AqPZP+*5r~dEvL7UqhQE z?}Qy<*$)m`nJ&m>-8$t?1Cs@#d!^VXxd%DH^ZZUd7N1$6Y zn4v80xz1RW$7qFlQB+a$N(Kh`o6Qq%HtjzU!!X6nb@#IdA@g}ES&BElX0BT}C1{=O tKgLZ*wT$jJ31mE-ev|3pcK*MX@0=MDqwg3Qwg7#@;OXk;vd$@?2>>wJaF+l8 diff --git a/app/src/main/res/drawable-mdpi/ic_bell_ring_white_24dp.png b/app/src/main/res/drawable-mdpi/ic_bell_ring_white_24dp.png deleted file mode 100644 index 56001f7b907617fdbe861fd12387406b4f7023fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 400 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkE(}6TtKSPDj(q#+`jMAPijv*e$-%i??#S|#uDl7hoKcd66YeKz% zqqVkn{lP6inY3rmI26X>D=#2&Cx6ohjwM{2Q7=3v?w+vcjoy1#Lxp>3GiF+UH~Jj6 zu%L_~%0Yjr9mBl_N3ZqlTWXHnKG3FLGUr~{*R{d#SL|cFRrx6NLFg03gjMDZlJ#@Eb^BW6wXfabje8OkxR38n!rGnLPglF#Hj=CPo@*`t=B$oa zc1mYU$Ma9ltxbi79Oewa>IFZ|V*b_m|Nc>Z;bI<(FDhwi?O8JN2j&)cz1zs^bwK6^ j!@S1T|Kom@{9xJnKp;ol`iTlK%osdf{an^LB{Ts5k0_fZ diff --git a/app/src/main/res/drawable-mdpi/ic_message_text_outline_white_24dp.png b/app/src/main/res/drawable-mdpi/ic_message_text_outline_white_24dp.png deleted file mode 100644 index 576b5274711d6bad0d7a5a268df7c4c545942754..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 250 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkE(}6TtKSPDj(q%wStEY=&h{y4_Qv&%M9C%!!3wiXOFs*yM=8d7s zd4A4KN7m))7|#D&ae1bi=+B-8wii3s%VmhITgSsDxKilt>yWMY)EN{Ug{A!xWB2ZK ztQ0e4S+eTYZ2RdCG8P9st!>uU{4br7!La3k#BZmdKI;Vst0D&b_00000 diff --git a/app/src/main/res/drawable-mdpi/ic_message_text_white_24dp.png b/app/src/main/res/drawable-mdpi/ic_message_text_white_24dp.png deleted file mode 100644 index aee3a1ce4e31bdfa8e30935e52af60d13f23e3fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 244 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjY)RhkE(}6TtKSPDj(q%wSy{C&~h{y4_A#XVw6h!uj_XcwB^vE_@z3ceb z)-m@rSW{j62;6)`DsgTR;UUTFtDlak8?Q|(J-sGql3Yrz9cfRIBC=6 zlDW=ijcKvxRV;2l@H$lAyo+V&`vod5_aBt2@n&RC@bX)1UmG?(*GrCLi()+Mt%>`k ZxEHxjH|E|NasucS22WQ%mvv4FO#pfgP>}!t diff --git a/app/src/main/res/drawable-xhdpi/ic_bell_outline_white_24dp.png b/app/src/main/res/drawable-xhdpi/ic_bell_outline_white_24dp.png deleted file mode 100644 index 657e69d81a26c3708a740947aa8a81adf630b684..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 540 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCwj^(N7a$D;Kb?2i11Zh|kH}&m z?E%JaC$sH9f@KAc=|CE+pW)oQo^S>R#^s(ajv*QM-cH}^$K)u|n(m|Uk-d^pLsZHu z_fFTX?H@E(XmIxak~zZ8P`^lVU$aP*mwO}U(i*emMUOYUd2{Za#<}S}8{gb3K7Vs= zYqvn7!vReP$rsG)v%WTN%8xf=topO$`R(bx4J#E7n5?feYG;s;_I$Z#x`0!TrAZw} zNz%FUhGrY56w^AMJCo)}KRB^HpK(eHaj@&)*X)ab1$R+I9AQ#&_Wo zQcUR%!Z$)!ue6h1w_+#rwr-w+OoNXsE}U7)rEAZ*20l|hJg=T%m6%j$=;x{B50-Q= zT#tI(*;}c5#N~cn&1M=H;s;GefW6GWDNehb6CpYn_id4X+nzBBDwR{x0atM3lZji+iHQ@9`Ata&70q}H%GcT#KV zvS&4zPkAD< zTEI8a98=#L6CIbmN7mZk8yX%l#+>mwOx335I|>qkoEqe07J63AZra+2Ws$>toLexHJ$)Jj4=Z>2l#2N-Cd=i zN&tMdo55P^?a7#bAE7Nt4A3+&K-0tkO%nq&&HoVqk57uB2tJGKXTM$$CPYK#!-Qzq zymts&5TGZo&!q-SUaz;vus-;?VeaIk4#k;r!C4sL8~^|S diff --git a/app/src/main/res/drawable-xhdpi/ic_message_text_outline_white_24dp.png b/app/src/main/res/drawable-xhdpi/ic_message_text_outline_white_24dp.png deleted file mode 100644 index d66b733af31541605c3837e09f3487eee7d1180d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 384 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCwj^(N7a$D;Kb?2i11Zh|kH}&m z?E%JaC$sH9f@KAc=|CE+pW)oQo^S>RMs80R$B>MBZ)X_h9X8-`mG3>rJL_)swz4xH ztxDfGPU7Ao{=(Bpd_yrq*~tf+ic*-(G8WY+D{{Y|Ex^h#N#$qrs%@*Pg09B>eVMP9 zdoq;k6Z-@1ickM0w&g#FbkRGU6ddtmn`32z?T5VXrFC_PMNzK9Lr(?s6Pum#^pH6-v|B3n0+JGRjC7Hj0 PVZ`9+>gTe~DWM4f#8I1# diff --git a/app/src/main/res/drawable-xhdpi/ic_message_text_white_24dp.png b/app/src/main/res/drawable-xhdpi/ic_message_text_white_24dp.png deleted file mode 100644 index 5155a77a63606b5f47e1204758062ef0633b185c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 360 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCwj^(N7a$D;Kb?2i11Zh|kH}&m z?E%JaC$sH9f@KAc=|CE+pW)oQo^T-Nv!{z=NXEUlGdA)bG7xb6?|Mby#pTNfJ3^-L zFbQv9m>i&-$YwE1fj-WOVg@mTbIZd-M2RaMB<1vO5OgO=uJQvb0|V20PZ!6Kid%2z?9UcXlsLYBz3yMr8%-Cw%1R0~ zyhLTM9Muev`CTq@>!@Gu!GreB0_}Z4>@O1>Up#pb!FBDR*YqGAzo}|JExs@XeY!XM z^xfI!8_%b6?!04r{`+5*@5<%VJ=zi_+7e3`4ft{x?l;)qe9UGr&nmj8fiq$Hw>M0} zD~*?lZSk{v4Wdf~1WG1YEmqmt()4OlTTxo3#q+k{r`d(NiSHLqTK~Oe9ygO)V=LeD zSO&N1^{R{qf*cp28Ep0@S0ZHq{H$1Km~^>HKX9dFxZtB&w6uWxj7Es8SPw5xVw z@2jwLxetnuCh2|V+%dCi&D|3-S?gS;U4CS3AYE)TRgRtU@}x4=yPRi!MPG9FjGpvO zMb^`5Vu|x5UC(mWy%Rzvm)Hhm$6qpjey7kUF!Y2Z<36@~ACnVW`O5Fc$Ox@TIsNn_ ztAyuU1(O-!jgEVmm+e|(J5_i7aknh?O6CfdIn_<(jnf@gUX?6}oV#rKdCLz9Te;(Z z%$-wSw)IimYRkQ4LAx`=e-tKcT~+1&fNAyZ!&m(D*zbK|v1L?K{yOK(tL@3gTPN2y z`!S@?TX1?}wSM)lc^CDU=QPezf1+t1w)4BhKmC1MSN)n|d-vlV zDX%-F&!_Jhb)^1yO}E;H8CKa|p56|3m6!ABEIl_vCV{VlS*GaYb&>X)pLbrl$#d9% dC;7uqZsX?AoGR@lO2B-;;OXk;vd$@?2>=%7c^?1( diff --git a/app/src/main/res/drawable-xxhdpi/ic_bell_ring_white_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_bell_ring_white_24dp.png deleted file mode 100644 index cdb2c24fef3dd5980fb13a8b616ab369757d5be2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1060 zcmV+<1l#+GP)JRV%iAB<)g#>K^ z7vZKBws8|BxQHM@ilQ57_=*7&M9CB_!&}8n)#sL$&ll88M0P^wtULj3d|Y?>an5mJ#4!h%x&N8MDBadnk}e;4-MQcAhI|B|9iDK(I7ht_&dDK#qe>ri1KwOpSUOt%YtjypbbGHDg+ z>=4?|MG@2@ge)L@Cjy3D8_8f;sB<&&WnhowB=ZzIA+&p;wO-6JXq8eb)@|1U&`y?H zwp!~2rPM2-PpcG`Dd?!sZcNyIMky8Q+jfFfD5cH{`^JUs(!Bo@v{z_1A#6YA+D62> zCWY<0q@YYe(z5-tu>G)W6A|m05wI*4a+IK zq;()CXGx)c_JQ!P1r$44>qtL!`E`&5FUaHZY$$;15kH!*xvba4Mfz>T_HP{2=nhg( z@_z|=^h^`-jl*>Xa2fMkj0F2Hxvtfvq^rnpJ}&}ST-WFv-~jLdm=uJQvb0|VnkPZ!6Kid%1Q@AWGu}DiF&;+Y5oDnmovYohzhoc zGM6?6J>?YqbZYzAS?jXft`;dAY-C{*sc#UAjtwI-tM80||cF&<6kj diff --git a/app/src/main/res/drawable-xxhdpi/ic_message_text_white_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_message_text_white_24dp.png deleted file mode 100644 index 1d3d19e7b6fd159009df75afed8e463aa47f7274..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 495 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@ZgvM!Y)RhkE=uJQvb0|R4~r;B4q#jUru_xc`okZJq)TwYN_K<5BYO$iSp z_W_0uLnAif157@SqAe1QtQ{H)EV+Vz{W&J{@#c@eThrak`}H>J9!*F~GYehF=b`zQ zY5M`u0-iV5=anqvf52M7@J{K`>+6j{UhW5!3&N^Hqc<_>DL>LJcQ6a^%H*$L^2=JE zbb4On=Z+sa(lI4-Dh~heXD;})`C3?P{qH$Ib0KkV?iceCSy z%Hx8KGVGfgr)_<1D%GcK(f7cj=`lxNGBChO??-2qEt||`9}A2U22WQ%mvv4FO#o+~ Byj%bP diff --git a/app/src/main/res/drawable-xxxhdpi/ic_bell_outline_white_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_bell_outline_white_24dp.png deleted file mode 100644 index 2756e2ae55d1ae01e5cdb8ffb79edf1743302b8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1062 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7OGoY)RhkE(}8pX7+2iB`GtXjd84O`V@SoVw{v~HMFS;{&(B;aaAR3n(@crZ zd_~7F7RNxrTGqcD-$b{BvNq~|V*Vj{M>FF>H|tcrmJV(~Hb=e7w^sa#vY7s)XSvba?>;k|m%lsnCw`A{@w+o~1r2!)8-S6A$O7gHmNiV)KksM#i)!Dt&x^T)Ia}te z)P=QcH&0@id%!C1TBBd?-l@zpK5^_nH)Y$sQxo%_*G68wChfIM_Wt9uF1GYU~0yWCo2WD)$pYkA~+_M;=K3 z`wh0d%(S3eD+DFPC#DKo%35Umx`??x z>FuZyo#-og^W5^%PLKYM7@>)?m5Tgb^w{+NukW~XZqpm*$jB*t7yNIerHjuv@68>1 zy~6H&-hp4+8tmTAS#;pwMZXh#<&A1RX`e5NGhO@LsU;`NxS8?x<4%s(^G{5Fd${=R zo>{s7xHddb{G)Cl6?i;jAD?)2NahB%J>L!fGQZGu^v>U>C!W8xID6W|_Ib1CP82fj zt;p+>%XogBXY+fT9zU%Yv%XyT8fCqIk(z$>jF^Bc&x=b!ZmAo$9Tev)-mM{5&Ro0W zIOpbDmSToK?k48hG4_7u>%G6lbl#O43yvSRu4s{Ve7>Xo+`$`GNppnvy_*r|{jhp^ zjPu$B(+?fdc(5w@S5i(eXO^-Tf9H;?r-Jx*xoYXL-d}8FJ2tH z`<0diI?ZmI@5Y%cS2uUr6oHzDnfo3|Uj5%tGUMc?H-!^f=PYS>QnqB4$lj`3Zih}q zFal9qqD0$5m!SO-Hav;_dYMa7D|rP46D0OW$C+(n z=gEG(p5?$DPOcf3ufHlXqB*MpI^)C?&+d<18Dhx9y7GI9^;Yho$$D~*XvX~*?oIE?d z1ppE#0?xrFdFE4;AaMwwT@B0xuV@C~@~4z__| zqRKx?7-TgBtLCY8!OH!RL_K`~%aOA&xA$n6*rIGmb&h_Dhu?bsfmEHXcc971 zBr|#7^LlY#_!!_lirI4V{&bea!ggo>yjYkq z*4#X<$K6l<3mZw5p3y`4Q)ve<<~bG^vXhf-(-om@%SbJa3WhN=%x9+Z_!k?iK#vUf z3vBo_?~Z8=;w|-|pcN`N{RA?`5FNcvc*UjPETOf8V~T@RBhfd;UT`oY7A=OKg5Qa1 zK)TeHX3xFu+V(R_KGiA7K9r1e6s@g_0@FuQ5i2@1w)`I7j;m((EFQMHQbc|@mcsKl z#Xm)v`*Z0I^&WRNIljm^N^*K;n~CNqtFGHz1dtucoMGuKh!}ec1nc-0_Aq3KC1*{tO+sCbFHfVTRvqebyh-A=88thTmu% z>5D0oY4Q<|}G@uiyTj+1Y{NBPD2Vb@Jc#0w; zTmc1`*#i4@Vhh5h$2ZA1OYleE!N3$z2XnD<6%{oG;T65BdVzPRf8uQFw#eIESKp8s mK0#>CKVNeZ@!NNyL?ENuviotv_4?ut1qe>=xMs(Y%>Mu)RgTvH diff --git a/app/src/main/res/drawable-xxxhdpi/ic_message_text_outline_white_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_message_text_outline_white_24dp.png deleted file mode 100644 index 26a104231b2a38607b5e10522529c01eedfdfd74..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 614 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7OGoY)RhkE(}8pX7+2iB`GtXj@uR1UV@SoVw|5Nvq#b44KAJNw?R>!VC1A<& z)~;j*R$cW6EECka0?r8r9#GVnBv;5Hz$?VVT4FKJFz)&0$KO|{_kR0tBeq*x*JF~3 zXOvm$CFZQPvkxe4V9sHPzoahsjo}VM_<{35r{;U|z2ghW{>w9m$^F3cFOlb0raxdW zi1Dg?W4S>4!0iw9AAhY4zb(4qy70p9v;Xk6+jq)7Sd*Su%zhnrgAv>CZ&ptO8l*7!%u+Hqo-UU&wr3x5xmiy=U-Ptb2 zvyEBipU3vKtj#P1Kk7?wMj3q7KHX3%^G~CB@3u`xANH5sld|L4%>3ovgY|l0^V1(# z&pq5;|G}e()9352U(2lKPX1CNHt#Th@sC74`!f&QE&mv_%Rl>YSf*|UhM=nFB$dnv Z{d?E)Vy|B2s|2P322WQ%mvv4FO#pU2{D=Sm diff --git a/app/src/main/res/drawable-xxxhdpi/ic_message_text_white_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_message_text_white_24dp.png deleted file mode 100644 index 3fd53a5ada03fe13dfed0be1a3e0b5c4011b6ca4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 590 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7OGoY)RhkE(}8pX7+2iB`GtXj@usJXV@SoVw|5Nv?l?%efBfF6;meZlA>Sp_ z6e7bMwB#&j5z_+4z$2C`4k>CZaFy-=O?J`-58Twewe)KQR9Y z3$1tKli>Pb@u&D-{p+jcjBol~B>t++fAHb@Ms}Hgoj30quHDir;LKTiJ}dDb)BIJh zvaT+gC|l5R`2G>Gf(y|mLI=FhKePKT))UiI$9(&xapa2Kt8PVZO;B<0o_};w=+#q_ zzyH_FU_8Vl@U83>|C`v))AC;J?|j!_z}zCKaE2j~jlnIRh!3I+A^Ds!5yOzUJD(foJujP&U-jo*uXPO$?8&R<<}p|wzn692rX0J; zd$$G6{&`c{ZU^%-qo1q0O`kDZq!#=zIP5RD{=($A`1@DqJ*%#=>VE#=uuR>I!~DfR u68Y@UJZ!i8W6&=D3|+7W7!#heuGw#5%t>`$EjAGt+YFwrelF{r5}E*E5c3ZJ diff --git a/app/src/main/res/drawable/ic_email_colored_48px.xml b/app/src/main/res/drawable/ic_email_colored_48px.xml new file mode 100644 index 00000000..302869b1 --- /dev/null +++ b/app/src/main/res/drawable/ic_email_colored_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_favorite_black_48px.xml b/app/src/main/res/drawable/ic_favorite_black_48px.xml new file mode 100644 index 00000000..e3cc36da --- /dev/null +++ b/app/src/main/res/drawable/ic_favorite_black_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_format_align_left_black_48px.xml b/app/src/main/res/drawable/ic_format_align_left_black_48px.xml new file mode 100644 index 00000000..f1e324c5 --- /dev/null +++ b/app/src/main/res/drawable/ic_format_align_left_black_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_group_black_48px.xml b/app/src/main/res/drawable/ic_group_black_48px.xml new file mode 100644 index 00000000..c023a47c --- /dev/null +++ b/app/src/main/res/drawable/ic_group_black_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_history_black_48px.xml b/app/src/main/res/drawable/ic_history_black_48px.xml new file mode 100644 index 00000000..b70c2146 --- /dev/null +++ b/app/src/main/res/drawable/ic_history_black_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_info_black_48px.xml b/app/src/main/res/drawable/ic_info_black_48px.xml new file mode 100644 index 00000000..a002fad8 --- /dev/null +++ b/app/src/main/res/drawable/ic_info_black_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_local_offer_black_48px.xml b/app/src/main/res/drawable/ic_local_offer_black_48px.xml new file mode 100644 index 00000000..68fdd1b7 --- /dev/null +++ b/app/src/main/res/drawable/ic_local_offer_black_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_mail_white_48px.xml b/app/src/main/res/drawable/ic_mail_white_48px.xml new file mode 100644 index 00000000..5382ce54 --- /dev/null +++ b/app/src/main/res/drawable/ic_mail_white_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_notifications_colored_48px.xml b/app/src/main/res/drawable/ic_notifications_colored_48px.xml new file mode 100644 index 00000000..24b09e43 --- /dev/null +++ b/app/src/main/res/drawable/ic_notifications_colored_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_notifications_white_48px.xml b/app/src/main/res/drawable/ic_notifications_white_48px.xml new file mode 100644 index 00000000..173dea85 --- /dev/null +++ b/app/src/main/res/drawable/ic_notifications_white_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_public_black_48px.xml b/app/src/main/res/drawable/ic_public_black_48px.xml new file mode 100644 index 00000000..97b21143 --- /dev/null +++ b/app/src/main/res/drawable/ic_public_black_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/ic_settings_black_48px.xml b/app/src/main/res/drawable/ic_settings_black_48px.xml new file mode 100644 index 00000000..8fbaa9a2 --- /dev/null +++ b/app/src/main/res/drawable/ic_settings_black_48px.xml @@ -0,0 +1,4 @@ + + + diff --git a/app/src/main/res/drawable/jb_activities.png b/app/src/main/res/drawable/jb_activities.png deleted file mode 100644 index f4f7d13102ef78fd20db7cdca14cc78775ddf057..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 604 zcmV-i0;BzjP)WnJ?fK_}2YH4mbjuKs)7V0%g<%4mfr|SdMa-bOARiEl0z53mB8c=Yi?4 zw@ZN;JhuQ@ynuZgz#Z^wm`7Q0+th(IU<=p*T5&z7h`o7P1D2%x+rZC|`HD%1_mei2 zk6pa3kQSVnirb#!@4!0n5;AVW@^g(Uu9_a*9O88tC#Fi=(y@rwfJF`I0|RO6;z>zc z6;D#ynz*j?KHh3+Ds4qP4QXR>UFki`(#GPa8qy{$Pg^|d%GnONUji=ZY_%%>Z=KL7 zN`TEJzXV)%<*Wc_7W4ODOMI6Er2)nxj-LZoq-(3dIUVU6pxS4gPVS+xxsh<{<8+39 zBOcc7(xm53iChw%QV354i q(gIn2B%}pGex#%Yc|S5T(&P_~k#CO%afW{Y00007tOhFXJe=Xg!nDLrvLBu2c1;)lBY((N28w-!b z5b+nV5DU*(*oiGRVly7G9AkmlNXFPR76?s94D&F?&@(KmI(_fCbssZzt7|0vC6(KC z>#Og4eY^V9sS8askqHGyx-GyG{rL;<+fkg{up8(FCV;=X{nGb#dGr;FxxjtuX5-pD zpv{xV2wH%rq?@j_CqT)IQ-MoF%?+WJM=vmJ7{B1fX#izljIgP0pgq9p0B#G;4}ISo zjtWD4K+(V}0{w#9WfORg&19fc^e+Qd1Fx#bf>>u0*w%Pi^xq|L--`Yso4~fl2StB% z0(Xt*f3=Klg(HO5Z9nmA{Dt5iZjeVKOj+d);fzrR?lQ}=3cy98d3qRlsN0BP{G1o3 z0wvULn04oTgn2o6K^xKKU~1h!t0#|%*a7sQD#BoO*aK|OGmxu#yhOMj|Kljm{|8r3 z{2=wE@c>n1&3fD-`lr0<)lmlQAwHw*%`?z+YnAqt@vRACJ1wF9R#ieD`zTftDW`eRz$t~ p>(GJTV16q*6S&lFqKPINjekb(n{e5i1y=w7002ovPDHLkV1oQ9Zt?&C diff --git a/app/src/main/res/drawable/jb_commented.png b/app/src/main/res/drawable/jb_commented.png deleted file mode 100644 index 64f27b0b38d59f18994fdb663ec652a5f150f963..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 349 zcmeAS@N?(olHy`uVBq!ia0vp^dLYcf1|-9GYMTQomSQK*5Dp-y;YjHK@;M7UB8wRq zq)I@T@$oE%Bn64!{5;QX|b^2DN4hVt@qz0ADq;^f4FRK5J7^x5xhq=1TUdAc}; zWHi3LsmpiBL7?rSxYH`Z7{-3Lx4b*J+!-%d7ch%R#g@n}+Qr7wS7Ppc=%3GLThFs8 zm+Nw8y-nd#3R>E_d>>nxWi!j2M#Zv?%yCm?^0Xcpee=soHv4fZ_CCeZ8KH3(XlvH`ZaA#llKDE`1 zW}c6aWH0MV+wOc{SiUj+oC0I=ONOLdZ|r{ZZQYtVgEub8=Ax?A`V&)x9(TsiZE$~+ p*Kbot{`7Ohp7Mn diff --git a/app/src/main/res/drawable/jb_heart.png b/app/src/main/res/drawable/jb_heart.png deleted file mode 100644 index ea9685e3ee24059f6f0d3328afe3a76c9d01f577..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 675 zcmV;U0$lxxP)@DOquu&x7=_2x}9^+d7kg{ z+~@wDKlJI-rzaUK@Xk24V@LA-S1h+##t^n*7e=v!Zv|XhvKeRa7%NdM;WnldiPadz zG2Fq=jB*~~G$zXs9>5H~WK@(DZ*UlmrZO5hl6;q^jL$fg)Ln@6xSq4JI4%mqVJ$8d zEaO_@&=v!@TCl=2ZYI%58CU%I>$T)WhZU9?$MZ^$W4;H3)A)!@v1HaCU^ja%`JtUP|X0+Dvf<+MQV+d0JTkGq{`g;Ss!4e{a9QaJwx%B+OKGNiXAIyV5D=YZO0MRGP4Zc~FD&oG{II z!~~vJDE&-H8)m{$#M=s_-(hE2(kW9|?4tAn_LeQ3vcF66i$ceAm9ph4kxrSyhZ3aU zV_#L$DZBBi1L@b;Q?+!;HpNoqb0JgJ$|N4jFZ~2tYB9}Vqi}@KN_tMl;ZEHQ3uk?+ zN#DS_+U!~|gjs(}&njW<(QO(y>$mg;9h`O7!O0~0^y%|I@e56$RC;xqrnCS6002ov JPDHLkV1myMF*5)F diff --git a/app/src/main/res/drawable/jb_license.png b/app/src/main/res/drawable/jb_license.png deleted file mode 100644 index b552a1c7792f224b4ee77188cb1a5cc4ade7b419..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 916 zcmV;F18e+=P)J@LZpcb1!B^L(ikZraU}~j>c*&8 zi3^PqP295LFVKdax&t-Q0G9X<7{x?m+?lY#kA{_Qh!PSgN@#5XJ1vXTG3}W%Gw00Q zTQ+@?cQH5bectDsIrsfIY+wUf*i-{&13R#7<@Y>huvle~DufT?6+DM$uoqh*pS$=2 z7w{v##;pos_l5m9C+z5Qq0M6o4McdO?^%(WXB=_IbvMfgW} zxOlnzg&%MkH?bX0;8~0o@H~PK@lHwb{mPHXG+yY!IfU2nX8~su`$~kLD-`_=wq|ng zz{LXYFLFf>D=Xu_;DKE76+9*!qa6M@;kfn0(E`y+csjxHBtF4;d?5X;yk8LKjU3@; z3JAYTyg!P6BER3XCxQb7aX!xxeyM=)-NgHy3fAGsuOUAHOvgduU1$jXbS{2MJUi0C z_bB#6&;HZiyQeUQ%|ez*Vvn+H@?e7F-$IUDThsauML{3xwe(e3!0p8Q+Y-K2U`=L; zg%654X4oWR;j;zrZqWP){*!G6at=4o-(iZR>ShSx*O{Y1FmX*hu)|x&7{4QavY;2(%GLO4x zI*FxF(-(kt4;XI)6H?Oy=x(@9MV*}4FK?4I1w4?RWsd5Yeao8tJ_^);GbNaJfQP zQE=-X=BmwIN>xviy9#FBikyzB48nZlq?8=`MZ22xVZq+a|N8F z1m_$gv2_c%@tZLc#;VqaELz$Ht|Qv@!hTHc>Z_DkLj~Yvq&_0`Ul;cEzw0jmuZlaO SWO~Q|00000ZdVLEuB$wf5k)2<{ zhRRwg3|ov&_W~yMsQ33BJ|vz$OsP}WIbnK6YZ5-H{MsYfg%@h~_}Ua-Bd{71Qr;~V zVtJabrTEXBDuZ#o%HUGs{n8BZ&Me1~I@uR^+EgiJILu0e^Q6epzN)wUA6SFi!Z5>p z9K{1{%kY&c zCMz$BPO>&dfR}Jt7_FoRV=mSSQ(8}DjX49C3E5fkH=)17{-V@e98^&P~CP(<0hWn9i|JF`%z23~y&{QdF zfRMfY4e(so6NE!RR+jiD%ALH>WzE9NeuD0ias`(sqie$gITE5e)Ggc?G<2{iRH#s) cLjSIQ0VdE{H}oegL;wH)07*qoM6N<$f^_w8A^-pY diff --git a/app/src/main/res/menu/main__menu_top.xml b/app/src/main/res/menu/main__menu_top.xml index 8ec30d36..65f9bf20 100644 --- a/app/src/main/res/menu/main__menu_top.xml +++ b/app/src/main/res/menu/main__menu_top.xml @@ -5,13 +5,13 @@ diff --git a/app/src/main/res/menu/main__navdrawer.xml b/app/src/main/res/menu/main__navdrawer.xml index 35569e1e..d3bd1b03 100644 --- a/app/src/main/res/menu/main__navdrawer.xml +++ b/app/src/main/res/menu/main__navdrawer.xml @@ -14,26 +14,26 @@ diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 8bba3ee4..7ff22012 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -40,7 +40,6 @@ Linkadresse kopiert … Nach oben scrollen Suche nach Tags oder Personen … - Neuer Beitrag App beenden Mobil-/Desktopansicht umschalten Teilen… diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 8519384f..9953391d 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -36,7 +36,6 @@ Lien copié… Retour en haut Recherche par tags ou par personnes - Nouveau message Quitter l\'application Partager… Nouveau message From a5d9f057008abb7eefe76a05cf60834b7ecaf436 Mon Sep 17 00:00:00 2001 From: Gregor Santner Date: Sun, 7 Aug 2016 03:42:20 +0200 Subject: [PATCH 3/8] Update notification&message icon to visualize current state --- .../activity/MainActivity.java | 80 +++++-------------- .../dfa/diaspora_android/util/Helpers.java | 17 ---- 2 files changed, 22 insertions(+), 75 deletions(-) diff --git a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java index 34ffb569..586d786d 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java @@ -121,8 +121,6 @@ public class MainActivity extends AppCompatActivity private App app; private String podDomain; private Menu menu; - private int notificationCount = 0; - private int conversationCount = 0; private ValueCallback mFilePathCallback; private String mCameraPhotoPath; private WebSettings webSettings; @@ -603,14 +601,14 @@ public class MainActivity extends AppCompatActivity this.menu = menu; MenuItem itemNotification = menu.findItem(R.id.action_notifications); if (itemNotification != null) { - if (notificationCount > 0) { + if (podUserProfile.getNotificationCount() > 0) { itemNotification.setIcon(R.drawable.ic_notifications_colored_48px); } else { itemNotification.setIcon(R.drawable.ic_notifications_white_48px); } MenuItem itemConversation = menu.findItem(R.id.action_conversations); - if (conversationCount > 0) { + if (podUserProfile.getUnreadMessagesCount() > 0) { itemConversation.setIcon(R.drawable.ic_email_colored_48px); } else { itemConversation.setIcon(R.drawable.ic_mail_white_48px); @@ -920,76 +918,42 @@ public class MainActivity extends AppCompatActivity // TODO: Move from Javascript interface @Override public void onNotificationCountChanged(int notificationCount) { + MenuItem item = menu.findItem(R.id.action_notifications); + if (item != null) { + if (notificationCount > 0) { + item.setIcon(R.drawable.ic_notifications_colored_48px); + if (!snackbarNewNotification.isShown() && !webView.getUrl().equals("https://" + podDomain + "/notifications")) + snackbarNewNotification.show(); + } else { + item.setIcon(R.drawable.ic_notifications_white_48px); + } + } } // TODO: Move from Javascript interface @Override public void onUnreadMessageCountChanged(int unreadMessageCount) { + MenuItem item = menu.findItem(R.id.action_conversations); + if (item != null) { + if (unreadMessageCount > 0) { + item.setIcon(R.drawable.ic_email_colored_48px); + if (!snackbarNewNotification.isShown() && !webView.getUrl().equals("https://" + podDomain + "/conversations")) + snackbarNewNotification.show(); + } else { + item.setIcon(R.drawable.ic_mail_white_48px); + } + } } private class JavaScriptInterface { - @JavascriptInterface - public void setNotificationCount(final String webMessage) { - uiHandler.post(new Runnable() { - @Override - public void run() { - if (menu == null) { - return; - } - notificationCount = Integer.valueOf(webMessage); - - MenuItem item = menu.findItem(R.id.action_notifications); - - if (item != null) { - if (notificationCount > 0) { - item.setIcon(R.drawable.ic_notifications_colored_48px); - if (!snackbarNewNotification.isShown() && !webView.getUrl().equals("https://" + podDomain + "/notifications")) - snackbarNewNotification.show(); - } else { - item.setIcon(R.drawable.ic_notifications_white_48px); - } - } - - - } - }); - } - @JavascriptInterface public void setUserProfile(final String webMessage) throws JSONException { if (podUserProfile.isRefreshNeeded()) { podUserProfile.parseJson(webMessage); } } - - @JavascriptInterface - public void setConversationCount(final String webMessage) { - uiHandler.post(new Runnable() { - @Override - public void run() { - if (menu == null) { - return; - } - conversationCount = Integer.valueOf(webMessage); - - MenuItem item = menu.findItem(R.id.action_conversations); - - if (item != null) { - if (conversationCount > 0) { - item.setIcon(R.drawable.ic_email_colored_48px); - if (!snackbarNewNotification.isShown() && !webView.getUrl().equals("https://" + podDomain + "/notifications")) - snackbarNewNotification.show(); - } else { - item.setIcon(R.drawable.ic_mail_white_48px); - } - } - - } - }); - } - } @SuppressWarnings("StatementWithEmptyBody") diff --git a/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java b/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java index fc94d79e..2a77e77e 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java @@ -67,23 +67,6 @@ public class Helpers { "})();"); } - public static void getNotificationCount(final WebView wv) { - wv.loadUrl("javascript: ( function() {" + - "if (document.getElementById('notification')) {" + - " var count = document.getElementById('notification').innerHTML;" + - " AndroidBridge.setNotificationCount(count.replace(/(\\r\\n|\\n|\\r)/gm, \"\"));" + - " } else {" + - " AndroidBridge.setNotificationCount('0');" + - " }" + - " if (document.getElementById('conversation')) {" + - " var count = document.getElementById('conversation').innerHTML;" + - " AndroidBridge.setConversationCount(count.replace(/(\\r\\n|\\n|\\r)/gm, \"\"));" + - " } else {" + - " AndroidBridge.setConversationCount('0');" + - " }" + - "})();"); - } - public static void getUserProfile(final WebView wv) { // aspects":[{"id":124934,"name":"Friends","selected":true},{"id":124937,"name":"Liked me","selected":false},{"id":124938,"name":"Follow","selected":false},{"id":128327,"name":"Nur ich","selected":false}] wv.loadUrl("javascript: ( function() {" + From 8f2a01ca73a9b8d6db499cf15f12ea34f8a3ed6f Mon Sep 17 00:00:00 2001 From: Gregor Santner Date: Sun, 7 Aug 2016 11:39:20 +0200 Subject: [PATCH 4/8] Load from/save counts from prefs --- .../activity/MainActivity.java | 52 ++++++++----------- .../diaspora_android/data/AppSettings.java | 20 +++++++ .../diaspora_android/data/PodUserProfile.java | 5 +- .../dfa/diaspora_android/util/Helpers.java | 3 +- .../main/res/values/strings-preferences.xml | 2 + 5 files changed, 49 insertions(+), 33 deletions(-) diff --git a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java index 586d786d..42b0d98d 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java @@ -48,6 +48,7 @@ import android.support.v4.widget.DrawerLayout; import android.support.v4.widget.SwipeRefreshLayout; import android.support.v7.app.ActionBarDrawerToggle; import android.support.v7.app.AppCompatActivity; +import android.support.v7.app.NotificationCompat; import android.support.v7.widget.ActionMenuView; import android.support.v7.widget.Toolbar; import android.text.Html; @@ -120,7 +121,6 @@ public class MainActivity extends AppCompatActivity private App app; private String podDomain; - private Menu menu; private ValueCallback mFilePathCallback; private String mCameraPhotoPath; private WebSettings webSettings; @@ -314,19 +314,15 @@ public class MainActivity extends AppCompatActivity progressBar.setProgress(progress); if (progress > 0 && progress <= 60) { - Helpers.getNotificationCount(wv); Helpers.getUserProfile(wv); + Helpers.optimizeMobileSiteLayout(wv); } if (progress > 60) { - Helpers.applyDiasporaMobileSiteChanges(wv); + Helpers.optimizeMobileSiteLayout(wv); } - if (progress == 100) { - progressBar.setVisibility(View.GONE); - } else { - progressBar.setVisibility(View.VISIBLE); - } + progressBar.setVisibility(progress == 100 ? View.GONE : View.VISIBLE); } @Override @@ -535,9 +531,11 @@ public class MainActivity extends AppCompatActivity if (webView.canGoBack()) { webView.goBack(); - } else { - if (!snackbarExitApp.isShown()) - snackbarExitApp.show(); + return; + } + + if (!snackbarExitApp.isShown()) { + snackbarExitApp.show(); } } @@ -598,7 +596,6 @@ public class MainActivity extends AppCompatActivity @Override public boolean onPrepareOptionsMenu(Menu menu) { - this.menu = menu; MenuItem itemNotification = menu.findItem(R.id.action_notifications); if (itemNotification != null) { if (podUserProfile.getNotificationCount() > 0) { @@ -756,6 +753,7 @@ public class MainActivity extends AppCompatActivity return super.onOptionsItemSelected(item); } + @SuppressWarnings("ResultOfMethodCallIgnored") private boolean makeScreenshotOfWebView(boolean hasToShareScreenshot) { if (android.os.Build.VERSION.SDK_INT >= 23) { int hasWRITE_EXTERNAL_STORAGE = checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE); @@ -811,7 +809,7 @@ public class MainActivity extends AppCompatActivity if (bitmapWriter != null) { try { bitmapWriter.close(); - } catch (IOException _ignored) {/* Nothing */} + } catch (IOException _ignSaveored) {/* Nothing */} } } @@ -918,32 +916,24 @@ public class MainActivity extends AppCompatActivity // TODO: Move from Javascript interface @Override public void onNotificationCountChanged(int notificationCount) { - MenuItem item = menu.findItem(R.id.action_notifications); + // Count saved in PodUserProfile + invalidateOptionsMenu(); - if (item != null) { - if (notificationCount > 0) { - item.setIcon(R.drawable.ic_notifications_colored_48px); - if (!snackbarNewNotification.isShown() && !webView.getUrl().equals("https://" + podDomain + "/notifications")) - snackbarNewNotification.show(); - } else { - item.setIcon(R.drawable.ic_notifications_white_48px); - } + if (notificationCount > 0 && !snackbarNewNotification.isShown() + && !webView.getUrl().equals("https://" + podDomain + "/notifications")) { + snackbarNewNotification.show(); } } // TODO: Move from Javascript interface @Override public void onUnreadMessageCountChanged(int unreadMessageCount) { - MenuItem item = menu.findItem(R.id.action_conversations); + // Count saved in PodUserProfile + invalidateOptionsMenu(); - if (item != null) { - if (unreadMessageCount > 0) { - item.setIcon(R.drawable.ic_email_colored_48px); - if (!snackbarNewNotification.isShown() && !webView.getUrl().equals("https://" + podDomain + "/conversations")) - snackbarNewNotification.show(); - } else { - item.setIcon(R.drawable.ic_mail_white_48px); - } + if (unreadMessageCount > 0 && !snackbarNewNotification.isShown() + && !webView.getUrl().equals("https://" + podDomain + "/notifications")) { + snackbarNewNotification.show(); } } diff --git a/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java b/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java index 82daf248..e15f35e2 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/data/AppSettings.java @@ -87,6 +87,10 @@ public class AppSettings { return pref.getBoolean(context.getString(ressourceId), defaultValue); } + private int getInt(SharedPreferences pref, int ressourceId, int defaultValue) { + return pref.getInt(context.getString(ressourceId), defaultValue); + } + /* // Setters & Getters @@ -174,6 +178,22 @@ public class AppSettings { setStringArray(prefPod, R.string.pref_key__podprofile_followed_tags, tags); } + public int getUnreadMessageCount(){ + return getInt(prefPod, R.string.pref_key__podprofile_unread_message_count, 0); + } + + public void setUnreadMessageCount(int unreadMessageCount) { + setInt(prefPod, R.string.pref_key__podprofile_unread_message_count, unreadMessageCount); + } + + public int getNotificationCount(){ + return getInt(prefPod, R.string.pref_key__podprofile_notification_count, 0); + } + + public void setNotificationCount(int notificationCount) { + setInt(prefPod, R.string.pref_key__podprofile_notification_count, notificationCount); + } + public boolean isAppendSharedViaApp() { return getBoolean(prefApp, R.string.pref_key__append_shared_via_app, true); } diff --git a/app/src/main/java/com/github/dfa/diaspora_android/data/PodUserProfile.java b/app/src/main/java/com/github/dfa/diaspora_android/data/PodUserProfile.java index 898ca0a1..420d984b 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/data/PodUserProfile.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/data/PodUserProfile.java @@ -60,6 +60,8 @@ public class PodUserProfile { name = appSettings.getName(); podAspects = appSettings.getPodAspects(); followedTags = appSettings.getFollowedTags(); + notificationCount = appSettings.getNotificationCount(); + unreadMessagesCount = appSettings.getUnreadMessageCount(); } public PodUserProfile(App app, Handler callbackHandler, WebUserProfileChangedListener listener) { @@ -102,11 +104,12 @@ public class PodUserProfile { // Unread message count if (json.has("notifications_count") && loadNotificationCount(json.getInt("notifications_count"))) { + appSettings.setNotificationCount(notificationCount); } // Unread message count if (json.has("unread_messages_count") && loadUnreadMessagesCount(json.getInt("unread_messages_count"))) { - appSettings.setPodAspects(podAspects); + appSettings.setUnreadMessageCount(unreadMessagesCount); } // Aspect diff --git a/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java b/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java index 2a77e77e..ecb584fc 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java @@ -53,8 +53,9 @@ public class Helpers { } } - public static void applyDiasporaMobileSiteChanges(final WebView wv) { + public static void optimizeMobileSiteLayout(final WebView wv) { wv.loadUrl("javascript: ( function() {" + + " if (document.documentElement == null || document.documentElement.style == null) { return; }" + " document.documentElement.style.paddingBottom = '260px';" + " document.getElementById('main').style.paddingTop = '5px';" + " if(document.getElementById('main_nav')) {" + diff --git a/app/src/main/res/values/strings-preferences.xml b/app/src/main/res/values/strings-preferences.xml index 864b90bd..77b45318 100644 --- a/app/src/main/res/values/strings-preferences.xml +++ b/app/src/main/res/values/strings-preferences.xml @@ -30,6 +30,8 @@ podUserProfile_guid podUserProfile_aspects podUserProfile_followedTags + podUserProfile_unreadMessageCount + podUserProfile_NotificationCount From fb4baa6481bcb4b9f6a81565b90fefe40d07f8e2 Mon Sep 17 00:00:00 2001 From: Gregor Santner Date: Sun, 7 Aug 2016 14:29:52 +0200 Subject: [PATCH 5/8] Update sharing functionality --- .../activity/MainActivity.java | 71 +++++---- .../activity/PodSelectionActivity.java | 7 +- .../activity/SplashActivity.java | 1 + .../dfa/diaspora_android/util/Helpers.java | 101 ------------ .../dfa/diaspora_android/util/WebHelper.java | 148 ++++++++++++++++++ 5 files changed, 191 insertions(+), 137 deletions(-) create mode 100644 app/src/main/java/com/github/dfa/diaspora_android/util/WebHelper.java diff --git a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java index 42b0d98d..1565b37d 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java @@ -48,7 +48,6 @@ import android.support.v4.widget.DrawerLayout; import android.support.v4.widget.SwipeRefreshLayout; import android.support.v7.app.ActionBarDrawerToggle; import android.support.v7.app.AppCompatActivity; -import android.support.v7.app.NotificationCompat; import android.support.v7.widget.ActionMenuView; import android.support.v7.widget.Toolbar; import android.text.Html; @@ -85,6 +84,7 @@ import com.github.dfa.diaspora_android.listener.WebUserProfileChangedListener; import com.github.dfa.diaspora_android.ui.ContextMenuWebView; import com.github.dfa.diaspora_android.ui.CustomWebViewClient; import com.github.dfa.diaspora_android.util.Helpers; +import com.github.dfa.diaspora_android.util.WebHelper; import org.json.JSONException; @@ -218,7 +218,7 @@ public class MainActivity extends AppCompatActivity .setAction(android.R.string.yes, new View.OnClickListener() { @Override public void onClick(View view) { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/notifications"); } else { Snackbar.make(swipeRefreshLayout, R.string.no_internet, Snackbar.LENGTH_LONG).show(); @@ -238,7 +238,7 @@ public class MainActivity extends AppCompatActivity String url = "https://" + podDomain; if (savedInstanceState == null) { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadData("", "text/html", null); webView.loadUrl(url); } else { @@ -296,7 +296,7 @@ public class MainActivity extends AppCompatActivity swipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.reload(); } else { snackbarNoInternet.show(); @@ -314,12 +314,12 @@ public class MainActivity extends AppCompatActivity progressBar.setProgress(progress); if (progress > 0 && progress <= 60) { - Helpers.getUserProfile(wv); - Helpers.optimizeMobileSiteLayout(wv); + WebHelper.getUserProfile(wv); + WebHelper.optimizeMobileSiteLayout(wv); } if (progress > 60) { - Helpers.optimizeMobileSiteLayout(wv); + WebHelper.optimizeMobileSiteLayout(wv); } progressBar.setVisibility(progress == 100 ? View.GONE : View.VISIBLE); @@ -618,7 +618,7 @@ public class MainActivity extends AppCompatActivity public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_notifications: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/notifications"); return true; } else { @@ -628,7 +628,7 @@ public class MainActivity extends AppCompatActivity } case R.id.action_conversations: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/conversations"); return true; } else { @@ -649,7 +649,7 @@ public class MainActivity extends AppCompatActivity } case R.id.action_compose: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/status_messages/new"); } else { snackbarNoInternet.show(); @@ -685,7 +685,7 @@ public class MainActivity extends AppCompatActivity } case R.id.action_search: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { final InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); LinearLayout layout = new LinearLayout(this); layout.setOrientation(LinearLayout.VERTICAL); @@ -844,12 +844,13 @@ public class MainActivity extends AppCompatActivity void handleSendText(Intent intent) { webView.loadUrl("https://"+podDomain+"/status_messages/new"); - String content = intent.getStringExtra(Intent.EXTRA_TEXT); + String content = WebHelper.replaceUrlWithMarkdown(intent.getStringExtra(Intent.EXTRA_TEXT)); if(appSettings.isAppendSharedViaApp()) { - //TODO: Make \n work - content = content + " \n" +getString(R.string.shared_by_diaspora_android); + // = \n + content = content + "\n\n" + getString(R.string.shared_by_diaspora_android); } - final String sharedText = content; + + final String sharedText = WebHelper.escapeHtmlText(content); if (sharedText != null) { webView.setWebViewClient(new WebViewClient() { public void onPageFinished(WebView view, String url) { @@ -876,20 +877,24 @@ public class MainActivity extends AppCompatActivity */ void handleSendSubject(Intent intent) { webView.loadUrl("https://"+podDomain+"/status_messages/new"); - String content = intent.getStringExtra(Intent.EXTRA_TEXT); - final String sharedSubject = intent.getStringExtra(Intent.EXTRA_SUBJECT); + String content = WebHelper.replaceUrlWithMarkdown(intent.getStringExtra(Intent.EXTRA_TEXT)); + String subject = WebHelper.replaceUrlWithMarkdown(intent.getStringExtra(Intent.EXTRA_SUBJECT)); + if (appSettings.isAppendSharedViaApp()) { - //TODO: Make \n work - content = content + " \n" + getString(R.string.shared_by_diaspora_android); + // = \n + content = content + "\n\n" + getString(R.string.shared_by_diaspora_android); } - final String sharedText = content; - if (sharedSubject != null) { + + final String sharedSubject = WebHelper.escapeHtmlText(subject); + final String sharedContent = WebHelper.escapeHtmlText(content); + + if (subject != null) { webView.setWebViewClient(new WebViewClient() { public void onPageFinished(WebView view, String url) { webView.loadUrl("javascript:(function() { " + "document.getElementsByTagName('textarea')[0].style.height='110px'; " + - "document.getElementsByTagName('textarea')[0].innerHTML = '**" + sharedSubject + "** " + sharedText + "'; " + + "document.getElementsByTagName('textarea')[0].innerHTML = '**" + sharedSubject + "** " + sharedContent + "'; " + " if(document.getElementById(\"main_nav\")) {" + " document.getElementById(\"main_nav\").parentNode.removeChild(" + " document.getElementById(\"main_nav\"));" + @@ -952,7 +957,7 @@ public class MainActivity extends AppCompatActivity // Handle navigation view item clicks here. switch (item.getItemId()) { case R.id.nav_stream: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/stream"); } else { snackbarNoInternet.show(); @@ -961,7 +966,7 @@ public class MainActivity extends AppCompatActivity break; case R.id.nav_profile: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/people/" + appSettings.getProfileId()); } else { snackbarNoInternet.show(); @@ -970,9 +975,9 @@ public class MainActivity extends AppCompatActivity break; case R.id.nav_followed_tags: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { // webView.loadUrl("https://" + podDomain + "/followed_tags"); - Helpers.showFollowedTagsList(webView, app); + WebHelper.showFollowedTagsList(webView, app); setTitle(R.string.nav_followed_tags); } else { snackbarNoInternet.show(); @@ -981,9 +986,9 @@ public class MainActivity extends AppCompatActivity break; case R.id.nav_aspects: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { // webView.loadUrl("https://" + podDomain + "/aspects"); - Helpers.showAspectList(webView, app); + WebHelper.showAspectList(webView, app); setTitle(R.string.aspects); } else { snackbarNoInternet.show(); @@ -992,7 +997,7 @@ public class MainActivity extends AppCompatActivity break; case R.id.nav_activities: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/activity"); } else { snackbarNoInternet.show(); @@ -1001,7 +1006,7 @@ public class MainActivity extends AppCompatActivity break; case R.id.nav_liked: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/liked"); } else { snackbarNoInternet.show(); @@ -1010,7 +1015,7 @@ public class MainActivity extends AppCompatActivity break; case R.id.nav_commented: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/commented"); } else { snackbarNoInternet.show(); @@ -1019,7 +1024,7 @@ public class MainActivity extends AppCompatActivity break; case R.id.nav_mentions: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/mentions"); } else { snackbarNoInternet.show(); @@ -1028,7 +1033,7 @@ public class MainActivity extends AppCompatActivity } case R.id.nav_public: { - if (Helpers.isOnline(MainActivity.this)) { + if (WebHelper.isOnline(MainActivity.this)) { webView.loadUrl("https://" + podDomain + "/public"); } else { snackbarNoInternet.show(); diff --git a/app/src/main/java/com/github/dfa/diaspora_android/activity/PodSelectionActivity.java b/app/src/main/java/com/github/dfa/diaspora_android/activity/PodSelectionActivity.java index b661df12..9dea2697 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/activity/PodSelectionActivity.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/activity/PodSelectionActivity.java @@ -46,6 +46,7 @@ import com.github.dfa.diaspora_android.App; import com.github.dfa.diaspora_android.R; import com.github.dfa.diaspora_android.task.GetPodsService; import com.github.dfa.diaspora_android.util.Helpers; +import com.github.dfa.diaspora_android.util.WebHelper; import java.util.ArrayList; @@ -80,7 +81,7 @@ public class PodSelectionActivity extends AppCompatActivity { setListedPods(app.getSettings().getPreviousPodlist()); LocalBroadcastManager.getInstance(this).registerReceiver(podListReceiver, new IntentFilter(GetPodsService.MESSAGE_PODS_RECEIVED)); - if (!Helpers.isOnline(PodSelectionActivity.this)) { + if (!WebHelper.isOnline(PodSelectionActivity.this)) { Snackbar.make(listPods, R.string.no_internet, Snackbar.LENGTH_LONG).show(); } } @@ -164,7 +165,7 @@ public class PodSelectionActivity extends AppCompatActivity { Linkify.addLinks(dialogMessage, Linkify.ALL); // Check if online - if (!Helpers.isOnline(PodSelectionActivity.this)) { + if (!WebHelper.isOnline(PodSelectionActivity.this)) { Snackbar.make(listPods, R.string.no_internet, Snackbar.LENGTH_LONG).show(); return; } @@ -232,7 +233,7 @@ public class PodSelectionActivity extends AppCompatActivity { public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_reload: { - if (Helpers.isOnline(PodSelectionActivity.this)) { + if (WebHelper.isOnline(PodSelectionActivity.this)) { Intent i = new Intent(PodSelectionActivity.this, GetPodsService.class); startService(i); return true; diff --git a/app/src/main/java/com/github/dfa/diaspora_android/activity/SplashActivity.java b/app/src/main/java/com/github/dfa/diaspora_android/activity/SplashActivity.java index 250bbbc3..99535239 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/activity/SplashActivity.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/activity/SplashActivity.java @@ -28,6 +28,7 @@ import android.widget.ImageView; import com.github.dfa.diaspora_android.App; import com.github.dfa.diaspora_android.R; import com.github.dfa.diaspora_android.util.Helpers; +import com.github.dfa.diaspora_android.util.WebHelper; import butterknife.BindView; import butterknife.ButterKnife; diff --git a/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java b/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java index ecb584fc..b7cb6f5c 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/util/Helpers.java @@ -16,33 +16,15 @@ If not, see . */ - package com.github.dfa.diaspora_android.util; import android.app.Activity; -import android.content.Context; import android.content.Intent; -import android.net.ConnectivityManager; -import android.net.NetworkInfo; -import android.support.v4.content.ContextCompat; -import android.webkit.WebView; -import com.github.dfa.diaspora_android.App; import com.github.dfa.diaspora_android.R; -import com.github.dfa.diaspora_android.data.AppSettings; -import com.github.dfa.diaspora_android.data.PodAspect; -import com.github.dfa.diaspora_android.data.PodUserProfile; - -import java.util.Locale; public class Helpers { - public static boolean isOnline(Context context) { - ConnectivityManager cnm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); - NetworkInfo ni = cnm.getActiveNetworkInfo(); - return ni != null && ni.isConnectedOrConnecting(); - } - public static void animateToActivity(Activity from, Class to, boolean finishFromActivity) { Intent intent = new Intent(from, to); intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); @@ -52,87 +34,4 @@ public class Helpers { from.finish(); } } - - public static void optimizeMobileSiteLayout(final WebView wv) { - wv.loadUrl("javascript: ( function() {" + - " if (document.documentElement == null || document.documentElement.style == null) { return; }" + - " document.documentElement.style.paddingBottom = '260px';" + - " document.getElementById('main').style.paddingTop = '5px';" + - " if(document.getElementById('main_nav')) {" + - " document.getElementById('main_nav').parentNode.removeChild(" + - " document.getElementById('main_nav'));" + - " } else if (document.getElementById('main-nav')) {" + - " document.getElementById('main-nav').parentNode.removeChild(" + - " document.getElementById('main-nav'));" + - " }" + - "})();"); - } - - public static void getUserProfile(final WebView wv) { - // aspects":[{"id":124934,"name":"Friends","selected":true},{"id":124937,"name":"Liked me","selected":false},{"id":124938,"name":"Follow","selected":false},{"id":128327,"name":"Nur ich","selected":false}] - wv.loadUrl("javascript: ( function() {" + - " if (typeof gon !== 'undefined' && typeof gon.user !== 'undefined') {" + - " var followed_tags = document.getElementById(\"followed_tags\");" + - " if(followed_tags != null) {" + - " try {" + - " var links = followed_tags.nextElementSibling.children[0].children;" + - " var tags = [];" + - " for(var i = 0; i < links.length - 1; i++) {" + // the last element is "Manage followed tags" link - " tags.push(links[i].innerText.substring(1));" + - " }" + - " gon.user[\"android_app.followed_tags\"] = tags;" + - " } catch(e) {}" + - " }" + - " var userProfile = JSON.stringify(gon.user);" + - " AndroidBridge.setUserProfile(userProfile.toString());" + - " } " + - "})();"); - } - - public static void showAspectList(final WebView wv, final App app) { - wv.stopLoading(); - PodUserProfile profile = app.getPodUserProfile(); - StringBuilder sb = new StringBuilder(); - - sb.append(""); - - // Content - for (PodAspect aspect : profile.getAspects()) { - sb.append("»  "); - sb.append(aspect.toHtmlLink(app)); - sb.append("
"); - } - - // End - sb.append(""); - wv.loadDataWithBaseURL(null, sb.toString(), "text/html", "UTF-16", null); - } - - public static void showFollowedTagsList(final WebView wv, final App app) { - wv.stopLoading(); - PodUserProfile profile = app.getPodUserProfile(); - StringBuilder sb = new StringBuilder(); - - sb.append(""); - - // Content - AppSettings appSettings = app.getSettings(); - sb.append("»  "); - sb.append(String.format(Locale.getDefault(), - "%s", - appSettings.getPodDomain(), app.getString(R.string.all_tags))); - sb.append("
"); - for (String tag: profile.getFollowedTags()) { - sb.append("»  "); - sb.append(String.format(Locale.getDefault(), - "#%s", - appSettings.getPodDomain(), tag, tag)); - sb.append("
"); - } - - // End - sb.append(""); - wv.loadDataWithBaseURL(null, sb.toString(), "text/html", "UTF-16", null); - } - } diff --git a/app/src/main/java/com/github/dfa/diaspora_android/util/WebHelper.java b/app/src/main/java/com/github/dfa/diaspora_android/util/WebHelper.java new file mode 100644 index 00000000..ae0abd9c --- /dev/null +++ b/app/src/main/java/com/github/dfa/diaspora_android/util/WebHelper.java @@ -0,0 +1,148 @@ +/* + This file is part of the Diaspora for Android. + + Diaspora for Android is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + Diaspora for Android is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with the Diaspora for Android. + + If not, see . + */ + +package com.github.dfa.diaspora_android.util; + +import android.app.Activity; +import android.content.Context; +import android.content.Intent; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; +import android.support.v4.content.ContextCompat; +import android.text.Html; +import android.webkit.URLUtil; +import android.webkit.WebView; + +import com.github.dfa.diaspora_android.App; +import com.github.dfa.diaspora_android.R; +import com.github.dfa.diaspora_android.data.AppSettings; +import com.github.dfa.diaspora_android.data.PodAspect; +import com.github.dfa.diaspora_android.data.PodUserProfile; + +import java.net.URL; +import java.util.Locale; + +/** + * Created by Gregor Santner on 07.08.16. + * https://gsantner.github.io + */ +public class WebHelper { + + public static boolean isOnline(Context context) { + ConnectivityManager cnm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); + NetworkInfo ni = cnm.getActiveNetworkInfo(); + return ni != null && ni.isConnectedOrConnecting(); + } + + public static String replaceUrlWithMarkdown(String url){ + if( url != null && URLUtil.isHttpUrl(url) || URLUtil.isHttpsUrl(url)){ + return "<" + url + ">"; + } + return url; + } + + public static String escapeHtmlText(String text){ + text = Html.escapeHtml(text);; + text = text.replace("\n", " "); + return text; + } + + public static void optimizeMobileSiteLayout(final WebView wv) { + wv.loadUrl("javascript: ( function() {" + + " if (document.documentElement == null || document.documentElement.style == null) { return; }" + + " document.documentElement.style.paddingBottom = '260px';" + + " document.getElementById('main').style.paddingTop = '5px';" + + " if(document.getElementById('main_nav')) {" + + " document.getElementById('main_nav').parentNode.removeChild(" + + " document.getElementById('main_nav'));" + + " } else if (document.getElementById('main-nav')) {" + + " document.getElementById('main-nav').parentNode.removeChild(" + + " document.getElementById('main-nav'));" + + " }" + + "})();"); + } + + public static void getUserProfile(final WebView wv) { + // aspects":[{"id":124934,"name":"Friends","selected":true},{"id":124937,"name":"Liked me","selected":false},{"id":124938,"name":"Follow","selected":false},{"id":128327,"name":"Nur ich","selected":false}] + wv.loadUrl("javascript: ( function() {" + + " if (typeof gon !== 'undefined' && typeof gon.user !== 'undefined') {" + + " var followed_tags = document.getElementById(\"followed_tags\");" + + " if(followed_tags != null) {" + + " try {" + + " var links = followed_tags.nextElementSibling.children[0].children;" + + " var tags = [];" + + " for(var i = 0; i < links.length - 1; i++) {" + // the last element is "Manage followed tags" link + " tags.push(links[i].innerText.substring(1));" + + " }" + + " gon.user[\"android_app.followed_tags\"] = tags;" + + " } catch(e) {}" + + " }" + + " var userProfile = JSON.stringify(gon.user);" + + " AndroidBridge.setUserProfile(userProfile.toString());" + + " } " + + "})();"); + } + + public static void showAspectList(final WebView wv, final App app) { + wv.stopLoading(); + PodUserProfile profile = app.getPodUserProfile(); + StringBuilder sb = new StringBuilder(); + + sb.append(""); + + // Content + for (PodAspect aspect : profile.getAspects()) { + sb.append("»  "); + sb.append(aspect.toHtmlLink(app)); + sb.append("
"); + } + + // End + sb.append(""); + wv.loadDataWithBaseURL(null, sb.toString(), "text/html", "UTF-16", null); + } + + public static void showFollowedTagsList(final WebView wv, final App app) { + wv.stopLoading(); + PodUserProfile profile = app.getPodUserProfile(); + StringBuilder sb = new StringBuilder(); + + sb.append(""); + + // Content + AppSettings appSettings = app.getSettings(); + sb.append("»  "); + sb.append(String.format(Locale.getDefault(), + "%s", + appSettings.getPodDomain(), app.getString(R.string.all_tags))); + sb.append("
"); + for (String tag: profile.getFollowedTags()) { + sb.append("»  "); + sb.append(String.format(Locale.getDefault(), + "#%s", + appSettings.getPodDomain(), tag, tag)); + sb.append("
"); + } + + // End + sb.append(""); + wv.loadDataWithBaseURL(null, sb.toString(), "text/html", "UTF-16", null); + } + +} From a494bffcbe973ec698d5ea7c27551b14589aed95 Mon Sep 17 00:00:00 2001 From: Gregor Santner Date: Sun, 7 Aug 2016 22:08:05 +0200 Subject: [PATCH 6/8] Translation tool; Update new languages --- .gitignore | 1 + .hidden | 8 +++ .../res/values-cs/strings-preferences.xml | 13 ++++ app/src/main/res/values-cs/strings.xml | 13 ++++ .../res/values-de/strings-preferences.xml | 5 +- app/src/main/res/values-de/strings.xml | 7 +- .../res/values-el/strings-preferences.xml | 13 ++++ app/src/main/res/values-el/strings.xml | 13 ++++ .../res/values-es/strings-preferences.xml | 13 ++++ app/src/main/res/values-es/strings.xml | 13 ++++ .../res/values-fr/strings-preferences.xml | 21 +++++- app/src/main/res/values-fr/strings.xml | 12 +++- .../res/values-hi/strings-preferences.xml | 13 ++++ app/src/main/res/values-hi/strings.xml | 13 ++++ .../res/values-hu/strings-preferences.xml | 13 ++++ app/src/main/res/values-hu/strings.xml | 13 ++++ .../res/values-it/strings-preferences.xml | 13 ++++ app/src/main/res/values-it/strings.xml | 17 +++++ .../res/values-ja/strings-preferences.xml | 13 ++++ app/src/main/res/values-ja/strings.xml | 13 ++++ .../res/values-ml/strings-preferences.xml | 13 ++++ app/src/main/res/values-ml/strings.xml | 25 +++++++ .../res/values-nl/strings-preferences.xml | 13 ++++ app/src/main/res/values-nl/strings.xml | 66 +++++++++++++++++ .../res/values-no/strings-preferences.xml | 13 ++++ app/src/main/res/values-no/strings.xml | 13 ++++ .../res/values-pl/strings-preferences.xml | 18 +++++ app/src/main/res/values-pl/strings.xml | 34 +++++++++ .../res/values-pt-rBR/strings-preferences.xml | 13 ++++ app/src/main/res/values-pt-rBR/strings.xml | 14 ++++ .../res/values-ru/strings-preferences.xml | 38 ++++++++++ app/src/main/res/values-ru/strings.xml | 70 +++++++++++++++++++ .../res/values-sv/strings-preferences.xml | 13 ++++ app/src/main/res/values-sv/strings.xml | 13 ++++ .../res/values-tr/strings-preferences.xml | 13 ++++ app/src/main/res/values-tr/strings.xml | 13 ++++ crowdin.yaml | 32 ++++++++- tools/localization/.gitignore | 1 + tools/localization/downloadLocalizations.sh | 33 +++++++++ 39 files changed, 679 insertions(+), 9 deletions(-) create mode 100755 .hidden create mode 100644 app/src/main/res/values-cs/strings-preferences.xml create mode 100644 app/src/main/res/values-cs/strings.xml create mode 100644 app/src/main/res/values-el/strings-preferences.xml create mode 100644 app/src/main/res/values-el/strings.xml create mode 100644 app/src/main/res/values-es/strings-preferences.xml create mode 100644 app/src/main/res/values-es/strings.xml create mode 100644 app/src/main/res/values-hi/strings-preferences.xml create mode 100644 app/src/main/res/values-hi/strings.xml create mode 100644 app/src/main/res/values-hu/strings-preferences.xml create mode 100644 app/src/main/res/values-hu/strings.xml create mode 100644 app/src/main/res/values-it/strings-preferences.xml create mode 100644 app/src/main/res/values-it/strings.xml create mode 100644 app/src/main/res/values-ja/strings-preferences.xml create mode 100644 app/src/main/res/values-ja/strings.xml create mode 100644 app/src/main/res/values-ml/strings-preferences.xml create mode 100644 app/src/main/res/values-ml/strings.xml create mode 100644 app/src/main/res/values-nl/strings-preferences.xml create mode 100644 app/src/main/res/values-nl/strings.xml create mode 100644 app/src/main/res/values-no/strings-preferences.xml create mode 100644 app/src/main/res/values-no/strings.xml create mode 100644 app/src/main/res/values-pl/strings-preferences.xml create mode 100644 app/src/main/res/values-pl/strings.xml create mode 100644 app/src/main/res/values-pt-rBR/strings-preferences.xml create mode 100644 app/src/main/res/values-pt-rBR/strings.xml create mode 100644 app/src/main/res/values-ru/strings-preferences.xml create mode 100644 app/src/main/res/values-ru/strings.xml create mode 100644 app/src/main/res/values-sv/strings-preferences.xml create mode 100644 app/src/main/res/values-sv/strings.xml create mode 100644 app/src/main/res/values-tr/strings-preferences.xml create mode 100644 app/src/main/res/values-tr/strings.xml create mode 100755 tools/localization/.gitignore create mode 100755 tools/localization/downloadLocalizations.sh diff --git a/.gitignore b/.gitignore index 26ef1d09..60b55eeb 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,7 @@ build/ # User-specific configurations local.properties +crowdin.yaml .idea .idea/libraries/ diff --git a/.hidden b/.hidden new file mode 100755 index 00000000..8a68f745 --- /dev/null +++ b/.hidden @@ -0,0 +1,8 @@ +build +crowdin.yaml +diaspora-android.iml +gradle +gradle.properties +gradlew +gradlew.bat +local.properties diff --git a/app/src/main/res/values-cs/strings-preferences.xml b/app/src/main/res/values-cs/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-cs/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml new file mode 100644 index 00000000..9553bf61 --- /dev/null +++ b/app/src/main/res/values-cs/strings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-de/strings-preferences.xml b/app/src/main/res/values-de/strings-preferences.xml index 74f51fdb..34646a8f 100644 --- a/app/src/main/res/values-de/strings-preferences.xml +++ b/app/src/main/res/values-de/strings-preferences.xml @@ -18,6 +18,8 @@ Nutze einen Proxyserver um Firewalls zu umgehen Host Port + Beenden Button im Slider + Fügt einen zusätzlichen »App beenden« Button zum Navigations-Slider hinzu Persönliche Einstellungen Öffne die Einstellungen deines Diaspora Accounts @@ -34,4 +36,5 @@ Toolbars intelligent verstecken Verweise auf App Füge beim Teilen von Texten Verweis auf diese App an (\"geteilt durch…\") - \ No newline at end of file + + diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 7ff22012..7c64188b 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -7,8 +7,10 @@ Neu laden Ungelesene Benachrichtigung. Lesen? + Einstellungen Benachrichtigungen Unterhaltungen + Stream Profil Aspekte Aktivitäten @@ -16,6 +18,7 @@ Kommentiert Erwähnungen Öffentliche Aktivitäten + Suche Pod auswählen Pod-Domain eingeben @@ -38,12 +41,12 @@ Speichere Bild als Bildschirmfoto wird gespeichert unter: Linkadresse kopiert … + Neuer Beitrag Nach oben scrollen Suche nach Tags oder Personen … App beenden Mobil-/Desktopansicht umschalten Teilen… - Neuer Beitrag nach Tags nach Personen Füge einen Namen ein. @@ -138,4 +141,4 @@ along with this program. If not, see http://www.gnu.org/licenses.<br> < https://www.flickr.com/photos/129581906@N06/sets/72157651933980136/with/16594947123. Sie wurden von \"Lydia\" veröffentlicht und stehen unter der cc by-nc-sa Lizenz.</i> - \ No newline at end of file + diff --git a/app/src/main/res/values-el/strings-preferences.xml b/app/src/main/res/values-el/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-el/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml new file mode 100644 index 00000000..9553bf61 --- /dev/null +++ b/app/src/main/res/values-el/strings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-es/strings-preferences.xml b/app/src/main/res/values-es/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-es/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml new file mode 100644 index 00000000..9553bf61 --- /dev/null +++ b/app/src/main/res/values-es/strings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-fr/strings-preferences.xml b/app/src/main/res/values-fr/strings-preferences.xml index 78fd2f5f..9d4d26b5 100644 --- a/app/src/main/res/values-fr/strings-preferences.xml +++ b/app/src/main/res/values-fr/strings-preferences.xml @@ -3,7 +3,7 @@ - Apparance + Apparence Paramètres du réseau Paramètres du pod @@ -12,14 +12,29 @@ Charger les images + Désactiver le chargements des images pour préserver la data mobile Activer Proxy + Serveur Proxy.\n(Nécessite un redémarrage) Hôte + Port + Bouton \"Quitter\" dans la barre de navigation + Ajouter le bouton »Quitter l\'application« dans la barre de navigation Paramètres personnels - Gérer votre liste des contacts + Ouvrir vos paramètres de compte Diaspora + Contacts + Gérer votre liste de contacts Gérer les Hashtags + Ajouter et supprimer les hashtags que vous suivez Changer de compte + Effacer les données de session locale et passer à un autre pod/compte Diaspora Cette opération va effacer les cookies et données de session. Voulez-vous vraiment changer de compte/pod? Vider le cache - \ No newline at end of file + Vider le cache + Masquer les barres d’outils en haut et en bas automatiquement lors du défilement + Masquage intelligent des barres d\'outils + Ajoutez \"partagé via …\" aux partages + Ajoutez une référence à l\'application (« partagée via …\") aux textes partagés + + diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 9953391d..694e34f1 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -7,12 +7,18 @@ Rafraîchir Notifications non lues. Lire ? + Paramètres + Notifications Discussions Flux Profil + Aspects Activités Aimés Commentés + Mentions + Publique + Rechercher Selectionnez un Pod Entrez le nom de domaine du pod @@ -21,6 +27,7 @@ Veuillez entrer un nom de domaine valide Erreur : impossible de récupérer la liste des pods ! Désolé, vous devez être connecté à Internet pour continuer + Confirmation Voulez-vous vraiment utiliser\nhttps://%1$s\ncomme pod Diaspora ? Souhaitez-vous quitter ? @@ -34,11 +41,12 @@ Enregistrer l\'image sous Enregistrer la capture d\'écran sous : Lien copié… + Nouveau message Retour en haut Recherche par tags ou par personnes Quitter l\'application + Activer/désactiver la version mobile Partager… - Nouveau message par tags par personne Veuillez ajouter un nom @@ -114,4 +122,4 @@ https://www.flickr.com/photos/129581906@N06/sets/72157651933980136/with/16594947123. They were published by \"Lydia\" and are licensed under cc by-nc-sa.</i> - \ No newline at end of file + diff --git a/app/src/main/res/values-hi/strings-preferences.xml b/app/src/main/res/values-hi/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-hi/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-hi/strings.xml b/app/src/main/res/values-hi/strings.xml new file mode 100644 index 00000000..9553bf61 --- /dev/null +++ b/app/src/main/res/values-hi/strings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-hu/strings-preferences.xml b/app/src/main/res/values-hu/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-hu/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml new file mode 100644 index 00000000..9553bf61 --- /dev/null +++ b/app/src/main/res/values-hu/strings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-it/strings-preferences.xml b/app/src/main/res/values-it/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-it/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml new file mode 100644 index 00000000..1197c02a --- /dev/null +++ b/app/src/main/res/values-it/strings.xml @@ -0,0 +1,17 @@ + + + + + + + Impostazioni + Conversazioni + Cerca + + + + + + Licenza + + diff --git a/app/src/main/res/values-ja/strings-preferences.xml b/app/src/main/res/values-ja/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-ja/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml new file mode 100644 index 00000000..9553bf61 --- /dev/null +++ b/app/src/main/res/values-ja/strings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-ml/strings-preferences.xml b/app/src/main/res/values-ml/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-ml/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-ml/strings.xml b/app/src/main/res/values-ml/strings.xml new file mode 100644 index 00000000..b16d1a9d --- /dev/null +++ b/app/src/main/res/values-ml/strings.xml @@ -0,0 +1,25 @@ + + + + + + + സജ്ജീകരണങ്ങൾ + അറിയിപ്പുകൾ + സംഭാഷണങ്ങൾ + സ്ട്രീം + ഇഷ്ടപെട്ടവ + കമന്റ് ചെയ്തവ + പരാമർശങ്ങൾ + തിരയുക + + പോഡ് തിരഞ്ഞെടുക്കുക + പോഡ് അഡ്രസ് രേഖപ്പെടുത്തുക + പോഡ് അഡ്രസ് ഉറപ്പാക്കുക + അറിയിപ്പ് : പോഡുകളുടെ ലിസ്റ്റ് https://podupti.me യിൽ നിന്നാണ്‌ ലഭിക്കുന്നത്. തിരുത്തൽ വരുത്താനുള്ളയിടത്തിൽ മറ്റു പോഡുകളുടെ അഡ്രസ് നൽകാം. + + + + + + diff --git a/app/src/main/res/values-nl/strings-preferences.xml b/app/src/main/res/values-nl/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-nl/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml new file mode 100644 index 00000000..8f3da644 --- /dev/null +++ b/app/src/main/res/values-nl/strings.xml @@ -0,0 +1,66 @@ + + + + + *[gedeeld door #DiasporaForAndroid]* + + Opnieuw Laden + Ongelezen bericht. Wilt u het lezen? + + Instellingen + Meldingen + Gesprekken + Stream + Profiel + Aspecten + Activiteiten + Leuk gevonden + Gereageerd + Vermeldingen + Openbaar + Zoeken + + Selecteer Pod + Voer pod domein + Bevestigen pod url + Opmerking: De podlijst is gevuld met beveiligde pods vermeld op https://podupti.me. U kunt in het bewerk veld elke pod invullen die niet in de lijst staat. + Voer een geldige domeinnaam in + Fout: Kan niet de podlijst ophalen! + Sorry, u moet verbinding met internet hebben om verder te gaan + Bevestiging + Wilt u echt \nhttps://%1$s\n als uw Diaspora pod gebruiken? + Wilt u afsluiten? + + Over de app | Help + Gevolgde Tags + Publieke activiteiten + App-instellingen + Link delen als tekst + Screenshot van de webpagina delen + Neem screenshot van de webpagina + Afbeelding opslaan + Screenshot oplaan als: + Link adres gekopieerd… + Nieuw Bericht + Terug naar boven + Zoeken op tags of personen + App afsluiten + Mobiele/desktop weergave in-/ uitschakelen + Delen… + viaTags + via mensen + Voeg een naam toe + Deel adreslink + Afbeelding opslaan + Deel afbeelding + Geopend in externe browser… + Link-adres kopiëren naar Klembord + + Waarschuwing: Kan niet netwerk proxy instellen… + Niet in staat om afbeelding te laden + Alle tags + + U moet machtegingen aan \"Access Storage Permission\" geven om screenshots op te slaan. Daarna moet u de app volledig afsluiten of de telefoon opnieuw opstarten. Als u geen toestemming aan opslag wil geven maar screenshot functie later wil gebruiken, kunt u de toestemming later geven. Open dan: systemsettings - apps - Diaspora. In de machtegings sectie kunt u machtegingen geven aan \"write storage permission\". + + + diff --git a/app/src/main/res/values-no/strings-preferences.xml b/app/src/main/res/values-no/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-no/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-no/strings.xml b/app/src/main/res/values-no/strings.xml new file mode 100644 index 00000000..9553bf61 --- /dev/null +++ b/app/src/main/res/values-no/strings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-pl/strings-preferences.xml b/app/src/main/res/values-pl/strings-preferences.xml new file mode 100644 index 00000000..ecde9fee --- /dev/null +++ b/app/src/main/res/values-pl/strings-preferences.xml @@ -0,0 +1,18 @@ + + + + + + Wygląd + Sieć + Ustawienia poda + + + Rozmiar czcionki + + + Załaduj obrazy + + + + diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml new file mode 100644 index 00000000..504988c2 --- /dev/null +++ b/app/src/main/res/values-pl/strings.xml @@ -0,0 +1,34 @@ + + + + + *[dzielone przez #DiasporaForAndroid]* + + Odśwież + Nieprzeczytane powiadomienia. Chcesz je przeczytać? + + Ustawienia + Powiadomienia + Rozmowy + Strumień + Profil + Aspekty + Aktywności + Polubione + Skomentowane + Szukaj + + Wybierz Pod + Wprowadź domenę poda + Potwierdzić adres url poda + Wprowadź prawidłową nazwę domeny + Błąd: Nie można pobrać listy podów! + Przepraszam, musisz być podłączony do Internetu, aby kontynuować + Potwierdzenie + Czy naprawdę chcesz używać\nhttps://%1$s \njako Twój Pod Diaspory? + + + + + + diff --git a/app/src/main/res/values-pt-rBR/strings-preferences.xml b/app/src/main/res/values-pt-rBR/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-pt-rBR/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml new file mode 100644 index 00000000..e9c87dff --- /dev/null +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -0,0 +1,14 @@ + + + + + + + Stream + + + + + + + diff --git a/app/src/main/res/values-ru/strings-preferences.xml b/app/src/main/res/values-ru/strings-preferences.xml new file mode 100644 index 00000000..4a2e926d --- /dev/null +++ b/app/src/main/res/values-ru/strings-preferences.xml @@ -0,0 +1,38 @@ + + + + + + Внешний вид + Сеть + Настройки пода + + + Размер шрифта + + + Загрузка изображений + Отключить загрузку изображений для экономии траффика + + Использовать прокси + Перенаправить трафик Диаспоры в обход брандмауэров.\nМожет потребовать перезапуска + Хост + Порт + + Личные настройки + Открыть настройки аккаунта диаспоры + Контакты + Управление списком контактов + Управление хэштегами + Добавление и удаление хэштегов, на которые вы подписаны + Сменить аккаунт + Стереть данные локального сеанса и переключиться на другой под/аккаунт Диаспоры + Это удалит все файлы cookie и данные сеанса. Вы действительно хотите изменить вашу учетную запись? + Очистить кэш + Очистить кэш WebView + Скрывать верхнюю и нижнюю панели инструментов автоматически во время прокрутки + Интеллектуальное скрытие панелей инструментов + Присоединять \"Опубликовано из\" к сообщению + Присоединять ссылку на приложение (\"Опубликовано из…\") к размещенным записям + + diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml new file mode 100644 index 00000000..ebd56f14 --- /dev/null +++ b/app/src/main/res/values-ru/strings.xml @@ -0,0 +1,70 @@ + + + + + *[опубликовано из #DiasporaForAndroid]* + + Перезагрузить + Непрочитанное уведомление. Хотите прочитать его? + + Настройки + Уведомления + Разговоры + Поток + Профиль + Аспекты + Недавняя активность + Понравившиеся + Прокомментированные + Упоминания + Публичные + Поиск + + Выберите под + Введите адрес пода + Подтвердите URL пода + Примечание: список подов формируется на основании списка безопасных подов с https://podupti.me. Вы можете ввести в поле для ввода любой под не из списка. + Пожалуйста, введите корректное имя домена + Ошибка: не удалось получить список подов! + Извините, вы должны быть подключены к Интернету, чтобы продолжить + Подтверждение + Вы действительно хотите использовать\nhttps://%1$s\nв качестве вашего пода в Диаспоре? + Вы действительно хотите выйти? + + О приложении | Справка + Отслеживаемые хэштеги + Публичная активность + Настройки приложения + Разместить ссылку как текст + Разместить экранный снимок страницы + Сделать экранный снимок страницы + Сохранение изображения в + Сохранение экранного снимка как: + Адрес ссылки скопирован… + Наверх + Поиск по тегам или людям + Выйти из приложения + Переключить мобильный/настольный режим просмотра + Поделиться… + по тегам + по людям + Пожалуйста добавьте имя + Разместить адрес ссылки + Сохранить изображение + Поделиться изображением + Открыть во внешнем браузере… + Копировать адрес ссылки в буфер обмена + + Предупреждение: Не удалось установить сетевой прокси… + Не удается загрузить изображение + Все теги + + Необходимо предоставить «Разрешение на доступ к хранилищу» для сохранения скриншотов. После этого вы должны полностью закрыть приложение или перезагрузите телефон. Если вы не разрешаете доступ к хранилищу, но хотите использовать функцию скриншотов позже, можно предоставить разрешение позднее. Затем откройте: Системные настройки - приложения - Диаспора. В разделе разрешения можно предоставить «разрешение на запись в хранилище». + Необходимо предоставить «Разрешение на доступ к хранилищу» для сохранения изображений. После этого вы должны полностью закрыть приложение или перезагрузите телефон. Если вы не разрешаете доступ к хранилищу, но хотите сохранять изображения позже, можно предоставить разрешение позднее. Затем откройте: Системные настройки - приложения - Диаспора. В разделе разрешения можно предоставить «разрешение на запись в хранилище». + В разрешении отказано. + Разрешение получено. Пожалуйста, попробуйте еще раз. + + Лицензия + Форматирование Markdown + + diff --git a/app/src/main/res/values-sv/strings-preferences.xml b/app/src/main/res/values-sv/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-sv/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml new file mode 100644 index 00000000..9553bf61 --- /dev/null +++ b/app/src/main/res/values-sv/strings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-tr/strings-preferences.xml b/app/src/main/res/values-tr/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-tr/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml new file mode 100644 index 00000000..9553bf61 --- /dev/null +++ b/app/src/main/res/values-tr/strings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/crowdin.yaml b/crowdin.yaml index 05210466..70301ce6 100644 --- a/crowdin.yaml +++ b/crowdin.yaml @@ -1,4 +1,34 @@ +project_identifier: diaspora-for-android +#api_key: APIKEY_DONT_PUSH +#base_path: /home/gregor/diaspora-android + files: - source: '/app/src/main/res/values/strings*.xml' - translation: '/app/src/main/res/values-%two_letters_code%/%original_file_name%' + translation: '/app/src/main/res/values-%android_code%/%original_file_name%' + languages_mapping: + android_code: +# Add all non locality languages here +# (e.g. enUS, enUK, deCH, deAT will automatically go into the right folder) +# Otherwise e.g. en would get added into the folder enEN (which is wrong). +# https://crowdin.com/page/api/language-codes contains supported language codes +# The first listed ones here are diffently managed by crowdin than on android + sv-SE: sv + es-ES: es + ml-IN: ml + pt-PT: pt + 'no': 'no' + de: de + tr: tr + ca: ca + ru: ru + pl: pl + nl: nl + ja: ja + it: it + hu: hu + hi: hi + fr: fr + el: el + de: de + cs: cs diff --git a/tools/localization/.gitignore b/tools/localization/.gitignore new file mode 100755 index 00000000..98626981 --- /dev/null +++ b/tools/localization/.gitignore @@ -0,0 +1 @@ +crowdin.yaml diff --git a/tools/localization/downloadLocalizations.sh b/tools/localization/downloadLocalizations.sh new file mode 100755 index 00000000..b2647b76 --- /dev/null +++ b/tools/localization/downloadLocalizations.sh @@ -0,0 +1,33 @@ +#!/bin/bash +######################################################### +# +# Title +# +# Created by Gregor Santer (gsantner), 2016 +# https://gsantner.github.io/ +# +######################################################### + + +#Pfade +SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +SCRIPTFILE=$(readlink -f $0) +SCRIPTPATH=$(dirname $SCRIPTFILE) +argc=$# + +######################################################### +cd "$SCRIPTDIR" + +if [ ! -f "crowdin.yaml" ] ; then + echo "base_path: $(realpath '../../')" > 'crowdin.yaml' + cat "../../crowdin.yaml" >> "crowdin.yaml" +fi + +if grep -q "DONT_PUSH" "crowdin.yaml" ; then + echo "Insert API key to crowdin.yaml" + echo "and update folder to the root folder of the repository" + exit +fi + +# Load latest translations +crowdin-cli download -b master From 6aa16baec7c3f7b0df4791e8a04b5a7280993e77 Mon Sep 17 00:00:00 2001 From: Gregor Santner Date: Sun, 7 Aug 2016 22:10:10 +0200 Subject: [PATCH 7/8] Update Crowdin configuration file --- crowdin.yaml | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/crowdin.yaml b/crowdin.yaml index 70301ce6..d51f8da2 100644 --- a/crowdin.yaml +++ b/crowdin.yaml @@ -1,23 +1,14 @@ -project_identifier: diaspora-for-android -#api_key: APIKEY_DONT_PUSH -#base_path: /home/gregor/diaspora-android - files: - source: '/app/src/main/res/values/strings*.xml' translation: '/app/src/main/res/values-%android_code%/%original_file_name%' languages_mapping: android_code: -# Add all non locality languages here -# (e.g. enUS, enUK, deCH, deAT will automatically go into the right folder) -# Otherwise e.g. en would get added into the folder enEN (which is wrong). -# https://crowdin.com/page/api/language-codes contains supported language codes -# The first listed ones here are diffently managed by crowdin than on android sv-SE: sv es-ES: es ml-IN: ml pt-PT: pt - 'no': 'no' + "no": 'no' de: de tr: tr ca: ca @@ -30,5 +21,4 @@ files: hi: hi fr: fr el: el - de: de cs: cs From e5219c4f78ac495b06731f762f21c065d748a464 Mon Sep 17 00:00:00 2001 From: Gregor Santner Date: Sun, 7 Aug 2016 22:52:00 +0200 Subject: [PATCH 8/8] Update Translations - Brazilian --- app/src/main/res/values-it/strings.xml | 3 - app/src/main/res/values-nl/strings.xml | 1 - .../res/values-pt-rBR/strings-preferences.xml | 27 +++++++++ app/src/main/res/values-pt-rBR/strings.xml | 55 +++++++++++++++++++ .../res/values-pt/strings-preferences.xml | 13 +++++ app/src/main/res/values-pt/strings.xml | 13 +++++ tools/localization/downloadLocalizations.sh | 9 ++- 7 files changed, 116 insertions(+), 5 deletions(-) create mode 100644 app/src/main/res/values-pt/strings-preferences.xml create mode 100644 app/src/main/res/values-pt/strings.xml diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 1197c02a..ef40c31f 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -5,13 +5,10 @@ Impostazioni - Conversazioni - Cerca - Licenza diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 8f3da644..e737c484 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -45,7 +45,6 @@ Terug naar boven Zoeken op tags of personen App afsluiten - Mobiele/desktop weergave in-/ uitschakelen Delen… viaTags via mensen diff --git a/app/src/main/res/values-pt-rBR/strings-preferences.xml b/app/src/main/res/values-pt-rBR/strings-preferences.xml index 397edf31..f4d96138 100644 --- a/app/src/main/res/values-pt-rBR/strings-preferences.xml +++ b/app/src/main/res/values-pt-rBR/strings-preferences.xml @@ -3,11 +3,38 @@ + Aparência + Rede + Configurações do Pod + Tamanho da fonte + Carregar imagens + Desabilitar o carregamento de imagens para economizar seus créditos + Habilitar o Proxy + Usar proxy para o tráfego da diáspora para contornar firewalls.\nPode requerer reinicialização + Servidor + Porta + Botão de sair na barra de navegação + Adiciona um botão extra » Sair App «na barra de navegação + Configurações pessoais + Abra suas configurações de usuário diáspora + Contatos + Gerenciar sua lista de contatos + Gerenciar Hashtags + Adicionar ou excluir as hashtags que você está seguindo + Alterar conta + Apagar dados de sessão local e mudar para outro usuário de outro Pod diáspora + Isto apagará todos os dados de sessão e cookies. Você quer realmente mudar sua conta? + Limpar cache + Limpar o cache do WebView + Ocultar as barras de ferramentas superior e inferior automaticamente durante a rolagem + Barras de ferramentas auto ocultante + Acrescentar compartilhado-por-aviso + Acrescentar uma referência (\"compartilhado por…\") a este app para textos compartilhados diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index e9c87dff..aa71eb2f 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -2,13 +2,68 @@ + *[compartilhado por #DiasporaForAndroid]* + Atualizar + Notificação não lida. Quer ler? + Opções + Notificações + Conversas Stream + Perfil + Aspectos + Atividades + Curti + Comentou + Menções + Público + Buscar + Selecione o Pod + Insira o domínio do Pod + Confirme a URL do Pod + OBS: A lista de pods é gerada por pods seguros do https://podupti.me. Você pode adicionar qualquer pod não listado. + Por favor insira um nome de domínio válido + Erro: Não conseguimos recuperar a lista de pods! + Desculpe, que você deve estar conectado à Internet para prosseguir + Confirmação + Você realmente quer usar\nhttps://%1$s\no seu Pod diáspora? + Deseja sair? + Sobre o app | Ajuda + Tags selecionadas + Atividades públicas + Configurações do App + Compartilhar link como texto + Compartilhar o screenshot da página Web + Tirar screenshot da página Web + Salvar imagem para + Salvar screenshot como: + Link copiado… + Nova mensagem + Ir para o topo + Procurar por tags ou pessoas + Sair do app + Alternar a exibição móvel/área de trabalho + Compartilhar… + por tags + por pessoas + Por favor, adicione um nome + Compartilhar link + Salvar imagem + Compartilhar Imagem + Abrir em navegador externo… + Copiar link para área de transferência + Aviso: Não foi possível definir proxy de rede… + Não é possível carregar a imagem + Todas as tags + Permissão negada. + Permissão concedida. Por favor, tente novamente. + Licença + Formatação de markdown diff --git a/app/src/main/res/values-pt/strings-preferences.xml b/app/src/main/res/values-pt/strings-preferences.xml new file mode 100644 index 00000000..397edf31 --- /dev/null +++ b/app/src/main/res/values-pt/strings-preferences.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml new file mode 100644 index 00000000..9553bf61 --- /dev/null +++ b/app/src/main/res/values-pt/strings.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/tools/localization/downloadLocalizations.sh b/tools/localization/downloadLocalizations.sh index b2647b76..86fc3252 100755 --- a/tools/localization/downloadLocalizations.sh +++ b/tools/localization/downloadLocalizations.sh @@ -19,8 +19,15 @@ argc=$# cd "$SCRIPTDIR" if [ ! -f "crowdin.yaml" ] ; then - echo "base_path: $(realpath '../../')" > 'crowdin.yaml' + echo "project_identifier: diaspora-for-android" > 'crowdin.yaml' + echo "base_path: $(realpath '../../')" >>'crowdin.yaml' + echo "api_key: DONT_PUSH_API_KEY" >>'crowdin.yaml' cat "../../crowdin.yaml" >> "crowdin.yaml" + echo "# Add all non locality languages here" >> "crowdin.yaml" + echo "# (e.g. enUS, enUK, deCH, deAT will automatically go into the right folder)" >> "crowdin.yaml" + echo "# Otherwise e.g. en would get added into the folder enEN (which is wrong)." >> "crowdin.yaml" + echo "# https://crowdin.com/page/api/language-codes contains supported language codes" >> "crowdin.yaml" + echo "# The first listed ones here are diffently managed by crowdin than on android" >> "crowdin.yaml" fi if grep -q "DONT_PUSH" "crowdin.yaml" ; then