Git Product home page Git Product logo

schildichat-android's People

Contributors

ariskotsomitopoulos avatar atalonica avatar billcarsonfr avatar bmarty avatar danialbehzadi avatar dependabot[bot] avatar dodog avatar dominaezzz avatar ericdecanini avatar florian14 avatar ganfra avatar glandos avatar hughns avatar ihorhordiichuk avatar jmartinesp avatar langleyd avatar linagkar avatar linerly avatar michaelkaye avatar mnaturel avatar onurays avatar ouchadam avatar poljar avatar s8321414 avatar spiritcroc avatar szimszon avatar ujdhesa avatar waclaw66 avatar weblate avatar yostyle avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

schildichat-android's Issues

No sound on notification arrivals.

Describe the bug
Schildi does not play any sound when notifications arrive. I have enabled them in the Android preferences and in the app setup, to no avail.

To Reproduce

  1. Go to 'Settings'
  2. Click on 'Notifications'
  3. Click on 'Notification sounds'
  4. Scroll down through Notifications sounds
  5. Selec any one (I chose 'Sapo' in Spanish). It plays Ok.
  6. Go back with the upper arrows to the main screen and wait for a message to arrive.
    When it does, no sound is played.

Expected behavior
A sound should play on message arrival, but no sound comes out.

Screenshots
N/A.

Smartphone (please complete the following information):

  • Device: Xiami Redmi Note 3 Pro.
  • OS: Android 6.0.1, MIUI Global 10.2.1.0.

Additional context

  • App version and store: 1.0.10 from F-Droid.
  • Homeserver: matrix.org.
  • Notifications are enabled for both the account and session.

Upstream relevance

  • Does this issue exist in Element Android?
    Yes, it does.

Great app!

Thanks so much for your work. As a long time user of Riot, RiotX and Element, I can say that your app is fantastic and much needed right now.

Biometric stays up

SchildiChat 1.0.10.sc.25 via F-Droid
Nokia 8 Android 9 with fingerprint-unlock enabled
Fingerprint enabled (Settings>Security&Privacy>Protect access) with pin.

Reproducing:

  • enable fingerprint and pin
  • open SchildiChat
  • lock phone
  • unlock phone

Issue:
The fingerprint scan pop-up stays up after unlocking phone with SchildiChat open.
I can't click home. I had to reboot my phone.

Possible cause:
Nokia 8 has home button as the fingerprint scanner.
Possibly not 'clicking' home but fingerprinting and visa versa.

Screenshot:
Screenshot_20201114-131850

Add support for custom theme backgrounds (images, colors)

The FuffyChat client has this option, however FluffyChat is not mature or stable enough to be a perfect solution.

I would like this feature added, unless it is too hard to implement.

Describe alternatives you've considered
If images would be too hard to get working, having the option for a custom color is also good.

Additional context
Reference image

Move Stickers to Emoji picker

Element got an Emoji picker, but Stickers are still only accessible via Plus-Icon.
I'd prefer when they are accessible in the same place, just as it is in other messengers:
image

Message preview setting depending on isDirect

On desktop, we can choose if we want to show reactions or not in the overview summary for DMs and rooms independently. On Android, we have one setting for both currently, but it might be easy to split this.
It might be worth considering initialising the new setting with the old setting's value on app start, so no new configuration is required for users that already used this setting.

Hide avatars and usernames in DM chats

This is something Telegram does and I actually never noticed this until I started using other bubble messaging apps that didn't do this.

In a DM chat you have just the bubbles coming from left and right side in different colors but the user avatars and the user name (on top of the bubble normally) are hidden because this is really redundant information. This makes for a cleaner DM chat experience.

Improve "seen by" UI behaviour

Linked to SchildiChat/schildichat-desktop#36, to make visual changes carry over to here.

Improve "seen by" UI behaviour to at least not move the chat whenever someone's "seen" marker changes message

Furthermore, maybe introduce a new design (as described in above issue) to make read markers more pleasant, especially with the bubble layout

Patch features back to Element

Did you tried to open PR to upstream with some features? For example, a switch in the settings for chat bubbles would be cool in Element. Also, applying it upstream would reduce the fork maintenance work.

Show more servers than matrix.org

I recently saw this in another client:
grafik

So they have a server chooser built into the app. This is pretty cool to promote federation.
It would be cool if this could be integrated into SchildiChat too, since matrix.org is really dissapointing when it comes to speed.

Floating date

When scrolling in chats with many messages on one day, it can get inconvenient to find out the current date.
Some messengers solve this by letting the current date of the uppermost message not leave the screen, but stick at the top, floating above the messages.

