Skip to content

Commit 36a0ee2

Browse files
ish-joshihannesa2
authored andcommitted
add: more descriptive text for BarChart.java
add: support for user generated description
1 parent 98b2d96 commit 36a0ee2

File tree

2 files changed

+24
-3
lines changed

2 files changed

+24
-3
lines changed

MPChartLib/src/main/java/com/github/mikephil/charting/charts/BarChart.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515
import com.github.mikephil.charting.interfaces.datasets.IBarDataSet;
1616
import com.github.mikephil.charting.renderer.BarChartRenderer;
1717

18+
import java.util.Locale;
19+
1820
/**
1921
* Chart that draws bars.
2022
*
@@ -298,9 +300,10 @@ public String getAccessibilityDescription() {
298300

299301
// Format the values of min and max; to recite them back
300302

301-
String description = String.format("The bar chart has %d %s. " +
302-
"The minimum value is %s and maximum value is %s",
303-
entryCount, entries, minVal, maxVal);
303+
String description = String.format(Locale.getDefault(), "The bar chart has %d %s. " +
304+
"The minimum value is %s and maximum value is %s." +
305+
"Data ranges from %s to %s.",
306+
entryCount, entries, minVal, maxVal, minRange, maxRange);
304307

305308
return description;
306309
}

MPChartLib/src/main/java/com/github/mikephil/charting/charts/Chart.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,11 @@ public abstract class Chart<T extends ChartData<? extends IDataSet<? extends Ent
175175
*/
176176
private String TAG = "abilityTag";
177177

178+
/**
179+
* Additional data on top of dynamically generated description. This can be set by the user.
180+
*/
181+
private String accessibilitySummaryDescription = "";
182+
178183
/**
179184
* default constructor for initialization in code
180185
*/
@@ -1666,6 +1671,14 @@ public void setUnbindEnabled(boolean enabled) {
16661671
*/
16671672
public abstract String getAccessibilityDescription();
16681673

1674+
public String getAccessibilitySummaryDescription() {
1675+
return accessibilitySummaryDescription;
1676+
}
1677+
1678+
public void setAccessibilitySummaryDescription(String accessibilitySummaryDescription) {
1679+
this.accessibilitySummaryDescription = accessibilitySummaryDescription;
1680+
}
1681+
16691682
@Override
16701683
public boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event) {
16711684

@@ -1674,6 +1687,11 @@ public boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event) {
16741687

16751688
event.getText().add(getAccessibilityDescription());
16761689

1690+
// Add the user generated summary after the dynamic summary is complete.
1691+
if (!TextUtils.isEmpty(this.getAccessibilitySummaryDescription())) {
1692+
event.getText().add(this.getAccessibilitySummaryDescription());
1693+
}
1694+
16771695
return true;
16781696
}
16791697

0 commit comments

Comments
 (0)