UBports Robot Logo UBports Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login
    1. Home
    2. brenno.almeida
    Offline
    • Profile
    • Following 0
    • Followers 0
    • Topics 3
    • Posts 46
    • Groups 0

    brenno.almeida

    @brenno.almeida

    41
    Reputation
    22
    Profile views
    46
    Posts
    0
    Followers
    0
    Following
    Joined
    Last Online
    Website brennoflavio.com.br
    Location Brazil

    brenno.almeida Unfollow Follow

    Best posts made by brenno.almeida

    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      There's a new release for this app. This release contains a big standardization / internal refactor. I highly recommend that you:

      • Logout from the app in your main Whatsapp device
      • In Greenline settings, reset the app
      • Install the update
      • Then login again

      If you don't disconnect, there's a high chance that the app will crash in some places. As we approach to a beta release, I added more safeguards to catch bugs and make the app more robust, fixing some bugs on the way. Hopefully this will be the last time this will be needed, as from now on I'll adopt a data migration system for changes.

      https://github.com/brennoflavio/greenline/releases

      Changes:

      • Allow sending documents
      • Add option to catch and report crashes
      • Add option to pause daemon when closing the app
      • Render Whatsapp text messages with buttons
      • Fix images rotating in chat page
      • Restore old behavior for unread count bubble in app drawer
      • Handle Group Information and other whatsmeow events
      • Remove daemon configuration database, centralize all configuration in python
      • Harden media download, prevent crashes when downloading unavailable media
      • Reorganize code into modules, better separation of concerns
      • Add tests for daemon <> python communication and python <> qml communication
      • Document and test all python interfaces, with real, sanitized Whatsmeow data
      • App now validates at build and at runtime all data structures, logs errors, and ensures consistency between app parts
      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      Hi everyone! I've been working on a qml Whatsapp client for Ubuntu Touch for a few weeks, now I think its good enough for its alpha release.

      The app is not complete, there's still a ton of work to do, and probably many bugs. If you want to test it out, feel free to install in your device, and get back here if you find any bug so I can look at it. The Whatsapp protocol is awful to work with, I'm posting this early to gather feedback about edge cases.

      Consider this app as Alpha, don't use it expecting to be 100% functional or complete, but use it to give feedback and help with the development.

      Also the app runs unconfined to setup a background daemon, more on the architecture bellow.

      Releases here: https://github.com/brennoflavio/greenline/releases

      Once its stable, I'll publish to the store. Now more details about it.

      Architecture

      This app is composed of 3 parts:

      1. Golang Daemon

      This daemon managed by Systemd connects to Whatsapp servers and runs continuously in the background, gathering events and pre processing them. Also:

      • Manages your encryption keys
      • Serialize whatsapp events, stores in a queue
      • Expose a JSON RPC endpoint to read and send messages, among other operations
      • Syncs users avatars, media, and other data
      • Sends notifications
      1. Python Backend

      Event driven backend that pulls events from the daemon and acts on them, building a chat room and message database. It also sends events to the frontend, updating the message list in real time

      1. QML

      The frontend is entirely written in qml and communicates with python using pyotherside

      In order to pull messages in the background, it needs to run unconfined.

      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      More features:

      https://github.com/brennoflavio/greenline/releases

      • Now you can reply to messages
      • Text input box now renders correctly
      • Contact messages now renders correctly, and you can send contact messages
      • Chat page should load faster now
      • Chat list page now updates when you receive a message and app is opened in background
      • User metrics should work now
      • Really big text messages should render now, and be collapsed
      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • PicPocket - Immich client for Ubuntu Touch

      This post is meant to have a more continuous discussion about PicPocket development.

      Download it here: https://open-store.io/app/picpocket.brennoflavio

      Yesterday we had a new release allowing zooming images with your fingers, please give it a try!

      This app is mostly stable and no big changes are expected, but feel free to suggest unimplemented Immich features and bugs.

      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      @ChromiumOS-Guy please keep the discussion on feedback and suggestions, avoiding giving orders or similar statements.

      The way you put it is a bit rude for my taste. It does not sound intentional, but with a bit of out of context to me. Its not that the app is being developed without a data model in mind, more like new requirements (replies, edits, new message types, etc.) requires rethink on how things are done, which is pretty common on any medium o higher complexity project.

      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      @mihael noted!

      Btw there's a new release: https://github.com/brennoflavio/greenline/releases

      If you didn't disconnected your Whatsapp account in the last update, please take time to do it. Takes a few minutes and will improve your experience with the app.

      Changes:

      • Now links inside text are clickable and will open the browser
      • Mentions are also treated as links, clicking on them open the messages
      • Text between stars are rendered as bold message, like in Whatsapp
      • Now sending a message while offline does not crash the app anymore
      • Daemon should be way faster to reconnect when going back from offline to online or switching networks
      • Fix bug when clearing data app not deleting all files
      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: questions about app confinement

      @developerbayman your point just suggests that we need better confinement, not to remove it. For example, the alarm app could have apis to run confined

      posted in Support
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      New alpha with more quality of life features:

      https://github.com/brennoflavio/greenline/tags

      • Integration with lock screen with number of messages read [needs qa]
      • Full background sync, faster startup times
      • Tapping on a notification opens the chat of that notification
      • Support for messages that are only links
      • Call notifications
      • Only notify the last message of a chat room
      • Clear notification for the chat room once chat is opened
      • Notification badge support (unread count in the side bar)
      • Messages from groups should notify the group name in the title, not the person name [needs qa]
      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      New alpha with features:

      https://github.com/brennoflavio/greenline/releases

      • Pair Whatsapp with phone number + code
      • Settings page now correctly uninstall the daemon from the device
      • Block all notifications globally, regardless of Whatsapp configuration
      • Text input now correctly renders more than 2 lines
      • Show "typing" indicators in the chat page header
      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: [Release] HomeSpike v1.0 — a real home screen for Ubuntu Touch (multi-page, dock, drag-to-reorder, three placement modes, true multitasking)

      @Zer0 Nice iniciative, to me there is some nice ideas in your effort, will try in a spare phone in the near future. Its always good to have options, design choices should evolve and enable users to use their device as they wish.

      I would suggest having your work as an unconfined click app, so you can reach more users. There are other launchers and apps that modify Lomiri so should be doable.

      Thanks for your work

      posted in Design
      brenno.almeidaB
      brenno.almeida

    Latest posts made by brenno.almeida

    • RE: How to change background image programatically?

      @AdFundum did you find a command that works from the terminal/adb shell? If so, does that command work if you make your app unconfined?

      Its possible that UT does not have an app armor policy that fits your use case, and that's the cause of your problem. From the list of policy groups I cannot see anything that would allow a confined app to change the background image.

      https://docs.ubports.com/no/latest/appdev/platform/apparmor.html

      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      @mihael noted!

      Btw there's a new release: https://github.com/brennoflavio/greenline/releases

      If you didn't disconnected your Whatsapp account in the last update, please take time to do it. Takes a few minutes and will improve your experience with the app.

      Changes:

      • Now links inside text are clickable and will open the browser
      • Mentions are also treated as links, clicking on them open the messages
      • Text between stars are rendered as bold message, like in Whatsapp
      • Now sending a message while offline does not crash the app anymore
      • Daemon should be way faster to reconnect when going back from offline to online or switching networks
      • Fix bug when clearing data app not deleting all files
      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: [Release] HomeSpike v1.0 — a real home screen for Ubuntu Touch (multi-page, dock, drag-to-reorder, three placement modes, true multitasking)

      @Zer0 Nice iniciative, to me there is some nice ideas in your effort, will try in a spare phone in the near future. Its always good to have options, design choices should evolve and enable users to use their device as they wish.

      I would suggest having your work as an unconfined click app, so you can reach more users. There are other launchers and apps that modify Lomiri so should be doable.

      Thanks for your work

      posted in Design
      brenno.almeidaB
      brenno.almeida
    • RE: click on notification bubble

      @gpatel-fr I'm talking about the title, that an app has no API to set an action when clicking on the notification bubble.

      I think your example shows that, as it is not using the official lomiri api for this. So it doesn't work with an http post to the push server for example.

      posted in OS
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      There's a new release for this app. This release contains a big standardization / internal refactor. I highly recommend that you:

      • Logout from the app in your main Whatsapp device
      • In Greenline settings, reset the app
      • Install the update
      • Then login again

      If you don't disconnect, there's a high chance that the app will crash in some places. As we approach to a beta release, I added more safeguards to catch bugs and make the app more robust, fixing some bugs on the way. Hopefully this will be the last time this will be needed, as from now on I'll adopt a data migration system for changes.

      https://github.com/brennoflavio/greenline/releases

      Changes:

      • Allow sending documents
      • Add option to catch and report crashes
      • Add option to pause daemon when closing the app
      • Render Whatsapp text messages with buttons
      • Fix images rotating in chat page
      • Restore old behavior for unread count bubble in app drawer
      • Handle Group Information and other whatsmeow events
      • Remove daemon configuration database, centralize all configuration in python
      • Harden media download, prevent crashes when downloading unavailable media
      • Reorganize code into modules, better separation of concerns
      • Add tests for daemon <> python communication and python <> qml communication
      • Document and test all python interfaces, with real, sanitized Whatsmeow data
      • App now validates at build and at runtime all data structures, logs errors, and ensures consistency between app parts
      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: click on notification bubble

      Its definitely a Lomiri UI inconsistency, not an app issue. From apps perspective, there's no way to tweak this behavior. And there's no difference between an app using dbus or the http apis to send notifications, they end up flowing over the same path in your device.

      posted in OS
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      @ChromiumOS-Guy please keep the discussion on feedback and suggestions, avoiding giving orders or similar statements.

      The way you put it is a bit rude for my taste. It does not sound intentional, but with a bit of out of context to me. Its not that the app is being developed without a data model in mind, more like new requirements (replies, edits, new message types, etc.) requires rethink on how things are done, which is pretty common on any medium o higher complexity project.

      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      @Vlad-Nirky Its not an impression, the app is inefficient in its current state, optimizations are needed. The perception will vary depending on the amount of whatsapp data you receive. Its a combination of having the backend written in python (which means that on receiving new events, a python process is created to process it on the fly) and the qml frontend re-rendering on each event that emits a qml update. So for example receiving a new chat means re-rendering the whole chat list.

      Not too worried about it yet, but something for me to look in the future. I'm not 100% decided on how this app will manage its data so not gonna waste time optimizing something that might change. Probably will get back to this once the app support all possible Whatsapp events / message types, which will give clarity on how to model everything.

      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      Thanks you all, keep feedback coming, it helps a lot. No problem to report usability / polish issues aswell.

      @nbdynl yeah broke that a while ago, still not 100% correct as muted chats still counts but at least consistent now.

      posted in App Development
      brenno.almeidaB
      brenno.almeida
    • RE: [Alpha] Greenline - A qml Whatsapp client for Ubuntu Touch

      There's a new release for this app. I recommend disconnecting an connecting Whatsapp after installing this update using the settings since there was some rework on how messages are represented, which can lead to old glitched messages. Since its an alpha, I'm not guaranteeing consistency on each update:

      https://github.com/brennoflavio/greenline/releases

      • Better offline mode: now if the app has no connection, messages are queued to be sent once connection is back
      • Optimizations for rooms that had a lot of replied messages, should load faster now
      • Now the pending / sent / delivered / read icons matches closely with whatsapp
      • Better handling when whatsapp servers are unavailable, avoiding app crashes
      • Better media previews: now you can zoom in / out images, its easier to pause / reproduce videos, and better look and feel
      • Fixed a bug where if the person used whatsapp on two devices (like web and app), its chat appeared duplicated and in groups the profile picture did not appear when the message was sent from the second device
      • Prevent app crash when trying to download media while offline
      posted in App Development
      brenno.almeidaB
      brenno.almeida