Skip to content

Commit

Permalink
Update Android SDK to 4.2.2 (17)
Browse files Browse the repository at this point in the history
  • Loading branch information
dodyg committed Jun 19, 2013
1 parent 54f928d commit 9215da6
Show file tree
Hide file tree
Showing 28 changed files with 58 additions and 37 deletions.
2 changes: 1 addition & 1 deletion .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 4 additions & 2 deletions AndroidRivers.iml
Expand Up @@ -2,7 +2,9 @@
<module type="JAVA_MODULE" version="4"> <module type="JAVA_MODULE" version="4">
<component name="FacetManager"> <component name="FacetManager">
<facet type="android" name="Android"> <facet type="android" name="Android">
<configuration /> <configuration>
<option name="UPDATE_PROPERTY_FILES" value="true" />
</configuration>
</facet> </facet>
</component> </component>
<component name="NewModuleRootManager" inherit-compiler-output="true"> <component name="NewModuleRootManager" inherit-compiler-output="true">
Expand All @@ -11,7 +13,7 @@
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" />
</content> </content>
<orderEntry type="jdk" jdkName="Android 4.1 Platform" jdkType="Android SDK" /> <orderEntry type="jdk" jdkName="Android 4.2.2 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="KotlinRuntime" level="project" /> <orderEntry type="library" name="KotlinRuntime" level="project" />
<orderEntry type="library" name="gson-2.2.2" level="project" /> <orderEntry type="library" name="gson-2.2.2" level="project" />
Expand Down
3 changes: 2 additions & 1 deletion HoloEverywhere-master/addons/preferences/preferences.iml
Expand Up @@ -4,6 +4,7 @@
<facet type="android" name="Android"> <facet type="android" name="Android">
<configuration> <configuration>
<option name="LIBRARY_PROJECT" value="true" /> <option name="LIBRARY_PROJECT" value="true" />
<option name="UPDATE_PROPERTY_FILES" value="true" />
</configuration> </configuration>
</facet> </facet>
</component> </component>
Expand All @@ -13,7 +14,7 @@
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" />
</content> </content>
<orderEntry type="jdk" jdkName="Android 4.1 Platform" jdkType="Android SDK" /> <orderEntry type="jdk" jdkName="Android 4.2.2 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="library" /> <orderEntry type="module" module-name="library" />
<orderEntry type="module-library"> <orderEntry type="module-library">
Expand Down
Expand Up @@ -11,7 +11,7 @@
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt


# Project target. # Project target.
target=android-16 target=android-17
android.library=true android.library=true
android.library.reference.1=../../library android.library.reference.1=../../library
android.library.reference.2=../../contrib/ActionBarSherlock android.library.reference.2=../../contrib/ActionBarSherlock
Expand Up @@ -9,6 +9,6 @@


android.library=true android.library=true
# Project target. # Project target.
target=android-16 target=android-17
android.library.reference.1=../../library android.library.reference.1=../../library
android.library.reference.2=../../contrib/ActionBarSherlock android.library.reference.2=../../contrib/ActionBarSherlock
3 changes: 2 additions & 1 deletion HoloEverywhere-master/addons/slidingmenu/slidingmenu.iml
Expand Up @@ -4,6 +4,7 @@
<facet type="android" name="Android"> <facet type="android" name="Android">
<configuration> <configuration>
<option name="LIBRARY_PROJECT" value="true" /> <option name="LIBRARY_PROJECT" value="true" />
<option name="UPDATE_PROPERTY_FILES" value="true" />
</configuration> </configuration>
</facet> </facet>
</component> </component>
Expand All @@ -13,7 +14,7 @@
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" />
</content> </content>
<orderEntry type="jdk" jdkName="Android 4.1 Platform" jdkType="Android SDK" /> <orderEntry type="jdk" jdkName="Android 4.2.2 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="library" /> <orderEntry type="module" module-name="library" />
<orderEntry type="module-library"> <orderEntry type="module-library">
Expand Down
Expand Up @@ -4,6 +4,7 @@
<facet type="android" name="Android"> <facet type="android" name="Android">
<configuration> <configuration>
<option name="LIBRARY_PROJECT" value="true" /> <option name="LIBRARY_PROJECT" value="true" />
<option name="UPDATE_PROPERTY_FILES" value="true" />
</configuration> </configuration>
</facet> </facet>
</component> </component>
Expand All @@ -14,7 +15,7 @@
<sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" />
</content> </content>
<orderEntry type="jdk" jdkName="Android 4.1 Platform" jdkType="Android SDK" /> <orderEntry type="jdk" jdkName="Android 4.2.2 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module-library"> <orderEntry type="module-library">
<library> <library>
Expand Down
Expand Up @@ -9,4 +9,4 @@


android.library=true android.library=true
# Project target. # Project target.
target=android-16 target=android-17
3 changes: 2 additions & 1 deletion HoloEverywhere-master/library/library.iml
Expand Up @@ -4,6 +4,7 @@
<facet type="android" name="Android"> <facet type="android" name="Android">
<configuration> <configuration>
<option name="LIBRARY_PROJECT" value="true" /> <option name="LIBRARY_PROJECT" value="true" />
<option name="UPDATE_PROPERTY_FILES" value="true" />
</configuration> </configuration>
</facet> </facet>
</component> </component>
Expand All @@ -13,7 +14,7 @@
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" />
</content> </content>
<orderEntry type="jdk" jdkName="Android 4.1 Platform" jdkType="Android SDK" /> <orderEntry type="jdk" jdkName="Android 4.2.2 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="ActionBarSherlock" /> <orderEntry type="module" module-name="ActionBarSherlock" />
<orderEntry type="module-library"> <orderEntry type="module-library">
Expand Down
2 changes: 1 addition & 1 deletion HoloEverywhere-master/library/project.properties
Expand Up @@ -8,7 +8,7 @@
# project structure. # project structure.


# Project target. # Project target.
target=android-16 target=android-17
android.library=true android.library=true
android.library.reference.1=../contrib/ActionBarSherlock android.library.reference.1=../contrib/ActionBarSherlock


3 changes: 2 additions & 1 deletion NewsEngine/NewsEngine.iml
Expand Up @@ -4,6 +4,7 @@
<facet type="android" name="Android"> <facet type="android" name="Android">
<configuration> <configuration>
<option name="LIBRARY_PROJECT" value="true" /> <option name="LIBRARY_PROJECT" value="true" />
<option name="UPDATE_PROPERTY_FILES" value="true" />
</configuration> </configuration>
</facet> </facet>
</component> </component>
Expand All @@ -13,7 +14,7 @@
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" />
</content> </content>
<orderEntry type="jdk" jdkName="Android 4.1 Platform" jdkType="Android SDK" /> <orderEntry type="jdk" jdkName="Android 4.2.2 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="KotlinRuntime" level="project" /> <orderEntry type="library" name="KotlinRuntime" level="project" />
</component> </component>
Expand Down
2 changes: 1 addition & 1 deletion NewsEngine/project.properties
Expand Up @@ -12,4 +12,4 @@


android.library=true android.library=true
# Project target. # Project target.
target=android-16 target=android-17
5 changes: 4 additions & 1 deletion README.md
Expand Up @@ -21,7 +21,10 @@ The mailing list for this project is at groups.google.com/group/news-and-protoco


This code is licensed under GPL version 3. Please read license.txt. This code is licensed under GPL version 3. Please read license.txt.


I develop Android Rivers using <a href="http://kotlin.jetbrains.org/">Kotlin programming language</a> I develop Android Rivers using <a href="http://kotlin.jetbrains.org/">Kotlin programming language</a>. It might not be
obvious that this is Kotlin project since there are a lot of Java code in the project. Most of these Java code are open source
libraries that Android Rivers include in source form by necessity. Most of the Kotlin code is located at NewsEngine module and
com.silverkeytech.android_rivers package at the main project.


By reading Android Rivers source code, you will learn about: By reading Android Rivers source code, you will learn about:


Expand Down
Binary file modified lib/kotlin-runtime.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion project.properties
Expand Up @@ -11,7 +11,7 @@
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt


# Project target. # Project target.
target=android-16 target=android-17
android.library.reference.1=HoloEverywhere-master/contrib/ActionBarSherlock android.library.reference.1=HoloEverywhere-master/contrib/ActionBarSherlock
android.library.reference.2=HoloEverywhere-master/library android.library.reference.2=HoloEverywhere-master/library
android.library.reference.3=HoloEverywhere-master/addons/preferences android.library.reference.3=HoloEverywhere-master/addons/preferences
Expand Down
Expand Up @@ -22,6 +22,9 @@ import android.content.Context
import android.content.DialogInterface import android.content.DialogInterface
import org.holoeverywhere.app.ProgressDialog import org.holoeverywhere.app.ProgressDialog


