Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
X
xabber-android
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
xabber-android
Commits
cfeed485
Commit
cfeed485
authored
May 28, 2015
by
Grigory Fedorov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ChatViewerAdapter, ChatScroller: refactoring, unused core removed.
parent
1fdaade5
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
12 additions
and
71 deletions
+12
-71
ChatViewerAdapter.java
...java/com/xabber/android/ui/adapter/ChatViewerAdapter.java
+2
-32
ChatScroller.java
.../main/java/com/xabber/android/ui/helper/ChatScroller.java
+10
-39
No files found.
app/src/main/java/com/xabber/android/ui/adapter/ChatViewerAdapter.java
View file @
cfeed485
...
@@ -6,13 +6,11 @@ import android.app.FragmentManager;
...
@@ -6,13 +6,11 @@ import android.app.FragmentManager;
import
android.support.v13.app.FragmentStatePagerAdapter
;
import
android.support.v13.app.FragmentStatePagerAdapter
;
import
android.view.ViewGroup
;
import
android.view.ViewGroup
;
import
com.xabber.android.data.LogManager
;
import
com.xabber.android.data.entity.BaseEntity
;
import
com.xabber.android.data.entity.BaseEntity
;
import
com.xabber.android.data.message.AbstractChat
;
import
com.xabber.android.data.message.AbstractChat
;
import
com.xabber.android.data.message.MessageManager
;
import
com.xabber.android.data.message.MessageManager
;
import
com.xabber.android.ui.ChatViewerFragment
;
import
com.xabber.android.ui.ChatViewerFragment
;
import
com.xabber.android.ui.RecentChatFragment
;
import
com.xabber.android.ui.RecentChatFragment
;
import
com.xabber.android.ui.helper.ChatScroller
;
import
com.xabber.xmpp.address.Jid
;
import
com.xabber.xmpp.address.Jid
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
...
@@ -30,15 +28,10 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
...
@@ -30,15 +28,10 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
*/
*/
private
final
AbstractChat
intent
;
private
final
AbstractChat
intent
;
private
ArrayList
<
AbstractChat
>
activeChats
;
private
ArrayList
<
AbstractChat
>
activeChats
;
private
FinishUpdateListener
finishUpdateListener
;
private
RecentChatFragment
.
RecentChatFragmentInteractionListener
recentChatFragmentInteractionListener
;
private
Fragment
currentFragment
;
private
Fragment
currentFragment
;
public
ChatViewerAdapter
(
FragmentManager
fragmentManager
,
BaseEntity
chat
,
ChatScroller
chatScroller
)
{
public
ChatViewerAdapter
(
FragmentManager
fragmentManager
,
BaseEntity
chat
)
{
super
(
fragmentManager
);
super
(
fragmentManager
);
finishUpdateListener
=
chatScroller
;
recentChatFragmentInteractionListener
=
chatScroller
;
activeChats
=
new
ArrayList
<>(
MessageManager
.
getInstance
().
getActiveChats
());
activeChats
=
new
ArrayList
<>(
MessageManager
.
getInstance
().
getActiveChats
());
intent
=
MessageManager
.
getInstance
().
getOrCreateChat
(
chat
.
getAccount
(),
Jid
.
getBareAddress
(
chat
.
getUser
()));
intent
=
MessageManager
.
getInstance
().
getOrCreateChat
(
chat
.
getAccount
(),
Jid
.
getBareAddress
(
chat
.
getUser
()));
...
@@ -46,10 +39,8 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
...
@@ -46,10 +39,8 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
updateChats
();
updateChats
();
}
}
public
ChatViewerAdapter
(
FragmentManager
fragmentManager
,
ChatScroller
chatScroller
)
{
public
ChatViewerAdapter
(
FragmentManager
fragmentManager
)
{
super
(
fragmentManager
);
super
(
fragmentManager
);
finishUpdateListener
=
chatScroller
;
recentChatFragmentInteractionListener
=
chatScroller
;
activeChats
=
new
ArrayList
<>(
MessageManager
.
getInstance
().
getActiveChats
());
activeChats
=
new
ArrayList
<>(
MessageManager
.
getInstance
().
getActiveChats
());
intent
=
null
;
intent
=
null
;
...
@@ -80,8 +71,6 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
...
@@ -80,8 +71,6 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
}
}
public
boolean
updateChats
()
{
public
boolean
updateChats
()
{
LogManager
.
i
(
this
,
"updateChats"
);
ArrayList
<
AbstractChat
>
newChats
=
new
ArrayList
<>(
MessageManager
.
getInstance
().
getActiveChats
());
ArrayList
<
AbstractChat
>
newChats
=
new
ArrayList
<>(
MessageManager
.
getInstance
().
getActiveChats
());
if
(
intent
!=
null
&&
!
newChats
.
contains
(
intent
))
{
if
(
intent
!=
null
&&
!
newChats
.
contains
(
intent
))
{
...
@@ -102,15 +91,12 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
...
@@ -102,15 +91,12 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
activeChats
=
newChats
;
activeChats
=
newChats
;
LogManager
.
i
(
this
,
"activeChats size "
+
activeChats
.
size
());
notifyDataSetChanged
();
notifyDataSetChanged
();
return
true
;
return
true
;
}
}
public
void
clear
()
{
public
void
clear
()
{
LogManager
.
i
(
this
,
"clear"
);
activeChats
.
clear
();
activeChats
.
clear
();
notifyDataSetChanged
();
notifyDataSetChanged
();
}
}
...
@@ -170,13 +156,6 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
...
@@ -170,13 +156,6 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
return
realPosition
-
1
;
return
realPosition
-
1
;
}
}
@Override
public
void
finishUpdate
(
ViewGroup
container
)
{
super
.
finishUpdate
(
container
);
finishUpdateListener
.
onChatViewAdapterFinishUpdate
();
}
public
ArrayList
<
AbstractChat
>
getActiveChats
()
{
public
ArrayList
<
AbstractChat
>
getActiveChats
()
{
return
activeChats
;
return
activeChats
;
}
}
...
@@ -196,13 +175,4 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
...
@@ -196,13 +175,4 @@ public class ChatViewerAdapter extends FragmentStatePagerAdapter {
currentFragment
=
(
Fragment
)
object
;
currentFragment
=
(
Fragment
)
object
;
}
}
public
Fragment
getCurrentFragment
()
{
return
currentFragment
;
}
public
interface
FinishUpdateListener
{
void
onChatViewAdapterFinishUpdate
();
}
}
}
\ No newline at end of file
app/src/main/java/com/xabber/android/ui/helper/ChatScroller.java
View file @
cfeed485
...
@@ -33,7 +33,6 @@ public class ChatScroller implements
...
@@ -33,7 +33,6 @@ public class ChatScroller implements
OnContactChangedListener
,
OnContactChangedListener
,
OnAccountChangedListener
,
OnAccountChangedListener
,
ViewPager
.
OnPageChangeListener
,
ViewPager
.
OnPageChangeListener
,
ChatViewerAdapter
.
FinishUpdateListener
,
RecentChatFragment
.
RecentChatFragmentInteractionListener
,
RecentChatFragment
.
RecentChatFragmentInteractionListener
,
ChatViewerFragment
.
ChatViewerFragmentListener
{
ChatViewerFragment
.
ChatViewerFragmentListener
{
...
@@ -45,8 +44,6 @@ public class ChatScroller implements
...
@@ -45,8 +44,6 @@ public class ChatScroller implements
Collection
<
ChatViewerFragment
>
registeredChats
=
new
HashSet
<>();
Collection
<
ChatViewerFragment
>
registeredChats
=
new
HashSet
<>();
Collection
<
RecentChatFragment
>
recentChatFragments
=
new
HashSet
<>();
Collection
<
RecentChatFragment
>
recentChatFragments
=
new
HashSet
<>();
ChatScrollerListener
listener
;
ChatScrollerListener
listener
;
private
String
extraText
=
null
;
public
ChatScroller
(
Activity
activity
)
{
public
ChatScroller
(
Activity
activity
)
{
chatManager
=
ChatManager
.
getInstance
();
chatManager
=
ChatManager
.
getInstance
();
this
.
activity
=
activity
;
this
.
activity
=
activity
;
...
@@ -75,9 +72,9 @@ public class ChatScroller implements
...
@@ -75,9 +72,9 @@ public class ChatScroller implements
public
void
initChats
()
{
public
void
initChats
()
{
if
(
chatManager
.
getInitialChat
()
!=
null
)
{
if
(
chatManager
.
getInitialChat
()
!=
null
)
{
chatViewerAdapter
=
new
ChatViewerAdapter
(
activity
.
getFragmentManager
(),
chatManager
.
getInitialChat
()
,
this
);
chatViewerAdapter
=
new
ChatViewerAdapter
(
activity
.
getFragmentManager
(),
chatManager
.
getInitialChat
());
}
else
{
}
else
{
chatViewerAdapter
=
new
ChatViewerAdapter
(
activity
.
getFragmentManager
()
,
this
);
chatViewerAdapter
=
new
ChatViewerAdapter
(
activity
.
getFragmentManager
());
}
}
viewPager
.
setAdapter
(
chatViewerAdapter
);
viewPager
.
setAdapter
(
chatViewerAdapter
);
...
@@ -100,6 +97,10 @@ public class ChatScroller implements
...
@@ -100,6 +97,10 @@ public class ChatScroller implements
selectPage
();
selectPage
();
}
}
public
boolean
isInitialized
()
{
return
chatViewerAdapter
!=
null
;
}
private
void
selectPage
()
{
private
void
selectPage
()
{
if
(
chatManager
.
getSelectedChat
()
==
null
)
{
if
(
chatManager
.
getSelectedChat
()
==
null
)
{
selectRecentChatsPage
();
selectRecentChatsPage
();
...
@@ -249,6 +250,10 @@ public class ChatScroller implements
...
@@ -249,6 +250,10 @@ public class ChatScroller implements
return
chatViewerAdapter
.
getActiveChats
();
return
chatViewerAdapter
.
getActiveChats
();
}
}
/**
* ChatViewerFragmentListener
*/
@Override
@Override
public
void
onCloseChat
(
BaseEntity
chat
)
{
public
void
onCloseChat
(
BaseEntity
chat
)
{
update
();
update
();
...
@@ -269,42 +274,8 @@ public class ChatScroller implements
...
@@ -269,42 +274,8 @@ public class ChatScroller implements
registeredChats
.
remove
(
chat
);
registeredChats
.
remove
(
chat
);
}
}
/**
* FinishUpdateListener
*/
@Override
public
void
onChatViewAdapterFinishUpdate
()
{
insertExtraText
();
}
private
void
insertExtraText
()
{
if
(
extraText
==
null
)
{
return
;
}
boolean
isExtraTextInserted
=
false
;
for
(
ChatViewerFragment
chat
:
registeredChats
)
{
if
(
chat
.
isEqual
(
ChatManager
.
getInstance
().
getSelectedChat
()))
{
chat
.
setInputText
(
extraText
);
isExtraTextInserted
=
true
;
}
}
if
(
isExtraTextInserted
)
{
extraText
=
null
;
}
}
public
boolean
isInitialized
()
{
return
chatViewerAdapter
!=
null
;
}
public
interface
ChatScrollerListener
{
public
interface
ChatScrollerListener
{
void
onStatusBarNeedPaint
(
String
account
);
void
onStatusBarNeedPaint
(
String
account
);
void
onClose
(
BaseEntity
chat
);
void
onClose
(
BaseEntity
chat
);
}
}
...
...
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