Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
AloqaIM-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
AloqaIM-Android
Commits
873d6580
Unverified
Commit
873d6580
authored
Mar 26, 2018
by
Leonardo Aramaki
Committed by
GitHub
Mar 26, 2018
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'develop-2.x' into emoji-empty-view
parents
ebff161e
e38a52ce
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
134 additions
and
70 deletions
+134
-70
config.yml
.circleci/config.yml
+114
-0
ChatRoomPresenter.kt
...rocket/android/chatroom/presentation/ChatRoomPresenter.kt
+6
-3
ChatRoomActivity.kt
.../java/chat/rocket/android/chatroom/ui/ChatRoomActivity.kt
+5
-3
ChatRoomsFragment.kt
...ava/chat/rocket/android/chatrooms/ui/ChatRoomsFragment.kt
+1
-0
item_message.xml
app/src/main/res/layout/item_message.xml
+8
-1
circle.yml
circle.yml
+0
-63
No files found.
.circleci/config.yml
0 → 100644
View file @
873d6580
version
:
2
jobs
:
build-kotlin-sdk
:
docker
:
-
image
:
circleci/android:api-27-alpha
environment
:
JVM_OPTS
:
-Xmx3200m
steps
:
-
checkout
-
run
:
name
:
checkout Rocket.Chat.Kotlin.SDK
command
:
git clone https://github.com/RocketChat/Rocket.Chat.Kotlin.SDK.git ../Rocket.Chat.Kotlin.SDK
-
run
:
name
:
ANDROID_HOME
command
:
echo "sdk.dir="$ANDROID_HOME > local.properties
-
run
:
name
:
Build Kotlin.SDK
command
:
pushd app/ ; ./build-sdk.sh ; popd
-
save_cache
:
paths
:
-
~/.gradle
key
:
jars-{{ checksum "build.gradle" }}-{{ checksum "app/build.gradle" }}-{{ checksum "player/build.gradle" }}
-
save_cache
:
paths
:
-
app/libs/
-
../Rocket.Chat.Kotlin.SDK/.last_commit_hash
key
:
kotlin-sdk-{{ .Revision }}
-
store_artifacts
:
path
:
app/libs/
destination
:
libs
code-analysis
:
docker
:
-
image
:
circleci/android:api-27-alpha
environment
:
JVM_OPTS
:
-Xmx3200m
steps
:
-
checkout
-
run
:
name
:
ANDROID_HOME
command
:
echo "sdk.dir="$ANDROID_HOME > local.properties
-
run
:
name
:
checkout Rocket.Chat.Kotlin.SDK
command
:
git clone https://github.com/RocketChat/Rocket.Chat.Kotlin.SDK.git ../Rocket.Chat.Kotlin.SDK
-
restore_cache
:
key
:
kotlin-sdk-{{ .Revision }}
-
restore_cache
:
key
:
jars-{{ checksum "build.gradle" }}-{{ checksum "app/build.gradle" }}-{{ checksum "player/build.gradle" }}
-
run
:
name
:
Download Dependencies
command
:
./gradlew androidDependencies --quiet --console=plain
-
save_cache
:
paths
:
-
~/.gradle
key
:
jars-{{ checksum "build.gradle" }}-{{ checksum "app/build.gradle" }}-{{ checksum "player/build.gradle" }}
-
run
:
name
:
Run Lint
#, Checkstyles, PMD, Findbugs...
command
:
./gradlew lint
-
run
:
name
:
Run Unit test
command
:
echo ./gradlew test
# TODO: Fix unit test errors soon...
-
store_artifacts
:
path
:
app/build/reports/
destination
:
reports
build-apk
:
docker
:
-
image
:
circleci/android:api-27-alpha
environment
:
JVM_OPTS
:
-Xmx3200m
steps
:
-
checkout
-
run
:
name
:
restore files from ENV
command
:
|
echo $ROCKET_JKS_BASE64 | base64 --decode > Rocket.jks
echo $ROCKET_PLAY_JSON | base64 --decode > app/rocket-chat.json
-
run
:
name
:
checkout Rocket.Chat.Kotlin.SDK
command
:
git clone https://github.com/RocketChat/Rocket.Chat.Kotlin.SDK.git ../Rocket.Chat.Kotlin.SDK
-
restore_cache
:
key
:
kotlin-sdk-{{ .Revision }}
-
restore_cache
:
key
:
jars-{{ checksum "build.gradle" }}-{{ checksum "app/build.gradle" }}-{{ checksum "player/build.gradle" }}
-
run
:
name
:
Download Dependencies
command
:
./gradlew androidDependencies --quiet --console=plain
-
save_cache
:
paths
:
-
~/.gradle
key
:
jars-{{ checksum "build.gradle" }}-{{ checksum "app/build.gradle" }}-{{ checksum "player/build.gradle" }}
-
run
:
name
:
Build APK
command
:
|
./gradlew assembleRelease --quiet --console=plain --stacktrace
-
store_artifacts
:
path
:
app/build/outputs/apk
destination
:
apks
workflows
:
version
:
2
build-deploy
:
jobs
:
-
build-kotlin-sdk
-
code-analysis
:
requires
:
-
build-kotlin-sdk
filters
:
branches
:
ignore
:
# skip on merge commits.
-
develop
-
develop-2.x
-
master
-
build-apk
:
requires
:
-
build-kotlin-sdk
app/src/main/java/chat/rocket/android/chatroom/presentation/ChatRoomPresenter.kt
View file @
873d6580
...
...
@@ -71,13 +71,13 @@ class ChatRoomPresenter @Inject constructor(private val view: ChatRoomView,
client
.
messages
(
chatRoomId
,
roomTypeOf
(
chatRoomType
),
offset
,
30
).
result
messagesRepository
.
saveAll
(
messages
)
val
messagesViewModels
=
mapper
.
map
(
messages
)
view
.
showMessages
(
messagesViewModels
)
// TODO: For now we are marking the room as read if we can get the messages (I mean, no exception occurs)
// but should mark only when the user see the first unread message.
markRoomAsRead
(
chatRoomId
)
val
messagesViewModels
=
mapper
.
map
(
messages
)
view
.
showMessages
(
messagesViewModels
)
subscribeMessages
(
chatRoomId
)
}
catch
(
ex
:
Exception
)
{
ex
.
printStackTrace
()
...
...
@@ -230,6 +230,9 @@ class ChatRoomPresenter @Inject constructor(private val view: ChatRoomView,
fun
unsubscribeMessages
(
chatRoomId
:
String
)
{
manager
.
removeStatusChannel
(
stateChannel
)
manager
.
unsubscribeRoomMessages
(
chatRoomId
)
// All messages during the subscribed period are assumed to be read,
// and lastSeen is updated as the time when the user leaves the room
markRoomAsRead
(
chatRoomId
)
}
/**
...
...
app/src/main/java/chat/rocket/android/chatroom/ui/ChatRoomActivity.kt
View file @
873d6580
...
...
@@ -86,9 +86,11 @@ class ChatRoomActivity : AppCompatActivity(), HasSupportFragmentInjector {
isChatRoomSubscribed
=
intent
.
getBooleanExtra
(
INTENT_CHAT_IS_SUBSCRIBED
,
true
)
addFragment
(
"ChatRoomFragment"
,
R
.
id
.
fragment_container
)
{
newInstance
(
chatRoomId
,
chatRoomName
,
chatRoomType
,
isChatRoomReadOnly
,
chatRoomLastSeen
,
isChatRoomSubscribed
)
if
(
supportFragmentManager
.
findFragmentByTag
(
"ChatRoomFragment"
)
==
null
)
{
addFragment
(
"ChatRoomFragment"
,
R
.
id
.
fragment_container
)
{
newInstance
(
chatRoomId
,
chatRoomName
,
chatRoomType
,
isChatRoomReadOnly
,
chatRoomLastSeen
,
isChatRoomSubscribed
)
}
}
}
...
...
app/src/main/java/chat/rocket/android/chatrooms/ui/ChatRoomsFragment.kt
View file @
873d6580
...
...
@@ -73,6 +73,7 @@ class ChatRoomsFragment : Fragment(), ChatRoomsView {
val
searchItem
=
menu
.
findItem
(
R
.
id
.
action_search
)
searchView
=
searchItem
?.
actionView
as
SearchView
searchView
?.
maxWidth
=
Integer
.
MAX_VALUE
searchView
?.
setOnQueryTextListener
(
object
:
SearchView
.
OnQueryTextListener
{
override
fun
onQueryTextSubmit
(
query
:
String
?):
Boolean
{
return
queryChatRoomsByName
(
query
)
...
...
app/src/main/res/layout/item_message.xml
View file @
873d6580
...
...
@@ -35,13 +35,20 @@
android:layout_height=
"1dp"
android:layout_width=
"0dp"
android:layout_weight=
"1"
android:layout_margin
Right
=
"4dp"
android:layout_margin
End
=
"4dp"
android:background=
"@color/red"
/>
<TextView
android:layout_width=
"wrap_content"
android:text=
"@string/msg_unread_messages"
android:layout_height=
"wrap_content"
android:textColor=
"@color/red"
/>
<View
android:layout_gravity=
"center"
android:layout_height=
"1dp"
android:layout_width=
"0dp"
android:layout_weight=
"1"
android:layout_marginStart=
"4dp"
android:background=
"@color/red"
/>
</LinearLayout>
<LinearLayout
...
...
circle.yml
deleted
100644 → 0
View file @
ebff161e
#
# Build configuration for Circle CI
#
# See this thread for speeding up and caching directories: https://discuss.circleci.com/t/installing-android-build-tools-23-0-2/924
#
machine
:
environment
:
ANDROID_HOME
:
/usr/local/android-sdk-linux
GRADLE_OPTS
:
'
-Xmx1536M
-Dorg.gradle.jvmargs="-Xmx1536M
-XX:MaxPermSize=512m
-XX:+HeapDumpOnOutOfMemoryError"'
JAVA_OPTS
:
"
-Xms518m
-Xmx1536M"
pre
:
-
git clone https://github.com/RocketChat/Rocket.Chat.Kotlin.SDK.git Rocket.Chat.Kotlin.SDK
dependencies
:
pre
:
-
sudo service mysql stop; sleep 5
-
sudo service mongod stop; sleep 5
-
sudo killall postgres; sleep 5
-
git fetch --tags
-
echo "sdk.dir="$ANDROID_HOME > local.properties
-
echo $ROCKET_JKS_BASE64 | base64 --decode > Rocket.jks
-
echo $ROCKET_PLAY_JSON | base64 --decode > app/rocket-chat.json
-
mkdir -p app/src/release/res/values
# TODO: remove the comment when using that file on the project
# - echo $GOOGLE_SERVICES_BASE64 | base64 --decode > app/src/release/google-services.json
# - echo $API_KEY_STRINGS_BASE64 | base64 --decode > app/src/release/res/values/api_key_strings.xml
-
mkdir -p $ANDROID_HOME/licenses/
-
echo 8933bad161af4178b1185d1a37fbf41ea5269c55 >> $ANDROID_HOME/licenses/android-sdk-license
-
echo d56f5187479451eabf01fb78af6dfcb131a6481e >> $ANDROID_HOME/licenses/android-sdk-license
-
echo y | android update sdk --no-ui --all --filter tools,platform-tools
-
echo y | android update sdk --no-ui --all --filter android-27
-
echo y | android update sdk --no-ui --all --filter extra-android-m2repository,extra-android-support
-
echo y | android update sdk --no-ui --all --filter extra-google-m2repository,extra-google-google_play_services
-
echo y | android update sdk --no-ui --all --filter build-tools-27.0.0
#- yes | sdkmanager --licenses
cache_directories
:
#- /usr/local/android-sdk-linux/tools
#- /usr/local/android-sdk-linux/build-tools/27.0.0
test
:
override
:
-
./gradlew assembleRelease --stacktrace
-
find . -name *.apk -exec mv {} $CIRCLE_ARTIFACTS/ \;
deployment
:
beta
:
tag
:
/v\d+\.\d+\.\d+(?!.)/
owner
:
RocketChat
commands
:
-
./gradlew publishListingRelease
-Dorg.gradle.project.track=beta
alpha
:
tag
:
/v\d+\.\d+\.\d+/
owner
:
RocketChat
commands
:
-
./gradlew publishListingRelease
-Dorg.gradle.pr oject.track=alpha
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