/*
This is a progress dialog that show indeterminate progress (there is no 0..100 % progress indicator)
*/
public class InfinityProgressDialog(ctx: Context, val message: String): ProgressDialog(ctx){ public class InfinityProgressDialog(ctx: Context, val message: String): ProgressDialog(ctx){
{ {
super.setCancelable(true) super.setCancelable(true)
Expand Down
4 changes: 4 additions & 0 deletions src/com/silverkeytech/android_rivers/Result.kt
Expand Up @@ -20,6 +20,10 @@ package com.silverkeytech.android_rivers
public class None(){ public class None(){
} }


/*
This is a common class used to hold result of an operation. If the operation throws an exception, the exception is available
on .exception property
*/
public data class Result<T: Any>(p1: T?, p2: Exception? = null){ public data class Result<T: Any>(p1: T?, p2: Exception? = null){
class object{ class object{
//return True result //return True result
Expand Down
3 changes: 3 additions & 0 deletions src/com/silverkeytech/android_rivers/ScrollMotionDetector.kt
Expand Up @@ -23,6 +23,9 @@ import android.view.View
import android.view.MotionEvent import android.view.MotionEvent
import android.util.Log import android.util.Log


/*
This is a utility class to handle user scroll/swipe movement and to differentiate a click with a swipe motion
*/
public class ScrollMotionDetector (scrollTreshold : Float = 10.0){ public class ScrollMotionDetector (scrollTreshold : Float = 10.0){
class object { class object {
public val TAG: String = javaClass<ScrollMotionDetector>().getSimpleName() public val TAG: String = javaClass<ScrollMotionDetector>().getSimpleName()
Expand Down
4 changes: 1 addition & 3 deletions src/com/silverkeytech/android_rivers/Texts.kt
Expand Up @@ -47,9 +47,7 @@ fun scrubHtml(text: String?): String {
for(i in 0..(spannedObjects.size - 1)){ for(i in 0..(spannedObjects.size - 1)){
if (spannedObjects[i] is ImageSpan){ if (spannedObjects[i] is ImageSpan){
val img = spannedObjects[i] as ImageSpan val img = spannedObjects[i] as ImageSpan
if (img != null){ spanned.replace(spanned.getSpanStart(img), spanned.getSpanEnd(img), "")
spanned.replace(spanned.getSpanStart(img), spanned.getSpanEnd(img), "")
}
} }
} }


Expand Down
9 changes: 3 additions & 6 deletions src/com/silverkeytech/android_rivers/UrlShortener.kt
Expand Up @@ -21,14 +21,11 @@ package com.silverkeytech.android_rivers
import com.github.kevinsawicki.http.HttpRequest import com.github.kevinsawicki.http.HttpRequest
import com.google.gson.Gson import com.google.gson.Gson


public class shortenData (public val longUrl: String){
}

public class shortenDataReply(public val kind: String, public val id: String, public longUrl: String){
}

public fun googleShorten(url: String): Result<String> public fun googleShorten(url: String): Result<String>
{ {
class shortenData (public val longUrl: String)
class shortenDataReply(public val kind: String, public val id: String, public longUrl: String)

try try
{ {
val gson = Gson() val gson = Gson()
Expand Down
2 changes: 1 addition & 1 deletion src/com/silverkeytech/android_rivers/Utils.kt
Expand Up @@ -167,7 +167,7 @@ fun isModernAndroid(): Boolean {
} }


fun Dialog?.findView<T : View>(id : Int) : T{ fun Dialog?.findView<T : View>(id : Int) : T{
return this!!.findViewById(id) as T return this!!.findView<T>(id) as T
} }


fun View?.findView<T : View>(id : Int) : T{ fun View?.findView<T : View>(id : Int) : T{
Expand Down
Expand Up @@ -54,7 +54,10 @@ public fun Activity.getStandardDialogBackgroundColor(): Int {
*/ */
} }


public fun Activity.findView<T: View>(id: Int): T { public fun Activity?.findView<T: View>(id: Int): T {
if (this == null)
throw Exception("Activity cannot be null");

return (this.findViewById(id) as T) return (this.findViewById(id) as T)
} }


Expand Down
Expand Up @@ -39,6 +39,7 @@ import com.silverkeytech.android_rivers.getVisualPref
import com.silverkeytech.android_rivers.startFeedActivity import com.silverkeytech.android_rivers.startFeedActivity
import com.silverkeytech.android_rivers.handleFontResize import com.silverkeytech.android_rivers.handleFontResize
import com.silverkeytech.android_rivers.createConfirmationDialog import com.silverkeytech.android_rivers.createConfirmationDialog
import com.silverkeytech.android_rivers.findView


public class BookmarkCollectionRenderer(val context: BookmarkCollectionActivity){ public class BookmarkCollectionRenderer(val context: BookmarkCollectionActivity){
class object { class object {
Expand All @@ -49,7 +50,7 @@ public class BookmarkCollectionRenderer(val context: BookmarkCollectionActivity)
val textSize = context.getVisualPref().listTextSize val textSize = context.getVisualPref().listTextSize


if (bookmarks.count() == 0){ if (bookmarks.count() == 0){
var msg = context.findViewById(R.id.collection_message_tv)!! as TextView var msg = context.findView<TextView>(R.id.collection_message_tv)
handleFontResize(msg, context.getString(R.string.empty_bookmark_collection_items_list)!!, textSize.toFloat()) handleFontResize(msg, context.getString(R.string.empty_bookmark_collection_items_list)!!, textSize.toFloat())
} }


Expand Down Expand Up @@ -89,7 +90,7 @@ public class BookmarkCollectionRenderer(val context: BookmarkCollectionActivity)
if (vw == null){ if (vw == null){
vw = inflater().inflate(android.R.layout.simple_list_item_1, parent, false) vw = inflater().inflate(android.R.layout.simple_list_item_1, parent, false)


holder = ViewHolder(vw!!.findViewById(android.R.id.text1) as TextView) holder = ViewHolder(vw.findView<TextView>(android.R.id.text1))
vw!!.setTag(holder) vw!!.setTag(holder)
}else{ }else{
holder = vw!!.getTag() as ViewHolder holder = vw!!.getTag() as ViewHolder
Expand Down Expand Up @@ -119,7 +120,7 @@ fun showCollectionQuickActionPopup(context: BookmarkCollectionActivity, bookmark
pp.dismiss() pp.dismiss()
} }


val icon = x.findViewById(R.id.collection_quick_action_delete_icon) as ImageView val icon = x.findView<ImageView>(R.id.collection_quick_action_delete_icon)
icon.setOnClickListener { icon.setOnClickListener {
val dlg = createConfirmationDialog(context = context, message = "Are you sure about removing this collection bookmark?", positive = { val dlg = createConfirmationDialog(context = context, message = "Are you sure about removing this collection bookmark?", positive = {
try{ try{
Expand Down
Expand Up @@ -177,7 +177,7 @@ public class RiverContentRenderer(val context: Activity, val language: String){
body.setOnTouchListener(listener) body.setOnTouchListener(listener)




var source = dlg.findViewById(R.id.news_details_source_tv)!! as TextView var source = dlg.findView<TextView>(R.id.news_details_source_tv)
handleForeignText(language, body, msg) handleForeignText(language, body, msg)
handleForeignTextStyle(context, language, body, textSize.toFloat()) handleForeignTextStyle(context, language, body, textSize.toFloat())
handleTextColorBasedOnTheme(context, body) handleTextColorBasedOnTheme(context, body)
Expand Down
Expand Up @@ -31,6 +31,7 @@ import android.widget.TextView
import com.silverkeytech.android_rivers.getVisualPref import com.silverkeytech.android_rivers.getVisualPref
import com.silverkeytech.android_rivers.startFeedActivity import com.silverkeytech.android_rivers.startFeedActivity
import com.silverkeytech.android_rivers.handleFontResize import com.silverkeytech.android_rivers.handleFontResize
import com.silverkeytech.android_rivers.findView


public class RiverSourcesRenderer(val context: RiverSourcesActivity, val language: String){ public class RiverSourcesRenderer(val context: RiverSourcesActivity, val language: String){
class object { class object {
Expand Down Expand Up @@ -68,7 +69,7 @@ public class RiverSourcesRenderer(val context: RiverSourcesActivity, val languag


if (vw == null){ if (vw == null){
vw = inflater.inflate(android.R.layout.simple_list_item_1, parent, false) vw = inflater.inflate(android.R.layout.simple_list_item_1, parent, false)
holder = ViewHolder(vw!!.findViewById(android.R.id.text1) as TextView) holder = ViewHolder(vw!!.findView<TextView>(android.R.id.text1))
vw!!.setTag(holder) vw!!.setTag(holder)
}else{ }else{
holder = vw!!.getTag() as ViewHolder holder = vw!!.getTag() as ViewHolder
Expand Down
Expand Up @@ -39,6 +39,7 @@ import com.silverkeytech.android_rivers.InfinityProgressDialog
import com.silverkeytech.android_rivers.R import com.silverkeytech.android_rivers.R
import com.silverkeytech.android_rivers.generateThrowawayName import com.silverkeytech.android_rivers.generateThrowawayName
import com.silverkeytech.android_rivers.imageMimeTypeToFileExtension import com.silverkeytech.android_rivers.imageMimeTypeToFileExtension
import com.silverkeytech.android_rivers.findView


public data class DownloadedFile(val contentType: String, val filePath: String) public data class DownloadedFile(val contentType: String, val filePath: String)


Expand Down Expand Up @@ -97,7 +98,7 @@ public class DownloadImageAsync(it: Context?): AsyncTask<String, Int, Result<Dow
return return
} }


var image = vw.findViewById(R.id.image_view_main_iv) as ImageView var image = vw.findView<ImageView>(R.id.image_view_main_iv)


var bmp: Bitmap? var bmp: Bitmap?
try{ try{
Expand Down
Expand Up @@ -147,7 +147,7 @@ public class PodcastListFragment(): MainListFragment() {
} }


fun showMessage(msg: String) { fun showMessage(msg: String) {
val txt = getView()!!.findViewById(R.id.podcast_list_fragment_message_tv) as TextView val txt = getView()!!.findView<TextView>(R.id.podcast_list_fragment_message_tv)
if (msg.isNullOrEmpty()){ if (msg.isNullOrEmpty()){
txt.setVisibility(View.INVISIBLE) txt.setVisibility(View.INVISIBLE)
txt.setText("") txt.setText("")
Expand Down Expand Up @@ -176,7 +176,7 @@ public class PodcastListFragment(): MainListFragment() {
//show and prepare the interaction for each individual news item //show and prepare the interaction for each individual news item
fun renderFileListing(podcasts: List<Podcast>) { fun renderFileListing(podcasts: List<Podcast>) {
//now sort it so people always have the latest news first //now sort it so people always have the latest news first
val list = getView()!!.findViewById(android.R.id.list) as ListView val list = getView()!!.findView<ListView>(android.R.id.list)


val textSize = parent.getVisualPref().listTextSize val textSize = parent.getVisualPref().listTextSize


Expand Down Expand Up @@ -240,7 +240,7 @@ public class PodcastListFragment(): MainListFragment() {
pp.dismiss() pp.dismiss()
} }


val icon = x.findViewById(R.id.podcast_quick_action_delete_icon) as ImageView val icon = x.findView<ImageView>(R.id.podcast_quick_action_delete_icon)
icon.setOnClickListener { icon.setOnClickListener {
val dlg = createConfirmationDialog(context = context, message = "Are you sure about deleting this podcast?", positive = { val dlg = createConfirmationDialog(context = context, message = "Are you sure about deleting this podcast?", positive = {
try{ try{
Expand Down
Expand Up @@ -70,7 +70,7 @@ import com.silverkeytech.android_rivers.isLocalUrl
import com.silverkeytech.android_rivers.extractIdFromLocalUrl import com.silverkeytech.android_rivers.extractIdFromLocalUrl
import com.silverkeytech.android_rivers.startDownloadAllRiverService import com.silverkeytech.android_rivers.startDownloadAllRiverService
import com.silverkeytech.android_rivers.createConfirmationDialog import com.silverkeytech.android_rivers.createConfirmationDialog
import com.silverkeytech.android_rivers.MessageEvent import com.silverkeytech.android_rivers.findView


public class RiverListFragment(): MainListFragment() { public class RiverListFragment(): MainListFragment() {
class object { class object {
Expand Down Expand Up @@ -131,7 +131,7 @@ public class RiverListFragment(): MainListFragment() {
setSortButtonText(sort, nextSort) setSortButtonText(sort, nextSort)


val refresh = menu.findItem(R.id.river_list_fragment_menu_refresh)!! val refresh = menu.findItem(R.id.river_list_fragment_menu_refresh)!!
val list = getView()!!.findViewById(android.R.id.list) as ListView val list = getView()!!.findView<ListView>(android.R.id.list)


if (list.getCount() != 0) if (list.getCount() != 0)
refresh.setVisible(false) refresh.setVisible(false)
Expand Down

0 comments on commit 9215da6

Please sign in to comment.