Toggle navigation
Toggle navigation
This project
Loading...
Sign in
open-source
/
warply_android_sdk_maven_plugin
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
Panagiotis Triantafyllou
2025-02-06 13:55:09 +0200
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
6f1724042e8e1933ba15187487d5c5f2d3eab248
6f172404
1 parent
9e03b654
accessibility maps
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
426 additions
and
24 deletions
warply_android_sdk/src/main/java/ly/warp/sdk/activities/ShopsActivity.java
warply_android_sdk/src/main/java/ly/warp/sdk/activities/ShopsHuaweiActivity.java
warply_android_sdk/src/main/res/layout/dl_map_pin.xml
warply_android_sdk/src/main/res/values/strings.xml
warply_android_sdk/src/main/java/ly/warp/sdk/activities/ShopsActivity.java
View file @
6f17240
...
...
@@ -2,6 +2,7 @@ package ly.warp.sdk.activities;
import
android.Manifest
;
import
android.content.ActivityNotFoundException
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.content.pm.PackageManager
;
import
android.graphics.Bitmap
;
...
...
@@ -9,11 +10,15 @@ import android.graphics.Canvas;
import
android.graphics.drawable.Drawable
;
import
android.net.Uri
;
import
android.os.Bundle
;
import
android.os.Handler
;
import
android.text.TextUtils
;
import
android.util.Log
;
import
android.view.View
;
import
android.view.accessibility.AccessibilityEvent
;
import
android.view.accessibility.AccessibilityManager
;
import
android.widget.ImageView
;
import
android.widget.LinearLayout
;
import
android.widget.RelativeLayout
;
import
android.widget.TextView
;
import
androidx.annotation.NonNull
;
...
...
@@ -21,6 +26,9 @@ import androidx.annotation.Nullable;
import
androidx.appcompat.app.AlertDialog
;
import
androidx.core.app.ActivityCompat
;
import
androidx.core.content.ContextCompat
;
import
androidx.core.view.AccessibilityDelegateCompat
;
import
androidx.core.view.ViewCompat
;
import
androidx.core.view.accessibility.AccessibilityNodeInfoCompat
;
import
androidx.fragment.app.FragmentActivity
;
import
com.bumptech.glide.Glide
;
...
...
@@ -104,6 +112,9 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe
mIvBack
.
setOnClickListener
(
this
);
mFontHeader
=
findViewById
(
R
.
id
.
textView3
);
WarpUtils
.
renderCustomFont
(
this
,
R
.
font
.
bt_cosmo_bold
,
mFontHeader
);
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
mFontHeader
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
}
@Override
...
...
@@ -214,9 +225,12 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe
final
BottomSheetDialog
bottomSheetDialog
=
new
BottomSheetDialog
(
this
,
R
.
style
.
BottomSheetDialog
);
bottomSheetDialog
.
setContentView
(
R
.
layout
.
dl_map_pin
);
ImageView
dialogClose
=
(
ImageView
)
bottomSheetDialog
.
findViewById
(
R
.
id
.
iv
_map_pin_close
);
RelativeLayout
dialogClose
=
(
RelativeLayout
)
bottomSheetDialog
.
findViewById
(
R
.
id
.
rl
_map_pin_close
);
dialogClose
.
setOnClickListener
(
view
->
bottomSheetDialog
.
dismiss
());
RelativeLayout
imagePhone
=
(
RelativeLayout
)
bottomSheetDialog
.
findViewById
(
R
.
id
.
rl_phone
);
RelativeLayout
imageLocation
=
(
RelativeLayout
)
bottomSheetDialog
.
findViewById
(
R
.
id
.
rl_location
);
TextView
pinTitle
=
(
TextView
)
bottomSheetDialog
.
findViewById
(
R
.
id
.
tv_pin_title
);
WarpUtils
.
renderCustomFont
(
ShopsActivity
.
this
,
R
.
font
.
pf_square_sans_pro_bold
,
pinTitle
);
if
(
mMerchantParentList
!=
null
&&
mMerchantParentList
.
size
()
>
0
)
{
...
...
@@ -267,6 +281,122 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe
startActivity
(
mapIntent
);
});
pinTitle
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
ViewCompat
.
setAccessibilityDelegate
(
pinTitle
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setContentDescription
(
pinTitle
.
getText
().
toString
());
}
});
dialogClose
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
ViewCompat
.
setAccessibilityDelegate
(
dialogClose
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.Button"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_close
));
}
});
pinLogo
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinName
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinDays
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinTel
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinAddress
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinDirectionsText
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinDirections
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
imagePhone
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
imageLocation
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
View
rootView
=
findViewById
(
android
.
R
.
id
.
content
);
if
(
rootView
!=
null
)
{
rootView
.
post
(()
->
{
rootView
.
announceForAccessibility
(
getString
(
R
.
string
.
accessibility_pin
)
+
", "
+
getString
(
R
.
string
.
accessibility_shop
)
+
", "
);
});
new
Handler
().
postDelayed
(()
->
{
dialogClose
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
pinTitle
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
pinLogo
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
pinLogo
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.ImageView"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_shop_logo
));
}
});
pinName
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
pinName
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setContentDescription
(
merch
.
getName
());
}
});
pinDays
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
imagePhone
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
imagePhone
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.ImageView"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_phone
));
}
});
pinTel
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
pinTel
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setContentDescription
(
WarplyManagerHelper
.
formatPhoneNumber
(
merch
.
getTelephone
()));
}
});
imageLocation
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
imageLocation
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.ImageView"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_address
));
}
});
pinAddress
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
pinAddress
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setContentDescription
(
merch
.
getAddress
());
}
});
pinDirectionsText
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
pinDirections
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
pinDirections
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.Button"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
cos_directions
));
}
});
},
3000
);
}
bottomSheetDialog
.
show
();
return
false
;
...
...
@@ -338,6 +468,32 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe
return
;
}
//Accessibility
mFontHeader
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
mFontHeader
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setHeading
(
true
);
}
});
mFontHeader
.
sendAccessibilityEvent
(
AccessibilityEvent
.
TYPE_VIEW_FOCUSED
);
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
mIvBack
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.Button"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_back
));
}
});
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
mIvBack
.
postDelayed
(()
->
{
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
},
1000
);
for
(
Merchant
merch
:
result
)
{
if
(!
TextUtils
.
isEmpty
(
merch
.
getImgPreview
()))
{
Glide
.
with
(
ShopsActivity
.
this
)
...
...
@@ -440,6 +596,32 @@ public class ShopsActivity extends FragmentActivity implements View.OnClickListe
return
;
}
//Accessibility
mFontHeader
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
mFontHeader
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setHeading
(
true
);
}
});
mFontHeader
.
sendAccessibilityEvent
(
AccessibilityEvent
.
TYPE_VIEW_FOCUSED
);
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
mIvBack
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.Button"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_back
));
}
});
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
mIvBack
.
postDelayed
(()
->
{
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
},
1000
);
if
(
mMerchantParentList
!=
null
&&
mMerchantParentList
.
size
()
>
0
)
{
for
(
Merchant
parentMerch
:
mMerchantParentList
)
{
for
(
Merchant
merch
:
result
)
{
...
...
warply_android_sdk/src/main/java/ly/warp/sdk/activities/ShopsHuaweiActivity.java
View file @
6f17240
...
...
@@ -2,6 +2,7 @@ package ly.warp.sdk.activities;
import
android.Manifest
;
import
android.content.ActivityNotFoundException
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.content.pm.PackageManager
;
import
android.graphics.Bitmap
;
...
...
@@ -9,11 +10,15 @@ import android.graphics.Canvas;
import
android.graphics.drawable.Drawable
;
import
android.net.Uri
;
import
android.os.Bundle
;
import
android.os.Handler
;
import
android.text.TextUtils
;
import
android.util.Log
;
import
android.view.View
;
import
android.view.accessibility.AccessibilityEvent
;
import
android.view.accessibility.AccessibilityManager
;
import
android.widget.ImageView
;
import
android.widget.LinearLayout
;
import
android.widget.RelativeLayout
;
import
android.widget.TextView
;
import
androidx.annotation.NonNull
;
...
...
@@ -21,6 +26,9 @@ import androidx.annotation.Nullable;
import
androidx.appcompat.app.AlertDialog
;
import
androidx.core.app.ActivityCompat
;
import
androidx.core.content.ContextCompat
;
import
androidx.core.view.AccessibilityDelegateCompat
;
import
androidx.core.view.ViewCompat
;
import
androidx.core.view.accessibility.AccessibilityNodeInfoCompat
;
import
androidx.fragment.app.FragmentActivity
;
import
com.bumptech.glide.Glide
;
...
...
@@ -103,6 +111,9 @@ public class ShopsHuaweiActivity extends FragmentActivity implements View.OnClic
mIvBack
.
setOnClickListener
(
this
);
mFontHeader
=
findViewById
(
R
.
id
.
textView3
);
WarpUtils
.
renderCustomFont
(
this
,
R
.
font
.
bt_cosmo_bold
,
mFontHeader
);
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
mFontHeader
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
}
@Override
...
...
@@ -215,9 +226,12 @@ public class ShopsHuaweiActivity extends FragmentActivity implements View.OnClic
final
BottomSheetDialog
bottomSheetDialog
=
new
BottomSheetDialog
(
this
,
R
.
style
.
BottomSheetDialog
);
bottomSheetDialog
.
setContentView
(
R
.
layout
.
dl_map_pin
);
ImageView
dialogClose
=
(
ImageView
)
bottomSheetDialog
.
findViewById
(
R
.
id
.
iv
_map_pin_close
);
RelativeLayout
dialogClose
=
(
RelativeLayout
)
bottomSheetDialog
.
findViewById
(
R
.
id
.
rl
_map_pin_close
);
dialogClose
.
setOnClickListener
(
view
->
bottomSheetDialog
.
dismiss
());
RelativeLayout
imagePhone
=
(
RelativeLayout
)
bottomSheetDialog
.
findViewById
(
R
.
id
.
rl_phone
);
RelativeLayout
imageLocation
=
(
RelativeLayout
)
bottomSheetDialog
.
findViewById
(
R
.
id
.
rl_location
);
TextView
pinTitle
=
(
TextView
)
bottomSheetDialog
.
findViewById
(
R
.
id
.
tv_pin_title
);
WarpUtils
.
renderCustomFont
(
ShopsHuaweiActivity
.
this
,
R
.
font
.
pf_square_sans_pro_bold
,
pinTitle
);
if
(
mMerchantParentList
!=
null
&&
mMerchantParentList
.
size
()
>
0
)
{
...
...
@@ -271,6 +285,122 @@ public class ShopsHuaweiActivity extends FragmentActivity implements View.OnClic
}
});
pinTitle
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
ViewCompat
.
setAccessibilityDelegate
(
pinTitle
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setContentDescription
(
pinTitle
.
getText
().
toString
());
}
});
dialogClose
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
ViewCompat
.
setAccessibilityDelegate
(
dialogClose
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.Button"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_close
));
}
});
pinLogo
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinName
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinDays
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinTel
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinAddress
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinDirectionsText
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
pinDirections
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
imagePhone
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
imageLocation
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
View
rootView
=
findViewById
(
android
.
R
.
id
.
content
);
if
(
rootView
!=
null
)
{
rootView
.
post
(()
->
{
rootView
.
announceForAccessibility
(
getString
(
R
.
string
.
accessibility_pin
)
+
", "
+
getString
(
R
.
string
.
accessibility_shop
)
+
", "
);
});
new
Handler
().
postDelayed
(()
->
{
dialogClose
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
pinTitle
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
pinLogo
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
pinLogo
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.ImageView"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_shop_logo
));
}
});
pinName
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
pinName
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setContentDescription
(
merch
.
getName
());
}
});
pinDays
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
imagePhone
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
imagePhone
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.ImageView"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_phone
));
}
});
pinTel
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
pinTel
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setContentDescription
(
WarplyManagerHelper
.
formatPhoneNumber
(
merch
.
getTelephone
()));
}
});
imageLocation
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
imageLocation
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.ImageView"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_address
));
}
});
pinAddress
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
pinAddress
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setContentDescription
(
merch
.
getAddress
());
}
});
pinDirectionsText
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
pinDirections
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
pinDirections
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.Button"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
cos_directions
));
}
});
},
3000
);
}
bottomSheetDialog
.
show
();
return
false
;
...
...
@@ -355,6 +485,32 @@ public class ShopsHuaweiActivity extends FragmentActivity implements View.OnClic
return
;
}
//Accessibility
mFontHeader
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
mFontHeader
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setHeading
(
true
);
}
});
mFontHeader
.
sendAccessibilityEvent
(
AccessibilityEvent
.
TYPE_VIEW_FOCUSED
);
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
mIvBack
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.Button"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_back
));
}
});
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
mIvBack
.
postDelayed
(()
->
{
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
},
1000
);
for
(
Merchant
merch
:
result
)
{
if
(!
TextUtils
.
isEmpty
(
merch
.
getImgPreview
()))
{
Glide
.
with
(
ShopsHuaweiActivity
.
this
)
...
...
@@ -463,6 +619,32 @@ public class ShopsHuaweiActivity extends FragmentActivity implements View.OnClic
return
;
}
//Accessibility
mFontHeader
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
mFontHeader
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.TextView"
);
info
.
setHeading
(
true
);
}
});
mFontHeader
.
sendAccessibilityEvent
(
AccessibilityEvent
.
TYPE_VIEW_FOCUSED
);
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
ViewCompat
.
setAccessibilityDelegate
(
mIvBack
,
new
AccessibilityDelegateCompat
()
{
@Override
public
void
onInitializeAccessibilityNodeInfo
(
View
host
,
@NonNull
AccessibilityNodeInfoCompat
info
)
{
super
.
onInitializeAccessibilityNodeInfo
(
host
,
info
);
info
.
setClassName
(
"android.widget.Button"
);
info
.
setContentDescription
(
getString
(
R
.
string
.
accessibility_back
));
}
});
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_NO
);
mIvBack
.
postDelayed
(()
->
{
mIvBack
.
setImportantForAccessibility
(
View
.
IMPORTANT_FOR_ACCESSIBILITY_YES
);
},
1000
);
if
(
mMerchantParentList
!=
null
&&
mMerchantParentList
.
size
()
>
0
)
{
for
(
Merchant
parentMerch
:
mMerchantParentList
)
{
for
(
Merchant
merch
:
result
)
{
...
...
warply_android_sdk/src/main/res/layout/dl_map_pin.xml
View file @
6f17240
...
...
@@ -10,26 +10,38 @@
<RelativeLayout
android:id=
"@+id/rl_map_pin"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginBottom=
"24dp"
android:paddingHorizontal=
"24dp"
android:paddingTop=
"16dp"
>
android:layout_height=
"48dp"
android:layout_marginTop=
"8dp"
android:layout_marginBottom=
"24dp"
>
<TextView
android:id=
"@+id/tv_pin_title"
android:layout_width=
"wrap_content"
android:layout_height=
"
wrap_cont
ent"
android:layout_height=
"
match_par
ent"
android:layout_alignParentStart=
"true"
android:layout_marginStart=
"24dp"
android:gravity=
"center_vertical"
android:textColor=
"@color/cos_grey9"
android:textSize=
"16sp"
tools:text=
"ΓΕΡΜΑΝΟΣ"
/>
<
ImageView
android:id=
"@+id/
iv
_map_pin_close"
android:layout_width=
"
16
dp"
android:layout_height=
"
16
dp"
<
RelativeLayout
android:id=
"@+id/
rl
_map_pin_close"
android:layout_width=
"
32
dp"
android:layout_height=
"
32
dp"
android:layout_alignParentEnd=
"true"
android:src=
"@drawable/ic_close"
/>
android:layout_centerVertical=
"true"
android:layout_gravity=
"center"
android:layout_marginEnd=
"12dp"
android:gravity=
"center"
>
<ImageView
android:id=
"@+id/iv_map_pin_close"
android:layout_width=
"16dp"
android:layout_height=
"16dp"
android:contentDescription=
"@string/accessibility_close"
android:src=
"@drawable/ic_close"
/>
</RelativeLayout>
</RelativeLayout>
<LinearLayout
...
...
@@ -82,18 +94,28 @@
android:layout_height=
"36dp"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
android:paddingHorizontal=
"24dp"
>
android:paddingStart=
"24dp"
android:paddingEnd=
"24dp"
>
<ImageView
android:layout_width=
"14dp"
android:layout_height=
"14dp"
android:src=
"@drawable/ic_pin_tel"
/>
<RelativeLayout
android:id=
"@+id/rl_phone"
android:layout_width=
"28dp"
android:layout_height=
"28dp"
android:gravity=
"center"
>
<ImageView
android:id=
"@+id/iv_phone"
android:layout_width=
"14dp"
android:layout_height=
"14dp"
android:src=
"@drawable/ic_pin_tel"
/>
</RelativeLayout>
<TextView
android:id=
"@+id/tv_pin_tel"
android:layout_width=
"wrap_content"
android:layout_height=
"
wrap_cont
ent"
android:layout_height=
"
match_par
ent"
android:layout_marginStart=
"12dp"
android:gravity=
"center_vertical"
android:textColor=
"@color/grey"
android:textSize=
"14sp"
tools:text=
"210-6230543"
/>
...
...
@@ -110,7 +132,8 @@
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginBottom=
"16dp"
android:paddingHorizontal=
"24dp"
>
android:paddingStart=
"24dp"
android:paddingEnd=
"24dp"
>
<LinearLayout
android:id=
"@+id/ll_pin_address"
...
...
@@ -119,16 +142,25 @@
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
>
<ImageView
android:layout_width=
"14dp"
android:layout_height=
"14dp"
android:src=
"@drawable/ic_pin_location"
/>
<RelativeLayout
android:id=
"@+id/rl_location"
android:layout_width=
"28dp"
android:layout_height=
"28dp"
android:gravity=
"center"
>
<ImageView
android:id=
"@+id/iv_location"
android:layout_width=
"14dp"
android:layout_height=
"14dp"
android:src=
"@drawable/ic_pin_location"
/>
</RelativeLayout>
<TextView
android:id=
"@+id/tv_pin_address"
android:layout_width=
"184dp"
android:layout_height=
"
wrap_cont
ent"
android:layout_height=
"
match_par
ent"
android:layout_marginStart=
"12dp"
android:gravity=
"center_vertical"
android:maxLines=
"2"
android:textColor=
"@color/grey"
android:textSize=
"14sp"
...
...
warply_android_sdk/src/main/res/values/strings.xml
View file @
6f17240
...
...
@@ -268,6 +268,12 @@
<string
name=
"accessibility_expand"
>
Ανεπτυγμένο
</string>
<string
name=
"accessibility_collapse"
>
Συμπτυγμένο
</string>
<string
name=
"accessibility_activate"
>
Διπλό πάτημα για επιλογή
</string>
<string
name=
"accessibility_open"
>
Διπλό πάτημα για άνοιγμα
</string>
<string
name=
"accessibility_pin"
>
Πινέζα
</string>
<string
name=
"accessibility_shop"
>
κατάστημα
</string>
<string
name=
"accessibility_phone"
>
Τηλέφωνο
</string>
<string
name=
"accessibility_address"
>
Διεύθυνση
</string>
<string
name=
"accessibility_shop_logo"
>
Λογότυπο καταστήματος
</string>
<string-array
name=
"coupons_array"
>
<item>
Κουπόνια
</item>
...
...
Please
register
or
login
to post a comment