Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions sdk-core/src/main/java/com/gigya/android/sdk/Gigya.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;

import com.gigya.android.sdk.account.GigyaAccountClass;
import com.gigya.android.sdk.account.GigyaAccountConfig;
Expand All @@ -29,6 +30,7 @@
import com.gigya.android.sdk.session.SessionInfo;
import com.gigya.android.sdk.session.SessionStateObserver;
import com.gigya.android.sdk.ui.IPresenter;
import com.gigya.android.sdk.ui.plugin.GigyaPluginBaseFragment;
import com.gigya.android.sdk.ui.plugin.GigyaPluginFragment;
import com.gigya.android.sdk.ui.plugin.IGigyaWebBridge;
import com.gigya.android.sdk.utils.EnvUtils;
Expand Down Expand Up @@ -790,6 +792,21 @@ public void showScreenSet(final String screensSet, boolean fullScreen, @NonNull
_presenter.showPlugin(false, GigyaPluginFragment.PLUGIN_SCREENSETS, fullScreen, params, gigyaPluginCallback);
}

/**
* Show Gigya ScreenSets flow using the PluginBaseFragment.
* UI will be presented via WebView.
*
* @param screensSet Main ScreensSet group identifier
* @param fullScreen Show in fullscreen mode.
* @param params ScreensSet flow parameters.
* @param gigyaPluginCallback Plugin callback.
*/
public GigyaPluginBaseFragment<T> getScreenSetFragment(AppCompatActivity activity, final String screensSet, boolean fullScreen, @NonNull final Map<String, Object> params, final GigyaPluginCallback<T> gigyaPluginCallback) {
params.put("screenSet", screensSet);
GigyaLogger.debug(LOG_TAG, "showPlugin: " + GigyaPluginBaseFragment.PLUGIN_SCREENSETS + ", with parameters:\n" + params.toString());
return _presenter.getFragmentPlugin(activity,false, GigyaPluginBaseFragment.PLUGIN_SCREENSETS, fullScreen, params, gigyaPluginCallback);
}

/**
* Show Gigya ScreenSets flow using the PluginFragment.
* UI will be presented via WebView.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
package com.gigya.android.sdk.ui;

import androidx.appcompat.app.AppCompatActivity;

import com.gigya.android.sdk.GigyaDefinitions;
import com.gigya.android.sdk.GigyaLoginCallback;
import com.gigya.android.sdk.GigyaPluginCallback;
import com.gigya.android.sdk.account.models.GigyaAccount;
import com.gigya.android.sdk.api.IBusinessApiService;
import com.gigya.android.sdk.ui.plugin.GigyaPluginBaseFragment;

import java.util.List;
import java.util.Map;
Expand All @@ -17,4 +20,6 @@ void showNativeLoginProviders(@GigyaDefinitions.Providers.SocialProvider List<St
Map<String, Object> params, GigyaLoginCallback<A> gigyaLoginCallback);

String getPresentationUrl(Map<String, Object> params, String requestType);

GigyaPluginBaseFragment<A> getFragmentPlugin(AppCompatActivity activity, boolean obfuscate, final String plugin, boolean fullScreen, final Map<String, Object> params, final GigyaPluginCallback<A> callback);
}
21 changes: 21 additions & 0 deletions sdk-core/src/main/java/com/gigya/android/sdk/ui/Presenter.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
import com.gigya.android.sdk.account.models.GigyaAccount;
import com.gigya.android.sdk.api.IBusinessApiService;
import com.gigya.android.sdk.providers.sso.GigyaSSOLoginActivity;
import com.gigya.android.sdk.ui.plugin.GigyaPluginBaseFragment;
import com.gigya.android.sdk.ui.plugin.IWebViewFragmentFactory;
import com.gigya.android.sdk.ui.provider.ProviderFragment;
import com.gigya.android.sdk.utils.UrlUtils;
Expand Down Expand Up @@ -129,6 +130,26 @@ public String getPresentationUrl(Map<String, Object> params, String requestType)
return String.format("%s://%s.%s/%s?%s", protocol, domainPrefix, _config.getApiDomain(), endpoint, qs);
}

@Override
public GigyaPluginBaseFragment<A> getFragmentPlugin(AppCompatActivity activity,
final boolean obfuscate,
final String plugin,
final boolean fullScreen,
final Map<String, Object> params,
final GigyaPluginCallback<A> gigyaPluginCallback) {
if (!params.containsKey("lang")) {
params.put("lang", "en");
}
if (!params.containsKey("deviceType")) {
params.put("deviceType", "mobile");
}

Bundle args = new Bundle();
args.putBoolean(ARG_STYLE_SHOW_FULL_SCREEN, fullScreen);
args.putBoolean(ARG_OBFUSCATE, obfuscate);
return _pfgFactory.getPluginFragmentInstance(activity, plugin, params, args, gigyaPluginCallback);
}


//region HOST ACTIVITY LIFECYCLE CALLBACKS TRACKING

Expand Down
Loading