I can't send messages after rotate my phone to landscape mode

Describe the bug
When I'm chatting, if I turn my phone to landscape mode, I can't send any more messages until I get back to the room list.

To Reproduce
Steps to reproduce the behavior:

  1. Go to a room in portrait or landscape mode.
  2. Write a message or not.
  3. If you are in portrait mode, turn the phone to landscape mode.
  4. Expand the message or type one.
  5. Click Done button.
  6. Hide keyboard.
  7. Click send button.
  8. Message is not sent.
  9. Turn the phone to portrait mode.
  10. The part of the message written in landscape mode was erased.
  11. Click to send button.
  12. Message is not sent.
  13. Delete the message and write a new one.
  14. Click send button.
  15. Message is not sent.
  16. Return to the room list.
  17. Go to the room again.
  18. Click send button.
  19. Message sent.

Expected behavior
Send message in landscape mode and portrait mode.

Smartphone (please complete the following information):

  • Android-Version: 6.0.1
  • Device: A0001
  • OS Version: 3.4.110-cyanogenmod-ge6be560(3c3f0aca9b)
  • OS API Level: 23
  • Manufacturer: OnePlus
  • Model (and Product): A0001 (bacon)

Additional context

  • App version: 1.0.14.sc27 from F-Droid
  • Homeserver: matrix.debian.social

Upstream relevance

Emoji-messages with spaces are not enlarged

On desktop, messages only containing emojis and spaces are larger than normal messages. On Android, a space between two emojis makes the message small, and a space is automatically added when sending at least a two-emoji message on desktop.

Multi account

With xmpp messenger, several profiles can be entered and then switched over.

With matrix messengers, this is only possible for one account.

This is stupid if your main matrix account is not available, but you urgently need to read that message.

Typing ">" crashes client

Describe the bug

