Add shortcut for filtering tripcodes

multisite
Floens 10 years ago
parent 4ddba4aa4c
commit 876b67d146
  1. 7
      Clover/app/src/main/java/org/floens/chan/core/presenter/ThreadPresenter.java
  2. 2
      Clover/app/src/main/java/org/floens/chan/ui/controller/FiltersController.java
  3. 16
      Clover/app/src/main/java/org/floens/chan/ui/controller/ThreadController.java
  4. 7
      Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadLayout.java
  5. 1
      Clover/app/src/main/res/values/strings.xml

@ -71,6 +71,7 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
private static final int POST_OPTION_HIGHLIGHT_TRIPCODE = 11;
private static final int POST_OPTION_HIDE = 12;
private static final int POST_OPTION_OPEN_BROWSER = 13;
private static final int POST_OPTION_FILTER_TRIPCODE = 14;
private WatchManager watchManager;
private DatabaseManager databaseManager;
@ -403,6 +404,7 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
if (!TextUtils.isEmpty(post.tripcode)) {
menu.add(new FloatingMenuItem(POST_OPTION_HIGHLIGHT_TRIPCODE, R.string.post_highlight_tripcode));
menu.add(new FloatingMenuItem(POST_OPTION_FILTER_TRIPCODE, R.string.post_filter_tripcode));
}
}
@ -445,6 +447,9 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
case POST_OPTION_HIGHLIGHT_TRIPCODE:
threadPresenterCallback.highlightPostTripcode(post.tripcode);
break;
case POST_OPTION_FILTER_TRIPCODE:
threadPresenterCallback.filterPostTripcode(post.tripcode);
break;
case POST_OPTION_DELETE:
requestDeletePost(post);
break;
@ -678,6 +683,8 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
void highlightPostTripcode(String tripcode);
void filterPostTripcode(String tripcode);
void selectPost(int post);
void showSearch(boolean show);

@ -139,7 +139,7 @@ public class FiltersController extends Controller implements ToolbarMenuItem.Too
public void onSubMenuItemClicked(ToolbarMenuItem parent, FloatingMenuItem item) {
}
private void showFilterDialog(final Filter filter) {
public void showFilterDialog(final Filter filter) {
final FilterLayout filterLayout = (FilterLayout) LayoutInflater.from(context).inflate(R.layout.layout_filter, null);
final AlertDialog alertDialog = new AlertDialog.Builder(context)

@ -30,6 +30,8 @@ import org.floens.chan.Chan;
import org.floens.chan.R;
import org.floens.chan.chan.ChanUrls;
import org.floens.chan.controller.Controller;
import org.floens.chan.core.manager.FilterEngine;
import org.floens.chan.core.model.Filter;
import org.floens.chan.core.model.Loadable;
import org.floens.chan.core.model.Pin;
import org.floens.chan.core.model.PostImage;
@ -212,4 +214,18 @@ public abstract class ThreadController extends Controller implements ThreadLayou
public void onSearchEntered(String entered) {
threadLayout.getPresenter().onSearchEntered(entered);
}
@Override
public void openFilterForTripcode(String tripcode) {
FiltersController filtersController = new FiltersController(context);
if (splitNavigationController != null) {
splitNavigationController.pushController(filtersController);
} else {
navigationController.pushController(filtersController);
}
Filter filter = new Filter();
filter.type = FilterEngine.FilterType.TRIPCODE.id;
filter.pattern = tripcode;
filtersController.showFilterDialog(filter);
}
}

@ -346,6 +346,11 @@ public class ThreadLayout extends CoordinatorLayout implements ThreadPresenter.T
threadListLayout.highlightPostTripcode(tripcode);
}
@Override
public void filterPostTripcode(String tripcode) {
callback.openFilterForTripcode(tripcode);
}
@Override
public void selectPost(int post) {
threadListLayout.selectPost(post);
@ -543,5 +548,7 @@ public class ThreadLayout extends CoordinatorLayout implements ThreadPresenter.T
void hideSwipeRefreshLayout();
Toolbar getToolbar();
void openFilterForTripcode(String tripcode);
}
}

@ -210,6 +210,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
<string name="post_highlight_id">Highlight ID</string>
<string name="post_highlight_tripcode">Highlight tripcode</string>
<string name="post_filter_tripcode">Filter tripcode</string>
<string name="post_text_copied">Text copied to clipboard</string>
<string name="post_quote">Quote</string>
<string name="post_quote_text">Quote text</string>

Loading…
Cancel
Save