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:
parent
110598ea85
commit
71d8b886f6
70 changed files with 450 additions and 364 deletions
|
@ -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:
|
||||||
|
|
|
@ -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>
|
||||||
|
|
||||||
|
|
|
@ -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;
|
||||||
|
|
|
@ -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();
|
||||||
|
|
|
@ -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) {
|
||||||
|
|
|
@ -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(),
|
||||||
|
|
|
@ -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
|
||||||
*
|
*
|
||||||
|
|
|
@ -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
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -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();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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();
|
||||||
|
|
|
@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
@ -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());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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();
|
||||||
|
|
|
@ -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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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;
|
||||||
|
|
||||||
|
|
|
@ -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) {
|
||||||
|
|
|
@ -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;
|
||||||
|
|
|
@ -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();
|
||||||
|
|
||||||
|
|
|
@ -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);
|
||||||
|
|
|
@ -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);
|
||||||
}
|
}
|
||||||
|
|
|
@ -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) {
|
||||||
|
|
|
@ -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();
|
||||||
}
|
}
|
||||||
|
|
|
@ -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;
|
||||||
}
|
}
|
||||||
|
|
|
@ -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);
|
||||||
}
|
}
|
||||||
|
|
|
@ -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;
|
||||||
}
|
}
|
||||||
|
|
|
@ -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() {
|
||||||
|
|
|
@ -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);
|
||||||
}
|
}
|
||||||
|
|
|
@ -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());
|
||||||
|
|
|
@ -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", " ");
|
text = text.replace("\n", " ");
|
||||||
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("'", "'").replace("\"", """);
|
sharedText = sharedText.replace("'", "'").replace("\"", """);
|
||||||
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>» ");
|
sb.append("<span style='margin-left: 30px; '></span>» ");
|
||||||
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>",
|
||||||
|
|
|
@ -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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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>
|
|
@ -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>
|
|
@ -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>
|
|
@ -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>
|
||||||
|
|
|
@ -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>
|
||||||
|
|
||||||
|
|
|
@ -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"
|
||||||
|
|
|
@ -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>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -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>
|
|
@ -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
|
||||||
|
|
|
@ -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>
|
|
@ -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>
|
|
@ -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
|
||||||
}
|
}
|
||||||
|
|
|
@ -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 -->
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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 -->
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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 -->
|
||||||
|
|
|
@ -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 -->
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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 -->
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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 -->
|
||||||
|
|
|
@ -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 -->
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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 -->
|
||||||
|
|
|
@ -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>
|
||||||
|
|
|
@ -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 -->
|
||||||
|
|
|
@ -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 -->
|
||||||
|
|
Loading…
Reference in a new issue