element-hq / element-android Goto Github PK
View Code? Open in Web Editor NEWA Matrix collaboration client for Android.
Home Page: https://element.io/
License: Apache License 2.0
A Matrix collaboration client for Android.
Home Page: https://element.io/
License: Apache License 2.0
See #40
Device: Pixel XL, Android 9
Log: https://gist.github.com/anoadragon453/d6fbcb878d55e1ce97c2f07e662080e8
Use system dialogs:
Current Riot-Android in background mode receive all events, even in muted rooms. This is not good for traffic & battery.
For example, I joined to Matrix HQ
, Riot
and some others active rooms, because very rarely read them (1-2 times in week). But my mobile device wakes up and receive every message from those rooms, eating my battery and traffic.
Will be good to implement power save mode, that receive only events for active rooms and ignore muted rooms, sync them only on demand (when they opened manually).
The app should be able to display in the timeline:
I'd love to help work out bugs for this, but I am not in the position to build the APK myself regularly. Would it be possible to have Jenkins build one, or some other means to have a regularly updated APK available for testing?
Format matrix events into readable, internationalised messages in the timeline:
after the deprecation of onRetainCustomNonConfigurationInstance last week, there is really no way to save data on configuration change (rotation, etc) without using ViewModels and Architecture Components.
You guys need to use AAC, Jetpack and Viewmodels asap. you can do some of this easily (https://developer.android.com/jetpack/androidx/migrate).
But you need to write the ViewModels by hand.
The PoC should validate a better navigation across permalinks than the current riot-android. That one resets the navigation stack every time you tap on a permalink.
The PoC should manage:
/context
and manage storage of received chunks, including merging continuous chunksSee #40
With slideshow
appfdroid
and appgplay
build variantPlease add a license to the repo and/or source files.
Merged with #48
Implement MELS: collapse consecutive membership events in the timeline.
The app should be able to display messages containing:
See #82
Using a media preview screen before sending media to the room
The app must keep the order of sent messages.
This must be verified on bad network condition.
feature : dedicated tabs for media( images, videos, audio) , documents (.pdf , .doc) and links . So that user can find important resource easily
Some related MSC : matrix-org/matrix-spec-proposals#1956
Add support for account registration
Notes
Write a MD file (like/docs/implementations/timeline.md
) folder describing the up-to-date implementation of state events storage and how they are read from several timelines of a same room.
Source is https://docs.google.com/document/d/1S4TPNk8-H8j4nk771ep1J4RuKOv42GyG74jjDfnlRn8.
The app must be able to display message events with org.matrix.custom.html
format
Add the abillity to record and send voice messages inside the App and also play them.
(without the need of 3rd party apps)
EDIT by @bmarty:
Additional requirements:
Here is the recipe so far:
m.room.encryption
in the timelineAlso:
Manage the local echo in the timeline according to the sending state which can be:
In this room and in all rooms
Currently matrix.org
is hard-coded and so used by default
Any plans to support multiple accounts?
Edit by Benoit
The SDK already support multi-account.
Blocked by: matrix-org/sygnal#70
Open points:
The editor must manage slash command:
(legacy) commands to handle
The editor must help the end user to complete:
Pills:
Hello,
If possible, it would be nice to have a light UX version of RiotX dedicated to androidTV.
It is possible today to install and use Riot for android with a mouse and keyboard on androidTV (thanks to AptoideTV). I know receiving voice and video work. I couldn't try if others can hear/see me because I don't have webcam for my TV but I read that Android has some webcam's drivers pre-installed. I'll try when I can. Did someone try?
However, I think it's not handy to do so. What I have in mind is a simpler version of it. It is mostly a question of hiding options of the android app.
It would only allow to make and answer calls in direct chat. Salon would not be listed (hidden, not accessible inside RiotX-androidTV), only direct chat would appear! And when we enter one of them, only the two buttons of voice and video call would be there (no chat room, no keyboard needed).
Only notification of calls would be needed and would appear on top of screen while TV is on (used) with two options answer/not answer.
If it's possible, it could even ring and switch on the screen of TV when a call is incoming but would need to switch off again the screen if the call is not picked (to avoid consuming electricity).
What do you think?
The editor must also manage:
org.matrix.custom.html
Settings screen
This may be a way to implement #8.
In the legacy Riot-Android app, we convert html contents into Android strings but we often have reports of users complaining that some html renders badly.
The goal of this PoC is to try to render every such message into a webview and then, check app performance of the room screen when the ListView
contains plenty of webviews.
Of course, this must be checked on a low-end device.
See #40
See #40
Maybe use same repo than for Riot, but with new label for RiotX
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.