1
0
Fork 0
mirror of https://github.com/gsantner/dandelion synced 2024-11-25 13:52:08 +01:00

Code auto reformatting; Update TR, PodList

This commit is contained in:
Gregor Santner 2016-10-14 01:26:56 +02:00
parent 110598ea85
commit 71d8b886f6
70 changed files with 450 additions and 364 deletions

View file

@ -6,7 +6,7 @@ android:
- tools - tools
- tools # TODO https://github.com/travis-ci/travis-ci/issues/6193 - tools # TODO https://github.com/travis-ci/travis-ci/issues/6193
- platform-tools - platform-tools
- build-tools-24.0.2 - build-tools-24.0.3
- android-24 - android-24
- extra-android-m2repository - extra-android-m2repository
before_cache: before_cache:

View file

@ -241,6 +241,10 @@
<data android:host="wk3.org" android:scheme="https" /> <data android:host="wk3.org" android:scheme="https" />
<data android:host="www.datataffel.dk" android:scheme="https" /> <data android:host="www.datataffel.dk" android:scheme="https" />
<data android:host="www.diasporaix.de" android:scheme="https" /> <data android:host="www.diasporaix.de" android:scheme="https" />
<data android:host="diaspora.hofud.com" android:scheme="https" />
<data android:host="diaspora.softwarelivre.org" android:scheme="https" />
<data android:host="confetticake.club" android:scheme="https" />
<data android:host="diaspora.mike-jones.me.uk" android:scheme="https" />
<!--@@@ PODLIST END--> <!--@@@ PODLIST END-->
</intent-filter> </intent-filter>

View file

@ -28,8 +28,6 @@ import android.webkit.CookieSyncManager;
import android.webkit.WebView; import android.webkit.WebView;
import com.github.dfa.diaspora_android.data.AppSettings; import com.github.dfa.diaspora_android.data.AppSettings;
import com.github.dfa.diaspora_android.data.DiasporaPodList;
import com.github.dfa.diaspora_android.data.DiasporaPodList.DiasporaPod;
import com.github.dfa.diaspora_android.data.PodUserProfile; import com.github.dfa.diaspora_android.data.PodUserProfile;
import com.github.dfa.diaspora_android.util.AppLog; import com.github.dfa.diaspora_android.util.AppLog;
import com.github.dfa.diaspora_android.util.AvatarImageLoader; import com.github.dfa.diaspora_android.util.AvatarImageLoader;

View file

@ -63,7 +63,7 @@ import butterknife.ButterKnife;
* Activity that holds some fragments that show information about the app in a tab layout * Activity that holds some fragments that show information about the app in a tab layout
*/ */
public class AboutActivity extends ThemedActivity public class AboutActivity extends ThemedActivity
implements IntellihideToolbarActivityListener { implements IntellihideToolbarActivityListener {
private SectionsPagerAdapter mSectionsPagerAdapter; private SectionsPagerAdapter mSectionsPagerAdapter;
private ViewPager mViewPager; private ViewPager mViewPager;
@ -108,7 +108,7 @@ implements IntellihideToolbarActivityListener {
@Override @Override
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
if(getAppSettings().isIntellihideToolbars()) { if (getAppSettings().isIntellihideToolbars()) {
this.enableToolbarHiding(); this.enableToolbarHiding();
} else { } else {
this.disableToolbarHiding(); this.disableToolbarHiding();

View file

@ -40,7 +40,6 @@ import android.support.v4.content.LocalBroadcastManager;
import android.support.v4.view.GravityCompat; import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout; import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle; import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.ActionMenuView; import android.support.v7.widget.ActionMenuView;
import android.support.v7.widget.Toolbar; import android.support.v7.widget.Toolbar;
import android.view.KeyEvent; import android.view.KeyEvent;
@ -69,19 +68,18 @@ import com.github.dfa.diaspora_android.fragment.HashtagListFragment;
import com.github.dfa.diaspora_android.fragment.PodSelectionFragment; import com.github.dfa.diaspora_android.fragment.PodSelectionFragment;
import com.github.dfa.diaspora_android.listener.WebUserProfileChangedListener; import com.github.dfa.diaspora_android.listener.WebUserProfileChangedListener;
import com.github.dfa.diaspora_android.receiver.OpenExternalLinkReceiver; import com.github.dfa.diaspora_android.receiver.OpenExternalLinkReceiver;
import com.github.dfa.diaspora_android.util.ProxyHandler;
import com.github.dfa.diaspora_android.receiver.UpdateTitleReceiver; import com.github.dfa.diaspora_android.receiver.UpdateTitleReceiver;
import com.github.dfa.diaspora_android.ui.BadgeDrawable; import com.github.dfa.diaspora_android.ui.BadgeDrawable;
import com.github.dfa.diaspora_android.ui.IntellihideToolbarActivityListener; import com.github.dfa.diaspora_android.ui.IntellihideToolbarActivityListener;
import com.github.dfa.diaspora_android.util.AppLog; import com.github.dfa.diaspora_android.util.AppLog;
import com.github.dfa.diaspora_android.util.CustomTabHelpers.CustomTabActivityHelper; import com.github.dfa.diaspora_android.util.CustomTabHelpers.CustomTabActivityHelper;
import com.github.dfa.diaspora_android.util.DiasporaUrlHelper; import com.github.dfa.diaspora_android.util.DiasporaUrlHelper;
import com.github.dfa.diaspora_android.util.theming.ThemeHelper; import com.github.dfa.diaspora_android.util.ProxyHandler;
import com.github.dfa.diaspora_android.util.WebHelper; import com.github.dfa.diaspora_android.util.WebHelper;
import com.github.dfa.diaspora_android.util.theming.ThemeHelper;
import butterknife.BindView; import butterknife.BindView;
import butterknife.ButterKnife; import butterknife.ButterKnife;
import butterknife.OnClick;
public class MainActivity extends ThemedActivity public class MainActivity extends ThemedActivity
implements NavigationView.OnNavigationItemSelectedListener, implements NavigationView.OnNavigationItemSelectedListener,
@ -183,7 +181,7 @@ public class MainActivity extends ThemedActivity
@Override @Override
public void setTitle(int rId) { public void setTitle(int rId) {
CustomFragment top = getTopFragment(); CustomFragment top = getTopFragment();
if(top != null && top.getFragmentTag().equals(DiasporaStreamFragment.TAG)) { if (top != null && top.getFragmentTag().equals(DiasporaStreamFragment.TAG)) {
MainActivity.this.setTitle(rId); MainActivity.this.setTitle(rId);
} }
} }
@ -191,7 +189,7 @@ public class MainActivity extends ThemedActivity
@Override @Override
public void setTitle(String title) { public void setTitle(String title) {
CustomFragment top = getTopFragment(); CustomFragment top = getTopFragment();
if(top != null && top.getFragmentTag().equals(DiasporaStreamFragment.TAG)) { if (top != null && top.getFragmentTag().equals(DiasporaStreamFragment.TAG)) {
MainActivity.this.setTitle(title); MainActivity.this.setTitle(title);
} }
} }
@ -199,6 +197,7 @@ public class MainActivity extends ThemedActivity
if (!appSettings.hasPod()) { if (!appSettings.hasPod()) {
AppLog.d(this, "We have no pod. Show PodSelectionFragment"); AppLog.d(this, "We have no pod. Show PodSelectionFragment");
updateNavigationViewEntryVisibilities();
showFragment(getFragment(PodSelectionFragment.TAG)); showFragment(getFragment(PodSelectionFragment.TAG));
} else { } else {
AppLog.d(this, "Pod found. Handle intents."); AppLog.d(this, "Pod found. Handle intents.");
@ -248,6 +247,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Show DiasporaStreamFragment if necessary and load URL url * Show DiasporaStreamFragment if necessary and load URL url
*
* @param url URL to load in the DiasporaStreamFragment * @param url URL to load in the DiasporaStreamFragment
*/ */
public void openDiasporaUrl(String url) { public void openDiasporaUrl(String url) {
@ -261,12 +261,13 @@ public class MainActivity extends ThemedActivity
* Get an instance of the CustomFragment with the tag fragmentTag. * Get an instance of the CustomFragment with the tag fragmentTag.
* If there was no instance so far, create a new one and add it to the FragmentManagers pool. * If there was no instance so far, create a new one and add it to the FragmentManagers pool.
* If there is no Fragment with the corresponding Tag, return the top fragment. * If there is no Fragment with the corresponding Tag, return the top fragment.
*
* @param fragmentTag tag * @param fragmentTag tag
* @return corresponding Fragment * @return corresponding Fragment
*/ */
protected CustomFragment getFragment(String fragmentTag) { protected CustomFragment getFragment(String fragmentTag) {
CustomFragment fragment = (CustomFragment) fm.findFragmentByTag(fragmentTag); CustomFragment fragment = (CustomFragment) fm.findFragmentByTag(fragmentTag);
if(fragment != null) { if (fragment != null) {
return fragment; return fragment;
} else { } else {
switch (fragmentTag) { switch (fragmentTag) {
@ -287,8 +288,8 @@ public class MainActivity extends ThemedActivity
fm.beginTransaction().add(psf, fragmentTag).commit(); fm.beginTransaction().add(psf, fragmentTag).commit();
return psf; return psf;
default: default:
AppLog.e(this,"Invalid Fragment Tag: "+fragmentTag AppLog.e(this, "Invalid Fragment Tag: " + fragmentTag
+"\nAdd Fragments Tag to getFragment()'s switch case."); + "\nAdd Fragments Tag to getFragment()'s switch case.");
return getTopFragment(); return getTopFragment();
} }
} }
@ -296,12 +297,13 @@ public class MainActivity extends ThemedActivity
/** /**
* Show the Fragment fragment in R.id.fragment_container. If the fragment was already visible, do nothing. * Show the Fragment fragment in R.id.fragment_container. If the fragment was already visible, do nothing.
*
* @param fragment Fragment to show * @param fragment Fragment to show
*/ */
protected void showFragment(CustomFragment fragment) { protected void showFragment(CustomFragment fragment) {
AppLog.v(this, "showFragment()"); AppLog.v(this, "showFragment()");
CustomFragment currentTop = (CustomFragment) fm.findFragmentById(R.id.fragment_container); CustomFragment currentTop = (CustomFragment) fm.findFragmentById(R.id.fragment_container);
if(currentTop == null || !currentTop.getFragmentTag().equals(fragment.getFragmentTag())) { if (currentTop == null || !currentTop.getFragmentTag().equals(fragment.getFragmentTag())) {
AppLog.v(this, "Fragment was not visible. Replace it."); AppLog.v(this, "Fragment was not visible. Replace it.");
fm.beginTransaction().addToBackStack(null).replace(R.id.fragment_container, fragment, fragment.getFragmentTag()).commit(); fm.beginTransaction().addToBackStack(null).replace(R.id.fragment_container, fragment, fragment.getFragmentTag()).commit();
invalidateOptionsMenu(); invalidateOptionsMenu();
@ -380,13 +382,14 @@ public class MainActivity extends ThemedActivity
navMenu.findItem(R.id.nav_public).setVisible(appSettings.isVisibleInNavPublic_activities()); navMenu.findItem(R.id.nav_public).setVisible(appSettings.isVisibleInNavPublic_activities());
// Top bar // Top bar
if (appSettings.getPod() == null) { if (!appSettings.hasPod()) {
navMenu.setGroupVisible(navMenu.findItem(R.id.nav_exit).getGroupId(), false); navMenu.setGroupVisible(navMenu.findItem(R.id.nav_exit).getGroupId(), false);
} }
} }
/** /**
* Forward incoming intents to handleIntent() * Forward incoming intents to handleIntent()
*
* @param intent incoming * @param intent incoming
*/ */
@Override @Override
@ -397,6 +400,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Handle intents and execute intent specific actions * Handle intents and execute intent specific actions
*
* @param intent intent to get handled * @param intent intent to get handled
*/ */
private void handleIntent(Intent intent) { private void handleIntent(Intent intent) {
@ -421,7 +425,7 @@ public class MainActivity extends ThemedActivity
return; return;
} else { } else {
loadUrl = intent.getDataString(); loadUrl = intent.getDataString();
AppLog.v(this, "Intent has a delicious URL for us: "+loadUrl); AppLog.v(this, "Intent has a delicious URL for us: " + loadUrl);
} }
} else if (ACTION_CHANGE_ACCOUNT.equals(action)) { } else if (ACTION_CHANGE_ACCOUNT.equals(action)) {
AppLog.v(this, "Reset pod data and show PodSelectionFragment"); AppLog.v(this, "Reset pod data and show PodSelectionFragment");
@ -457,23 +461,25 @@ public class MainActivity extends ThemedActivity
/** /**
* Handle activity results * Handle activity results
*
* @param requestCode reqCode * @param requestCode reqCode
* @param resultCode resCode * @param resultCode resCode
* @param data data * @param data data
*/ */
@Override @Override
public void onActivityResult(int requestCode, int resultCode, Intent data) { public void onActivityResult(int requestCode, int resultCode, Intent data) {
AppLog.v(this, "onActivityResult(): "+requestCode); AppLog.v(this, "onActivityResult(): " + requestCode);
super.onActivityResult(requestCode, resultCode, data); super.onActivityResult(requestCode, resultCode, data);
} }
/** /**
* Return the fragment which is currently displayed in R.id.fragment_container * Return the fragment which is currently displayed in R.id.fragment_container
*
* @return top fragment or null if there is none displayed * @return top fragment or null if there is none displayed
*/ */
private CustomFragment getTopFragment() { private CustomFragment getTopFragment() {
Fragment top = fm.findFragmentById(R.id.fragment_container); Fragment top = fm.findFragmentById(R.id.fragment_container);
if(top != null) { if (top != null) {
return (CustomFragment) top; return (CustomFragment) top;
} }
return null; return null;
@ -490,12 +496,12 @@ public class MainActivity extends ThemedActivity
return; return;
} }
CustomFragment top = getTopFragment(); CustomFragment top = getTopFragment();
if(top != null) { if (top != null) {
AppLog.v(this, "Top Fragment is not null"); AppLog.v(this, "Top Fragment is not null");
if(!top.onBackPressed()) { if (!top.onBackPressed()) {
AppLog.v(this, "Top Fragment.onBackPressed was false"); AppLog.v(this, "Top Fragment.onBackPressed was false");
AppLog.v(this, "BackStackEntryCount: "+fm.getBackStackEntryCount()); AppLog.v(this, "BackStackEntryCount: " + fm.getBackStackEntryCount());
if(fm.getBackStackEntryCount()>0) { if (fm.getBackStackEntryCount() > 0) {
fm.popBackStack(); fm.popBackStack();
} else { } else {
snackbarExitApp.show(); snackbarExitApp.show();
@ -552,6 +558,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Clear and repopulate top and bottom toolbar. * Clear and repopulate top and bottom toolbar.
* Also add menu items of the displayed fragment * Also add menu items of the displayed fragment
*
* @param menu top toolbar * @param menu top toolbar
* @return boolean * @return boolean
*/ */
@ -564,9 +571,9 @@ public class MainActivity extends ThemedActivity
toolbarBottom.setVisibility(View.VISIBLE); toolbarBottom.setVisibility(View.VISIBLE);
CustomFragment top = getTopFragment(); CustomFragment top = getTopFragment();
if(top != null) { if (top != null) {
//Are we displaying a Fragment other than PodSelectionFragment? //Are we displaying a Fragment other than PodSelectionFragment?
if(!top.getFragmentTag().equals(PodSelectionFragment.TAG)) { if (!top.getFragmentTag().equals(PodSelectionFragment.TAG)) {
getMenuInflater().inflate(R.menu.main__menu_top, menu); getMenuInflater().inflate(R.menu.main__menu_top, menu);
getMenuInflater().inflate(R.menu.main__menu_bottom, toolbarBottom.getMenu()); getMenuInflater().inflate(R.menu.main__menu_bottom, toolbarBottom.getMenu());
top.onCreateBottomOptionsMenu(toolbarBottom.getMenu(), getMenuInflater()); top.onCreateBottomOptionsMenu(toolbarBottom.getMenu(), getMenuInflater());
@ -582,6 +589,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Set the notification and messages counter in the top toolbar * Set the notification and messages counter in the top toolbar
*
* @param menu menu * @param menu menu
* @return boolean * @return boolean
*/ */
@ -604,6 +612,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Handle clicks on the optionsmenu * Handle clicks on the optionsmenu
*
* @param item item * @param item item
* @return boolean * @return boolean
*/ */
@ -702,6 +711,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Update the profile name in the navigation slider * Update the profile name in the navigation slider
*
* @param name name * @param name name
*/ */
@Override @Override
@ -712,6 +722,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Update the profile picture in the navigation slider * Update the profile picture in the navigation slider
*
* @param avatarUrl url of the new profile pic * @param avatarUrl url of the new profile pic
*/ */
@Override @Override
@ -722,6 +733,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Handle hashtag clicks. Open the new-post-url and inject the clicked hashtag into the post-editor * Handle hashtag clicks. Open the new-post-url and inject the clicked hashtag into the post-editor
*
* @param intent intent * @param intent intent
*/ */
private void handleHashtag(Intent intent) { private void handleHashtag(Intent intent) {
@ -736,6 +748,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Open the new-post-url and inject text that was shared into the app into the post editors text field * Open the new-post-url and inject text that was shared into the app into the post editors text field
*
* @param intent shareTextIntent * @param intent shareTextIntent
*/ */
private void handleSendText(Intent intent) { private void handleSendText(Intent intent) {
@ -794,6 +807,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Share an image shared to the app via diaspora * Share an image shared to the app via diaspora
*
* @param intent shareImageIntent * @param intent shareImageIntent
*/ */
//TODO: Implement some day //TODO: Implement some day
@ -810,6 +824,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Invalidate the top toolbar to update the notification counter * Invalidate the top toolbar to update the notification counter
*
* @param notificationCount new notification count * @param notificationCount new notification count
*/ */
@Override @Override
@ -821,6 +836,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Invalidate the top toolbar to update the unread messages counter * Invalidate the top toolbar to update the unread messages counter
*
* @param unreadMessageCount new unread messages count * @param unreadMessageCount new unread messages count
*/ */
@Override @Override
@ -832,8 +848,8 @@ public class MainActivity extends ThemedActivity
@Override @Override
public void onCustomTabsConnected() { public void onCustomTabsConnected() {
if(customTabsSession == null) { if (customTabsSession == null) {
AppLog.i(this, "CustomTabs warmup: "+customTabActivityHelper.warmup(0)); AppLog.i(this, "CustomTabs warmup: " + customTabActivityHelper.warmup(0));
customTabsSession = customTabActivityHelper.getSession(); customTabsSession = customTabActivityHelper.getSession();
} }
} }
@ -953,8 +969,9 @@ public class MainActivity extends ThemedActivity
/** /**
* React to results of requestPermission * React to results of requestPermission
* @param requestCode resCode *
* @param permissions requested permissions * @param requestCode resCode
* @param permissions requested permissions
* @param grantResults granted results * @param grantResults granted results
*/ */
@Override @Override
@ -978,6 +995,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Return the string that will be shared into the new-post-editor * Return the string that will be shared into the new-post-editor
*
* @return String * @return String
*/ */
public String getTextToBeShared() { public String getTextToBeShared() {
@ -986,6 +1004,7 @@ public class MainActivity extends ThemedActivity
/** /**
* Set the string that will be shared into the new-post-editor * Set the string that will be shared into the new-post-editor
*
* @param textToBeShared * @param textToBeShared
*/ */
public void setTextToBeShared(String textToBeShared) { public void setTextToBeShared(String textToBeShared) {

View file

@ -37,7 +37,7 @@ import com.github.dfa.diaspora_android.util.theming.ThemeHelper;
public abstract class ThemedActivity extends AppCompatActivity { public abstract class ThemedActivity extends AppCompatActivity {
protected AppSettings getAppSettings() { protected AppSettings getAppSettings() {
return ((App)getApplication()).getSettings(); return ((App) getApplication()).getSettings();
} }
@Override @Override
@ -48,6 +48,7 @@ public abstract class ThemedActivity extends AppCompatActivity {
updateRecentAppColor(); updateRecentAppColor();
applyColorToViews(); applyColorToViews();
} }
protected abstract void applyColorToViews(); protected abstract void applyColorToViews();
/** /**
@ -64,10 +65,10 @@ public abstract class ThemedActivity extends AppCompatActivity {
* Update primary color in recent apps overview * Update primary color in recent apps overview
*/ */
@TargetApi(Build.VERSION_CODES.LOLLIPOP) @TargetApi(Build.VERSION_CODES.LOLLIPOP)
private void updateRecentAppColor(){ private void updateRecentAppColor() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
BitmapDrawable drawable = ((BitmapDrawable) getDrawable(R.drawable.ic_launcher)); BitmapDrawable drawable = ((BitmapDrawable) getDrawable(R.drawable.ic_launcher));
if(drawable != null) { if (drawable != null) {
setTaskDescription(new ActivityManager.TaskDescription( setTaskDescription(new ActivityManager.TaskDescription(
getResources().getString(R.string.app_name), getResources().getString(R.string.app_name),
drawable.getBitmap(), drawable.getBitmap(),

View file

@ -19,9 +19,9 @@ import android.content.Context;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import com.github.dfa.diaspora_android.R; import com.github.dfa.diaspora_android.R;
import com.github.dfa.diaspora_android.util.ProxyHandler;
import com.github.dfa.diaspora_android.data.DiasporaPodList.DiasporaPod; import com.github.dfa.diaspora_android.data.DiasporaPodList.DiasporaPod;
import com.github.dfa.diaspora_android.data.DiasporaPodList.DiasporaPod.DiasporaPodUrl; import com.github.dfa.diaspora_android.data.DiasporaPodList.DiasporaPod.DiasporaPodUrl;
import com.github.dfa.diaspora_android.util.ProxyHandler;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
@ -264,6 +264,7 @@ public class AppSettings {
public void setProxyHttpHost(String value) { public void setProxyHttpHost(String value) {
setString(prefApp, R.string.pref_key__http_proxy_host, value); setString(prefApp, R.string.pref_key__http_proxy_host, value);
} }
/** /**
* Default value: 0 * Default value: 0
* *

View file

@ -20,11 +20,9 @@ package com.github.dfa.diaspora_android.data;
import android.os.Handler; import android.os.Handler;
import com.github.dfa.diaspora_android.util.AppLog;
import com.github.dfa.diaspora_android.util.Log;
import com.github.dfa.diaspora_android.App; import com.github.dfa.diaspora_android.App;
import com.github.dfa.diaspora_android.listener.WebUserProfileChangedListener; import com.github.dfa.diaspora_android.listener.WebUserProfileChangedListener;
import com.github.dfa.diaspora_android.util.AppLog;
import org.json.JSONArray; import org.json.JSONArray;
import org.json.JSONException; import org.json.JSONException;
@ -128,7 +126,7 @@ public class PodUserProfile {
isWebUserProfileLoaded = true; isWebUserProfileLoaded = true;
} catch (JSONException e) { } catch (JSONException e) {
AppLog.d(this, e.getMessage()); AppLog.d(this, e.getMessage());
isWebUserProfileLoaded = false; isWebUserProfileLoaded = false;
} }
lastLoaded = System.currentTimeMillis(); lastLoaded = System.currentTimeMillis();
@ -173,6 +171,7 @@ public class PodUserProfile {
/** /**
* Sets the avatar, returns true if this was a new one, false if already the old one * Sets the avatar, returns true if this was a new one, false if already the old one
*
* @param avatarUrl url * @param avatarUrl url
* @return true if new avatar url * @return true if new avatar url
*/ */

View file

@ -41,10 +41,10 @@ import com.github.dfa.diaspora_android.App;
import com.github.dfa.diaspora_android.R; import com.github.dfa.diaspora_android.R;
import com.github.dfa.diaspora_android.activity.MainActivity; import com.github.dfa.diaspora_android.activity.MainActivity;
import com.github.dfa.diaspora_android.data.AppSettings; import com.github.dfa.diaspora_android.data.AppSettings;
import com.github.dfa.diaspora_android.util.ProxyHandler;
import com.github.dfa.diaspora_android.ui.ContextMenuWebView; import com.github.dfa.diaspora_android.ui.ContextMenuWebView;
import com.github.dfa.diaspora_android.util.theming.ThemeHelper;
import com.github.dfa.diaspora_android.util.AppLog; import com.github.dfa.diaspora_android.util.AppLog;
import com.github.dfa.diaspora_android.util.ProxyHandler;
import com.github.dfa.diaspora_android.util.theming.ThemeHelper;
import com.github.dfa.diaspora_android.webview.CustomWebViewClient; import com.github.dfa.diaspora_android.webview.CustomWebViewClient;
import com.github.dfa.diaspora_android.webview.ProgressBarWebChromeClient; import com.github.dfa.diaspora_android.webview.ProgressBarWebChromeClient;
@ -78,7 +78,7 @@ public class BrowserFragment extends ThemedFragment {
@Override @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
AppLog.d(this, "onCreateView()"); AppLog.d(this, "onCreateView()");
if(rootLayout == null) { if (rootLayout == null) {
rootLayout = inflater.inflate(R.layout.browser__fragment, container, false); rootLayout = inflater.inflate(R.layout.browser__fragment, container, false);
} }
return rootLayout; return rootLayout;
@ -89,21 +89,21 @@ public class BrowserFragment extends ThemedFragment {
AppLog.d(this, "onViewCreated()"); AppLog.d(this, "onViewCreated()");
super.onViewCreated(view, savedInstanceState); super.onViewCreated(view, savedInstanceState);
if(this.appSettings == null) { if (this.appSettings == null) {
this.appSettings = ((App) getActivity().getApplication()).getSettings(); this.appSettings = ((App) getActivity().getApplication()).getSettings();
} }
if(this.webView == null) { if (this.webView == null) {
this.webView = (ContextMenuWebView) view.findViewById(R.id.webView); this.webView = (ContextMenuWebView) view.findViewById(R.id.webView);
this.applyWebViewSettings(); this.applyWebViewSettings();
ProxyHandler.getInstance().addWebView(webView); ProxyHandler.getInstance().addWebView(webView);
} }
if(this.progressBar == null) { if (this.progressBar == null) {
this.progressBar = (ProgressBar) view.findViewById(R.id.progressBar); this.progressBar = (ProgressBar) view.findViewById(R.id.progressBar);
} }
if(pendingUrl != null) { if (pendingUrl != null) {
loadUrl(pendingUrl); loadUrl(pendingUrl);
pendingUrl = null; pendingUrl = null;
} }
@ -149,7 +149,7 @@ public class BrowserFragment extends ThemedFragment {
@Override @Override
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
if(webView != null) { if (webView != null) {
webSettings.setMinimumFontSize(appSettings.getMinimumFontSize()); webSettings.setMinimumFontSize(appSettings.getMinimumFontSize());
webSettings.setLoadsImagesAutomatically(appSettings.isLoadImages()); webSettings.setLoadsImagesAutomatically(appSettings.isLoadImages());
} }
@ -188,8 +188,8 @@ public class BrowserFragment extends ThemedFragment {
String fileSaveName = hasToShareScreenshot ? ".DfA_share.jpg" : String.format("DfA_%s.jpg", dateFormat.format(dateNow)); String fileSaveName = hasToShareScreenshot ? ".DfA_share.jpg" : String.format("DfA_%s.jpg", dateFormat.format(dateNow));
if (!fileSaveDirectory.exists()) { if (!fileSaveDirectory.exists()) {
if(!fileSaveDirectory.mkdirs()) { if (!fileSaveDirectory.mkdirs()) {
AppLog.w(this, "Could not mkdir "+fileSaveDirectory.getAbsolutePath()); AppLog.w(this, "Could not mkdir " + fileSaveDirectory.getAbsolutePath());
} }
} }
@ -248,7 +248,7 @@ public class BrowserFragment extends ThemedFragment {
} }
public boolean onBackPressed() { public boolean onBackPressed() {
if(webView.canGoBack()) { if (webView.canGoBack()) {
webView.goBack(); webView.goBack();
return true; return true;
} }
@ -256,17 +256,17 @@ public class BrowserFragment extends ThemedFragment {
} }
public void loadUrl(String url) { public void loadUrl(String url) {
if(getWebView() != null) { if (getWebView() != null) {
AppLog.v(this, "loadUrl(): load "+url); AppLog.v(this, "loadUrl(): load " + url);
getWebView().loadUrlNew(url); getWebView().loadUrlNew(url);
} else { } else {
AppLog.v(this, "loadUrl(): WebView null: Set pending url to "+url); AppLog.v(this, "loadUrl(): WebView null: Set pending url to " + url);
pendingUrl = url; pendingUrl = url;
} }
} }
public String getUrl() { public String getUrl() {
if(getWebView() != null) { if (getWebView() != null) {
return getWebView().getUrl(); return getWebView().getUrl();
} else { } else {
return pendingUrl; return pendingUrl;
@ -275,7 +275,7 @@ public class BrowserFragment extends ThemedFragment {
public void reloadUrl() { public void reloadUrl() {
AppLog.v(this, "reloadUrl()"); AppLog.v(this, "reloadUrl()");
if(getWebView() != null) { if (getWebView() != null) {
getWebView().reload(); getWebView().reload();
} }
} }

View file

@ -34,6 +34,7 @@ public abstract class CustomFragment extends Fragment {
/** /**
* We have an optionsMenu * We have an optionsMenu
*
* @param savedInstanceState state * @param savedInstanceState state
*/ */
@Override @Override
@ -44,13 +45,15 @@ public abstract class CustomFragment extends Fragment {
/** /**
* Return the tag used to identify the Fragment. * Return the tag used to identify the Fragment.
*
* @return tag * @return tag
*/ */
public abstract String getFragmentTag(); public abstract String getFragmentTag();
/** /**
* Add fragment-dependent options to the bottom options toolbar * Add fragment-dependent options to the bottom options toolbar
* @param menu bottom menu *
* @param menu bottom menu
* @param inflater inflater * @param inflater inflater
*/ */
public abstract void onCreateBottomOptionsMenu(Menu menu, MenuInflater inflater); public abstract void onCreateBottomOptionsMenu(Menu menu, MenuInflater inflater);
@ -58,6 +61,7 @@ public abstract class CustomFragment extends Fragment {
/** /**
* Return true if the fragment reacted to a back button press, false else. * Return true if the fragment reacted to a back button press, false else.
* In case the fragment returned false, the parent activity should handle the backPress. * In case the fragment returned false, the parent activity should handle the backPress.
*
* @return did we react to the back press? * @return did we react to the back press?
*/ */
public abstract boolean onBackPressed(); public abstract boolean onBackPressed();

View file

@ -44,12 +44,12 @@ import com.github.dfa.diaspora_android.App;
import com.github.dfa.diaspora_android.R; import com.github.dfa.diaspora_android.R;
import com.github.dfa.diaspora_android.activity.MainActivity; import com.github.dfa.diaspora_android.activity.MainActivity;
import com.github.dfa.diaspora_android.data.PodUserProfile; import com.github.dfa.diaspora_android.data.PodUserProfile;
import com.github.dfa.diaspora_android.webview.DiasporaStreamWebChromeClient;
import com.github.dfa.diaspora_android.webview.FileUploadWebChromeClient;
import com.github.dfa.diaspora_android.util.AppLog; import com.github.dfa.diaspora_android.util.AppLog;
import com.github.dfa.diaspora_android.util.DiasporaUrlHelper; import com.github.dfa.diaspora_android.util.DiasporaUrlHelper;
import com.github.dfa.diaspora_android.util.Helpers; import com.github.dfa.diaspora_android.util.Helpers;
import com.github.dfa.diaspora_android.util.WebHelper; import com.github.dfa.diaspora_android.util.WebHelper;
import com.github.dfa.diaspora_android.webview.DiasporaStreamWebChromeClient;
import com.github.dfa.diaspora_android.webview.FileUploadWebChromeClient;
import org.json.JSONException; import org.json.JSONException;
@ -79,9 +79,9 @@ public class DiasporaStreamFragment extends BrowserFragment {
webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(new JavaScriptInterface(), "AndroidBridge"); webView.addJavascriptInterface(new JavaScriptInterface(), "AndroidBridge");
if(((MainActivity)getActivity()).getTextToBeShared() != null) { if (((MainActivity) getActivity()).getTextToBeShared() != null) {
loadUrl(urls.getNewPostUrl()); loadUrl(urls.getNewPostUrl());
} else if(webView.getUrl() == null) { } else if (webView.getUrl() == null) {
loadUrl(urls.getStreamUrl()); loadUrl(urls.getStreamUrl());
} }
} }
@ -98,11 +98,11 @@ public class DiasporaStreamFragment extends BrowserFragment {
@Override @Override
public void onActivityResult(int requestCode, int resultCode, Intent data) { public void onActivityResult(int requestCode, int resultCode, Intent data) {
AppLog.d(this, "onActivityResult(): "+requestCode); AppLog.d(this, "onActivityResult(): " + requestCode);
switch (requestCode) { switch (requestCode) {
case MainActivity.INPUT_FILE_REQUEST_CODE_NEW: case MainActivity.INPUT_FILE_REQUEST_CODE_NEW:
case MainActivity.INPUT_FILE_REQUEST_CODE_OLD: case MainActivity.INPUT_FILE_REQUEST_CODE_OLD:
AppLog.v(this, "INPUT_FILE_REQUEST_CODE: "+requestCode); AppLog.v(this, "INPUT_FILE_REQUEST_CODE: " + requestCode);
onImageUploadResult(requestCode, resultCode, data); onImageUploadResult(requestCode, resultCode, data);
return; return;
} }
@ -114,7 +114,7 @@ public class DiasporaStreamFragment extends BrowserFragment {
AppLog.d(this, "StreamFragment.onOptionsItemSelected()"); AppLog.d(this, "StreamFragment.onOptionsItemSelected()");
switch (item.getItemId()) { switch (item.getItemId()) {
case R.id.action_reload: { case R.id.action_reload: {
if(WebHelper.isOnline(getContext())) { if (WebHelper.isOnline(getContext())) {
reloadUrl(); reloadUrl();
return true; return true;
} else { } else {
@ -226,18 +226,19 @@ public class DiasporaStreamFragment extends BrowserFragment {
protected DiasporaStreamWebChromeClient.SharedTextCallback sharedTextCallback = new DiasporaStreamWebChromeClient.SharedTextCallback() { protected DiasporaStreamWebChromeClient.SharedTextCallback sharedTextCallback = new DiasporaStreamWebChromeClient.SharedTextCallback() {
@Override @Override
public String getSharedText() { public String getSharedText() {
return ((MainActivity)getActivity()).getTextToBeShared(); return ((MainActivity) getActivity()).getTextToBeShared();
} }
@Override @Override
public void setSharedText(String shared) { public void setSharedText(String shared) {
((MainActivity)getActivity()).setTextToBeShared(shared); ((MainActivity) getActivity()).setTextToBeShared(shared);
} }
}; };
protected FileUploadWebChromeClient.FileUploadCallback fileUploadCallback = new FileUploadWebChromeClient.FileUploadCallback() { protected FileUploadWebChromeClient.FileUploadCallback fileUploadCallback = new FileUploadWebChromeClient.FileUploadCallback() {
@Override @Override
public boolean imageUpload(WebView webView, ValueCallback<Uri[]> filePathCallback, WebChromeClient.FileChooserParams fileChooserParams) { public boolean imageUpload(WebView webView, ValueCallback<Uri[]> filePathCallback, WebChromeClient.FileChooserParams fileChooserParams) {
if(Build.VERSION.SDK_INT >= 23) { if (Build.VERSION.SDK_INT >= 23) {
int hasWRITE_EXTERNAL_STORAGE = getActivity().checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE); int hasWRITE_EXTERNAL_STORAGE = getActivity().checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE);
if (hasWRITE_EXTERNAL_STORAGE != PackageManager.PERMISSION_GRANTED) { if (hasWRITE_EXTERNAL_STORAGE != PackageManager.PERMISSION_GRANTED) {
if (!shouldShowRequestPermissionRationale(Manifest.permission.WRITE_EXTERNAL_STORAGE)) { if (!shouldShowRequestPermissionRationale(Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
@ -261,7 +262,8 @@ public class DiasporaStreamFragment extends BrowserFragment {
} }
} }
AppLog.v(this, "onOpenFileChooser"); AppLog.v(this, "onOpenFileChooser");
if (imageUploadFilePathCallbackNew != null) imageUploadFilePathCallbackNew.onReceiveValue(null); if (imageUploadFilePathCallbackNew != null)
imageUploadFilePathCallbackNew.onReceiveValue(null);
imageUploadFilePathCallbackNew = filePathCallback; imageUploadFilePathCallbackNew = filePathCallback;
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
if (takePictureIntent.resolveActivity(getContext().getPackageManager()) != null) { if (takePictureIntent.resolveActivity(getContext().getPackageManager()) != null) {
@ -271,7 +273,7 @@ public class DiasporaStreamFragment extends BrowserFragment {
photoFile = Helpers.createImageFile(); photoFile = Helpers.createImageFile();
takePictureIntent.putExtra("PhotoPath", mCameraPhotoPath); takePictureIntent.putExtra("PhotoPath", mCameraPhotoPath);
} catch (IOException ex) { } catch (IOException ex) {
AppLog.e(this, "ERROR creating temp file: "+ ex.toString()); AppLog.e(this, "ERROR creating temp file: " + ex.toString());
// Error occurred while creating the File // Error occurred while creating the File
Snackbar.make(webView, R.string.unable_to_load_image, Snackbar.LENGTH_LONG).show(); Snackbar.make(webView, R.string.unable_to_load_image, Snackbar.LENGTH_LONG).show();
return false; return false;
@ -321,7 +323,7 @@ public class DiasporaStreamFragment extends BrowserFragment {
@SuppressWarnings("unused") @SuppressWarnings("unused")
@JavascriptInterface @JavascriptInterface
public void setUserProfile(final String webMessage) throws JSONException { public void setUserProfile(final String webMessage) throws JSONException {
PodUserProfile pup = ((App)getActivity().getApplication()).getPodUserProfile(); PodUserProfile pup = ((App) getActivity().getApplication()).getPodUserProfile();
AppLog.v(this, "StreamFragment.JavaScriptInterface.setUserProfile()"); AppLog.v(this, "StreamFragment.JavaScriptInterface.setUserProfile()");
if (pup.isRefreshNeeded()) { if (pup.isRefreshNeeded()) {
AppLog.v(this, "PodUserProfile needs refresh; Try to parse JSON"); AppLog.v(this, "PodUserProfile needs refresh; Try to parse JSON");
@ -334,7 +336,7 @@ public class DiasporaStreamFragment extends BrowserFragment {
@SuppressWarnings("unused") @SuppressWarnings("unused")
@JavascriptInterface @JavascriptInterface
public void contentHasBeenShared() { public void contentHasBeenShared() {
((MainActivity)getActivity()).setTextToBeShared(null); ((MainActivity) getActivity()).setTextToBeShared(null);
} }
} }

View file

@ -94,9 +94,9 @@ public class HashtagListFragment extends CustomFragment {
@Override @Override
public void onClick(View view) { public void onClick(View view) {
int itemPosition = followedTagsRecyclerView.getChildLayoutPosition(view); int itemPosition = followedTagsRecyclerView.getChildLayoutPosition(view);
if(itemPosition > -1 && itemPosition < followedTags.length) { if (itemPosition > -1 && itemPosition < followedTags.length) {
String tag = followedTags[itemPosition]; String tag = followedTags[itemPosition];
((MainActivity)getActivity()).openDiasporaUrl(urls.getSearchTagsUrl(tag)); ((MainActivity) getActivity()).openDiasporaUrl(urls.getSearchTagsUrl(tag));
} }
} }
}; };

View file

@ -251,8 +251,8 @@ public class PodSelectionFragment extends CustomFragment implements SearchView.O
MainActivity mainActivity = (MainActivity) getActivity(); MainActivity mainActivity = (MainActivity) getActivity();
DiasporaUrlHelper urlHelper = new DiasporaUrlHelper(appSettings); DiasporaUrlHelper urlHelper = new DiasporaUrlHelper(appSettings);
mainActivity.openDiasporaUrl(urlHelper.getSignInUrl());
mainActivity.invalidateOptionsMenu(); mainActivity.invalidateOptionsMenu();
mainActivity.openDiasporaUrl(urlHelper.getSignInUrl());
} }
} }

View file

@ -29,7 +29,7 @@ import com.github.dfa.diaspora_android.util.theming.ThemeHelper;
public abstract class ThemedFragment extends CustomFragment { public abstract class ThemedFragment extends CustomFragment {
protected AppSettings getAppSettings() { protected AppSettings getAppSettings() {
return ((App)getActivity().getApplication()).getSettings(); return ((App) getActivity().getApplication()).getSettings();
} }
protected abstract void applyColorToViews(); protected abstract void applyColorToViews();

View file

@ -58,7 +58,7 @@ public class OpenExternalLinkReceiver extends BroadcastReceiver {
String sUrl = receiveIntent.getStringExtra(MainActivity.EXTRA_URL); String sUrl = receiveIntent.getStringExtra(MainActivity.EXTRA_URL);
url = Uri.parse(sUrl); url = Uri.parse(sUrl);
} catch (Exception _ignored) { } catch (Exception _ignored) {
AppLog.v(this, "Could not open Chrome Custom Tab (bad URL)"); AppLog.v(this, "Could not open Chrome Custom Tab (bad URL)");
return; return;
} }

View file

@ -27,16 +27,12 @@ import android.support.v4.content.LocalBroadcastManager;
import com.github.dfa.diaspora_android.data.DiasporaPodList; import com.github.dfa.diaspora_android.data.DiasporaPodList;
import com.github.dfa.diaspora_android.util.AppLog; import com.github.dfa.diaspora_android.util.AppLog;
import org.json.JSONArray;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
import java.io.BufferedReader; import java.io.BufferedReader;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader; import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import javax.net.ssl.HttpsURLConnection; import javax.net.ssl.HttpsURLConnection;

View file

@ -22,12 +22,9 @@ import android.graphics.Bitmap;
import android.graphics.BitmapFactory; import android.graphics.BitmapFactory;
import android.os.AsyncTask; import android.os.AsyncTask;
import android.support.annotation.Nullable; import android.support.annotation.Nullable;
import com.github.dfa.diaspora_android.util.AppLog;
import com.github.dfa.diaspora_android.util.Log;
import android.widget.ImageView; import android.widget.ImageView;
import com.github.dfa.diaspora_android.App; import com.github.dfa.diaspora_android.util.AppLog;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.io.IOException; import java.io.IOException;
@ -80,7 +77,7 @@ public class ImageDownloadTask extends AsyncTask<String, Void, Bitmap> {
connection.disconnect(); connection.disconnect();
} catch (Exception e) { } catch (Exception e) {
AppLog.e(this, e.getMessage()); AppLog.e(this, e.getMessage());
} finally { } finally {
try { try {
if (out != null) { if (out != null) {

View file

@ -20,13 +20,11 @@ package com.github.dfa.diaspora_android.task;
import android.content.Context; import android.content.Context;
import android.os.AsyncTask; import android.os.AsyncTask;
import com.github.dfa.diaspora_android.util.AppLog;
import com.github.dfa.diaspora_android.util.Log;
import android.webkit.CookieManager; import android.webkit.CookieManager;
import com.github.dfa.diaspora_android.App; import com.github.dfa.diaspora_android.App;
import com.github.dfa.diaspora_android.data.PodUserProfile; import com.github.dfa.diaspora_android.data.PodUserProfile;
import com.github.dfa.diaspora_android.util.AppLog;
import com.github.dfa.diaspora_android.util.DiasporaUrlHelper; import com.github.dfa.diaspora_android.util.DiasporaUrlHelper;
import java.io.BufferedReader; import java.io.BufferedReader;
@ -62,7 +60,7 @@ public class ProfileFetchTask extends AsyncTask<Void, Void, Void> {
String extractedProfileData = null; String extractedProfileData = null;
final CookieManager cookieManager = app.getCookieManager(); final CookieManager cookieManager = app.getCookieManager();
String cookies = cookieManager.getCookie(urls.getPodUrl()); String cookies = cookieManager.getCookie(urls.getPodUrl());
AppLog.d(this, cookies); AppLog.d(this, cookies);
HttpsURLConnection connection; HttpsURLConnection connection;
InputStream inStream; InputStream inStream;
@ -88,10 +86,10 @@ public class ProfileFetchTask extends AsyncTask<Void, Void, Void> {
} }
} }
try{ try {
br.close(); br.close();
inStream.close(); inStream.close();
} catch (IOException e){/*Nothing*/} } catch (IOException e) {/*Nothing*/}
connection.disconnect(); connection.disconnect();
@ -103,7 +101,7 @@ public class ProfileFetchTask extends AsyncTask<Void, Void, Void> {
if (extractedProfileData != null) { if (extractedProfileData != null) {
PodUserProfile profile = new PodUserProfile(app); PodUserProfile profile = new PodUserProfile(app);
profile.parseJson(extractedProfileData); profile.parseJson(extractedProfileData);
AppLog.d(this, "Extracted new_messages (service):" + profile.getUnreadMessagesCount()); AppLog.d(this, "Extracted new_messages (service):" + profile.getUnreadMessagesCount());
} }
return null; return null;

View file

@ -20,12 +20,10 @@ package com.github.dfa.diaspora_android.task;
import android.content.Context; import android.content.Context;
import android.os.AsyncTask; import android.os.AsyncTask;
import com.github.dfa.diaspora_android.util.AppLog;
import com.github.dfa.diaspora_android.util.Log;
import android.webkit.CookieManager; import android.webkit.CookieManager;
import com.github.dfa.diaspora_android.App; import com.github.dfa.diaspora_android.App;
import com.github.dfa.diaspora_android.util.AppLog;
import com.github.dfa.diaspora_android.util.DiasporaUrlHelper; import com.github.dfa.diaspora_android.util.DiasporaUrlHelper;
import java.io.BufferedReader; import java.io.BufferedReader;
@ -79,13 +77,13 @@ public class StatisticsFetchTask extends AsyncTask<Void, Void, Void> {
BufferedReader br = new BufferedReader(new InputStreamReader(inStream)); BufferedReader br = new BufferedReader(new InputStreamReader(inStream));
String line; String line;
while ((line = br.readLine()) != null) { while ((line = br.readLine()) != null) {
AppLog.d(this, "STATS: "+line); AppLog.d(this, "STATS: " + line);
} }
try{ try {
br.close(); br.close();
inStream.close(); inStream.close();
} catch (IOException e){/*Nothing*/} } catch (IOException e) {/*Nothing*/}
connection.disconnect(); connection.disconnect();

View file

@ -47,7 +47,7 @@ public class BottomBarBehavior extends CoordinatorLayout.Behavior<LinearLayout>
if (defaultDependencyTop == -1) { if (defaultDependencyTop == -1) {
defaultDependencyTop = dependency.getTop(); defaultDependencyTop = dependency.getTop();
} }
if(dependency.getTop()<0) if (dependency.getTop() < 0)
child.setTranslationY(-dependency.getTop() + defaultDependencyTop); child.setTranslationY(-dependency.getTop() + defaultDependencyTop);
else else
child.setTranslationY(defaultDependencyTop); child.setTranslationY(defaultDependencyTop);

View file

@ -217,7 +217,7 @@ public class ContextMenuWebView extends NestedWebView {
} }
} }
public void loadUrlNew(String url){ public void loadUrlNew(String url) {
stopLoading(); stopLoading();
loadUrl(url); loadUrl(url);
} }

View file

@ -64,16 +64,16 @@ public class HtmlTextView extends TextView {
/** /**
* Linkify, format markdown and escape the displayed text. * Linkify, format markdown and escape the displayed text.
*/ */
private void init(){ private void init() {
formatHtmlAndCustomTags(); formatHtmlAndCustomTags();
} }
public void setTextFormatted(String text){ public void setTextFormatted(String text) {
setText(text); setText(text);
formatHtmlAndCustomTags(); formatHtmlAndCustomTags();
} }
private void formatHtmlAndCustomTags(){ private void formatHtmlAndCustomTags() {
setText(new SpannableString(Html.fromHtml(getText().toString()))); setText(new SpannableString(Html.fromHtml(getText().toString())));
Linkify.TransformFilter filter = new Linkify.TransformFilter() { Linkify.TransformFilter filter = new Linkify.TransformFilter() {
public final String transformUrl(final Matcher match, String url) { public final String transformUrl(final Matcher match, String url) {

View file

@ -9,6 +9,8 @@ import android.support.design.widget.AppBarLayout;
public interface IntellihideToolbarActivityListener { public interface IntellihideToolbarActivityListener {
int toolbarDefaultScrollFlags = AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL | AppBarLayout.LayoutParams.SCROLL_FLAG_ENTER_ALWAYS | AppBarLayout.LayoutParams.SCROLL_FLAG_SNAP; int toolbarDefaultScrollFlags = AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL | AppBarLayout.LayoutParams.SCROLL_FLAG_ENTER_ALWAYS | AppBarLayout.LayoutParams.SCROLL_FLAG_SNAP;
void enableToolbarHiding(); void enableToolbarHiding();
void disableToolbarHiding(); void disableToolbarHiding();
} }

View file

@ -153,12 +153,12 @@ public class PodSelectionDialog extends AppCompatDialogFragment {
public boolean checkInputs() { public boolean checkInputs() {
boolean ok = true; boolean ok = true;
String s = editPodAddress.getText().toString(); String s = editPodAddress.getText().toString();
if(TextUtils.isEmpty(s) || s.length() < 3){ if (TextUtils.isEmpty(s) || s.length() < 3) {
editPodAddress.setError(getString(R.string.missing_value)); editPodAddress.setError(getString(R.string.missing_value));
ok = false; ok = false;
} }
s = editPodName.getText().toString(); s = editPodName.getText().toString();
if(TextUtils.isEmpty(s) || s.length() < 3){ if (TextUtils.isEmpty(s) || s.length() < 3) {
editPodName.setError(getString(R.string.missing_value)); editPodName.setError(getString(R.string.missing_value));
ok = false; ok = false;
} }

View file

@ -26,7 +26,6 @@ import android.support.customtabs.CustomTabsClient;
import android.support.customtabs.CustomTabsIntent; import android.support.customtabs.CustomTabsIntent;
import android.support.customtabs.CustomTabsServiceConnection; import android.support.customtabs.CustomTabsServiceConnection;
import android.support.customtabs.CustomTabsSession; import android.support.customtabs.CustomTabsSession;
import android.util.Log;
import java.util.List; import java.util.List;
@ -43,10 +42,10 @@ public class CustomTabActivityHelper {
/** /**
* Opens the URL on a Custom Tab if possible. Otherwise fallsback to opening it on a WebView * Opens the URL on a Custom Tab if possible. Otherwise fallsback to opening it on a WebView
* *
* @param activity The host activity * @param activity The host activity
* @param customTabsIntent a CustomTabsIntent to be used if Custom Tabs is available * @param customTabsIntent a CustomTabsIntent to be used if Custom Tabs is available
* @param uri the Uri to be opened * @param uri the Uri to be opened
* @param fallback a CustomTabFallback to be used if Custom Tabs is not available * @param fallback a CustomTabFallback to be used if Custom Tabs is not available
*/ */
public static void openCustomTab(Activity activity, public static void openCustomTab(Activity activity,
CustomTabsIntent customTabsIntent, CustomTabsIntent customTabsIntent,
@ -68,6 +67,7 @@ public class CustomTabActivityHelper {
/** /**
* Unbinds the Activity from the Custom Tabs Service * Unbinds the Activity from the Custom Tabs Service
*
* @param activity the activity that is connected to the service * @param activity the activity that is connected to the service
*/ */
public void unbindCustomTabsService(Activity activity) { public void unbindCustomTabsService(Activity activity) {
@ -93,6 +93,7 @@ public class CustomTabActivityHelper {
/** /**
* Register a Callback to be called when connected or disconnected from the Custom Tabs Service * Register a Callback to be called when connected or disconnected from the Custom Tabs Service
*
* @param connectionCallback * @param connectionCallback
*/ */
public void setConnectionCallback(ConnectionCallback connectionCallback) { public void setConnectionCallback(ConnectionCallback connectionCallback) {
@ -101,6 +102,7 @@ public class CustomTabActivityHelper {
/** /**
* Binds the Activity to the Custom Tabs Service * Binds the Activity to the Custom Tabs Service
*
* @param activity the activity to be binded to the service * @param activity the activity to be binded to the service
*/ */
public void bindCustomTabsService(Activity activity) { public void bindCustomTabsService(Activity activity) {
@ -161,9 +163,8 @@ public class CustomTabActivityHelper {
*/ */
public interface CustomTabFallback { public interface CustomTabFallback {
/** /**
*
* @param activity The Activity that wants to open the Uri * @param activity The Activity that wants to open the Uri
* @param uri The uri to be opened by the fallback * @param uri The uri to be opened by the fallback
*/ */
void openUri(Activity activity, Uri uri); void openUri(Activity activity, Uri uri);
} }

View file

@ -26,7 +26,6 @@ import android.content.pm.ResolveInfo;
import android.net.Uri; import android.net.Uri;
import android.support.customtabs.CustomTabsService; import android.support.customtabs.CustomTabsService;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log;
import com.github.dfa.diaspora_android.util.AppLog; import com.github.dfa.diaspora_android.util.AppLog;
@ -47,13 +46,14 @@ public class CustomTabsHelper {
private static String sPackageNameToUse; private static String sPackageNameToUse;
private CustomTabsHelper() {} private CustomTabsHelper() {
}
/** /**
* Goes through all apps that handle VIEW intents and have a warmup service. Picks * Goes through all apps that handle VIEW intents and have a warmup service. Picks
* the one chosen by the user if there is one, otherwise makes a best effort to return a * the one chosen by the user if there is one, otherwise makes a best effort to return a
* valid package name. * valid package name.
* * <p>
* This is <strong>not</strong> threadsafe. * This is <strong>not</strong> threadsafe.
* *
* @param context {@link Context} to use for accessing {@link PackageManager}. * @param context {@link Context} to use for accessing {@link PackageManager}.
@ -107,6 +107,7 @@ public class CustomTabsHelper {
/** /**
* Used to check whether there is a specialized handler for a given intent. * Used to check whether there is a specialized handler for a given intent.
*
* @param intent The intent to check with. * @param intent The intent to check with.
* @return Whether there is a specialized handler for the given intent. * @return Whether there is a specialized handler for the given intent.
*/ */
@ -127,7 +128,7 @@ public class CustomTabsHelper {
return true; return true;
} }
} catch (RuntimeException e) { } catch (RuntimeException e) {
AppLog.e(TAG, "Runtime exception while getting specialized handlers"); AppLog.e(TAG, "Runtime exception while getting specialized handlers");
} }
return false; return false;
} }

View file

@ -21,7 +21,6 @@ package com.github.dfa.diaspora_android.util;
import com.github.dfa.diaspora_android.App; import com.github.dfa.diaspora_android.App;
import com.github.dfa.diaspora_android.R; import com.github.dfa.diaspora_android.R;
import com.github.dfa.diaspora_android.data.AppSettings; import com.github.dfa.diaspora_android.data.AppSettings;
import com.github.dfa.diaspora_android.data.DiasporaPodList;
import com.github.dfa.diaspora_android.data.DiasporaPodList.DiasporaPod; import com.github.dfa.diaspora_android.data.DiasporaPodList.DiasporaPod;
import com.github.dfa.diaspora_android.data.PodAspect; import com.github.dfa.diaspora_android.data.PodAspect;
@ -68,7 +67,7 @@ public class DiasporaUrlHelper {
*/ */
public String getPodUrl() { public String getPodUrl() {
DiasporaPod pod = settings.getPod(); DiasporaPod pod = settings.getPod();
if (pod != null){ if (pod != null) {
return pod.getPodUrl().getBaseUrl(); return pod.getPodUrl().getBaseUrl();
} }
return "http://127.0.0.1"; return "http://127.0.0.1";
@ -215,6 +214,7 @@ public class DiasporaUrlHelper {
/** /**
* Return a url that points to the statistics page of the pod. * Return a url that points to the statistics page of the pod.
*
* @return https://(pod-domain.tld)/statistics * @return https://(pod-domain.tld)/statistics
*/ */
public String getStatisticsUrl() { public String getStatisticsUrl() {
@ -223,6 +223,7 @@ public class DiasporaUrlHelper {
/** /**
* Return a url that points to the sign in page of the pod. * Return a url that points to the sign in page of the pod.
*
* @return https://(pod-domain.tld)/users/sign_in * @return https://(pod-domain.tld)/users/sign_in
*/ */
public String getSignInUrl() { public String getSignInUrl() {
@ -231,6 +232,7 @@ public class DiasporaUrlHelper {
/** /**
* Return a url that points to the personal settings page of the pod. * Return a url that points to the personal settings page of the pod.
*
* @return https://(pod-domain.tld)/user/edit * @return https://(pod-domain.tld)/user/edit
*/ */
public String getPersonalSettingsUrl() { public String getPersonalSettingsUrl() {
@ -239,6 +241,7 @@ public class DiasporaUrlHelper {
/** /**
* Return a url that points to the manage tags page of the pod. * Return a url that points to the manage tags page of the pod.
*
* @return https://(pod-domain.tld)/tag_followings/manage * @return https://(pod-domain.tld)/tag_followings/manage
*/ */
public String getManageTagsUrl() { public String getManageTagsUrl() {
@ -247,6 +250,7 @@ public class DiasporaUrlHelper {
/** /**
* Return a url that points to the manage tags page of the pod. * Return a url that points to the manage tags page of the pod.
*
* @return https://(pod-domain.tld)/contacts * @return https://(pod-domain.tld)/contacts
*/ */
public String getManageContactsUrl() { public String getManageContactsUrl() {

View file

@ -43,8 +43,9 @@ public class Log extends Observable {
private Log() { private Log() {
this(null); this(null);
} }
private Log(AppSettings appSettings) { private Log(AppSettings appSettings) {
if(appSettings != null) { if (appSettings != null) {
//TODO: Store/Restore logBuffer between app starts //TODO: Store/Restore logBuffer between app starts
logBuffer = new ArrayList<>(); logBuffer = new ArrayList<>();
} else { } else {
@ -55,17 +56,17 @@ public class Log extends Observable {
} }
public static Log getInstance() { public static Log getInstance() {
if(instance == null) instance = new Log(); if (instance == null) instance = new Log();
return instance; return instance;
} }
public static Log getInstance(AppSettings appSettings) { public static Log getInstance(AppSettings appSettings) {
if(instance == null) instance = new Log(appSettings); if (instance == null) instance = new Log(appSettings);
return instance; return instance;
} }
private static String time() { private static String time() {
return getInstance().dateFormat.format(new Date())+": "; return getInstance().dateFormat.format(new Date()) + ": ";
} }
public static void d(String tag, String msg) { public static void d(String tag, String msg) {
@ -116,23 +117,23 @@ public class Log extends Observable {
public synchronized static String getLogBuffer() { public synchronized static String getLogBuffer() {
String out = ""; String out = "";
for(String s : getInstance().logBuffer) { for (String s : getInstance().logBuffer) {
out = out + s + "\n"; out = out + s + "\n";
} }
return out; return out;
} }
private void notifyLogBufferChanged() { private void notifyLogBufferChanged() {
if(observers == null) return; if (observers == null) return;
for(Observer o : observers) { for (Observer o : observers) {
if(o != null) { if (o != null) {
o.update(this, null); o.update(this, null);
} }
} }
} }
private synchronized void addLogEntry(String msg) { private synchronized void addLogEntry(String msg) {
logBuffer.add(time()+msg); logBuffer.add(time() + msg);
while (logBuffer.size() > MAX_BUFFER_SIZE) { while (logBuffer.size() > MAX_BUFFER_SIZE) {
logBuffer.remove(0); logBuffer.remove(0);
} }

View file

@ -46,7 +46,7 @@ public class ProxyHandler {
} }
public static ProxyHandler getInstance() { public static ProxyHandler getInstance() {
if(instance == null) { if (instance == null) {
instance = new ProxyHandler(); instance = new ProxyHandler();
} }
return instance; return instance;
@ -77,7 +77,7 @@ public class ProxyHandler {
public void addWebView(WebView wv) { public void addWebView(WebView wv) {
AppLog.d(this, "AddWebView"); AppLog.d(this, "AddWebView");
if(wv != null && !webViews.contains(wv)) { if (wv != null && !webViews.contains(wv)) {
webViews.add(wv); webViews.add(wv);
updateWebViewProxySettings(wv, wv.getContext()); updateWebViewProxySettings(wv, wv.getContext());
} }
@ -89,7 +89,7 @@ public class ProxyHandler {
StrictMode.ThreadPolicy old = StrictMode.getThreadPolicy(); StrictMode.ThreadPolicy old = StrictMode.getThreadPolicy();
StrictMode.ThreadPolicy tmp = new StrictMode.ThreadPolicy.Builder().permitAll().build(); StrictMode.ThreadPolicy tmp = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(tmp); StrictMode.setThreadPolicy(tmp);
if(appSettings.isProxyEnabled()) { if (appSettings.isProxyEnabled()) {
if (wv != null) { if (wv != null) {
try { try {
WebkitProxy.setProxy(MainActivity.class.getName(), context.getApplicationContext(), wv, appSettings.getProxyHost(), appSettings.getProxyPort()); WebkitProxy.setProxy(MainActivity.class.getName(), context.getApplicationContext(), wv, appSettings.getProxyHost(), appSettings.getProxyPort());

View file

@ -29,7 +29,6 @@ import android.webkit.WebView;
import com.github.dfa.diaspora_android.App; import com.github.dfa.diaspora_android.App;
import com.github.dfa.diaspora_android.R; import com.github.dfa.diaspora_android.R;
import com.github.dfa.diaspora_android.data.AppSettings; import com.github.dfa.diaspora_android.data.AppSettings;
import com.github.dfa.diaspora_android.data.DiasporaPodList;
import com.github.dfa.diaspora_android.data.PodAspect; import com.github.dfa.diaspora_android.data.PodAspect;
import com.github.dfa.diaspora_android.data.PodUserProfile; import com.github.dfa.diaspora_android.data.PodUserProfile;
@ -47,14 +46,14 @@ public class WebHelper {
return ni != null && ni.isConnectedOrConnecting(); return ni != null && ni.isConnectedOrConnecting();
} }
public static String replaceUrlWithMarkdown(String url){ public static String replaceUrlWithMarkdown(String url) {
if( url != null && URLUtil.isHttpUrl(url) || URLUtil.isHttpsUrl(url)){ if (url != null && URLUtil.isHttpUrl(url) || URLUtil.isHttpsUrl(url)) {
return "<" + url + ">"; return "<" + url + ">";
} }
return url; return url;
} }
public static String escapeHtmlText(String text){ public static String escapeHtmlText(String text) {
text = Html.escapeHtml(text); text = Html.escapeHtml(text);
text = text.replace("\n", "&#10;"); text = text.replace("\n", "&#10;");
return text; return text;
@ -96,7 +95,7 @@ public class WebHelper {
"})();"); "})();");
} }
public static void shareTextIntoWebView(final WebView webView, String sharedText){ public static void shareTextIntoWebView(final WebView webView, String sharedText) {
sharedText = sharedText.replace("'", "&apos;").replace("\"", "&quot;"); sharedText = sharedText.replace("'", "&apos;").replace("\"", "&quot;");
webView.loadUrl("javascript:(function() { " + webView.loadUrl("javascript:(function() { " +
" document.documentElement.style.paddingBottom = '500px';" + " document.documentElement.style.paddingBottom = '500px';" +
@ -146,7 +145,7 @@ public class WebHelper {
"<a href='%s/followed_tags' style='color: #000000; text-decoration: none;'><b>%s</b></a>", "<a href='%s/followed_tags' style='color: #000000; text-decoration: none;'><b>%s</b></a>",
pod0BaseUrl, app.getString(R.string.all_tags))); pod0BaseUrl, app.getString(R.string.all_tags)));
sb.append("<hr style='height:5px;' />"); sb.append("<hr style='height:5px;' />");
for (String tag: profile.getFollowedTags()) { for (String tag : profile.getFollowedTags()) {
sb.append("<span style='margin-left: 30px; '></span>&raquo; &nbsp;"); sb.append("<span style='margin-left: 30px; '></span>&raquo; &nbsp;");
sb.append(String.format(Locale.getDefault(), sb.append(String.format(Locale.getDefault(),
"<a href='%s/tags/%s' style='color: #000000; text-decoration: none;'>#%s</a>", "<a href='%s/tags/%s' style='color: #000000; text-decoration: none;'>#%s</a>",

View file

@ -12,7 +12,7 @@ import com.github.dfa.diaspora_android.R;
*/ */
public class ColorPalette { public class ColorPalette {
public static int[] getAccentColors(Context context){ public static int[] getAccentColors(Context context) {
return new int[]{ return new int[]{
ContextCompat.getColor(context, R.color.md_red_500), ContextCompat.getColor(context, R.color.md_red_500),
ContextCompat.getColor(context, R.color.md_purple_500), ContextCompat.getColor(context, R.color.md_purple_500),
@ -30,7 +30,7 @@ public class ColorPalette {
}; };
} }
public static int getObscuredColor(int c){ public static int getObscuredColor(int c) {
float[] hsv = new float[3]; float[] hsv = new float[3];
int color = c; int color = c;
Color.colorToHSV(color, hsv); Color.colorToHSV(color, hsv);
@ -39,14 +39,14 @@ public class ColorPalette {
return color; return color;
} }
public static int getTransparentColor(int color, int alpha){ public static int getTransparentColor(int color, int alpha) {
return ColorUtils.setAlphaComponent(color, alpha); return ColorUtils.setAlphaComponent(color, alpha);
} }
public static int[] getTransparencyShadows(int color) { public static int[] getTransparencyShadows(int color) {
int[] shadows = new int[10]; int[] shadows = new int[10];
for (int i=0; i<10;i++) for (int i = 0; i < 10; i++)
shadows[i]= (ColorPalette.getTransparentColor(color, ((100-(i*10))*255) /100)); shadows[i] = (ColorPalette.getTransparentColor(color, ((100 - (i * 10)) * 255) / 100));
return shadows; return shadows;
} }

View file

@ -47,51 +47,52 @@ public class ThemeHelper {
} }
public static ThemeHelper getInstance(AppSettings appSettings) { public static ThemeHelper getInstance(AppSettings appSettings) {
if(instance == null) { if (instance == null) {
instance = new ThemeHelper(appSettings); instance = new ThemeHelper(appSettings);
} }
return instance; return instance;
} }
public static ThemeHelper getInstance() { public static ThemeHelper getInstance() {
if(instance == null) throw new IllegalStateException("ThemeHelper must be initialized using getInstance(AppSettings) before it can be used!"); if (instance == null)
throw new IllegalStateException("ThemeHelper must be initialized using getInstance(AppSettings) before it can be used!");
return instance; return instance;
} }
public static void updateEditTextColor(EditText editText) { public static void updateEditTextColor(EditText editText) {
if(editText != null) { if (editText != null) {
editText.setHighlightColor(getInstance().appSettings.getAccentColor()); editText.setHighlightColor(getInstance().appSettings.getAccentColor());
} }
} }
public static void updateCheckBoxColor(CheckBox checkBox) { public static void updateCheckBoxColor(CheckBox checkBox) {
if(checkBox != null) { if (checkBox != null) {
checkBox.setHighlightColor(getInstance().appSettings.getAccentColor()); checkBox.setHighlightColor(getInstance().appSettings.getAccentColor());
} }
} }
public static void updateTabLayoutColor(TabLayout tabLayout) { public static void updateTabLayoutColor(TabLayout tabLayout) {
if(tabLayout != null) { if (tabLayout != null) {
tabLayout.setBackgroundColor(getInstance().appSettings.getPrimaryColor()); tabLayout.setBackgroundColor(getInstance().appSettings.getPrimaryColor());
tabLayout.setSelectedTabIndicatorColor(getInstance().appSettings.getAccentColor()); tabLayout.setSelectedTabIndicatorColor(getInstance().appSettings.getAccentColor());
} }
} }
public static void updateTextViewColor(TextView textView) { public static void updateTextViewColor(TextView textView) {
if(textView != null) { if (textView != null) {
textView.setHighlightColor(getInstance().appSettings.getAccentColor()); textView.setHighlightColor(getInstance().appSettings.getAccentColor());
textView.setLinkTextColor(getInstance().appSettings.getAccentColor()); textView.setLinkTextColor(getInstance().appSettings.getAccentColor());
} }
} }
public static void updateToolbarColor(Toolbar toolbar) { public static void updateToolbarColor(Toolbar toolbar) {
if(toolbar != null) { if (toolbar != null) {
toolbar.setBackgroundColor(getInstance().appSettings.getPrimaryColor()); toolbar.setBackgroundColor(getInstance().appSettings.getPrimaryColor());
} }
} }
public static void updateActionMenuViewColor(ActionMenuView actionMenuView) { public static void updateActionMenuViewColor(ActionMenuView actionMenuView) {
if(actionMenuView != null) { if (actionMenuView != null) {
actionMenuView.setBackgroundColor(getInstance().appSettings.getPrimaryColor()); actionMenuView.setBackgroundColor(getInstance().appSettings.getPrimaryColor());
} }
} }
@ -105,7 +106,7 @@ public class ThemeHelper {
} }
public static void setPrimaryColorAsBackground(View view) { public static void setPrimaryColorAsBackground(View view) {
if(view != null) { if (view != null) {
view.setBackgroundColor(getPrimaryColor()); view.setBackgroundColor(getPrimaryColor());
} }
} }
@ -115,13 +116,13 @@ public class ThemeHelper {
} }
public static void updateActionBarColor(ActionBar actionBar) { public static void updateActionBarColor(ActionBar actionBar) {
if(actionBar != null) { if (actionBar != null) {
actionBar.setBackgroundDrawable(new ColorDrawable(getInstance().appSettings.getPrimaryColor())); actionBar.setBackgroundDrawable(new ColorDrawable(getInstance().appSettings.getPrimaryColor()));
} }
} }
public static void updateProgressBarColor(ProgressBar progressBar) { public static void updateProgressBarColor(ProgressBar progressBar) {
if(progressBar != null && progressBar.getProgressDrawable() != null) { if (progressBar != null && progressBar.getProgressDrawable() != null) {
progressBar.getProgressDrawable().setColorFilter(getAccentColor(), PorterDuff.Mode.SRC_IN); progressBar.getProgressDrawable().setColorFilter(getAccentColor(), PorterDuff.Mode.SRC_IN);
} }
} }

View file

@ -57,6 +57,7 @@ public class DiasporaStreamWebChromeClient extends FileUploadWebChromeClient {
public interface SharedTextCallback { public interface SharedTextCallback {
String getSharedText(); String getSharedText();
void setSharedText(String shared); void setSharedText(String shared);
} }
} }

View file

@ -42,8 +42,7 @@ public class FileUploadWebChromeClient extends ProgressBarWebChromeClient {
//For Android 4.1/4.2 only. DO NOT REMOVE! //For Android 4.1/4.2 only. DO NOT REMOVE!
@SuppressWarnings("unused") @SuppressWarnings("unused")
protected void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType, String capture) protected void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType, String capture) {
{
fileUploadCallback.legacyImageUpload(uploadMsg, acceptType, capture); fileUploadCallback.legacyImageUpload(uploadMsg, acceptType, capture);
} }
@ -54,6 +53,7 @@ public class FileUploadWebChromeClient extends ProgressBarWebChromeClient {
public interface FileUploadCallback { public interface FileUploadCallback {
boolean imageUpload(WebView webView, ValueCallback<Uri[]> filePathCallback, FileChooserParams fileChooserParams); boolean imageUpload(WebView webView, ValueCallback<Uri[]> filePathCallback, FileChooserParams fileChooserParams);
void legacyImageUpload(ValueCallback<Uri> uploadMsg, String acceptType, String capture); void legacyImageUpload(ValueCallback<Uri> uploadMsg, String acceptType, String capture);
} }
} }

View file

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main_content" android:id="@+id/main_content"
@ -16,24 +15,23 @@
android:theme="@style/AppTheme.AppBarOverlay"> android:theme="@style/AppTheme.AppBarOverlay">
<LinearLayout <LinearLayout
android:id="@+id/appbar_linear_layout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:id="@+id/appbar_linear_layout"
android:orientation="vertical"
android:background="?attr/colorPrimary" android:background="?attr/colorPrimary"
android:orientation="vertical"
app:layout_scrollFlags="scroll|enterAlways|snap" app:layout_scrollFlags="scroll|enterAlways|snap"
app:popupTheme="@style/AppTheme.PopupOverlay"> app:popupTheme="@style/AppTheme.PopupOverlay">
<android.support.v7.widget.Toolbar <android.support.v7.widget.Toolbar
android:id="@+id/main__topbar"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content" />
android:id="@+id/main__topbar"/>
<android.support.design.widget.TabLayout <android.support.design.widget.TabLayout
android:id="@+id/tabs" android:id="@+id/tabs"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content" />
/>
</LinearLayout> </LinearLayout>
</android.support.design.widget.AppBarLayout> </android.support.design.widget.AppBarLayout>

View file

@ -19,16 +19,16 @@
<TextView <TextView
android:id="@+id/fragment_about__app_name" android:id="@+id/fragment_about__app_name"
style="@android:style/TextAppearance.DeviceDefault.Large"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textAlignment="center"
android:text="@string/diaspora_for_android" android:text="@string/diaspora_for_android"
style="@android:style/TextAppearance.DeviceDefault.Large"/> android:textAlignment="center" />
<TextView <TextView
android:id="@+id/fragment_about__app_version"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content" />
android:id="@+id/fragment_about__app_version"/>
<android.support.v4.widget.Space <android.support.v4.widget.Space
android:layout_width="match_parent" android:layout_width="match_parent"
@ -36,10 +36,10 @@
<com.github.dfa.diaspora_android.ui.HtmlTextView <com.github.dfa.diaspora_android.ui.HtmlTextView
android:id="@+id/fragment_about__about_text" android:id="@+id/fragment_about__about_text"
style="@android:style/TextAppearance.DeviceDefault.Small"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/fragment_about__about_content" android:linksClickable="true"
style="@android:style/TextAppearance.DeviceDefault.Small" android:text="@string/fragment_about__about_content" />
android:linksClickable="true" />
</LinearLayout> </LinearLayout>
</android.support.v4.widget.NestedScrollView> </android.support.v4.widget.NestedScrollView>

View file

@ -20,74 +20,77 @@
<!-- APP SECTION --> <!-- APP SECTION -->
<TextView <TextView
android:id="@+id/fragment_debug__section_app" android:id="@+id/fragment_debug__section_app"
style="@android:style/TextAppearance.DeviceDefault.Large"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/fragment_debug__section_app" android:text="@string/fragment_debug__section_app" />
style="@android:style/TextAppearance.DeviceDefault.Large"/>
<TextView <TextView
android:id="@+id/fragment_debug__package_name"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content" />
android:id="@+id/fragment_debug__package_name"/>
<TextView <TextView
android:id="@+id/fragment_debug__app_version"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content" />
android:id="@+id/fragment_debug__app_version"/>
<!-- DEVICE SECTION --> <!-- DEVICE SECTION -->
<TextView <TextView
android:id="@+id/fragment_debug__section_device" android:id="@+id/fragment_debug__section_device"
style="@android:style/TextAppearance.DeviceDefault.Large"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/fragment_debug__section_device"
android:paddingTop="@dimen/activity_vertical_margin" android:paddingTop="@dimen/activity_vertical_margin"
style="@android:style/TextAppearance.DeviceDefault.Large"/> android:text="@string/fragment_debug__section_device" />
<TextView <TextView
android:id="@+id/fragment_debug__android_version"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content" />
android:id="@+id/fragment_debug__android_version"/>
<TextView <TextView
android:id="@+id/fragment_debug__device_name"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content" />
android:id="@+id/fragment_debug__device_name"/>
<!-- POD SECTION --> <!-- POD SECTION -->
<TextView <TextView
android:id="@+id/fragment_debug__section_pod" android:id="@+id/fragment_debug__section_pod"
style="@android:style/TextAppearance.DeviceDefault.Large"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/fragment_debug__section_pod"
android:paddingTop="@dimen/activity_vertical_margin" android:paddingTop="@dimen/activity_vertical_margin"
style="@android:style/TextAppearance.DeviceDefault.Large"/> android:text="@string/fragment_debug__section_pod" />
<TextView <TextView
android:id="@+id/fragment_debug__pod_domain"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content" />
android:id="@+id/fragment_debug__pod_domain"/>
<!-- LOG SECTION --> <!-- LOG SECTION -->
<TextView <TextView
android:id="@+id/fragment_debug__section_log" android:id="@+id/fragment_debug__section_log"
style="@android:style/TextAppearance.DeviceDefault.Large"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/fragment_debug__section_log"
android:paddingTop="@dimen/activity_vertical_margin" android:paddingTop="@dimen/activity_vertical_margin"
style="@android:style/TextAppearance.DeviceDefault.Large"/> android:text="@string/fragment_debug__section_log" />
<ScrollView <ScrollView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"> android:layout_height="wrap_content">
<HorizontalScrollView <HorizontalScrollView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"> android:layout_height="wrap_content">
<TextView <TextView
android:id="@+id/fragment_debug__log_box"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:clickable="true" android:clickable="true"
android:longClickable="true" android:longClickable="true" />
android:id="@+id/fragment_debug__log_box" />
</HorizontalScrollView> </HorizontalScrollView>
</ScrollView> </ScrollView>
</LinearLayout> </LinearLayout>

View file

@ -16,32 +16,33 @@
<android.support.v4.widget.Space <android.support.v4.widget.Space
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/activity_vertical_margin" /> android:layout_height="@dimen/activity_vertical_margin" />
<TextView <TextView
style="@android:style/TextAppearance.DeviceDefault.Large"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/fragment_license__copyright_years" android:text="@string/fragment_license__copyright_years" />
style="@android:style/TextAppearance.DeviceDefault.Large"/>
<com.github.dfa.diaspora_android.ui.HtmlTextView <com.github.dfa.diaspora_android.ui.HtmlTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/fragment_license__licensetext" android:id="@+id/fragment_license__licensetext"
android:text="@string/fragment_license__license_content"
style="@android:style/TextAppearance.DeviceDefault.Small" style="@android:style/TextAppearance.DeviceDefault.Small"
android:linksClickable="true" /> android:layout_width="match_parent"
android:layout_height="wrap_content"
android:linksClickable="true"
android:text="@string/fragment_license__license_content" />
<TextView <TextView
style="@android:style/TextAppearance.DeviceDefault.Large"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/fragment_license__3rd_party_libs_title"
android:paddingTop="@dimen/activity_vertical_margin" android:paddingTop="@dimen/activity_vertical_margin"
style="@android:style/TextAppearance.DeviceDefault.Large"/> android:text="@string/fragment_license__3rd_party_libs_title" />
<com.github.dfa.diaspora_android.ui.HtmlTextView <com.github.dfa.diaspora_android.ui.HtmlTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/fragment_license__3rdparty" android:id="@+id/fragment_license__3rdparty"
style="@android:style/TextAppearance.DeviceDefault.Small" style="@android:style/TextAppearance.DeviceDefault.Small"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:linksClickable="true" /> android:linksClickable="true" />
</LinearLayout> </LinearLayout>
</android.support.v4.widget.NestedScrollView> </android.support.v4.widget.NestedScrollView>

View file

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
@ -15,6 +14,6 @@
android:layout_width="fill_parent" android:layout_width="fill_parent"
android:layout_height="7dp" android:layout_height="7dp"
android:indeterminate="false" android:indeterminate="false"
android:progressDrawable="@drawable/progressbar"/> android:progressDrawable="@drawable/progressbar" />
</RelativeLayout> </RelativeLayout>

View file

@ -1,35 +1,38 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent"
android:orientation="vertical">
<FrameLayout <FrameLayout
android:id="@+id/color_picker_dialog__title_background" android:id="@+id/color_picker_dialog__title_background"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"> android:layout_height="wrap_content">
<TextView <TextView
android:id="@+id/color_picker_dialog__title" android:id="@+id/color_picker_dialog__title"
android:layout_margin="20dp"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:textAppearance="@style/TextAppearance.AppCompat.Large.Inverse" android:layout_margin="20dp"
/> android:textAppearance="@style/TextAppearance.AppCompat.Large.Inverse" />
</FrameLayout> </FrameLayout>
<uz.shift.colorpicker.LineColorPicker <uz.shift.colorpicker.LineColorPicker
android:id="@+id/color_picker_dialog__base_picker" android:id="@+id/color_picker_dialog__base_picker"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="60dp" android:layout_height="60dp"
android:layout_marginTop="20dp"
android:layout_margin="10dp" android:layout_margin="10dp"
app:orientation="horizontal"/> android:layout_marginTop="20dp"
app:orientation="horizontal" />
<uz.shift.colorpicker.LineColorPicker <uz.shift.colorpicker.LineColorPicker
android:id="@+id/color_picker_dialog__shade_picker" android:id="@+id/color_picker_dialog__shade_picker"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="40dp" android:layout_height="40dp"
android:layout_marginTop="30dp"
android:layout_margin="10dp" android:layout_margin="10dp"
android:layout_marginBottom="10dp" android:layout_marginBottom="10dp"
app:orientation="horizontal"/> android:layout_marginTop="30dp"
app:orientation="horizontal" />
</LinearLayout> </LinearLayout>

View file

@ -1,27 +1,30 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent">
xmlns:app="http://schemas.android.com/apk/res-auto">
<android.support.v4.widget.NestedScrollView <android.support.v4.widget.NestedScrollView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:orientation="vertical"> android:orientation="vertical">
<android.support.v7.widget.RecyclerView <android.support.v7.widget.RecyclerView
android:id="@+id/fragment_followed_tags__recycler_view" android:id="@+id/fragment_followed_tags__recycler_view"
android:scrollbars="vertical"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/> android:scrollbars="vertical"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
<!-- Offset --> <!-- Offset -->
<android.support.v4.widget.Space <android.support.v4.widget.Space
android:id="@+id/spacer" android:id="@+id/spacer"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/bottom_toolbar_height"/> android:layout_height="@dimen/bottom_toolbar_height" />
</LinearLayout> </LinearLayout>
</android.support.v4.widget.NestedScrollView> </android.support.v4.widget.NestedScrollView>
</RelativeLayout> </RelativeLayout>

View file

@ -19,10 +19,10 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_gravity="start" android:layout_gravity="start"
android:fitsSystemWindows="true" android:fitsSystemWindows="true"
app:itemTextColor="@color/primary_text"
app:paddingEnd="0dp"
app:paddingStart="0dp"
app:headerLayout="@layout/main__nav_header" app:headerLayout="@layout/main__nav_header"
app:menu="@menu/main__navdrawer" /> app:itemTextColor="@color/primary_text"
app:menu="@menu/main__navdrawer"
app:paddingEnd="0dp"
app:paddingStart="0dp" />
</android.support.v4.widget.DrawerLayout> </android.support.v4.widget.DrawerLayout>

View file

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
@ -19,7 +18,7 @@
android:layout_height="?attr/actionBarSize" android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary" android:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways|snap" app:layout_scrollFlags="scroll|enterAlways|snap"
app:popupTheme="@style/AppTheme.PopupOverlay"/> app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout> </android.support.design.widget.AppBarLayout>
@ -27,7 +26,7 @@
android:id="@+id/fragment_container" android:id="@+id/fragment_container"
android:layout_width="fill_parent" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:layout_height="fill_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/> app:layout_behavior="@string/appbar_scrolling_view_behavior" />
<android.support.design.widget.AppBarLayout <android.support.design.widget.AppBarLayout
android:layout_width="match_parent" android:layout_width="match_parent"
@ -43,7 +42,7 @@
android:background="@color/colorPrimary" android:background="@color/colorPrimary"
android:theme="@style/BottomToolbarMenuOverflowStyle" android:theme="@style/BottomToolbarMenuOverflowStyle"
app:layout_scrollFlags="scroll|enterAlways|snap" app:layout_scrollFlags="scroll|enterAlways|snap"
app:popupTheme="@style/Theme.AppCompat.NoActionBar"/> app:popupTheme="@style/Theme.AppCompat.NoActionBar" />
</android.support.design.widget.AppBarLayout> </android.support.design.widget.AppBarLayout>

View file

@ -3,18 +3,18 @@
android:id="@+id/nav_drawer" android:id="@+id/nav_drawer"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="110dp" android:layout_height="110dp"
android:background="@color/colorPrimary"
android:gravity="bottom" android:gravity="bottom"
android:orientation="vertical" android:orientation="vertical"
android:background="@color/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark"> android:theme="@style/ThemeOverlay.AppCompat.Dark">
<!-- <!--
<ImageView <ImageView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:scaleType="centerCrop" android:scaleType="centerCrop"
android:src="@drawable/header" /> android:src="@drawable/header" />
--> -->
<LinearLayout <LinearLayout
android:id="@+id/nav_profile_picture" android:id="@+id/nav_profile_picture"

View file

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<ScrollView <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
@ -21,21 +20,21 @@
android:layout_marginTop="@dimen/activity_vertical_margin" android:layout_marginTop="@dimen/activity_vertical_margin"
android:text="@string/profile" android:text="@string/profile"
android:textAppearance="@style/AppTheme.TextAppearance.Caption" android:textAppearance="@style/AppTheme.TextAppearance.Caption"
android:visibility="gone"/> android:visibility="gone" />
<Spinner <Spinner
android:id="@+id/podselection__dialog__spinner_profile" android:id="@+id/podselection__dialog__spinner_profile"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="@dimen/activity_horizontal_margin_half" android:layout_marginStart="@dimen/activity_horizontal_margin_half"
android:visibility="gone"/> android:visibility="gone" />
<TextView <TextView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/activity_horizontal_margin_half" android:layout_marginTop="@dimen/activity_horizontal_margin_half"
android:text="@string/pod_name" android:text="@string/pod_name"
android:textAppearance="@style/AppTheme.TextAppearance.Caption"/> android:textAppearance="@style/AppTheme.TextAppearance.Caption" />
<EditText <EditText
android:id="@+id/podselection__dialog__edit_podname" android:id="@+id/podselection__dialog__edit_podname"
@ -46,14 +45,14 @@
android:hint="@string/pod_name" android:hint="@string/pod_name"
android:inputType="textPersonName" android:inputType="textPersonName"
android:textAppearance="@style/TextAppearance.AppCompat.Medium" android:textAppearance="@style/TextAppearance.AppCompat.Medium"
tools:text="Geraspora"/> tools:text="Geraspora" />
<TextView <TextView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/activity_horizontal_margin_half" android:layout_marginTop="@dimen/activity_horizontal_margin_half"
android:text="@string/pod_address" android:text="@string/pod_address"
android:textAppearance="@style/AppTheme.TextAppearance.Caption"/> android:textAppearance="@style/AppTheme.TextAppearance.Caption" />
<EditText <EditText
android:id="@+id/podselection__dialog__edit_podaddress" android:id="@+id/podselection__dialog__edit_podaddress"
@ -64,14 +63,14 @@
android:hint="@string/pod_address" android:hint="@string/pod_address"
android:inputType="textPersonName" android:inputType="textPersonName"
android:textAppearance="@style/TextAppearance.AppCompat.Medium" android:textAppearance="@style/TextAppearance.AppCompat.Medium"
tools:text="pod.geraspora.de"/> tools:text="pod.geraspora.de" />
<TextView <TextView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/activity_horizontal_margin_half" android:layout_marginTop="@dimen/activity_horizontal_margin_half"
android:text="@string/http_protocol" android:text="@string/http_protocol"
android:textAppearance="@style/AppTheme.TextAppearance.Caption"/> android:textAppearance="@style/AppTheme.TextAppearance.Caption" />
<RadioGroup <RadioGroup
android:id="@+id/podselection__dialog__radiogroup_protocol" android:id="@+id/podselection__dialog__radiogroup_protocol"
@ -86,14 +85,14 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:layout_weight="1"
android:text="http"/> android:text="http" />
<RadioButton <RadioButton
android:id="@+id/podselection__dialog__radio_https" android:id="@+id/podselection__dialog__radio_https"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:layout_weight="1"
android:text="https"/> android:text="https" />
</RadioGroup> </RadioGroup>
@ -107,14 +106,14 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:layout_weight="1"
android:text="@android:string/cancel"/> android:text="@android:string/cancel" />
<Button <Button
android:id="@+id/podselection__dialog__btn_ok" android:id="@+id/podselection__dialog__btn_ok"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:layout_weight="1"
android:text="@android:string/ok"/> android:text="@android:string/ok" />
</LinearLayout> </LinearLayout>

View file

@ -1,15 +1,15 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:orientation="vertical" android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin" android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"> app:layout_behavior="@string/appbar_scrolling_view_behavior">
<Button <Button
android:id="@+id/podselection__fragment__button_use_custom_pod" android:id="@+id/podselection__fragment__button_use_custom_pod"
@ -17,7 +17,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentTop="true" android:layout_alignParentTop="true"
android:text="@string/podselection__custom_pod" android:text="@string/podselection__custom_pod"
tools:text="Benutzerdefinierter Pod"/> tools:text="Benutzerdefinierter Pod" />
<ListView <ListView
@ -26,7 +26,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentBottom="true" android:layout_alignParentBottom="true"
android:layout_below="@+id/podselection__fragment__button_use_custom_pod" android:layout_below="@+id/podselection__fragment__button_use_custom_pod"
android:choiceMode="singleChoice"/> android:choiceMode="singleChoice" />
</RelativeLayout> </RelativeLayout>

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/recycler_view__list_item__root"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:id="@+id/recycler_view__list_item__root"
android:orientation="vertical"> android:orientation="vertical">
<View <View

View file

@ -1,9 +1,10 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_height="match_parent"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"> android:orientation="vertical">
<android.support.design.widget.AppBarLayout <android.support.design.widget.AppBarLayout
android:id="@+id/settings__appbar" android:id="@+id/settings__appbar"
android:layout_width="match_parent" android:layout_width="match_parent"
@ -16,13 +17,13 @@
android:layout_height="?attr/actionBarSize" android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary" android:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways|snap" app:layout_scrollFlags="scroll|enterAlways|snap"
app:popupTheme="@style/AppTheme.PopupOverlay"/> app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout> </android.support.design.widget.AppBarLayout>
<FrameLayout <FrameLayout
android:id="@+id/settings__fragment_container" android:id="@+id/settings__fragment_container"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/> app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</LinearLayout> </LinearLayout>

View file

@ -1,14 +1,16 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_gravity="center_horizontal" android:layout_height="match_parent"
android:paddingStart="@dimen/activity_horizontal_margin_half" android:paddingEnd="@dimen/activity_horizontal_margin_half"> android:layout_gravity="center_horizontal"
android:orientation="vertical"
android:paddingEnd="@dimen/activity_horizontal_margin_half"
android:paddingStart="@dimen/activity_horizontal_margin_half">
<EditText <EditText
android:id="@+id/dialog_search__input" android:id="@+id/dialog_search__input"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:singleLine="true"
android:hint="@string/app_hashtag" android:hint="@string/app_hashtag"
/> android:maxLines="1" />
</LinearLayout> </LinearLayout>

View file

@ -1,7 +1,7 @@
{ {
"pods": [ "pods": [
{ {
"active6": 10775, "active6": 11683,
"score": 20, "score": 20,
"podUrls": [ "podUrls": [
{"host": "joindiaspora.com"}, {"host": "joindiaspora.com"},
@ -16,7 +16,7 @@
"id": 38077 "id": 38077
}, },
{ {
"active6": 7260, "active6": 7194,
"score": 20, "score": 20,
"podUrls": [{"host": "pod.geraspora.de"}], "podUrls": [{"host": "pod.geraspora.de"}],
"name": "Geraspora", "name": "Geraspora",
@ -24,15 +24,15 @@
"id": 24783 "id": 24783
}, },
{ {
"active6": 0, "active6": 3712,
"score": 0, "score": 20,
"podUrls": [{"host": "diasp.org"}], "podUrls": [{"host": "diasp.org"}],
"name": "diasporg*", "name": "diasporg*",
"mainLangs": [], "mainLangs": [],
"id": 12688 "id": 12688
}, },
{ {
"active6": 9039, "active6": 9849,
"score": 20, "score": 20,
"podUrls": [{"host": "framasphere.org"}], "podUrls": [{"host": "framasphere.org"}],
"name": "Framasphere", "name": "Framasphere",
@ -40,7 +40,7 @@
"id": 38776 "id": 38776
}, },
{ {
"active6": 540, "active6": 519,
"score": 20, "score": 20,
"podUrls": [{"host": "nerdpol.ch"}], "podUrls": [{"host": "nerdpol.ch"}],
"name": "nerdpol.ch*", "name": "nerdpol.ch*",
@ -48,7 +48,7 @@
"id": 17343 "id": 17343
}, },
{ {
"active6": 859, "active6": 858,
"score": 20, "score": 20,
"podUrls": [{"host": "despora.de"}], "podUrls": [{"host": "despora.de"}],
"name": "Despora*", "name": "Despora*",
@ -56,7 +56,7 @@
"id": 6695 "id": 6695
}, },
{ {
"active6": 626, "active6": 611,
"score": 20, "score": 20,
"podUrls": [ "podUrls": [
{"host": "sechat.org"}, {"host": "sechat.org"},
@ -87,7 +87,7 @@
"id": 25432 "id": 25432
}, },
{ {
"active6": 179, "active6": 175,
"score": 20, "score": 20,
"podUrls": [{"host": "berlinspora.de"}], "podUrls": [{"host": "berlinspora.de"}],
"name": "berlinspora.de", "name": "berlinspora.de",
@ -159,7 +159,7 @@
"id": 13926 "id": 13926
}, },
{ {
"active6": 146, "active6": 143,
"score": 20, "score": 20,
"podUrls": [{"host": "diasp.ca"}], "podUrls": [{"host": "diasp.ca"}],
"name": "diasp.ca", "name": "diasp.ca",
@ -199,7 +199,7 @@
"id": 4343 "id": 4343
}, },
{ {
"active6": 199, "active6": 214,
"score": 20, "score": 20,
"podUrls": [{"host": "diasp.nl"}], "podUrls": [{"host": "diasp.nl"}],
"name": "diasp.nl", "name": "diasp.nl",
@ -207,7 +207,7 @@
"id": 33262 "id": 33262
}, },
{ {
"active6": 234, "active6": 217,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspod.de"}], "podUrls": [{"host": "diaspod.de"}],
"name": "diaspod.de", "name": "diaspod.de",
@ -231,7 +231,7 @@
"id": 13402 "id": 13402
}, },
{ {
"active6": 30, "active6": 34,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.bohramt.de"}], "podUrls": [{"host": "diaspora.bohramt.de"}],
"name": "bohramt.de", "name": "bohramt.de",
@ -247,7 +247,7 @@
"id": 22994 "id": 22994
}, },
{ {
"active6": 27, "active6": 26,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.deadhexagon.com"}], "podUrls": [{"host": "diaspora.deadhexagon.com"}],
"name": "deadhexagon.com", "name": "deadhexagon.com",
@ -256,7 +256,7 @@
}, },
{ {
"active6": 0, "active6": 0,
"score": 12, "score": 20,
"podUrls": [{"host": "diaspora.digi-merc.org"}], "podUrls": [{"host": "diaspora.digi-merc.org"}],
"name": "digi-merc.org", "name": "digi-merc.org",
"mainLangs": [], "mainLangs": [],
@ -303,7 +303,7 @@
"id": 12684 "id": 12684
}, },
{ {
"active6": 102, "active6": 100,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.hzsogood.net"}], "podUrls": [{"host": "diaspora.hzsogood.net"}],
"name": "hzsogood.net", "name": "hzsogood.net",
@ -311,7 +311,7 @@
"id": 3651 "id": 3651
}, },
{ {
"active6": 78, "active6": 69,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.kapper.net"}], "podUrls": [{"host": "diaspora.kapper.net"}],
"name": "kapper.net", "name": "kapper.net",
@ -319,7 +319,7 @@
"id": 40765 "id": 40765
}, },
{ {
"active6": 155, "active6": 146,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.koehn.com"}], "podUrls": [{"host": "diaspora.koehn.com"}],
"name": "koehn.com", "name": "koehn.com",
@ -375,7 +375,7 @@
"id": 9863 "id": 9863
}, },
{ {
"active6": 278, "active6": 272,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.permutationsofchaos.com"}], "podUrls": [{"host": "diaspora.permutationsofchaos.com"}],
"name": "permutationsofchaos.com", "name": "permutationsofchaos.com",
@ -383,7 +383,7 @@
"id": 1513 "id": 1513
}, },
{ {
"active6": 61, "active6": 50,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.pimpmypony.eu"}], "podUrls": [{"host": "diaspora.pimpmypony.eu"}],
"name": "pimpmypony.eu", "name": "pimpmypony.eu",
@ -407,7 +407,7 @@
"id": 12139 "id": 12139
}, },
{ {
"active6": 59, "active6": 57,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.poleni.com"}], "podUrls": [{"host": "diaspora.poleni.com"}],
"name": "poleni.com", "name": "poleni.com",
@ -415,7 +415,7 @@
"id": 1154 "id": 1154
}, },
{ {
"active6": 179, "active6": 181,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.psyco.fr"}], "podUrls": [{"host": "diaspora.psyco.fr"}],
"name": "psyco.fr", "name": "psyco.fr",
@ -423,8 +423,8 @@
"id": 31397 "id": 31397
}, },
{ {
"active6": 0, "active6": 307,
"score": 0, "score": 20,
"podUrls": [{"host": "diaspora.punkbeer.me"}], "podUrls": [{"host": "diaspora.punkbeer.me"}],
"name": "punkbeer.me", "name": "punkbeer.me",
"mainLangs": [], "mainLangs": [],
@ -471,7 +471,7 @@
"id": 24365 "id": 24365
}, },
{ {
"active6": 0, "active6": 74,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.soh.re"}], "podUrls": [{"host": "diaspora.soh.re"}],
"name": "soh.re", "name": "soh.re",
@ -479,7 +479,7 @@
"id": 39183 "id": 39183
}, },
{ {
"active6": 38, "active6": 37,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.subsignal.org"}], "podUrls": [{"host": "diaspora.subsignal.org"}],
"name": "subsignal.org", "name": "subsignal.org",
@ -495,7 +495,7 @@
"id": 46672 "id": 46672
}, },
{ {
"active6": 23, "active6": 30,
"score": 20, "score": 20,
"podUrls": [{"host": "diaspora.u4u.org"}], "podUrls": [{"host": "diaspora.u4u.org"}],
"name": "u4u.org", "name": "u4u.org",
@ -543,7 +543,7 @@
"id": 18248 "id": 18248
}, },
{ {
"active6": 394, "active6": 374,
"score": 20, "score": 20,
"podUrls": [{"host": "diasporabrazil.org"}], "podUrls": [{"host": "diasporabrazil.org"}],
"name": "diasporabrazil.org", "name": "diasporabrazil.org",
@ -575,7 +575,7 @@
"id": 46740 "id": 46740
}, },
{ {
"active6": 9, "active6": 20,
"score": 20, "score": 20,
"podUrls": [{"host": "diasporing.ch"}], "podUrls": [{"host": "diasporing.ch"}],
"name": "Diasporing.ch", "name": "Diasporing.ch",
@ -623,7 +623,7 @@
"id": 11247 "id": 11247
}, },
{ {
"active6": 220, "active6": 235,
"score": 20, "score": 20,
"podUrls": [{"host": "espora.social"}], "podUrls": [{"host": "espora.social"}],
"name": "espora.social", "name": "espora.social",
@ -639,7 +639,7 @@
"id": 41690 "id": 41690
}, },
{ {
"active6": 174, "active6": 171,
"score": 20, "score": 20,
"podUrls": [{"host": "flokk.no"}], "podUrls": [{"host": "flokk.no"}],
"name": "flokk.no", "name": "flokk.no",
@ -647,7 +647,7 @@
"id": 45658 "id": 45658
}, },
{ {
"active6": 193, "active6": 177,
"score": 20, "score": 20,
"podUrls": [{"host": "freehuman.fr"}], "podUrls": [{"host": "freehuman.fr"}],
"name": "freehuman.fr", "name": "freehuman.fr",
@ -671,7 +671,7 @@
"id": 13758 "id": 13758
}, },
{ {
"active6": 71, "active6": 74,
"score": 20, "score": 20,
"podUrls": [{"host": "idoru.pl"}], "podUrls": [{"host": "idoru.pl"}],
"name": "idoru.pl", "name": "idoru.pl",
@ -679,7 +679,7 @@
"id": 40630 "id": 40630
}, },
{ {
"active6": 65, "active6": 67,
"score": 20, "score": 20,
"podUrls": [{"host": "iliketoast.net"}], "podUrls": [{"host": "iliketoast.net"}],
"name": "iliketoast.net", "name": "iliketoast.net",
@ -703,7 +703,7 @@
"id": 32786 "id": 32786
}, },
{ {
"active6": 70, "active6": 68,
"score": 20, "score": 20,
"podUrls": [{"host": "karmasphe.re"}], "podUrls": [{"host": "karmasphe.re"}],
"name": "karmasphe.re", "name": "karmasphe.re",
@ -719,7 +719,7 @@
"id": 46869 "id": 46869
}, },
{ {
"active6": 25, "active6": 26,
"score": 20, "score": 20,
"podUrls": [{"host": "laba.mba"}], "podUrls": [{"host": "laba.mba"}],
"name": "laba.mba", "name": "laba.mba",
@ -727,7 +727,7 @@
"id": 32393 "id": 32393
}, },
{ {
"active6": 147, "active6": 145,
"score": 20, "score": 20,
"podUrls": [{"host": "liberdade.digital"}], "podUrls": [{"host": "liberdade.digital"}],
"name": "liberdade.digital", "name": "liberdade.digital",
@ -743,7 +743,7 @@
"id": 33200 "id": 33200
}, },
{ {
"active6": 39, "active6": 42,
"score": 20, "score": 20,
"podUrls": [{"host": "librenet.co.za"}], "podUrls": [{"host": "librenet.co.za"}],
"name": "librenet.co.za", "name": "librenet.co.za",
@ -751,7 +751,7 @@
"id": 14862 "id": 14862
}, },
{ {
"active6": 177, "active6": 175,
"score": 20, "score": 20,
"podUrls": [{"host": "librenet.gr"}], "podUrls": [{"host": "librenet.gr"}],
"name": "librenet.gr", "name": "librenet.gr",
@ -775,7 +775,7 @@
"id": 16366 "id": 16366
}, },
{ {
"active6": 663, "active6": 643,
"score": 20, "score": 20,
"podUrls": [{"host": "mondiaspora.net"}], "podUrls": [{"host": "mondiaspora.net"}],
"name": "mondiaspora.net", "name": "mondiaspora.net",
@ -807,7 +807,7 @@
"id": 31558 "id": 31558
}, },
{ {
"active6": 37, "active6": 39,
"score": 20, "score": 20,
"podUrls": [{"host": "pe.spbstu.ru"}], "podUrls": [{"host": "pe.spbstu.ru"}],
"name": "pe.spbstu.ru", "name": "pe.spbstu.ru",
@ -815,8 +815,8 @@
"id": 39808 "id": 39808
}, },
{ {
"active6": 0, "active6": 111,
"score": 0, "score": 20,
"podUrls": [{"host": "pod.4ray.co"}], "podUrls": [{"host": "pod.4ray.co"}],
"name": "4ray.co", "name": "4ray.co",
"mainLangs": [], "mainLangs": [],
@ -872,7 +872,7 @@
}, },
{ {
"active6": 13, "active6": 13,
"score": 14, "score": 20,
"podUrls": [{"host": "pod.dapor.net"}], "podUrls": [{"host": "pod.dapor.net"}],
"name": "dapor.net", "name": "dapor.net",
"mainLangs": [], "mainLangs": [],
@ -904,7 +904,7 @@
}, },
{ {
"active6": 0, "active6": 0,
"score": 0, "score": 20,
"podUrls": [{"host": "pod.disroot.org"}], "podUrls": [{"host": "pod.disroot.org"}],
"name": "disroot.org", "name": "disroot.org",
"mainLangs": [], "mainLangs": [],
@ -959,7 +959,7 @@
"id": 36615 "id": 36615
}, },
{ {
"active6": 58, "active6": 56,
"score": 20, "score": 20,
"podUrls": [{"host": "pod.hashtagueule.fr"}], "podUrls": [{"host": "pod.hashtagueule.fr"}],
"name": "hashtagueule.fr", "name": "hashtagueule.fr",
@ -1031,7 +1031,7 @@
"id": 9248 "id": 9248
}, },
{ {
"active6": 109, "active6": 104,
"score": 20, "score": 20,
"podUrls": [{"host": "pod.nomorestars.com"}], "podUrls": [{"host": "pod.nomorestars.com"}],
"name": "nomorestars.com", "name": "nomorestars.com",
@ -1039,7 +1039,7 @@
"id": 31958 "id": 31958
}, },
{ {
"active6": 398, "active6": 401,
"score": 20, "score": 20,
"podUrls": [{"host": "pod.orkz.net"}], "podUrls": [{"host": "pod.orkz.net"}],
"name": "orkz.net", "name": "orkz.net",
@ -1047,7 +1047,7 @@
"id": 41604 "id": 41604
}, },
{ {
"active6": 32, "active6": 35,
"score": 20, "score": 20,
"podUrls": [{"host": "pod.ponk.pink"}], "podUrls": [{"host": "pod.ponk.pink"}],
"name": "ponk.pink", "name": "ponk.pink",
@ -1063,7 +1063,7 @@
"id": 21338 "id": 21338
}, },
{ {
"active6": 94, "active6": 90,
"score": 20, "score": 20,
"podUrls": [{"host": "pod.psynet.su"}], "podUrls": [{"host": "pod.psynet.su"}],
"name": "psynet.su", "name": "psynet.su",
@ -1127,7 +1127,7 @@
"id": 47610 "id": 47610
}, },
{ {
"active6": 5, "active6": 6,
"score": 20, "score": 20,
"podUrls": [{"host": "pod.storel.li"}], "podUrls": [{"host": "pod.storel.li"}],
"name": "storel.li", "name": "storel.li",
@ -1143,7 +1143,7 @@
"id": 20115 "id": 20115
}, },
{ {
"active6": 51, "active6": 52,
"score": 20, "score": 20,
"podUrls": [{"host": "pod.thomasdalichow.de"}], "podUrls": [{"host": "pod.thomasdalichow.de"}],
"name": "thomasdalichow.de", "name": "thomasdalichow.de",
@ -1160,14 +1160,14 @@
}, },
{ {
"active6": 1, "active6": 1,
"score": 11, "score": 20,
"podUrls": [{"host": "pod.volt.io"}], "podUrls": [{"host": "pod.volt.io"}],
"name": "volt.io", "name": "volt.io",
"mainLangs": [], "mainLangs": [],
"id": 19139 "id": 19139
}, },
{ {
"active6": 48, "active6": 50,
"score": 20, "score": 20,
"podUrls": [{"host": "podbay.net"}], "podUrls": [{"host": "podbay.net"}],
"name": "podbay.net", "name": "podbay.net",
@ -1191,7 +1191,7 @@
"id": 6398 "id": 6398
}, },
{ {
"active6": 88, "active6": 91,
"score": 20, "score": 20,
"podUrls": [{"host": "pubpod.alqualonde.org"}], "podUrls": [{"host": "pubpod.alqualonde.org"}],
"name": "pubpod.alqualonde.org", "name": "pubpod.alqualonde.org",
@ -1215,7 +1215,7 @@
"id": 41788 "id": 41788
}, },
{ {
"active6": 108, "active6": 104,
"score": 20, "score": 20,
"podUrls": [{"host": "ruhrspora.de"}], "podUrls": [{"host": "ruhrspora.de"}],
"name": "ruhrspora.de", "name": "ruhrspora.de",
@ -1239,15 +1239,15 @@
"id": 39003 "id": 39003
}, },
{ {
"active6": 1, "active6": 3,
"score": -18, "score": 20,
"podUrls": [{"host": "social.acclaro.digital"}], "podUrls": [{"host": "social.acclaro.digital"}],
"name": "acclaro.digital", "name": "acclaro.digital",
"mainLangs": [], "mainLangs": [],
"id": 33853 "id": 33853
}, },
{ {
"active6": 23, "active6": 22,
"score": 20, "score": 20,
"podUrls": [{"host": "social.baldr.io"}], "podUrls": [{"host": "social.baldr.io"}],
"name": "baldr.io", "name": "baldr.io",
@ -1263,7 +1263,7 @@
"id": 37517 "id": 37517
}, },
{ {
"active6": 85, "active6": 87,
"score": 20, "score": 20,
"podUrls": [{"host": "social.elaon.de"}], "podUrls": [{"host": "social.elaon.de"}],
"name": "elaon.de", "name": "elaon.de",
@ -1279,7 +1279,7 @@
"id": 48421 "id": 48421
}, },
{ {
"active6": 21, "active6": 19,
"score": 20, "score": 20,
"podUrls": [{"host": "social.mbuto.me"}], "podUrls": [{"host": "social.mbuto.me"}],
"name": "mbuto.me", "name": "mbuto.me",
@ -1295,7 +1295,7 @@
"id": 8983 "id": 8983
}, },
{ {
"active6": 176, "active6": 178,
"score": 20, "score": 20,
"podUrls": [{"host": "socializer.cc"}], "podUrls": [{"host": "socializer.cc"}],
"name": "socializer.cc", "name": "socializer.cc",
@ -1319,7 +1319,7 @@
"id": 29359 "id": 29359
}, },
{ {
"active6": 49, "active6": 45,
"score": 20, "score": 20,
"podUrls": [{"host": "sysad.org"}], "podUrls": [{"host": "sysad.org"}],
"name": "sysad.org", "name": "sysad.org",
@ -1335,7 +1335,7 @@
"id": 5276 "id": 5276
}, },
{ {
"active6": 4222, "active6": 4150,
"score": 20, "score": 20,
"podUrls": [{"host": "therealtalk.org"}], "podUrls": [{"host": "therealtalk.org"}],
"name": "therealtalk.org", "name": "therealtalk.org",
@ -1343,7 +1343,7 @@
"id": 26786 "id": 26786
}, },
{ {
"active6": 47, "active6": 43,
"score": 20, "score": 20,
"podUrls": [{"host": "thinkopen.net"}], "podUrls": [{"host": "thinkopen.net"}],
"name": "thinkopen.net", "name": "thinkopen.net",
@ -1351,7 +1351,7 @@
"id": 7366 "id": 7366
}, },
{ {
"active6": 92, "active6": 93,
"score": 20, "score": 20,
"podUrls": [{"host": "tippentappen.de"}], "podUrls": [{"host": "tippentappen.de"}],
"name": "tippentappen.de", "name": "tippentappen.de",
@ -1375,7 +1375,7 @@
"id": 5842 "id": 5842
}, },
{ {
"active6": 312, "active6": 314,
"score": 20, "score": 20,
"podUrls": [{"host": "wk3.org"}], "podUrls": [{"host": "wk3.org"}],
"name": "wk3.org", "name": "wk3.org",
@ -1383,7 +1383,7 @@
"id": 39292 "id": 39292
}, },
{ {
"active6": 45, "active6": 46,
"score": 20, "score": 20,
"podUrls": [{"host": "www.datataffel.dk"}], "podUrls": [{"host": "www.datataffel.dk"}],
"name": "datataffel.dk", "name": "datataffel.dk",
@ -1397,7 +1397,39 @@
"name": "diasporaix.de", "name": "diasporaix.de",
"mainLangs": ["de"], "mainLangs": ["de"],
"id": 26219 "id": 26219
},
{
"active6": 0,
"score": 20,
"podUrls": [{"host": "diaspora.hofud.com"}],
"name": "hofud.com",
"mainLangs": [],
"id": 10983
},
{
"active6": 0,
"score": 20,
"podUrls": [{"host": "diaspora.softwarelivre.org"}],
"name": "softwarelivre.org",
"mainLangs": [],
"id": 33510
},
{
"active6": 0,
"score": 13,
"podUrls": [{"host": "confetticake.club"}],
"name": "confetticake.club",
"mainLangs": [],
"id": 41623
},
{
"active6": 0,
"score": -15,
"podUrls": [{"host": "diaspora.mike-jones.me.uk"}],
"name": "mike-jones.me.uk",
"mainLangs": [],
"id": 8574
} }
], ],
"timestamp": 1475804650123 "timestamp": 1476399808521
} }

View file

@ -2,12 +2,14 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
<!-- Category Titles --> <!-- Category Titles -->
<!-- Visuals --> <!-- Visuals -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
<!-- Load images --> <!-- Load images -->

View file

@ -2,6 +2,7 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
@ -15,12 +16,6 @@
<string name="pref_desc__sub_nav_slider">Konfiguration der Sichtbarkeit von Einträgen im Navigation-Slider</string> <string name="pref_desc__sub_nav_slider">Konfiguration der Sichtbarkeit von Einträgen im Navigation-Slider</string>
<string name="pref_cat__visibility_nav_items">Sichtbarkeit der Einträge</string> <string name="pref_cat__visibility_nav_items">Sichtbarkeit der Einträge</string>
<!-- Themes --> <!-- Themes -->
<string name="pref_title__themes">Farbschema</string>
<string name="pref_desc__themes">Einstellungen des Farbdesigns</string>
<string name="pref_title__primary_color">Primärfarbe</string>
<string name="pref_desc__primary_color">Färbung der Werkzeugleisten</string>
<string name="pref_title__accent_color">Akzentfarbe</string>
<string name="pref_desc__accent_color">Färbung der Details</string>
<!-- Font size --> <!-- Font size -->
<string name="pref_title__font_size">Schriftgröße</string> <string name="pref_title__font_size">Schriftgröße</string>
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
@ -30,9 +25,6 @@
<!-- Proxy --> <!-- Proxy -->
<string name="pref_title__sub_proxy">Proxy</string> <string name="pref_title__sub_proxy">Proxy</string>
<string name="pref_title__proxy_enabled">Aktiviere Netzwerkproxy</string> <string name="pref_title__proxy_enabled">Aktiviere Netzwerkproxy</string>
<string name="pref_desc__http_proxy_enabled">Nutze einen Proxyserver, um Firewalls zu umgehen</string>
<string name="pref_title__http_proxy_host">Host</string>
<string name="pref_title__http_proxy_port">Port</string>
<!-- Chrome custom tabs --> <!-- Chrome custom tabs -->
<string name="pref_title__chrome_custom_tabs_enabled">Chrome Custom Tabs</string> <string name="pref_title__chrome_custom_tabs_enabled">Chrome Custom Tabs</string>
<string name="pref_desc__chrome_custom_tabs_enabled">Externe Links mit Chrome Custom Tabs öffnen. Chromium oder Google Chrome muss für dieses Feature installiert sein.\nWICHTIGER HINWEIS: Chrome Custom Tabs verwenden die konfigurierten Proxy-Server nicht!</string> <string name="pref_desc__chrome_custom_tabs_enabled">Externe Links mit Chrome Custom Tabs öffnen. Chromium oder Google Chrome muss für dieses Feature installiert sein.\nWICHTIGER HINWEIS: Chrome Custom Tabs verwenden die konfigurierten Proxy-Server nicht!</string>

View file

@ -2,12 +2,14 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
<!-- Category Titles --> <!-- Category Titles -->
<!-- Visuals --> <!-- Visuals -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
<!-- Load images --> <!-- Load images -->

View file

@ -2,6 +2,7 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
@ -14,6 +15,7 @@
<string name="pref_title__sub_nav_slider">Control deslizante de navegación</string> <string name="pref_title__sub_nav_slider">Control deslizante de navegación</string>
<string name="pref_desc__sub_nav_slider">Control de visibilidad de las entradas en el cajón de navegación</string> <string name="pref_desc__sub_nav_slider">Control de visibilidad de las entradas en el cajón de navegación</string>
<string name="pref_cat__visibility_nav_items">Elemento visibilidad</string> <string name="pref_cat__visibility_nav_items">Elemento visibilidad</string>
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<string name="pref_title__font_size">Tamaño de letra</string> <string name="pref_title__font_size">Tamaño de letra</string>
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
@ -22,9 +24,6 @@
<string name="pref_desc__load_images">Desactivar la carga de de imágenes a datos móviles seguros</string> <string name="pref_desc__load_images">Desactivar la carga de de imágenes a datos móviles seguros</string>
<!-- Proxy --> <!-- Proxy -->
<string name="pref_title__proxy_enabled">Activar Proxy</string> <string name="pref_title__proxy_enabled">Activar Proxy</string>
<string name="pref_desc__http_proxy_enabled">El tráfico proxificado de Diaspora para evitar firewalls.\nPuede necesitar reiniciarse</string>
<string name="pref_title__http_proxy_host">Anfitrión</string>
<string name="pref_title__http_proxy_port">Puerto</string>
<!-- Chrome custom tabs --> <!-- Chrome custom tabs -->
<!-- Diaspora Settings --> <!-- Diaspora Settings -->
<string name="pref_title__personal_settings">Configuración personal</string> <string name="pref_title__personal_settings">Configuración personal</string>

View file

@ -2,6 +2,7 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
@ -14,6 +15,7 @@
<string name="pref_title__sub_nav_slider">Barre de défilement</string> <string name="pref_title__sub_nav_slider">Barre de défilement</string>
<string name="pref_desc__sub_nav_slider">Contrôles de la visibilité des entrées dans le volet de navigation</string> <string name="pref_desc__sub_nav_slider">Contrôles de la visibilité des entrées dans le volet de navigation</string>
<string name="pref_cat__visibility_nav_items">Visibilité de lélément</string> <string name="pref_cat__visibility_nav_items">Visibilité de lélément</string>
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<string name="pref_title__font_size">Taille de la police</string> <string name="pref_title__font_size">Taille de la police</string>
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
@ -21,13 +23,16 @@
<string name="pref_title__load_images">Charger les images</string> <string name="pref_title__load_images">Charger les images</string>
<string name="pref_desc__load_images">Désactiver le chargements des images pour préserver la data mobile</string> <string name="pref_desc__load_images">Désactiver le chargements des images pour préserver la data mobile</string>
<!-- Proxy --> <!-- Proxy -->
<string name="pref_title__http_proxy_load_tor_preset">Charger la pré-configuration Tor</string>
<string name="pref_desc__http_proxy_load_tor_preset">Charger les paramètres proxy pour Tor (Orbot) HTTP Proxy</string>
<string name="pref_title__sub_proxy">Proxy</string> <string name="pref_title__sub_proxy">Proxy</string>
<string name="pref_title__proxy_enabled">Activer Proxy</string> <string name="pref_title__proxy_enabled">Activer Proxy</string>
<string name="pref_desc__http_proxy_enabled">Serveur Proxy.\n(Nécessite un redémarrage)</string> <string name="pref_desc__http_proxy_enabled">Proxy pour diaspora pour contourner les pare-feux.\nPeut nécessiter un redémarrage</string>
<string name="pref_title__http_proxy_host">Hôte</string> <string name="pref_title__http_proxy_host">Hôte</string>
<string name="pref_title__http_proxy_port">Port</string> <string name="pref_title__http_proxy_port">Port</string>
<!-- Chrome custom tabs --> <!-- Chrome custom tabs -->
<string name="pref_title__chrome_custom_tabs_enabled">Onglets personnalisés de Chrome</string> <string name="pref_title__chrome_custom_tabs_enabled">Onglets personnalisés de Chrome</string>
<string name="pref_desc__chrome_custom_tabs_enabled">Ouvrir les liens externes avec les onglets personnalisés de Chrome. Chomium ou Google Chrome doit être installé pour cette fonctionnalité. \nNOTE IMPORTANTE : les onglets personnalisés de Chrome n\'utilisent pas les serveurs proxy configurés !</string>
<!-- Diaspora Settings --> <!-- Diaspora Settings -->
<string name="pref_title__personal_settings">Paramètres personnels</string> <string name="pref_title__personal_settings">Paramètres personnels</string>
<string name="pref_desc__personal_settings">Ouvrir vos paramètres de compte diaspora</string> <string name="pref_desc__personal_settings">Ouvrir vos paramètres de compte diaspora</string>

View file

@ -2,12 +2,14 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
<!-- Category Titles --> <!-- Category Titles -->
<!-- Visuals --> <!-- Visuals -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
<!-- Load images --> <!-- Load images -->

View file

@ -2,12 +2,14 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
<!-- Category Titles --> <!-- Category Titles -->
<!-- Visuals --> <!-- Visuals -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
<!-- Load images --> <!-- Load images -->

View file

@ -2,6 +2,7 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
@ -14,6 +15,7 @@
<string name="pref_title__sub_nav_slider">Menù di navigazione</string> <string name="pref_title__sub_nav_slider">Menù di navigazione</string>
<string name="pref_desc__sub_nav_slider">Controlla la visibilità degli elementi nel menù di navigazione</string> <string name="pref_desc__sub_nav_slider">Controlla la visibilità degli elementi nel menù di navigazione</string>
<string name="pref_cat__visibility_nav_items">Visibilità degli elementi</string> <string name="pref_cat__visibility_nav_items">Visibilità degli elementi</string>
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<string name="pref_title__font_size">Dimensione font</string> <string name="pref_title__font_size">Dimensione font</string>
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
@ -23,11 +25,11 @@
<!-- Proxy --> <!-- Proxy -->
<string name="pref_title__sub_proxy">Proxy</string> <string name="pref_title__sub_proxy">Proxy</string>
<string name="pref_title__proxy_enabled">Attiva proxy</string> <string name="pref_title__proxy_enabled">Attiva proxy</string>
<string name="pref_desc__http_proxy_enabled">Traffico del proxy di Diaspora per bypassare i firewall.\nPuò essere necessario il riavvio dell\'app</string>
<string name="pref_title__http_proxy_host">Host</string> <string name="pref_title__http_proxy_host">Host</string>
<string name="pref_title__http_proxy_port">Porta</string> <string name="pref_title__http_proxy_port">Porta</string>
<!-- Chrome custom tabs --> <!-- Chrome custom tabs -->
<string name="pref_title__chrome_custom_tabs_enabled">Schede personalizzate di Chrome</string> <string name="pref_title__chrome_custom_tabs_enabled">Schede personalizzate di Chrome</string>
<string name="pref_desc__chrome_custom_tabs_enabled">Apri collegamenti esterni con le schede personalizzate di Chrome. Chromium o Google Chrome devono essere installati per questa funzione. \nNOTA IMPORTANTE: le schede personalizzate di Chrome non usano i server proxy configurabili!</string>
<!-- Diaspora Settings --> <!-- Diaspora Settings -->
<string name="pref_title__personal_settings">Impostazioni personali</string> <string name="pref_title__personal_settings">Impostazioni personali</string>
<string name="pref_desc__personal_settings">Apri le impostazioni del tuo account Diaspora</string> <string name="pref_desc__personal_settings">Apri le impostazioni del tuo account Diaspora</string>

View file

@ -2,6 +2,7 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
@ -14,6 +15,7 @@
<string name="pref_title__sub_nav_slider">ナビゲーション スライダー</string> <string name="pref_title__sub_nav_slider">ナビゲーション スライダー</string>
<string name="pref_desc__sub_nav_slider">ナビゲーションドロワー内のエントリーの表示を制御します</string> <string name="pref_desc__sub_nav_slider">ナビゲーションドロワー内のエントリーの表示を制御します</string>
<string name="pref_cat__visibility_nav_items">アイテムの表示</string> <string name="pref_cat__visibility_nav_items">アイテムの表示</string>
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<string name="pref_title__font_size">フォントサイズ</string> <string name="pref_title__font_size">フォントサイズ</string>
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
@ -21,6 +23,8 @@
<string name="pref_title__load_images">画像の読み込み</string> <string name="pref_title__load_images">画像の読み込み</string>
<string name="pref_desc__load_images">安全なモバイルデータのため、画像の読み込みを無効にします</string> <string name="pref_desc__load_images">安全なモバイルデータのため、画像の読み込みを無効にします</string>
<!-- Proxy --> <!-- Proxy -->
<string name="pref_title__http_proxy_load_tor_preset">Tor プリセットを読み込む</string>
<string name="pref_desc__http_proxy_load_tor_preset">Tor (Orbot) HTTP プロキシのプロキシ設定を読み込みます</string>
<string name="pref_title__sub_proxy">プロキシ</string> <string name="pref_title__sub_proxy">プロキシ</string>
<string name="pref_title__proxy_enabled">プロキシを有効にする</string> <string name="pref_title__proxy_enabled">プロキシを有効にする</string>
<string name="pref_desc__http_proxy_enabled">Diaspora の通信をプロキシして、ファイアウォールに回避します。\n再起動が必要になることがあります</string> <string name="pref_desc__http_proxy_enabled">Diaspora の通信をプロキシして、ファイアウォールに回避します。\n再起動が必要になることがあります</string>
@ -28,6 +32,7 @@
<string name="pref_title__http_proxy_port">ポート</string> <string name="pref_title__http_proxy_port">ポート</string>
<!-- Chrome custom tabs --> <!-- Chrome custom tabs -->
<string name="pref_title__chrome_custom_tabs_enabled">Chrome カスタムタブ</string> <string name="pref_title__chrome_custom_tabs_enabled">Chrome カスタムタブ</string>
<string name="pref_desc__chrome_custom_tabs_enabled">Chrome のカスタム タブで外部リンクを開きます。この機能は Chromium または Google Chrome をインストールする必要があります。\n重要な注意: Chrome のカスタム タブは構成されているプロキシ サーバーを使用しません!</string>
<!-- Diaspora Settings --> <!-- Diaspora Settings -->
<string name="pref_title__personal_settings">個人用設定</string> <string name="pref_title__personal_settings">個人用設定</string>
<string name="pref_desc__personal_settings">Diaspora アカウント設定を開きます</string> <string name="pref_desc__personal_settings">Diaspora アカウント設定を開きます</string>

View file

@ -2,12 +2,14 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
<!-- Category Titles --> <!-- Category Titles -->
<!-- Visuals --> <!-- Visuals -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
<!-- Load images --> <!-- Load images -->

View file

@ -2,6 +2,7 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
@ -14,6 +15,7 @@
<string name="pref_title__sub_nav_slider">നാവിഗേഷൻ സ്ലൈഡർ</string> <string name="pref_title__sub_nav_slider">നാവിഗേഷൻ സ്ലൈഡർ</string>
<string name="pref_desc__sub_nav_slider">നാവിഗേഷൻ ഡ്രാവറിൽ കാണേണ്ട എൻട്രികൾ നിയന്ത്രിക്കൂ</string> <string name="pref_desc__sub_nav_slider">നാവിഗേഷൻ ഡ്രാവറിൽ കാണേണ്ട എൻട്രികൾ നിയന്ത്രിക്കൂ</string>
<string name="pref_cat__visibility_nav_items">ഇനത്തിന്റെ കാഴ്ച</string> <string name="pref_cat__visibility_nav_items">ഇനത്തിന്റെ കാഴ്ച</string>
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<string name="pref_title__font_size">ഫോണ്ട് സൈസ്</string> <string name="pref_title__font_size">ഫോണ്ട് സൈസ്</string>
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
@ -22,9 +24,6 @@
<string name="pref_desc__load_images">മൊബൈൽ ഡാറ്റ ഉപഭോഗം കുറയ്ക്കാനായി ചിത്രങ്ങൾ ലോഡ് ചെയ്യാതിരിക്കുക</string> <string name="pref_desc__load_images">മൊബൈൽ ഡാറ്റ ഉപഭോഗം കുറയ്ക്കാനായി ചിത്രങ്ങൾ ലോഡ് ചെയ്യാതിരിക്കുക</string>
<!-- Proxy --> <!-- Proxy -->
<string name="pref_title__proxy_enabled">പ്രോക്സി അനുവദിക്കൂ</string> <string name="pref_title__proxy_enabled">പ്രോക്സി അനുവദിക്കൂ</string>
<string name="pref_desc__http_proxy_enabled">ഫയർവാളുകളെ മറികടക്കാൻ ഡയസ്പോറ ട്രാഫിക് പ്രോക്സി ചെയ്യൂ.\nപുനരാരഭിക്കേണ്ടി വന്നേക്കാം</string>
<string name="pref_title__http_proxy_host">ആഥിതേയൻ</string>
<string name="pref_title__http_proxy_port">പോർട്ട്</string>
<!-- Chrome custom tabs --> <!-- Chrome custom tabs -->
<!-- Diaspora Settings --> <!-- Diaspora Settings -->
<string name="pref_title__personal_settings">സ്വകാര്യ സജ്ജീകരണങ്ങൾ</string> <string name="pref_title__personal_settings">സ്വകാര്യ സജ്ജീകരണങ്ങൾ</string>

View file

@ -2,6 +2,7 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
@ -13,6 +14,7 @@
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<string name="pref_title__sub_nav_slider">Navigatie Slider</string> <string name="pref_title__sub_nav_slider">Navigatie Slider</string>
<string name="pref_cat__visibility_nav_items">Item Zichtbaarheid</string> <string name="pref_cat__visibility_nav_items">Item Zichtbaarheid</string>
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<string name="pref_title__font_size">Lettergrootte</string> <string name="pref_title__font_size">Lettergrootte</string>
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
@ -21,9 +23,6 @@
<string name="pref_desc__load_images">Afbeelding laden uitschakelen om mobiele data te besparen</string> <string name="pref_desc__load_images">Afbeelding laden uitschakelen om mobiele data te besparen</string>
<!-- Proxy --> <!-- Proxy -->
<string name="pref_title__proxy_enabled">Proxy inschakelen</string> <string name="pref_title__proxy_enabled">Proxy inschakelen</string>
<string name="pref_desc__http_proxy_enabled">Gebruik een Proxy voor Diaspora om de firewalls te omzeilen.\nRestart nodig</string>
<string name="pref_title__http_proxy_host">Host</string>
<string name="pref_title__http_proxy_port">Poort</string>
<!-- Chrome custom tabs --> <!-- Chrome custom tabs -->
<!-- Diaspora Settings --> <!-- Diaspora Settings -->
<string name="pref_title__personal_settings">Persoonlijke instellingen</string> <string name="pref_title__personal_settings">Persoonlijke instellingen</string>

View file

@ -2,12 +2,14 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
<!-- Category Titles --> <!-- Category Titles -->
<!-- Visuals --> <!-- Visuals -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
<!-- Load images --> <!-- Load images -->

View file

@ -2,6 +2,7 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
@ -11,6 +12,7 @@
<string name="pref_cat__pod_settings">Ustawienia poda</string> <string name="pref_cat__pod_settings">Ustawienia poda</string>
<!-- Visuals --> <!-- Visuals -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<string name="pref_title__font_size">Rozmiar czcionki</string> <string name="pref_title__font_size">Rozmiar czcionki</string>
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->

View file

@ -2,6 +2,7 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
@ -14,6 +15,7 @@
<string name="pref_title__sub_nav_slider">Controle deslizante de navegação</string> <string name="pref_title__sub_nav_slider">Controle deslizante de navegação</string>
<string name="pref_desc__sub_nav_slider">Visibilidade do controle de entradas na gaveta de navegação</string> <string name="pref_desc__sub_nav_slider">Visibilidade do controle de entradas na gaveta de navegação</string>
<string name="pref_cat__visibility_nav_items">Visibilidade de item</string> <string name="pref_cat__visibility_nav_items">Visibilidade de item</string>
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<string name="pref_title__font_size">Tamanho da fonte</string> <string name="pref_title__font_size">Tamanho da fonte</string>
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
@ -22,9 +24,6 @@
<string name="pref_desc__load_images">Desabilitar o carregamento de imagens para economizar seus créditos</string> <string name="pref_desc__load_images">Desabilitar o carregamento de imagens para economizar seus créditos</string>
<!-- Proxy --> <!-- Proxy -->
<string name="pref_title__proxy_enabled">Habilitar o Proxy</string> <string name="pref_title__proxy_enabled">Habilitar o Proxy</string>
<string name="pref_desc__http_proxy_enabled">Usar proxy para o tráfego da diáspora para contornar firewalls.\nPode requerer reinicialização</string>
<string name="pref_title__http_proxy_host">Servidor</string>
<string name="pref_title__http_proxy_port">Porta</string>
<!-- Chrome custom tabs --> <!-- Chrome custom tabs -->
<!-- Diaspora Settings --> <!-- Diaspora Settings -->
<string name="pref_title__personal_settings">Configurações pessoais</string> <string name="pref_title__personal_settings">Configurações pessoais</string>

View file

@ -2,12 +2,14 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
<!-- Category Titles --> <!-- Category Titles -->
<!-- Visuals --> <!-- Visuals -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
<!-- Load images --> <!-- Load images -->

View file

@ -2,6 +2,7 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
@ -14,6 +15,7 @@
<string name="pref_title__sub_nav_slider">Слайдер навигации</string> <string name="pref_title__sub_nav_slider">Слайдер навигации</string>
<string name="pref_desc__sub_nav_slider">Управление видимостью записей в ящике навигации</string> <string name="pref_desc__sub_nav_slider">Управление видимостью записей в ящике навигации</string>
<string name="pref_cat__visibility_nav_items">Видимость элемента</string> <string name="pref_cat__visibility_nav_items">Видимость элемента</string>
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<string name="pref_title__font_size">Размер шрифта</string> <string name="pref_title__font_size">Размер шрифта</string>
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
@ -22,9 +24,6 @@
<string name="pref_desc__load_images">Отключить загрузку изображений для экономии траффика</string> <string name="pref_desc__load_images">Отключить загрузку изображений для экономии траффика</string>
<!-- Proxy --> <!-- Proxy -->
<string name="pref_title__proxy_enabled">Использовать прокси</string> <string name="pref_title__proxy_enabled">Использовать прокси</string>
<string name="pref_desc__http_proxy_enabled">Перенаправить трафик Диаспоры в обход брандмауэров.\nМожет потребовать перезапуска</string>
<string name="pref_title__http_proxy_host">Хост</string>
<string name="pref_title__http_proxy_port">Порт</string>
<!-- Chrome custom tabs --> <!-- Chrome custom tabs -->
<!-- Diaspora Settings --> <!-- Diaspora Settings -->
<string name="pref_title__personal_settings">Личные настройки</string> <string name="pref_title__personal_settings">Личные настройки</string>

View file

@ -2,12 +2,14 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
<!-- Category Titles --> <!-- Category Titles -->
<!-- Visuals --> <!-- Visuals -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
<!-- Load images --> <!-- Load images -->

View file

@ -2,12 +2,14 @@
<!--Generated by crowdin.com--> <!--Generated by crowdin.com-->
<resources> <resources>
<!-- Key Names (Untranslatable) --> <!-- Key Names (Untranslatable) -->
<!-- Themes -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- PodProfile --> <!-- PodProfile -->
<!-- More --> <!-- More -->
<!-- Category Titles --> <!-- Category Titles -->
<!-- Visuals --> <!-- Visuals -->
<!-- Navigiation Slider --> <!-- Navigiation Slider -->
<!-- Themes -->
<!-- Font size --> <!-- Font size -->
<!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash --> <!-- prefix 's' is needed to make this a string array. Otherwise ListPreference would crash -->
<!-- Load images --> <!-- Load images -->