bugfix, layout improvements
This commit is contained in:
parent
2f66de9797
commit
f696b6e8d3
6 changed files with 102 additions and 96 deletions
|
@ -166,7 +166,7 @@ public class AccountActivity extends BaseActivity implements ActionButtonActivit
|
|||
ThemeUtils.setDrawableTint(context, toolbar.getOverflowIcon(), attribute);
|
||||
}
|
||||
|
||||
if(floatingBtn != null && hideFab) {
|
||||
if(floatingBtn != null && hideFab && !isSelf && !blocking) {
|
||||
if (verticalOffset > oldOffset) {
|
||||
floatingBtn.show();
|
||||
}
|
||||
|
@ -367,10 +367,6 @@ public class AccountActivity extends BaseActivity implements ActionButtonActivit
|
|||
this.blocking = relation.blocking;
|
||||
this.muting = relation.muting;
|
||||
|
||||
if (followState != FollowState.NOT_FOLLOWING || !blocking || !muting) {
|
||||
invalidateOptionsMenu();
|
||||
}
|
||||
|
||||
if(relation.followedBy) {
|
||||
followsYouView.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
|
@ -424,6 +420,9 @@ public class AccountActivity extends BaseActivity implements ActionButtonActivit
|
|||
updateFollowButton(followBtn);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
floatingBtn.hide();
|
||||
followBtn.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -668,7 +667,10 @@ public class AccountActivity extends BaseActivity implements ActionButtonActivit
|
|||
@Nullable
|
||||
@Override
|
||||
public FloatingActionButton getActionButton() {
|
||||
return floatingBtn;
|
||||
if(!isSelf && !blocking) {
|
||||
return floatingBtn;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -178,15 +178,16 @@ public class AccountListFragment extends BaseFragment implements AccountActionLi
|
|||
if (actionButtonPresent()) {
|
||||
/* Use a modified scroll listener that both loads more statuses as it goes, and hides
|
||||
* the follow button on down-scroll. */
|
||||
ActionButtonActivity actionButtonActivity = (ActionButtonActivity) getActivity();
|
||||
final FloatingActionButton composeButton = actionButtonActivity.getActionButton();
|
||||
final SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getContext());
|
||||
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getContext());
|
||||
hideFab = preferences.getBoolean("fabHide", false);
|
||||
scrollListener = new EndlessOnScrollListener(layoutManager) {
|
||||
@Override
|
||||
public void onScrolled(RecyclerView view, int dx, int dy) {
|
||||
super.onScrolled(view, dx, dy);
|
||||
|
||||
ActionButtonActivity actionButtonActivity = (ActionButtonActivity) getActivity();
|
||||
FloatingActionButton composeButton = actionButtonActivity.getActionButton();
|
||||
|
||||
if (composeButton != null) {
|
||||
if (hideFab) {
|
||||
if (dy > 0 && composeButton.isShown()) {
|
||||
|
|
|
@ -40,6 +40,7 @@ import com.keylesspalace.tusky.adapter.NotificationsAdapter;
|
|||
import com.keylesspalace.tusky.R;
|
||||
import com.keylesspalace.tusky.entity.Notification;
|
||||
import com.keylesspalace.tusky.entity.Status;
|
||||
import com.keylesspalace.tusky.interfaces.ActionButtonActivity;
|
||||
import com.keylesspalace.tusky.interfaces.StatusActionListener;
|
||||
import com.keylesspalace.tusky.receiver.TimelineReceiver;
|
||||
import com.keylesspalace.tusky.util.HttpHeaderLink;
|
||||
|
@ -172,9 +173,7 @@ public class NotificationsFragment extends SFragment implements
|
|||
* guaranteed to be set until then.
|
||||
* Use a modified scroll listener that both loads more notifications as it goes, and hides
|
||||
* the compose button on down-scroll. */
|
||||
final FloatingActionButton composeButton = activity.getActionButton();
|
||||
final SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(
|
||||
activity);
|
||||
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(activity);
|
||||
preferences.registerOnSharedPreferenceChangeListener(this);
|
||||
hideFab = preferences.getBoolean("fabHide", false);
|
||||
scrollListener = new EndlessOnScrollListener(layoutManager) {
|
||||
|
@ -182,6 +181,9 @@ public class NotificationsFragment extends SFragment implements
|
|||
public void onScrolled(RecyclerView view, int dx, int dy) {
|
||||
super.onScrolled(view, dx, dy);
|
||||
|
||||
ActionButtonActivity activity = (ActionButtonActivity) getActivity();
|
||||
FloatingActionButton composeButton = activity.getActionButton();
|
||||
|
||||
if(composeButton != null) {
|
||||
if (hideFab) {
|
||||
if (dy > 0 && composeButton.isShown()) {
|
||||
|
|
|
@ -198,15 +198,16 @@ public class TimelineFragment extends SFragment implements
|
|||
if (actionButtonPresent()) {
|
||||
/* Use a modified scroll listener that both loads more statuses as it goes, and hides
|
||||
* the follow button on down-scroll. */
|
||||
ActionButtonActivity activity = (ActionButtonActivity) getActivity();
|
||||
final FloatingActionButton composeButton = activity.getActionButton();
|
||||
final SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getContext());
|
||||
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getContext());
|
||||
hideFab = preferences.getBoolean("fabHide", false);
|
||||
scrollListener = new EndlessOnScrollListener(layoutManager) {
|
||||
@Override
|
||||
public void onScrolled(RecyclerView view, int dx, int dy) {
|
||||
super.onScrolled(view, dx, dy);
|
||||
|
||||
ActionButtonActivity activity = (ActionButtonActivity) getActivity();
|
||||
FloatingActionButton composeButton = activity.getActionButton();
|
||||
|
||||
if (composeButton != null) {
|
||||
if (hideFab) {
|
||||
if (dy > 0 && composeButton.isShown()) {
|
||||
|
|
|
@ -19,6 +19,8 @@ import android.support.annotation.Nullable;
|
|||
import android.support.design.widget.FloatingActionButton;
|
||||
|
||||
public interface ActionButtonActivity {
|
||||
|
||||
/* return the ActionButton of the Activity to hide or show it on scroll */
|
||||
@Nullable
|
||||
FloatingActionButton getActionButton();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue