diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index 71543764..7905a35a 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -21,3 +21,4 @@ Zsolt Szakács (maxigaz AT diaspora DOT zone): Hungarian translation Danilo Raffaelli (https://crowdin.com/profile/Daraf): Italian translation O'Loubám (loubam AT diasp DOT org): Galician translation transifex3 (https://crowdin.com/profile/transifex3): Korean translation +Âng Iōngchun (https://pubpod.alqualonde.org/u/iongchun): Chinese traditional translation 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 8019fb6d..08c6a541 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 @@ -445,6 +445,7 @@ public class MainActivity extends ThemedActivity navMenu.findItem(R.id.nav_profile).setVisible(appSettings.isVisibleInNavProfile()); navMenu.findItem(R.id.nav_public).setVisible(appSettings.isVisibleInNavPublic_activities()); navMenu.findItem(R.id.nav_stream).setVisible(true); + navMenu.findItem(R.id.nav_statistics).setVisible(appSettings.isVisibleInNavStatistics()); navMenu.findItem(R.id.nav_reports).setVisible(appSettings.isVisibleInNavReports()); navMenu.findItem(R.id.nav_toggle_desktop_page).setVisible(appSettings.isVisibleToggleMobileDesktop()); @@ -1046,11 +1047,12 @@ public class MainActivity extends ThemedActivity case R.id.nav_contacts: { if (WebHelper.isOnline(MainActivity.this)) { - openDiasporaUrl(urls.getManageContactsUrl()); + openDiasporaUrl(urls.getContactsUrl()); } else { snackbarNoInternet.show(); } } + break; case R.id.nav_activities: { if (WebHelper.isOnline(MainActivity.this)) { @@ -1106,6 +1108,15 @@ public class MainActivity extends ThemedActivity } break; + case R.id.nav_statistics: { + if (WebHelper.isOnline(MainActivity.this)) { + openDiasporaUrl(urls.getStatisticsUrl()); + } else { + snackbarNoInternet.show(); + } + } + break; + case R.id.nav_toggle_desktop_page: { openDiasporaUrl(urls.getToggleMobileUrl()); } 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 97219e56..954624dd 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 @@ -218,7 +218,7 @@ public class SettingsActivity extends ThemedActivity implements SharedPreference } else if (settings.isKeyEqual(key, R.string.pref_key__manage_contacts)) { Intent intent = new Intent(getActivity(), MainActivity.class); intent.setAction(MainActivity.ACTION_OPEN_URL); - intent.putExtra(MainActivity.URL_MESSAGE, diasporaUrlHelper.getManageContactsUrl()); + intent.putExtra(MainActivity.URL_MESSAGE, diasporaUrlHelper.getContactsUrl()); startActivity(intent); getActivity().finish(); return true; diff --git a/app/src/main/java/com/github/dfa/diaspora_android/receiver/UpdateTitleReceiver.java b/app/src/main/java/com/github/dfa/diaspora_android/receiver/UpdateTitleReceiver.java index 797cdb71..c6dddb6b 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/receiver/UpdateTitleReceiver.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/receiver/UpdateTitleReceiver.java @@ -63,6 +63,10 @@ public class UpdateTitleReceiver extends BroadcastReceiver { setTitle(R.string.conversations); } else if (subUrl.startsWith(DiasporaUrlHelper.SUBURL_NEW_POST)) { setTitle(R.string.new_post); + } else if (subUrl.startsWith(DiasporaUrlHelper.SUBURL_STATISTICS)) { + setTitle(R.string.statistics); + } else if (subUrl.startsWith(DiasporaUrlHelper.SUBURL_CONTACTS)) { + setTitle(R.string.contacts); } else if (subUrl.startsWith(DiasporaUrlHelper.SUBURL_PEOPLE + appSettings.getProfileId())) { setTitle(R.string.nav_profile); } else if (subUrl.startsWith(DiasporaUrlHelper.SUBURL_ACTIVITY)) { diff --git a/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java b/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java index 254258be..11be71f1 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java @@ -412,6 +412,10 @@ public class AppSettings { return getBool(prefApp, R.string.pref_key__visibility_nav__contacts, false); } + public boolean isVisibleInNavStatistics() { + return getBool(prefApp, R.string.pref_key__visibility_nav__statistics, false); + } + public boolean isVisibleInNavReports() { return getBool(prefApp, R.string.pref_key__visibility_nav__reports, false); } diff --git a/app/src/main/java/com/github/dfa/diaspora_android/util/DiasporaUrlHelper.java b/app/src/main/java/com/github/dfa/diaspora_android/util/DiasporaUrlHelper.java index de34db3d..7b31c322 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/util/DiasporaUrlHelper.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/util/DiasporaUrlHelper.java @@ -31,6 +31,7 @@ import com.github.dfa.diaspora_android.data.DiasporaPodList.DiasporaPod; public class DiasporaUrlHelper { private final AppSettings settings; + public static final String URL_BLANK = "about:blank"; public static final String SUBURL_NOTIFICATIONS = "/notifications"; public static final String SUBURL_POSTS = "/posts/"; public static final String SUBURL_STREAM = "/stream"; @@ -53,9 +54,8 @@ public class DiasporaUrlHelper { public static final String SUBURL_PERSONAL_SETTINGS = "/user/edit"; public static final String SUBURL_MANAGE_TAGS = "/tag_followings/manage"; public static final String SUBURL_SIGN_IN = "/users/sign_in"; - public static final String SUBURL_MANAGE_CONTACTS = "/contacts"; + public static final String SUBURL_CONTACTS = "/contacts"; public static final String SUBURL_REPORTS = "/reports"; - public static final String URL_BLANK = "about:blank"; public static final String SUBURL_NOTIFICATIONS_ALSO_COMMENTED = "/notifications?type=also_commented"; public static final String SUBURL_NOTIFICATIONS_COMMENT_ON_POST = "/notifications?type=comment_on_post"; public static final String SUBURL_NOTIFICATIONS_LIKED = "/notifications?type=liked"; @@ -290,8 +290,8 @@ public class DiasporaUrlHelper { * * @return https://(pod-domain.tld)/contacts */ - public String getManageContactsUrl() { - return getPodUrl() + SUBURL_MANAGE_CONTACTS; + public String getContactsUrl() { + return getPodUrl() + SUBURL_CONTACTS; } public String getSuburlNotificationsAlsoCommentedUrl() { diff --git a/app/src/main/res/drawable/ic_timeline_black_48px.xml b/app/src/main/res/drawable/ic_timeline_black_48px.xml new file mode 100644 index 00000000..9184473c --- /dev/null +++ b/app/src/main/res/drawable/ic_timeline_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 c09cc613..0a075fff 100644 --- a/app/src/main/res/menu/main__navdrawer.xml +++ b/app/src/main/res/menu/main__navdrawer.xml @@ -53,6 +53,11 @@ android:icon="@drawable/ic_public_black_48px" android:title="@string/nav_public_activities" /> + + + + + 說明 + 授權條款 + 除錯 + 應用程式 + 裝置 + diaspora* 豆莢 + 除錯紀錄 + 除錯紀錄(詳細版) + 應用程式版本: %1$s + Android 版本: %1$s + 裝置名稱: %1$s + 代號: %1$s + 豆莢設定名稱: %1$s + 豆莢網址: %1$s + 已經複製除錯紀錄到剪貼簿了 + dandelion* (蒲公英*) 是你瀏覽 diaspora* 社交網站的好朋友。它讓你的體驗增加了好用的工具列,並且支援像是 Tor 之類的代理伺服器服務。 + 貢獻程式碼! + dandelion* 是自由軟體開發專案,並且追隨 diaspora* 專案的信念。想要貢獻你的心力嗎?那就來吧!目前我們還只是個很小的團隊,任何形式的幫忙都會讓我們足感心! + 取得源碼 + 翻譯應用程式! + 應用程式沒有你使用語言的版本嗎?你可以改變現狀!何不來幫忙我們翻譯呢?我們使用 crowdin 平台,好讓每個人都能夠參與應用程式的翻譯工作。 + 我來翻譯 + 意見回饋! + dandelion* 還在開發階段,所以如果你有任何建議,或是有其他的意見要回饋,請使用我們的臭蟲追蹤網站來讓我們知道! + 回報臭蟲 + 報給人知! + 告訴你的朋友和家人有 #dandelion 這個好東西!何不部落格一下你的使用經驗呢?我們期待聽聽你的故事! + 分享應用程式 + 哇!看看 #dandelion 這套應用程式! %1$s + + 維護人員 + 目前這套應用程式是由以下人員開發與維護: <br><br>%1$s + 貢獻人 + %1$s<br><br>感謝你們! + GNU GPLv3+ 授權條款 + 第三方程式庫 + 我們使用了下列程式庫: + 我們從 LeafPic 應用程式得到一些啟發以及程式碼。去看看吧,它也是自由軟體喔! + 再多說一些 + diff --git a/app/src/main/res/values-zh-rTW/strings-preferences.xml b/app/src/main/res/values-zh-rTW/strings-preferences.xml new file mode 100644 index 00000000..db770360 --- /dev/null +++ b/app/src/main/res/values-zh-rTW/strings-preferences.xml @@ -0,0 +1,89 @@ + + + + + + + 上方工具列可載入流水帳 + 可以點上方工具列的空白區域來進入流水帳 + + + + + 外觀 + 網路 + 豆莢設定 + 操作 + + + 側邊導覽選單 + 控制側邊導覽選單中顯示的項目 + 使用者 + 平常 + 管理員 + + 佈景主題和色彩 + 控制應用程式使用的顏色 + 主要顏色 + 工具列使用的顏色 + 強調顏色 + 進度條使用的顏色 + + 延伸型通知 + 將通知鈴伸展成為顯示通知類別的下拉式選單 + 更改應用程式使用的語言。要重新開啟應用程式才會生效 + 語言 + 系統設定語言 + + 控制網頁視圖中的文字大小 + 字型大小 + + 一般 + 較大 + 超大 + + 載入圖片 + 切換是否要載入圖片,以節省行動資料流量等等 + + 畫面旋轉 + 控制畫面自動旋轉功能 + 系統預設 + 感應\n(忽略系統設定) + 直向 + 横向 + + 載入 Tor 的預設值 + 載入使用 Tor (Orbot) HTTP 代理伺服器的設定 + 代理伺服器 + 啓用代理伺服器 + 讓 dandelion* 透用代理伺服器連網來避開防火牆。\n設定後可能需要重新啟動。某些手機上可能會沒有作用。 + 主機 + 通訊埠 + 應用程式要重新啟動以停止使用代理伺服器 + 已經載入 Orbot 的代理伺服器設定了 + + 使用 Chrome Custom Tabs 開啟外部連結。必須要安裝 Chromium 或是 Google Chrome 才能使用這個功能。 +\n請留意:Chrome Custom Tabs 不會使用應用程式設定的代理伺服器! + + 個人設定 + 打開你的 diaspora* 帳號設定頁面 + 管理聯絡人清單 + 管理雜湊標籤 + 停止追蹤目前正在追蹤中的雜湊標籤 + 更換帳號 + 刪除本機連線 session 資料,並改用另外一個 diaspora* 豆莢或帳號 + 將要清除所有的 cookie 和 session 資料。確定真的要切換帳號嗎? + 清除快取資料 + 清除網頁視圖的快取資料 + 當捲動畫面時,自動隱藏上下兩邊的工具列 + 自動隱藏工具列 + 分享時附加應用程式標記 + 在分享的文字之後附加以下應用程式標記: [via #dandelion] + + 其他 + 完全重置 + 將本機上此應用程式的設定全部刪掉,並將所有帳號都登出 + 將要重設此應用程式的所有設定為預設值,並登出你在所有豆莢的帳號。不過不會變動已經下載了的圖片。確定要繼續嗎? + + + diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml new file mode 100644 index 00000000..37dba6fe --- /dev/null +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -0,0 +1,75 @@ + + + + + + 重新下載 + + 設定 + 通知 + 對話 + 流水帳 + 個人檔案 + 社交面 + 活動 + 按過讚 + 留言 + 指指點點 + 公開 + 搜尋 + 聯絡人 + 更新紀錄 + + 全部的通知 + 其他留言 + 貼文被留言 + 被按讚 + 被指指點點 + 被分享 + 開始分享 + + 錯誤: 無法取得豆莢列表! + 抱歉,要有網路連線才能繼續 + 確認 + 確定要退出嗎? + + 再來 + 說明 | 幫助 + 追蹤中的標籤 + 公開活動 + 回報 + 分享連結文字 + 分享網頁截圖 + 產生網路截圖 + 圖片儲存為 + 截圖儲存為: + 已經複製了連結網址… + 新增貼文 + 回到最上面 + 找人或標籤 + 退出應用程式 + 切換行動/桌上型版面 + 分享… + 找標籤 + 找人 + 請輸入名稱 + 分享連結網址 + 儲存圖片 + 分享圖片 + 用外部瀏覽器開啟… + 將連結網址複製到剪貼簿 + 將圖片網址複製到剪貼簿 + + 無法載入圖片 + + 必須要給予應用程式「儲存空間」的權限,才能儲存畫面截圖。給予後應該要將應用程式完全結束,或是將裝置重新啟動。如果你現在沒給權限,之後才想要使用截圖功能,還是可以重給權限。作法是:先打開「設定」—應用程式—dandelion*,在「權限」的地方切換是否給予「儲存空間」權限。 + 必須要給予應用程式「儲存空間」的權限,才能儲存或上傳圖片。給予後應該要將應用程式完全結束,或是將裝置重新啟動。如果你現在沒給權限,之後才想要儲存圖片,還是可以重給權限。作法是:先打開「設定」—應用程式—dandelion*,在「權限」的地方切換是否給予「儲存空間」權限。 + 權限被拒絕了。 + 取得權限了。請再重試一次。 + 自選豆莢 + 豆莢名稱 + 網路協定 + 豆莢網址 + 沒有填值 + 回到最近瀏覽的流水帳頁面嗎? + diff --git a/app/src/main/res/values/strings-preferences.xml b/app/src/main/res/values/strings-preferences.xml index 0c9055fb..7c7b47fd 100644 --- a/app/src/main/res/values/strings-preferences.xml +++ b/app/src/main/res/values/strings-preferences.xml @@ -50,6 +50,7 @@ pref_key__visibility_nav__profile pref_key__visibility_nav__contacts pref_key__visibility_nav__reports + pref_key__visibility_nav__statistics pref_key__visibility_nav__toggle_mobile_desktop diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 64aac017..c8ea36bf 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -5,8 +5,9 @@ Diaspora for Android #dandelion The community-run distributed social network - *[via #dandelion]* - + + \n\n\n_________________________\n + *via [dandelion*](/people?q=dandelion00%40diasp.org) client / #dandelíon* Open navigation drawer @@ -28,6 +29,7 @@ Search Contacts Changelog + Statistics Tor @@ -56,6 +58,7 @@ @string/activities @string/aspects @string/profile + @string/statistics More About | Help Followed Tags diff --git a/app/src/main/res/xml/preferences__sub_navslider_vis.xml b/app/src/main/res/xml/preferences__sub_navslider_vis.xml index 64dcf742..841ef129 100644 --- a/app/src/main/res/xml/preferences__sub_navslider_vis.xml +++ b/app/src/main/res/xml/preferences__sub_navslider_vis.xml @@ -73,5 +73,10 @@ android:key="@string/pref_key__visibility_nav__reports" android:title="@string/nav_reports"/> + + \ No newline at end of file