Typing > (without `) in a chat will make the client crash and that chat cannot be opened anymore.

To Reproduce
Steps to reproduce the behavior:

  1. Go to any DM or room
  2. Type the symbol '>'
  3. See error

Expected behavior
Like on the Element client, an empty message bubble. Or like other clients, the character in question: >

Smartphone

  • Device: Xiaomi Redmi Note 5 Pro
  • OS: Android 10 (crDroid)

Additional context

  • App version and store: 1.0.6.sc.19 - Foxy Droid (using F-Droid repos)
  • Homeserver: matrix.org

Separate old and new messages ever so slightly

Visible in messaging apps like telegram, it sperates message groups when the time between them is longer than 7 minutes (by some 5-10 pixels), this is a subconscious hint at the time between them

Better DM read markers (ticks?)

I disabled the read markers/read receipts in Schildichat as I think the screen looks way too busy with them and the bubbles.

Maybe the classic tick marks could be an option for DM read markers? They fit the bubble view way better than the falling avatars.

(I don't see a good way to make this work in groups. Telegram just has a single "someone has read the message" tick mark there as well, which isn't really that useful. The matrix RR are of course better, but they take up a lot of screen real-estate which is why I disabled them in the first place.)

Notification bug

Describe the bug
When recieving a notification, every 20 seconds (or so) its gets refreshed. On smartwatches and tasker they pick the new notification and resend it.
This is very annoying, i dont know if its Element of SC

To Reproduce
Make a tasker profile with catching notifications (no cooldown time), make a task that sends a beep. (I use tasker for notifications of my torch)

Expected behavior
You get beeps till you read it

Can't connect to servers on the same lan

Steps to reproduce the behaviour:

  1. start matrix-synapse on 192.168.1.1
  2. start schildi on 192.168.1.2
  3. connect to the server

error message:
no network. please check you internet connection

there is internet connection and the server works if i connect from any desktop client
if i open http://192.168.1.1:8008 in the phone browser i see the "it works" page.
edit: it seems that it just wont accept any non https address

More themes

Users might want to choose different primary/accent colors. Due to technical reasons, we do not want to address this with user-defined colors, but by providing a variety of styles.
Technically, we would need a style for each bg-theme and accent color combination, but we probably want to hide this from the users, to allow selecting both independently (preferably with some color picker). What would be even nicer if we could use runtime overlays to just overlay the accent color and not duplicate themes, which seems to be possible since Android 11, but is likely not backwards compatible (needs investigation).

Unread messages tab

For non-combined chat lists, we currently have the (lab)-option to add a tab for notifications. This might also be helpful for long chat lists when using the combined chat list, so my suggestion is the following:

  • Allow enabling the notifications tab also when having a combined chat list
  • Think about whether we want to show the unread counter badge in the tab icon in this scenario, as it would be the same for both tabs
  • Add a setting to also show chats with unread messages in there, instead of only those with actual notifications

battery

element drains the battery within a short time SchildiChat is based on element. does SchildiChat also drain the battery?

Voice Message Integration

SchildiChat is a big step towards the common messenger experience and towards being an alternative to xmpp-android-messengers like Conversations/PixArt.

As Voice Messaging obviously is an important feature for the common user an integration like in PixArt shouldn't be too complicated and will surely be widely appreciated.
As far as I can see they only impleted a way to record an mp3 and automatically prepare it for file transmission. On the receiving end such an attachment is automatically offered to be played.

Thanks for your work, I enjoy Schildichat a lot and it replaced element on my phone.

Simplified mode which hides public room functionality

Edit by SpiritCroc:

A simplified mode (-> setting) with reduced functionality, hopefully improving accessibility for 'non-tech' users, with following changes:

  • Hide public room functionality (rationale: people chatting with strangers on the internet can be considered advanced users)
    • Clicking on + / Rooms goes directly to "Create new room" instead of the intermediate step which allows joining public rooms
    • The "New room" screen would hide the setting to make the room public and publish it in the room directory
    • Hide room address settings in the room settings
  • Hide encryption settings (rationale: encryption is hard to explain to users without background knowledge)
    -> Always encrypt by default when creating a new room (like Element does)
  • Possibly add a prompt after first login whether to use simple or advanced mode, or maybe also show once in retrospective for existing users (rationale: optimally, 'non-tech' users do not need to configure any settings, which might be challenging, but we probably have a significant amount of users who would miss public room joining if we hide it by default)
    • Possible descriptions:
      • "I only plan to chat with people I know"
      • "I'm looking for full functionality, including the possibility to join public rooms"

Original issue

Context
Users in my family only use the Direct Messages, and don't use the Rooms, so would like to hide all features related to Rooms.

Solution I'd like
In Settings, I'd like to find a 'Hide Rooms' option (toggle) that removes all Room features.
(maybe this should be possible only if user hasn't joined any Room)

Thanks for your great work!

Automatic light theme at day, dark theme at night

I like to use a light theme for applications during the day, because I find it easier to read, and dark theme at night, because it doesn't hurt my eyes.

Perhaps this could be done by having 2 theme selectors, one for the preferred day theme, and one for the preferred night theme, and one for the preferred dark theme, and switch between them based on the time of day (e.g. dark between 8 pm and 8 am)?

I seem to remember that this used to be a feature. Was it removed?

Would you prefer if I sent this feature request to Element upstream?

Thanks for the great app!

Syncing / listening

Hi there, nice fork! But is it possible to disable the listening/syncing icon (or make an option to disable it), it is a lot visible

IMG_20200808_210546_260.jpg

Add option to have rounded chat bubbles

Is your feature request related to a problem? Please describe.
No.

Describe the solution you'd like
I much prefer having bubbles so thank you for making this fork! However,I think it would be must nicer aesthetically to have rounded chat bubbles rather than the boxy ones currently in the app, like the ones you get in Telegram:

image

Describe alternatives you've considered
None.

piwik

Hi there,

I think you did an amazing job. I know many people who don't want to use Element because of the design. They just stick to WhatsApp.
The only thing I found on my first look at your code:
https://github.com/SpiritCroc/SchildiChat-android/blob/db6e85b1209db93a4b638fc1e4227c115bd47ac0/vector/src/main/res/values/config.xml#L8
https://github.com/SpiritCroc/SchildiChat-android/blob/db6e85b1209db93a4b638fc1e4227c115bd47ac0/vector/src/main/res/values/config.xml#L9

Why not just use "localhost" to prevent security concerns?
I would just leave it default to poin to riot.im.

The lack of experience and free time these days won't let me dive deeper in "theming" an android app. But I'll try to support your work.

Sticker rendering improvements

Stickers could be rendered a bit bigger and probably shouldn't have a bubble around them. (And big emojis probably shouldn't either, as I consider them sticker equivalents mostly)

Comparison
Screenshot_20200902-151906_SchildiChat
Screenshot_20200902-151846_Telegram_FOSS

Multi-Account-Integration

Are there already plans to add support for multiple accounts? I have more than one Matrix-Account and would appreciate to watch them without having to log out and in again.

Best regards!

Make timestamp able to be hidden until tapped

Tangentially a visual bug, it'd be nice if the timestamps under messages would be hidden until tapped, after which the message-bubble would "rise up" to show the timestamp.

This is a visual feature already in google messages' app, and (maybe, can't remember) iMessage.

Display of long name pills

Currently, name pills can escape from the message bubble (or even the screen). Maybe it's possible to break them somehow instead.

Issue is likely in PillImageSpan.kt, and might be addressed as described here and here to span multiple lines, if it's worth it. It might be another idea to find a way to ellipsize the text instead (it's possible to click on the chip to find out the full name, after all).

Child mode

Context
I want to allow my child communicate (text/audio/video) with his family via SchildiChat (on a phone with no SIM and firewall allowing internet access only to SchildiChat). I have created for him a dedicated SchildiChat account in which I have created DirectMessages conversations with only trusty contacts.
Now I want to be sure he doesn't contact (nor be contacted by) anyone else than those trusty contacts.

Solution I'd like
I'd like to find in the Settings a possibility to block features that are unwanted for a child usage: block sending/accepting Invites, block access to Rooms, block addition/removal of Rooms/DirectMessages, block join/quit.
Unlocking this should require to type the account password.
This feature could be called 'Child mode'.

Alternative solution if requesting a password is too hard to implement
For a 1st implementation, it would be fine for me if no password was requested. If the toggle for the 'Child mode' is in the 'Advanced Settings' or the 'Security & Privacy' settings, I don't think my child would find it and unlock it... until he becomes smart enough :)

Thanks for reading, and keep up the good work !

https://github.com/vector-im/element-android/issues/2026

Hi,
I love Matrix, esp the focus on bridges. I would like to start recommending it to friends and family, but the Element app is really only acceptable to them if it is possible to register and login automatically with their phone number, without a password, and with sms id confirmation. So like with WhatsApp and Signal. This is a feature request to make this possible on Matrix as well, perhaps add it as an option in the login screen. According to several experts (see link below) it should be feasible, to assign randomly generated new user names and passwords to new phone numbers, and allow users to register and login without ever having to see either, so that they can just login with their phone number. If SchildiChat is able to implement this, it will automatically become my default messenger!

element-hq#2026

Android Auto integration

Copying some stuff from element-android, #240

It would be great to support Android Auto. Especially for notifications.

I tried declaring android auto support in the manifest https://developer.android.com/training/cars/messaging#manifest-messaging but it didn't seem to work. I thought that with the notifications now using MessagingStyle we would get Android Auto support for free.

Maybe someone else could test.

was previously requested for riot-android as:
element-hq/riot-android#2811
element-hq/riot-android#698

...

For reference, Here is Signal's implementation of Android Auto integration. Here's another implementation from an XMPP client called "Conversations"

I'll gladly send a donation to whomever implements this.

User-defined colors

Allow modifying some colors of the app, on a dark/light theme basis.
We could e.g. show a "Customize themes" setting below the theme setting, which allows for setting following colors:

  • Incoming message bubbles
  • Outgoing message bubbles
  • Bubble text color?

In some way, customization settings need to be disabled by default, so that no theming inconsistencies arise when themes are switched. Maybe we want to automatically set these colors to values from the current theme, when dark/light theme setting is changed. We better use some "magic color values" for that, so updates can change colors as well when users have not changed anything.

Comprehensive list of changes compared to Element

We currently only mention a small number of (most important) changes of SchildiChat compared to Element on the Website and in the README.
By now, we also have a good collection of smaller enhancements and changes, which are difficult to see for new users without comparing both apps side by side, or checking the source code / commit history.
A more comprehensive list, containing also smaller changes, would help users to decide on choosing SchildiChat vs. Element.
I'm currently tending to put this into a .md in this repository, so it can easily get updated together with actual code changes, but it might be also an idea to put it on the website (or, we can look into making the website import it automatically from this git?).

Wider bubbles for both sides theme

Is your feature request related to a problem? Please describe.
I think the bubble size in group rooms can be optimized. The bubbles are always the same weight but not for peers in group rooms (with bubbles, both sides)

A solution
Making the bubble wider for peers on group rooms. It could be as long as the others or a few pixels less to be sure to have a difference with our own messages.

Another solution
Our own profile picture on the right of our messages and bubbles until the end (like on fluffychat). It is the opposite intent to see who's speaking. This solution is actually putting text more in the middle of the screen* and making read more comfortable. But to unify with DM (1:1), it would require to do the same on it.

*A lot of messages are shorter than the screen width, so they stay close to the beginning of the bubble.

Comparison
The first is fast to do, and require less changes, the second would be more comfortable.

Additional context
Here is today's length :
bubbles

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.