Commit Graph

506 Commits

Author SHA1 Message Date
Wv5twkFEKh54vo4tta9yu7dHa3 94635f5b72
Add splash screen to avoid white screen while opening (#112) 2020-04-23 19:49:30 +02:00
Andrew Dobis 2339fb0967
Added handling of multiple images in a post (#111)
* Changed Post interaction icons and added click feedback

* added reblog and unreblog api implementations

* Use fancy animated buttons

* WIP reposter

* WIP reblog button

* renamed ViewHolder => PostViewHolder

* activated reblogger in feed

* added custom html parser, still need to fix clickable links

* added parsed HTML in notifications

* fixed mention click

* added tests for reblog and clickable mentions

* adapted unit tests to work with new html parser

* changed incoherent comment

* made hashtags slightly less useless

* removed unit test that were no longer valid

* removed useless test

* trying to fix tests

* fixing tests

* trying to improve coverage a little

* removed unused code to improve coverage

* changed cast to type converter

* added failure responses to help coverage

* added mock server response for reblogging

* fixed broken json

* trying to fix a broken test

* added handling of multiple images in a post

* Tweak tests

* Typo in test

* Add scrolls to make tests pass on small screens

* fixed old JSON in mockserver

* fixed linter issue

* merged with master again

* added test for albums

Co-authored-by: Matthieu <61561059+Wv5twkFEKh54vo4tta9yu7dHa3@users.noreply.github.com>
2020-04-23 18:49:32 +02:00
Andrew Dobis 8265ac2d62
Reblogging and HTML text (#107)
* Changed Post interaction icons and added click feedback

* added reblog and unreblog api implementations

* Use fancy animated buttons

* WIP reposter

* WIP reblog button

* renamed ViewHolder => PostViewHolder

* activated reblogger in feed

* added custom html parser, still need to fix clickable links

* added parsed HTML in notifications

* fixed mention click

* added tests for reblog and clickable mentions

* adapted unit tests to work with new html parser

* changed incoherent comment

* made hashtags slightly less useless

* removed unit test that were no longer valid

* removed useless test

* trying to fix tests

* fixing tests

* trying to improve coverage a little

* removed unused code to improve coverage

* changed cast to type converter

* added failure responses to help coverage

* added mock server response for reblogging

* fixed broken json

* trying to fix a broken test

* Tweak tests

* Typo in test

* Add scrolls to make tests pass on small screens

* fixed old JSON in mockserver

* fixed linter issue

Co-authored-by: Matthieu <61561059+Wv5twkFEKh54vo4tta9yu7dHa3@users.noreply.github.com>
2020-04-23 17:48:45 +02:00
Ulysse Widmer 8950d4c162
Reconnect button (#108)
* reconnect button and profile button functionality

* fix lint error and cleaned some imports

* more lint errors

* added tests for the drawer menu

* added some timing for the animations

* drawer settings test
2020-04-17 15:07:04 +02:00
Wv5twkFEKh54vo4tta9yu7dHa3 7318ff5083
tweak UI, add mascot and info link to LoginActivity (#106)
* tweak UI, add mascot and info link to LoginActivity

* Fix test, add other test
2020-04-16 12:46:40 +02:00
Andrew Dobis f8d6c67079
Commenting & seeing comments on a post ( issues: #37 #77 ) (#87)
Comment and like buttons added + a few UI tweaks 

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* added UI test for the post activity

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* layout changes

* refactoring

* refactoring

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* fixed merging errors

* trying my best to merge

* removed drawable definition in activity_post.xml

* Started converting Post to a fragment

* got a working feed

* WI

* removed non-valid test

* rebase on other branch

* moved the feed to the home page

* Add tests

* delete test for now

* Adapt test to changes (no more profile from drawer)

* Add unit test for api

* Add test for profile, refactor to allow testing, add exception to security policy to allow tests

* Adapt test to new situation

* Fix typo due to change

* refactor somewhat

* added a feed test

* WIP posts

* trying to add images

* WIP posts

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* added UI test for the post activity

* WIP posts

* trying to add images

* WIP posts

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* added UI test for the post activity

* fixed merging errors

* trying my best to merge

* removed drawable definition in activity_post.xml

* Started converting Post to a fragment

* got a working feed

* WI

* removed non-valid test

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* refactoring

* refactoring

* removed wrong annotation in unit test

* WIP posts

* WIP posts

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* layout changes

* moved a test file

* refactoring

* refactoring

* refactoring

* refactoring

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* removed tests that broke from merge, will override with master

* added UI test for the post activity

* fixed merging errors

* trying my best to merge

* removed drawable definition in activity_post.xml

* Started converting Post to a fragment

* got a working feed

* WI

* removed non-valid test

* rebase on other branch

* moved the feed to the home page

* added a feed test

* added a working feed test

* fixed broken test

* merged with master

* added a max height for images and made profile pictures round

* Added a default image for the post

* created a PostActivity to look a single posts

* fixed buggy postActivity

* Complete overhall of the feed UI

* removed test that didn't please Travis

* removed legacy test

* changed feedAdapter init location (outside of network callback)

* changed the feed from public timeline to home timeline

* Refactored myProfile page

* Converted profile picture to round image

* restored feed test

* I can like a post, but unlike is still a WIP

* Liking kind of works now and added tests

* fixed an error, now we can unlike as well

* fixed travis constraint error

* Display user's posts on profile page

* moved test to Mock server tests

* fixed test

* last resort debugging

* Changed fixed size of profile posts

* last resort debugging

* last resort debugging

* last resort debugging

* made post_activity profilepic round

* Total refactor of profile posts

* still have a weird bug with the comments: input is always null (WIP)

* still trying to fix coments

* removed annoying side margins in the home feed

* trying to fix comments

* fixed null comment

* converted all posts back to statuses and got rid of post

* Refactored recycler view

* Merged with my-profile

* Posts displayed on profile page

* Added links to profile activity where needed

* fixed comment posting

* finished implementing comments, but api is buggy so none are visible

* removed useless space in profile page

* fixed ci config bug

* trying to trigger ci hook (github was down last time)

* updated tests with master tests

* added tests for the comments

* added tests for the comments

* added first() matcher to fix comment test

* still trying to fix comment tests' null progress bar

* getting rid of that null progress bar

* added comment test

* fixed merge error

* added like button test

* added more post tests

* took pr coments into account

* added back an old test

* added mockServer response for comment test and fixed comment null pointer bug

* changed notification UI to better separate notifications

* added mockserver response for likes and corrected like toggling error

* added a test for posting comments

* fixed typo in test

* a gift for code climate

* refactored stuff

* fixed broken imports

* comment refactored as xml

Co-authored-by: Matthieu <61561059+Wv5twkFEKh54vo4tta9yu7dHa3@users.noreply.github.com>
Co-authored-by: mjaillot <marie.jaillot@epfl.ch>
2020-04-11 12:55:06 +02:00
Wv5twkFEKh54vo4tta9yu7dHa3 8af19cbd9a
Hide keyboard on clicking connect (#103) 2020-04-10 16:12:03 +02:00
Wv5twkFEKh54vo4tta9yu7dHa3 2333e5ec11
refactor profiles, add scrolling to fragments (#101)
* refactor profiles, add scrolling

* Undo unwanted changes by merge
2020-04-10 12:55:02 +02:00
mjaillot 1b6753d119
User profile #79 (#90)
* Refactored myProfile page

* Total refactor of profile posts

* Merged with my-profile

* Posts displayed on profile page

* Added links to profile activity where needed

* Removed MyProfileTest with swipes

* Tests ProfileActivity from Notifications

* Add test, fix progressbar being null
2020-04-09 22:36:59 +02:00
Matthieu ba8980652c Infinite loading, make glide aware of the recyclerview 2020-04-02 19:57:07 +02:00
Wv5twkFEKh54vo4tta9yu7dHa3 ece6716e2d
Merge branch 'master' into loading 2020-03-31 13:07:35 +02:00
Ulysse Widmer 35d11512c1 swipe tests that try all the horizontal swipe motions 2020-03-30 17:37:23 +02:00
Matthieu 0a3cd85d83 Add loading indications, refactor fragments into common parent class 2020-03-21 18:12:00 +01:00
Ulysse Widmer 3bff3f5581 added string value 2020-03-20 16:29:02 +09:00
Ulysse Widmer ac9a9943ac Merge branch 'master' into feature/upload-pictures 2020-03-20 16:23:38 +09:00
Ulysse Widmer e17a279994 add tests 2020-03-20 15:27:52 +09:00
Wv5twkFEKh54vo4tta9yu7dHa3 260062a72b
Notifications tab (#57)
* Add notification fragment to notification tab

* First functional-ish version of notifications

* Fix test failing due to profile requesting multiple times (?)

* Test notifications list

* Move resource that was in the wrong place for some reason

* Improve fallback image, add new drawable for it, add a margin

* Only show image thumbnail when there is one

* Go to post activity on click

* Add pull to refresh

* Refactor somewhat

* Test other notification too

* Test opening post

* add icons for various things (heart, follow, share, image fallback)
2020-03-18 20:56:42 +01:00
Ulysse Widmer 0b681d9b6b Merge branch 'master' into feature/upload-pictures 2020-03-18 01:19:04 +09:00
Ulysse Widmer 2a1b9209e1 upload picture implemented
still need to link it with create a post and DataBase
2020-03-18 01:09:39 +09:00
Wv5twkFEKh54vo4tta9yu7dHa3 d0195bfe1b
Fix build and switch to Home timeline (#59)
* Switch to Home timeline

* Fix broken tests

* DRY-ed up the tests, remove extraneous activity
2020-03-17 15:14:19 +01:00
Andrew Dobis 7b5049bba9
As a user I want to be able to see posts in a feed (#28)
* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* WIP posts

* trying to add images

* WIP posts

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* rebased from master

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* added UI test for the post activity

* WIP posts

* trying to add images

* WIP posts

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* rebased from master

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* added UI test for the post activity

* fixed merging errors

* fixed another merge problem

* trying my best to merge

* removed drawable definition in activity_post.xml

* implements swipe motion

add a new class to implement swipe motion
add the swipe right from home page to display settings
passed the homepage in a fragment

* transform profile activity into fragment

transformed profile activity and layout into fragment
linked it with a swipe motion

* Implement swipeable tabs

* Ask for login on first start, add API endpoints, change profile to show the user's profile

* Started converting Post to a fragment

* got a working feed

* WI

* removed non-valid test

* WIP posts

* trying to add images

* WIP posts

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* added UI test for the post activity

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* layout changes

* refactoring

* refactoring

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* fixed merging errors

* trying my best to merge

* removed drawable definition in activity_post.xml

* Started converting Post to a fragment

* got a working feed

* WI

* removed non-valid test

* rebase on other branch

* moved the feed to the home page

* Add tests

* delete test for now

* Adapt test to changes (no more profile from drawer)

* Add unit test for api

* Add test for profile, refactor to allow testing, add exception to security policy to allow tests

* Adapt test to new situation

* Fix typo due to change

* refactor somewhat

* added a feed test

* WIP posts

* trying to add images

* WIP posts

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* added UI test for the post activity

* WIP posts

* trying to add images

* WIP posts

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* added UI test for the post activity

* fixed merging errors

* trying my best to merge

* removed drawable definition in activity_post.xml

* Started converting Post to a fragment

* got a working feed

* WI

* removed non-valid test

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* moved a test file

* refactoring

* refactoring

* refactoring

* refactoring

* removed wrong annotation in unit test

* WIP posts

* WIP posts

* WIP posts

* WIP posts

* trying to add images

* trying to add images

* trying to add images

* trying to add images

* Got posts working and linked them to the profile

* Got posts working and linked them to the profile

* added tests for Post

* layout changes

* layout changes

* moved a test file

* refactoring

* refactoring

* refactoring

* refactoring

* removed wrong annotation in unit test

* removed an import that was breaking the build

* removed an import that was breaking the build

* removed tests that broke from merge, will override with master

* removed tests that broke from merge, will override with master

* added UI test for the post activity

* fixed merging errors

* trying my best to merge

* removed drawable definition in activity_post.xml

* Started converting Post to a fragment

* got a working feed

* WI

* removed non-valid test

* rebase on other branch

* moved the feed to the home page

* added a feed test

* added a working feed test

* fixed broken test

* merged with master

* added a max height for images and made profile pictures round

* Added a default image for the post

* created a PostActivity to look a single posts

* fixed buggy postActivity

* Complete overhall of the feed UI

* removed test that didn't please Travis

* removed legacy test

* changed feedAdapter init location (outside of network callback)

Co-authored-by: Matthieu <61561059+Wv5twkFEKh54vo4tta9yu7dHa3@users.noreply.github.com>
Co-authored-by: Ulysse Widmer <ulysse.widmer@epfl.ch>
2020-03-16 09:38:35 +01:00
mjaillot 8802bf9905
My profile (#46)
* Layout of my-profile page

* implements swipe motion

add a new class to implement swipe motion
add the swipe right from home page to display settings
passed the homepage in a fragment

* transform profile activity into fragment

transformed profile activity and layout into fragment
linked it with a swipe motion

* Implement swipeable tabs

* Ask for login on first start, add API endpoints, change profile to show the user's profile

* Added constraint view

* Layout of my-profile page

* Added constraint view

* Rebase myProfile with login-flow

* Add tests

* delete test for now

* Adapt test to changes (no more profile from drawer)

* Add unit test for api

* Add test for profile, refactor to allow testing, add exception to security policy to allow tests

* Adapt test to new situation

* Fix typo due to change

* refactor somewhat

* Added myProfile fragment to main activity + edit link

* Layout of my-profile page

* Added constraint view

* Layout of my-profile page

* Added constraint view

* Rebase myProfile with login-flow

* Added myProfile fragment to main activity + edit link

* Working tests for MyProfile

Co-authored-by: Ulysse Widmer <ulysse.widmer@epfl.ch>
2020-03-13 12:17:17 +01:00
Wv5twkFEKh54vo4tta9yu7dHa3 20c5ff4ee0
First use login flow (#44)
* transform profile activity into fragment

* Implement swipeable tabs

* Ask for login on first start, add API endpoints, change profile to show the user's profile

* Add tests

* delete test for now

* Adapt test to changes (no more profile from drawer)

* Add unit test for api

* Add test for profile, refactor to allow testing, add exception to security policy to allow tests

* Adapt test to new situation

* Fix typo due to change

* refactor somewhat

* remove unused function

* remove test dependent on network

* update test

* remove test

Co-authored-by: Ulysse Widmer <ulysse.widmer@epfl.ch>
2020-03-13 11:48:45 +01:00
Sanimys 2d7020fd21
Added a database working in LRU (#43)
Co-authored-by: Joachim Dunant <joachim.dunant@epfl.ch>
2020-03-12 23:27:40 +01:00
Ulysse Widmer de314dc9de
Implements swipe motion & fragmentalize (#41)
* implements swipe motion

add a new class to implement swipe motion
add the swipe right from home page to display settings
passed the homepage in a fragment

* transform profile activity into fragment

transformed profile activity and layout into fragment
linked it with a swipe motion

* refactor settings drawer tests

* added more tests and refactored some files

* added animations to the sliding of the swipe motion
2020-03-12 22:23:25 +01:00
Matthieu 1d13b5e621 Move settings to activity, remove upper bar 2020-03-08 12:54:18 +01:00
Ulysse Widmer a6bdaf4044 put navigation drawer layout items last or it doesn't appear 2020-03-08 19:40:39 +09:00
Ulysse Widmer edbf3aafa7 resolved conflicts before merge 2020-03-08 19:17:26 +09:00
Matthieu 6fd40417be Move button 2020-03-07 19:08:15 +01:00
Wv5twkFEKh54vo4tta9yu7dHa3 f0d5f918e2
Merge branch 'master' into oath 2020-03-07 19:02:45 +01:00
Matthieu b79ebca03a Some more tests, move values into xml 2020-03-07 18:13:26 +01:00
Matthieu 33f0711b1f Finish authentication 2020-03-06 18:24:20 +01:00
Ulysse Widmer faf5a0838b fixing some more cancer 2020-03-06 19:19:14 +09:00
Matthieu 5a11c72456 try to fix travis tests by moving button 2020-03-06 09:15:54 +01:00
Matthieu d0ca08391b Add button to main activity to start a login process 2020-03-06 08:49:26 +01:00
Matthieu 033c4843a2 Move default case to layout xml 2020-03-06 00:28:54 +01:00
Matthieu 25c2a211a6 Remove PostActivity 2020-03-06 00:15:42 +01:00
Matthieu 03ec30ef28 Remove useless network requests, change names 2020-03-06 00:11:12 +01:00
Matthieu e1d8015374 Add constraints to button 2020-03-06 00:05:22 +01:00
mjaillot 88193dd588 Merge 2020-03-05 23:16:48 +01:00
Andrea Clement be964b4673 put default url for testing purposes 2020-03-05 22:47:14 +01:00
Sanimys 10ee546ab9
Merge branch 'master' into settingsUI 2020-03-05 22:06:49 +01:00
mjaillot 02db1aa116 Merge 2020-03-05 21:27:20 +01:00
Joachim Dunant e7e3d19475 First implementation of settings UI & Main menu drawer 2020-03-05 21:07:10 +01:00
mjaillot 523d50a3a6 Convert avatar's URL to ImageView 2020-03-05 20:37:28 +01:00
Andrea Clement 15a29b9c29 fixed build broker fields 2020-03-05 20:37:21 +01:00
Andrea Clement 55d1d778b0 initial login files ; login flow class 2020-03-05 19:02:22 +01:00
Andrea Clement 85e1db49ca deleted login template 2020-03-05 18:59:46 +01:00
mjaillot 72f95f70b9 Merge 2020-03-05 18:38:10 +01:00
Andrew Dobis 7799ba4956 WIP on post 2020-03-05 18:29:10 +01:00
Andrew Dobis 8a026d0bd4 renamed pdf 2020-03-05 18:29:10 +01:00
Andrea Clement 746b670403 inital login activity 2020-03-05 16:46:18 +01:00
mjaillot 3f508b3a27 First draft of the profile page 2020-03-04 19:32:41 +01:00
Wv5twkFEKh54vo4tta9yu7dHa3 aa788f9720
Implement most of the API (#23)
Add Kotlin representations (data classes) of the Types of the Mastodon API. 
Create helper function to make API from the interface.
Test the deserialization.
2020-03-04 18:04:55 +01:00
Matthieu a63c7ccb97 Switch to Kotlin 2020-02-28 17:08:54 +01:00
Ulysse Widmer b10a800b36 init project files 2020-02-28 00:36:26 +01:00