package de.theknut.xposedgelsettings.hooks.googlesearchbar;
import de.theknut.xposedgelsettings.hooks.Common;
import de.theknut.xposedgelsettings.hooks.ObfuscationHelper.Fields;
import de.theknut.xposedgelsettings.hooks.ObfuscationHelper.Methods;
import de.theknut.xposedgelsettings.hooks.PreferencesHelper;
import de.theknut.xposedgelsettings.hooks.common.XGELSCallback;
import static de.robv.android.xposed.XposedHelpers.callMethod;
import static de.robv.android.xposed.XposedHelpers.getIntField;
public final class OnPageEndMovingHook extends XGELSCallback {
// http://androidxref.com/4.4.2_r1/xref/packages/apps/Launcher3/src/com/android/launcher3/PagedView.java#599
// protected void onPageEndMoving()
@Override
public void onAfterHookedMethod(MethodHookParam param) throws Throwable {
if (Common.LAUNCHER_INSTANCE == null) return;
int page = getIntField(Common.WORKSPACE_INSTANCE, Fields.pvCurrentPage);
boolean shouldShow = (page == 0 && PreferencesHelper.autoHideSearchBar) || (PreferencesHelper.searchBarOnDefaultHomescreen && page == (PreferencesHelper.defaultHomescreen - 1));
// show the search bar as soon as the page has stopped moving and the GNow overlay is visible
if ((Common.IS_KK_TREBUCHET || (Boolean) callMethod(Common.LAUNCHER_INSTANCE, Methods.lHasCustomContentToLeft)) && shouldShow) {
GoogleSearchBarHooks.showSearchbar();
} else if (!Common.IS_DRAGGING) {
GoogleSearchBarHooks.hideSearchbar();
}
}
}