Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
M
Magisk
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
Magisk
Commits
1d34ae79
Commit
1d34ae79
authored
Jan 09, 2017
by
tonymanou
Committed by
topjohnwu
Jan 11, 2017
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Avoid storing context in adapter, static viewholder, remove useless code
parent
2cabb266
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
29 deletions
+16
-29
ModulesAdapter.java
...in/java/com/topjohnwu/magisk/adapters/ModulesAdapter.java
+4
-9
ReposAdapter.java
...main/java/com/topjohnwu/magisk/adapters/ReposAdapter.java
+12
-20
No files found.
app/src/main/java/com/topjohnwu/magisk/adapters/ModulesAdapter.java
View file @
1d34ae79
...
@@ -3,11 +3,9 @@ package com.topjohnwu.magisk.adapters;
...
@@ -3,11 +3,9 @@ package com.topjohnwu.magisk.adapters;
import
android.content.Context
;
import
android.content.Context
;
import
android.support.design.widget.Snackbar
;
import
android.support.design.widget.Snackbar
;
import
android.support.v7.widget.RecyclerView
;
import
android.support.v7.widget.RecyclerView
;
import
android.util.DisplayMetrics
;
import
android.view.LayoutInflater
;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.view.ViewGroup
;
import
android.view.WindowManager
;
import
android.widget.CheckBox
;
import
android.widget.CheckBox
;
import
android.widget.ImageView
;
import
android.widget.ImageView
;
import
android.widget.TextView
;
import
android.widget.TextView
;
...
@@ -25,7 +23,6 @@ import butterknife.ButterKnife;
...
@@ -25,7 +23,6 @@ import butterknife.ButterKnife;
public
class
ModulesAdapter
extends
RecyclerView
.
Adapter
<
ModulesAdapter
.
ViewHolder
>
{
public
class
ModulesAdapter
extends
RecyclerView
.
Adapter
<
ModulesAdapter
.
ViewHolder
>
{
private
final
List
<
Module
>
mList
;
private
final
List
<
Module
>
mList
;
private
Context
context
;
public
ModulesAdapter
(
List
<
Module
>
list
)
{
public
ModulesAdapter
(
List
<
Module
>
list
)
{
mList
=
list
;
mList
=
list
;
...
@@ -34,14 +31,15 @@ public class ModulesAdapter extends RecyclerView.Adapter<ModulesAdapter.ViewHold
...
@@ -34,14 +31,15 @@ public class ModulesAdapter extends RecyclerView.Adapter<ModulesAdapter.ViewHold
@Override
@Override
public
ViewHolder
onCreateViewHolder
(
ViewGroup
parent
,
int
viewType
)
{
public
ViewHolder
onCreateViewHolder
(
ViewGroup
parent
,
int
viewType
)
{
View
view
=
LayoutInflater
.
from
(
parent
.
getContext
()).
inflate
(
R
.
layout
.
list_item_module
,
parent
,
false
);
View
view
=
LayoutInflater
.
from
(
parent
.
getContext
()).
inflate
(
R
.
layout
.
list_item_module
,
parent
,
false
);
context
=
parent
.
getContext
();
ButterKnife
.
bind
(
this
,
view
);
ButterKnife
.
bind
(
this
,
view
);
return
new
ViewHolder
(
view
);
return
new
ViewHolder
(
view
);
}
}
@Override
@Override
public
void
onBindViewHolder
(
final
ViewHolder
holder
,
int
position
)
{
public
void
onBindViewHolder
(
final
ViewHolder
holder
,
int
position
)
{
Context
context
=
holder
.
itemView
.
getContext
();
final
Module
module
=
mList
.
get
(
position
);
final
Module
module
=
mList
.
get
(
position
);
holder
.
title
.
setText
(
module
.
getName
());
holder
.
title
.
setText
(
module
.
getName
());
String
author
=
module
.
getAuthor
();
String
author
=
module
.
getAuthor
();
String
versionName
=
module
.
getVersion
();
String
versionName
=
module
.
getVersion
();
...
@@ -144,7 +142,7 @@ public class ModulesAdapter extends RecyclerView.Adapter<ModulesAdapter.ViewHold
...
@@ -144,7 +142,7 @@ public class ModulesAdapter extends RecyclerView.Adapter<ModulesAdapter.ViewHold
return
mList
.
size
();
return
mList
.
size
();
}
}
class
ViewHolder
extends
RecyclerView
.
ViewHolder
{
static
class
ViewHolder
extends
RecyclerView
.
ViewHolder
{
@BindView
(
R
.
id
.
title
)
TextView
title
;
@BindView
(
R
.
id
.
title
)
TextView
title
;
@BindView
(
R
.
id
.
version_name
)
TextView
versionName
;
@BindView
(
R
.
id
.
version_name
)
TextView
versionName
;
...
@@ -154,12 +152,9 @@ public class ModulesAdapter extends RecyclerView.Adapter<ModulesAdapter.ViewHold
...
@@ -154,12 +152,9 @@ public class ModulesAdapter extends RecyclerView.Adapter<ModulesAdapter.ViewHold
@BindView
(
R
.
id
.
author
)
TextView
author
;
@BindView
(
R
.
id
.
author
)
TextView
author
;
@BindView
(
R
.
id
.
delete
)
ImageView
delete
;
@BindView
(
R
.
id
.
delete
)
ImageView
delete
;
public
ViewHolder
(
View
itemView
)
{
ViewHolder
(
View
itemView
)
{
super
(
itemView
);
super
(
itemView
);
WindowManager
windowmanager
=
(
WindowManager
)
context
.
getSystemService
(
Context
.
WINDOW_SERVICE
);
ButterKnife
.
bind
(
this
,
itemView
);
ButterKnife
.
bind
(
this
,
itemView
);
DisplayMetrics
dimension
=
new
DisplayMetrics
();
windowmanager
.
getDefaultDisplay
().
getMetrics
(
dimension
);
if
(!
Shell
.
rootAccess
())
{
if
(!
Shell
.
rootAccess
())
{
checkBox
.
setEnabled
(
false
);
checkBox
.
setEnabled
(
false
);
...
...
app/src/main/java/com/topjohnwu/magisk/adapters/ReposAdapter.java
View file @
1d34ae79
...
@@ -8,12 +8,10 @@ import android.content.Intent;
...
@@ -8,12 +8,10 @@ import android.content.Intent;
import
android.net.Uri
;
import
android.net.Uri
;
import
android.support.v7.widget.RecyclerView
;
import
android.support.v7.widget.RecyclerView
;
import
android.text.TextUtils
;
import
android.text.TextUtils
;
import
android.util.DisplayMetrics
;
import
android.view.LayoutInflater
;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.view.ViewGroup
;
import
android.view.ViewTreeObserver
;
import
android.view.ViewTreeObserver
;
import
android.view.WindowManager
;
import
android.widget.ImageView
;
import
android.widget.ImageView
;
import
android.widget.LinearLayout
;
import
android.widget.LinearLayout
;
import
android.widget.TextView
;
import
android.widget.TextView
;
...
@@ -34,9 +32,6 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
...
@@ -34,9 +32,6 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
private
List
<
Repo
>
mUpdateRepos
,
mInstalledRepos
,
mOthersRepos
;
private
List
<
Repo
>
mUpdateRepos
,
mInstalledRepos
,
mOthersRepos
;
private
HashSet
<
Repo
>
expandList
=
new
HashSet
<>();
private
HashSet
<
Repo
>
expandList
=
new
HashSet
<>();
private
Context
mContext
;
private
int
expandHeight
=
0
;
public
ReposAdapter
(
List
<
Repo
>
update
,
List
<
Repo
>
installed
,
List
<
Repo
>
others
)
{
public
ReposAdapter
(
List
<
Repo
>
update
,
List
<
Repo
>
installed
,
List
<
Repo
>
others
)
{
mUpdateRepos
=
update
;
mUpdateRepos
=
update
;
...
@@ -48,13 +43,12 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
...
@@ -48,13 +43,12 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
public
ViewHolder
onCreateViewHolder
(
ViewGroup
parent
,
int
viewType
)
{
public
ViewHolder
onCreateViewHolder
(
ViewGroup
parent
,
int
viewType
)
{
View
v
=
LayoutInflater
.
from
(
parent
.
getContext
()).
inflate
(
R
.
layout
.
list_item_repo
,
parent
,
false
);
View
v
=
LayoutInflater
.
from
(
parent
.
getContext
()).
inflate
(
R
.
layout
.
list_item_repo
,
parent
,
false
);
ButterKnife
.
bind
(
this
,
v
);
ButterKnife
.
bind
(
this
,
v
);
mContext
=
parent
.
getContext
();
return
new
ViewHolder
(
v
);
return
new
ViewHolder
(
v
);
}
}
@Override
@Override
public
void
onBindViewHolder
(
final
ViewHolder
holder
,
int
position
)
{
public
void
onBindViewHolder
(
final
ViewHolder
holder
,
int
position
)
{
Context
context
=
holder
.
itemView
.
getContext
();
final
Repo
repo
;
final
Repo
repo
;
if
(
position
>=
mUpdateRepos
.
size
())
{
if
(
position
>=
mUpdateRepos
.
size
())
{
position
-=
mUpdateRepos
.
size
();
position
-=
mUpdateRepos
.
size
();
...
@@ -75,7 +69,7 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
...
@@ -75,7 +69,7 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
holder
.
versionName
.
setText
(
versionName
);
holder
.
versionName
.
setText
(
versionName
);
}
}
if
(
author
!=
null
)
{
if
(
author
!=
null
)
{
holder
.
author
.
setText
(
mC
ontext
.
getString
(
R
.
string
.
author
,
author
));
holder
.
author
.
setText
(
c
ontext
.
getString
(
R
.
string
.
author
,
author
));
}
}
if
(
description
!=
null
)
{
if
(
description
!=
null
)
{
holder
.
description
.
setText
(
description
);
holder
.
description
.
setText
(
description
);
...
@@ -94,17 +88,17 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
...
@@ -94,17 +88,17 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
});
});
holder
.
changeLog
.
setOnClickListener
(
view
->
{
holder
.
changeLog
.
setOnClickListener
(
view
->
{
if
(!
TextUtils
.
isEmpty
(
repo
.
getLogUrl
()))
{
if
(!
TextUtils
.
isEmpty
(
repo
.
getLogUrl
()))
{
new
WebWindow
(
mContext
.
getString
(
R
.
string
.
changelog
),
repo
.
getLogUrl
(),
mC
ontext
);
new
WebWindow
(
context
.
getString
(
R
.
string
.
changelog
),
repo
.
getLogUrl
(),
c
ontext
);
}
}
});
});
holder
.
updateImage
.
setOnClickListener
(
view
->
{
holder
.
updateImage
.
setOnClickListener
(
view
->
{
String
filename
=
repo
.
getName
()
+
"-"
+
repo
.
getVersion
()
+
".zip"
;
String
filename
=
repo
.
getName
()
+
"-"
+
repo
.
getVersion
()
+
".zip"
;
Utils
.
getAlertDialogBuilder
(
mC
ontext
)
Utils
.
getAlertDialogBuilder
(
c
ontext
)
.
setTitle
(
mC
ontext
.
getString
(
R
.
string
.
repo_install_title
,
repo
.
getName
()))
.
setTitle
(
c
ontext
.
getString
(
R
.
string
.
repo_install_title
,
repo
.
getName
()))
.
setMessage
(
mC
ontext
.
getString
(
R
.
string
.
repo_install_msg
,
filename
))
.
setMessage
(
c
ontext
.
getString
(
R
.
string
.
repo_install_msg
,
filename
))
.
setCancelable
(
true
)
.
setCancelable
(
true
)
.
setPositiveButton
(
R
.
string
.
download_install
,
(
dialogInterface
,
i
)
->
Utils
.
dlAndReceive
(
.
setPositiveButton
(
R
.
string
.
download_install
,
(
dialogInterface
,
i
)
->
Utils
.
dlAndReceive
(
mC
ontext
,
c
ontext
,
new
RepoDlReceiver
(),
new
RepoDlReceiver
(),
repo
.
getZipUrl
(),
repo
.
getZipUrl
(),
Utils
.
getLegalFilename
(
filename
)))
Utils
.
getLegalFilename
(
filename
)))
...
@@ -113,12 +107,12 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
...
@@ -113,12 +107,12 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
});
});
holder
.
authorLink
.
setOnClickListener
(
view
->
{
holder
.
authorLink
.
setOnClickListener
(
view
->
{
if
(!
TextUtils
.
isEmpty
(
repo
.
getDonateUrl
()))
{
if
(!
TextUtils
.
isEmpty
(
repo
.
getDonateUrl
()))
{
mC
ontext
.
startActivity
(
new
Intent
(
Intent
.
ACTION_VIEW
,
Uri
.
parse
(
repo
.
getDonateUrl
())));
c
ontext
.
startActivity
(
new
Intent
(
Intent
.
ACTION_VIEW
,
Uri
.
parse
(
repo
.
getDonateUrl
())));
}
}
});
});
holder
.
supportLink
.
setOnClickListener
(
view
->
{
holder
.
supportLink
.
setOnClickListener
(
view
->
{
if
(!
TextUtils
.
isEmpty
(
repo
.
getSupportUrl
()))
{
if
(!
TextUtils
.
isEmpty
(
repo
.
getSupportUrl
()))
{
mC
ontext
.
startActivity
(
new
Intent
(
Intent
.
ACTION_VIEW
,
Uri
.
parse
(
repo
.
getSupportUrl
())));
c
ontext
.
startActivity
(
new
Intent
(
Intent
.
ACTION_VIEW
,
Uri
.
parse
(
repo
.
getSupportUrl
())));
}
}
});
});
}
}
...
@@ -128,7 +122,7 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
...
@@ -128,7 +122,7 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
return
mUpdateRepos
.
size
()
+
mInstalledRepos
.
size
()
+
mOthersRepos
.
size
();
return
mUpdateRepos
.
size
()
+
mInstalledRepos
.
size
()
+
mOthersRepos
.
size
();
}
}
class
ViewHolder
extends
RecyclerView
.
ViewHolder
{
static
class
ViewHolder
extends
RecyclerView
.
ViewHolder
{
@BindView
(
R
.
id
.
title
)
TextView
title
;
@BindView
(
R
.
id
.
title
)
TextView
title
;
@BindView
(
R
.
id
.
version_name
)
TextView
versionName
;
@BindView
(
R
.
id
.
version_name
)
TextView
versionName
;
...
@@ -143,13 +137,11 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
...
@@ -143,13 +137,11 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
private
ValueAnimator
mAnimator
;
private
ValueAnimator
mAnimator
;
private
ObjectAnimator
animY2
;
private
ObjectAnimator
animY2
;
private
boolean
mExpanded
=
false
;
private
boolean
mExpanded
=
false
;
private
static
int
expandHeight
=
0
;
public
ViewHolder
(
View
itemView
)
{
ViewHolder
(
View
itemView
)
{
super
(
itemView
);
super
(
itemView
);
WindowManager
windowmanager
=
(
WindowManager
)
mContext
.
getSystemService
(
Context
.
WINDOW_SERVICE
);
ButterKnife
.
bind
(
this
,
itemView
);
ButterKnife
.
bind
(
this
,
itemView
);
DisplayMetrics
dimension
=
new
DisplayMetrics
();
windowmanager
.
getDefaultDisplay
().
getMetrics
(
dimension
);
expandLayout
.
getViewTreeObserver
().
addOnPreDrawListener
(
expandLayout
.
getViewTreeObserver
().
addOnPreDrawListener
(
new
ViewTreeObserver
.
OnPreDrawListener
()
{
new
ViewTreeObserver
.
OnPreDrawListener
()
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment