|
@@ -5,73 +5,14 @@ Subject: Disable promos displayed in bookmarks manager
|
|
|
Remove personalized signin promo view from
|
|
|
bookmarks, never reach signin thresholds.
|
|
|
---
|
|
|
- chrome/android/chrome_java_resources.gni | 1 -
|
|
|
- ...rsonalized_signin_promo_view_bookmarks.xml | 30 -----
|
|
|
- .../bookmarks/BookmarkItemsAdapter.java | 30 +----
|
|
|
- .../bookmarks/BookmarkPromoHeader.java | 121 +-----------------
|
|
|
- .../browser/signin/SigninPromoController.java | 23 +---
|
|
|
- 5 files changed, 5 insertions(+), 200 deletions(-)
|
|
|
- delete mode 100644 chrome/android/java/res/layout/personalized_signin_promo_view_bookmarks.xml
|
|
|
+ .../bookmarks/BookmarkItemsAdapter.java | 29 +----
|
|
|
+ .../bookmarks/BookmarkPromoHeader.java | 123 +-----------------
|
|
|
+ 2 files changed, 4 insertions(+), 148 deletions(-)
|
|
|
|
|
|
-diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
|
|
|
---- a/chrome/android/chrome_java_resources.gni
|
|
|
-+++ b/chrome/android/chrome_java_resources.gni
|
|
|
-@@ -934,7 +934,6 @@ chrome_java_resources = [
|
|
|
- "java/res/layout/passwords_error_dialog.xml",
|
|
|
- "java/res/layout/passwords_progress_dialog.xml",
|
|
|
- "java/res/layout/personalized_signin_promo_view_body.xml",
|
|
|
-- "java/res/layout/personalized_signin_promo_view_bookmarks.xml",
|
|
|
- "java/res/layout/personalized_signin_promo_view_header.xml",
|
|
|
- "java/res/layout/personalized_signin_promo_view_modern_content_suggestions.xml",
|
|
|
- "java/res/layout/personalized_signin_promo_view_recent_tabs.xml",
|
|
|
-diff --git a/chrome/android/java/res/layout/personalized_signin_promo_view_bookmarks.xml b/chrome/android/java/res/layout/personalized_signin_promo_view_bookmarks.xml
|
|
|
-deleted file mode 100644
|
|
|
---- a/chrome/android/java/res/layout/personalized_signin_promo_view_bookmarks.xml
|
|
|
-+++ /dev/null
|
|
|
-@@ -1,30 +0,0 @@
|
|
|
--<?xml version="1.0" encoding="utf-8"?>
|
|
|
--<!-- Copyright 2017 The Chromium Authors. All rights reserved.
|
|
|
-- Use of this source code is governed by a BSD-style license that can be
|
|
|
-- found in the LICENSE file. -->
|
|
|
--
|
|
|
--<org.chromium.chrome.browser.signin.PersonalizedSigninPromoView
|
|
|
-- xmlns:android="http://schemas.android.com/apk/res/android"
|
|
|
-- android:id="@+id/signin_promo_view_container"
|
|
|
-- android:layout_width="match_parent"
|
|
|
-- android:layout_height="wrap_content"
|
|
|
-- android:layout_margin="16dp"
|
|
|
-- android:background="@drawable/hairline_border_card_background"
|
|
|
-- android:gravity="center_horizontal"
|
|
|
-- android:orientation="vertical"
|
|
|
-- android:paddingBottom="12dp"
|
|
|
-- android:paddingTop="14dp"
|
|
|
-- android:paddingStart="16dp"
|
|
|
-- android:paddingEnd="16dp">
|
|
|
--
|
|
|
-- <FrameLayout
|
|
|
-- android:layout_width="match_parent"
|
|
|
-- android:layout_height="wrap_content"
|
|
|
-- android:layout_marginBottom="12dp">
|
|
|
--
|
|
|
-- <include layout="@layout/personalized_signin_promo_view_header"/>
|
|
|
-- </FrameLayout>
|
|
|
--
|
|
|
-- <include layout="@layout/personalized_signin_promo_view_body"/>
|
|
|
--
|
|
|
--</org.chromium.chrome.browser.signin.PersonalizedSigninPromoView>
|
|
|
-\ No newline at end of file
|
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java
|
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java
|
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java
|
|
|
-@@ -25,7 +25,6 @@ import org.chromium.chrome.browser.bookmarks.BookmarkListEntry.ViewType;
|
|
|
- import org.chromium.chrome.browser.bookmarks.BookmarkRow.Location;
|
|
|
- import org.chromium.chrome.browser.feature_engagement.TrackerFactory;
|
|
|
- import org.chromium.chrome.browser.profiles.Profile;
|
|
|
--import org.chromium.chrome.browser.signin.PersonalizedSigninPromoView;
|
|
|
- import org.chromium.chrome.browser.sync.ProfileSyncService;
|
|
|
- import org.chromium.components.bookmarks.BookmarkId;
|
|
|
- import org.chromium.components.bookmarks.BookmarkType;
|
|
|
-@@ -51,7 +50,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
+@@ -51,7 +51,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
@ViewType
|
|
|
private int mPromoHeaderType = ViewType.INVALID;
|
|
|
private BookmarkDelegate mDelegate;
|
|
@@ -79,7 +20,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
private String mSearchText;
|
|
|
private BookmarkId mCurrentFolder;
|
|
|
private ProfileSyncService mProfileSyncService;
|
|
|
-@@ -183,9 +181,9 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
+@@ -183,9 +182,9 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
case ViewType.PERSONALIZED_SIGNIN_PROMO:
|
|
|
// fall through
|
|
|
case ViewType.PERSONALIZED_SYNC_PROMO:
|
|
@@ -91,7 +32,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
case ViewType.SECTION_HEADER:
|
|
|
return createSectionHeaderViewHolder(parent, viewType);
|
|
|
case ViewType.FOLDER:
|
|
|
-@@ -205,11 +203,7 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
+@@ -205,11 +204,7 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
@Override
|
|
|
public void onBindViewHolder(ViewHolder holder, int position) {
|
|
|
if (holder.getItemViewType() == ViewType.PERSONALIZED_SIGNIN_PROMO) {
|
|
@@ -103,7 +44,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
} else if (holder.getItemViewType() == ViewType.SECTION_HEADER) {
|
|
|
bindSectionHeaderViewHolder(holder.itemView, getItemByPosition(position));
|
|
|
} else if (BookmarkListEntry.isBookmarkEntry(holder.getItemViewType())) {
|
|
|
-@@ -257,7 +251,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
+@@ -262,7 +257,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
case ViewType.PERSONALIZED_SIGNIN_PROMO:
|
|
|
// fall through
|
|
|
case ViewType.PERSONALIZED_SYNC_PROMO:
|
|
@@ -111,7 +52,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
break;
|
|
|
default:
|
|
|
// Other view holders don't have special recycling code.
|
|
|
-@@ -283,7 +276,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
+@@ -288,7 +282,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
updateHeader(!topLevelFoldersShowing());
|
|
|
};
|
|
|
|
|
@@ -119,7 +60,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
populateTopLevelFoldersList();
|
|
|
|
|
|
mElements = new ArrayList<>();
|
|
|
-@@ -298,7 +290,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
+@@ -303,7 +296,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
mDelegate.getModel().removeObserver(mBookmarkModelObserver);
|
|
|
mDelegate.getSelectionDelegate().removeObserver(this);
|
|
|
mDelegate = null;
|
|
@@ -127,7 +68,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
mProfileSyncService.removeSyncStateChangedListener(this);
|
|
|
}
|
|
|
|
|
|
-@@ -421,23 +412,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
+@@ -426,23 +418,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkListEntry>
|
|
|
return;
|
|
|
} else if (currentUIState == BookmarkUIState.STATE_SEARCHING) {
|
|
|
mPromoHeaderType = ViewType.INVALID;
|
|
@@ -154,32 +95,18 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java
|
|
|
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java
|
|
|
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java
|
|
|
-@@ -21,15 +21,9 @@ import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
|
|
|
- import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
|
|
|
- import org.chromium.chrome.browser.profiles.Profile;
|
|
|
- import org.chromium.chrome.browser.signin.IdentityServicesProvider;
|
|
|
--import org.chromium.chrome.browser.signin.PersonalizedSigninPromoView;
|
|
|
- import org.chromium.chrome.browser.signin.ProfileDataCache;
|
|
|
--import org.chromium.chrome.browser.signin.SigninManager;
|
|
|
--import org.chromium.chrome.browser.signin.SigninManager.SignInStateObserver;
|
|
|
- import org.chromium.chrome.browser.signin.SigninPromoController;
|
|
|
--import org.chromium.chrome.browser.signin.SigninPromoUtil;
|
|
|
- import org.chromium.chrome.browser.signin.SyncPromoView;
|
|
|
--import org.chromium.chrome.browser.sync.AndroidSyncSettings;
|
|
|
--import org.chromium.chrome.browser.sync.AndroidSyncSettings.AndroidSyncSettingsObserver;
|
|
|
- import org.chromium.components.signin.AccountManagerFacade;
|
|
|
- import org.chromium.components.signin.AccountManagerFacadeProvider;
|
|
|
- import org.chromium.components.signin.AccountsChangeObserver;
|
|
|
-@@ -44,7 +38,7 @@ import java.lang.annotation.RetentionPolicy;
|
|
|
+@@ -43,9 +43,7 @@ import java.lang.annotation.RetentionPolicy;
|
|
|
* Class that manages all the logic and UI behind the signin promo header in the bookmark
|
|
|
* content UI. The header is shown only on certain situations, (e.g., not signed in).
|
|
|
*/
|
|
|
--class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObserver,
|
|
|
-+class BookmarkPromoHeader implements
|
|
|
- ProfileDataCache.Observer, AccountsChangeObserver {
|
|
|
+-class BookmarkPromoHeader implements ProfileSyncService.SyncStateChangedListener,
|
|
|
+- SignInStateObserver, ProfileDataCache.Observer,
|
|
|
+- AccountsChangeObserver {
|
|
|
++class BookmarkPromoHeader implements ProfileDataCache.Observer, AccountsChangeObserver {
|
|
|
/**
|
|
|
* Specifies the various states in which the Bookmarks promo can be.
|
|
|
-@@ -65,7 +59,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
|
|
|
+ */
|
|
|
+@@ -65,14 +63,12 @@ class BookmarkPromoHeader implements ProfileSyncService.SyncStateChangedListener
|
|
|
private static @Nullable @PromoState Integer sPromoStateForTests;
|
|
|
|
|
|
private final Context mContext;
|
|
@@ -187,11 +114,19 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
private final AccountManagerFacade mAccountManagerFacade;
|
|
|
private final Runnable mPromoHeaderChangeAction;
|
|
|
|
|
|
-@@ -81,12 +74,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
|
|
|
+ private @Nullable ProfileDataCache mProfileDataCache;
|
|
|
+ private final @Nullable SigninPromoController mSigninPromoController;
|
|
|
+ private @PromoState int mPromoState;
|
|
|
+- private final @Nullable ProfileSyncService mProfileSyncService;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Initializes the class. Note that this will start listening to signin related events and
|
|
|
+@@ -82,13 +78,6 @@ class BookmarkPromoHeader implements ProfileSyncService.SyncStateChangedListener
|
|
|
mContext = context;
|
|
|
mPromoHeaderChangeAction = promoHeaderChangeAction;
|
|
|
|
|
|
-- AndroidSyncSettings.get().registerObserver(this);
|
|
|
+- mProfileSyncService = ProfileSyncService.get();
|
|
|
+- if (mProfileSyncService != null) mProfileSyncService.addSyncStateChangedListener(this);
|
|
|
-
|
|
|
- mSignInManager = IdentityServicesProvider.get().getSigninManager(
|
|
|
- Profile.getLastUsedRegularProfile());
|
|
@@ -200,11 +135,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
mAccountManagerFacade = AccountManagerFacadeProvider.getInstance();
|
|
|
|
|
|
mPromoState = calculatePromoState();
|
|
|
-@@ -111,15 +98,11 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
|
|
|
+@@ -114,15 +103,11 @@ class BookmarkPromoHeader implements ProfileSyncService.SyncStateChangedListener
|
|
|
* Clean ups the class. Must be called once done using this class.
|
|
|
*/
|
|
|
void destroy() {
|
|
|
-- AndroidSyncSettings.get().unregisterObserver(this);
|
|
|
+- if (mProfileSyncService != null) mProfileSyncService.removeSyncStateChangedListener(this);
|
|
|
-
|
|
|
if (mSigninPromoController != null) {
|
|
|
mAccountManagerFacade.removeObserver(this);
|
|
@@ -216,7 +151,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
-@@ -130,18 +113,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
|
|
|
+@@ -133,18 +118,6 @@ class BookmarkPromoHeader implements ProfileSyncService.SyncStateChangedListener
|
|
|
return mPromoState;
|
|
|
}
|
|
|
|
|
@@ -235,7 +170,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
/**
|
|
|
* @return Sync promo header {@link ViewHolder} instance that can be used with
|
|
|
* {@link RecyclerView}.
|
|
|
-@@ -153,54 +124,11 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
|
|
|
+@@ -156,54 +129,11 @@ class BookmarkPromoHeader implements ProfileSyncService.SyncStateChangedListener
|
|
|
return new ViewHolder(view) {};
|
|
|
}
|
|
|
|
|
@@ -291,40 +226,44 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
}
|
|
|
|
|
|
private @PromoState int calculatePromoState() {
|
|
|
-@@ -208,53 +136,9 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
|
|
|
+@@ -211,57 +141,9 @@ class BookmarkPromoHeader implements ProfileSyncService.SyncStateChangedListener
|
|
|
return sPromoStateForTests;
|
|
|
}
|
|
|
|
|
|
-- if (!AndroidSyncSettings.get().doesMasterSyncSettingAllowChromeSync()) {
|
|
|
+- if (mProfileSyncService == null) {
|
|
|
+- // |mProfileSyncService| will remain null until the next browser startup, so no sense in
|
|
|
+- // offering any promo.
|
|
|
+- return PromoState.PROMO_NONE;
|
|
|
+- }
|
|
|
+-
|
|
|
+- if (!mProfileSyncService.isSyncAllowedByPlatform()) {
|
|
|
- return PromoState.PROMO_NONE;
|
|
|
- }
|
|
|
-
|
|
|
- if (!mSignInManager.getIdentityManager().hasPrimaryAccount()) {
|
|
|
-- if (ChromeFeatureList.isEnabled(ChromeFeatureList.MOBILE_IDENTITY_CONSISTENCY)) {
|
|
|
-- CoreAccountInfo primaryAccount =
|
|
|
-- mSignInManager.getIdentityManager().getPrimaryAccountInfo(
|
|
|
-- ConsentLevel.NOT_REQUIRED);
|
|
|
-- if (primaryAccount != null && !wasPersonalizedSigninPromoDeclined()) {
|
|
|
-- return PromoState.PROMO_SYNC_PERSONALIZED;
|
|
|
-- }
|
|
|
+- if (!shouldShowBookmarkSigninPromo()) {
|
|
|
+- return PromoState.PROMO_NONE;
|
|
|
- }
|
|
|
-- return shouldShowBookmarkSigninPromo() ? PromoState.PROMO_SIGNIN_PERSONALIZED
|
|
|
-- : PromoState.PROMO_NONE;
|
|
|
+- CoreAccountInfo primaryAccount =
|
|
|
+- mSignInManager.getIdentityManager().getPrimaryAccountInfo(
|
|
|
+- ConsentLevel.NOT_REQUIRED);
|
|
|
+- return primaryAccount == null ? PromoState.PROMO_SIGNIN_PERSONALIZED
|
|
|
+- : PromoState.PROMO_SYNC_PERSONALIZED;
|
|
|
- }
|
|
|
-
|
|
|
- boolean impressionLimitNotReached =
|
|
|
- SharedPreferencesManager.getInstance().readInt(
|
|
|
- ChromePreferenceKeys.SIGNIN_AND_SYNC_PROMO_SHOW_COUNT)
|
|
|
- < MAX_SIGNIN_AND_SYNC_PROMO_SHOW_COUNT;
|
|
|
-- if (!AndroidSyncSettings.get().isChromeSyncEnabled() && impressionLimitNotReached) {
|
|
|
+- if (!mProfileSyncService.isSyncRequested() && impressionLimitNotReached) {
|
|
|
- return PromoState.PROMO_SYNC;
|
|
|
- }
|
|
|
return PromoState.PROMO_NONE;
|
|
|
}
|
|
|
|
|
|
-- // AndroidSyncSettingsObserver implementation.
|
|
|
+- // ProfileSyncService.SyncStateChangedListener implementation.
|
|
|
- @Override
|
|
|
-- public void androidSyncSettingsChanged() {
|
|
|
+- public void syncStateChanged() {
|
|
|
- mPromoState = calculatePromoState();
|
|
|
- triggerPromoUpdate();
|
|
|
- }
|
|
@@ -344,8 +283,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
-
|
|
|
// ProfileDataCache.Observer implementation.
|
|
|
@Override
|
|
|
- public void onProfileDataUpdated(String accountId) {
|
|
|
-@@ -268,7 +152,6 @@ class BookmarkPromoHeader implements AndroidSyncSettingsObserver, SignInStateObs
|
|
|
+ public void onProfileDataUpdated(String accountEmail) {
|
|
|
+@@ -275,7 +157,6 @@ class BookmarkPromoHeader implements ProfileSyncService.SyncStateChangedListener
|
|
|
}
|
|
|
|
|
|
private void triggerPromoUpdate() {
|
|
@@ -353,39 +292,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
|
|
mPromoHeaderChangeAction.run();
|
|
|
}
|
|
|
|
|
|
-diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninPromoController.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninPromoController.java
|
|
|
---- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninPromoController.java
|
|
|
-+++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninPromoController.java
|
|
|
-@@ -70,28 +70,7 @@ public class SigninPromoController {
|
|
|
- * @param accessPoint The access point for which the impression limit is being checked.
|
|
|
- */
|
|
|
- public static boolean hasNotReachedImpressionLimit(@AccessPoint int accessPoint) {
|
|
|
-- SharedPreferencesManager preferencesManager = SharedPreferencesManager.getInstance();
|
|
|
-- switch (accessPoint) {
|
|
|
-- case SigninAccessPoint.BOOKMARK_MANAGER:
|
|
|
-- return getSigninPromoImpressionsCountBookmarks() < MAX_IMPRESSIONS_BOOKMARKS;
|
|
|
-- case SigninAccessPoint.NTP_CONTENT_SUGGESTIONS:
|
|
|
-- int maxImpressions = ChromeFeatureList.getFieldTrialParamByFeatureAsInt(
|
|
|
-- ChromeFeatureList.ENHANCED_PROTECTION_PROMO_CARD,
|
|
|
-- "MaxSigninPromoImpressions", Integer.MAX_VALUE);
|
|
|
-- return SharedPreferencesManager.getInstance().readInt(
|
|
|
-- ChromePreferenceKeys.SIGNIN_PROMO_IMPRESSIONS_COUNT_NTP)
|
|
|
-- < maxImpressions;
|
|
|
-- case SigninAccessPoint.RECENT_TABS:
|
|
|
-- // There is no impression limit for Recent Tabs.
|
|
|
-- return true;
|
|
|
-- case SigninAccessPoint.SETTINGS:
|
|
|
-- return preferencesManager.readInt(
|
|
|
-- ChromePreferenceKeys.SIGNIN_PROMO_IMPRESSIONS_COUNT_SETTINGS)
|
|
|
-- < MAX_IMPRESSIONS_SETTINGS;
|
|
|
-- default:
|
|
|
-- assert false : "Unexpected value for access point: " + accessPoint;
|
|
|
-- return false;
|
|
|
-- }
|
|
|
-+ return false;
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
--
|
|
|
2.17.1
|
|
|
|