Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide a way to get a link to a thread or to a post #181

Closed
rouazana opened this issue Aug 26, 2020 · 3 comments
Closed

Provide a way to get a link to a thread or to a post #181

rouazana opened this issue Aug 26, 2020 · 3 comments
Assignees
Labels
enhancement New feature or request

Comments

@rouazana
Copy link

rouazana commented Aug 26, 2020

Sometimes I want to share a previous post on an other channel. It's then very handful to be able to provide a link to this post.

Sometimes I want to bookmark a post in my browser. Here also it's very handful to be able to directly bookmark a post, or even just open it in a new browser tab or a new browser window.

User stories

As a user, I want to share a post. When I click to the date of a message, a new window open with this post in the middle of the screen.

@BenoitTallandier BenoitTallandier added enhancement New feature or request to qualify labels Sep 2, 2020
@RomaricMourgues RomaricMourgues self-assigned this Sep 18, 2020
RomaricMourgues added a commit that referenced this issue Sep 29, 2020
### Summary
This commit contain a 2 weeks sprint on Twake messages feed and fix several frontend bugs.

1. A lot of work was put into improving our infinite scroll component. We needed to allow the following:
   - Ability to render only visible messages for performances
   - To load more on top, or load more on bottom without having unwanted scroll jump
   - Keep scroll smooth when rerendering out of view messages or when messages content change
   We used a simple implementation to ensure a given message node called 'witness' (defined as the node in the center of view or the highlighted node if defined) doesn't move in the view if the user didn't scroll. The difficulty is in the fact that it is very hard to differenciate a user triggered scroll from a content change triggered scroll.
   Everything is in /twake/frontend/src/app/services/Apps/Messages/MessagesListUtils.ts

2. We also put a lot of work in the message input, now availables actions (such as uploading a file) are more visible. We also improved our input to have it available from thread answers.

3. We improved the way threads are working. From now on, answers to old thread are shown on the bottom of the discussion with a link to the thread. It should be easier to not have lost messages.

4. Some new small features:
- Ability to get a link to a specific thread or message
- New emojis using currently the Apple emoji listing
- Drag-and-drop handler
- Responsive threads view for small screens

### Architecture decisions
We tried to use React Virtualized list, without success because we have rows of unknown height and the fact that we need infinite scroll to the top and to the bottom. We saw the new React Window by the same developer, it doesn't fit our needs. After some search we needed to implement our own infinite scroller.

### Issues
Closes #12
Closes #13
Closes #16
Closes #133
Closes #181
Closes #185
Closes #157
Closes #233
Closes #234
Closes #243
Closes #251
Closes #278
Closes #279
Closes #280
Closes #281

### History

* Start working on new messages

* Update

* Continue new list

* End message list service

* Start imlementing react virtualized

* Fix backend issues

* Advancement on lists

* Working first infinite scroll version

* Fix small issues

* Detect first message (init_channel)

* Add animated scroll

* Fix workspace privilege for company identity bug

* 🌟  Add channel description feature

Closes #165

* Improve scroll jumps

* 🌟  Add user card popup when somebody is mentionned in conversation (#254)

Closes #74

* Implement new "WitnessMessage" solution

* 🛠 Fix header alignment

* Add ability to jump to a message

* Implement websockets to update messages list

* 🛠  Fix delete workspace button (#257)

Closes #247

* 🛠 Fix error when leaving last workspace of a company (#258)

Closes #245

* Add responses

* Hide unwanted messages during loading

* Do not render all messages at once

* Ability to jump on init

* 🛠 Remove import company members table (#260)

Closes #250

* Fix scroll to message and render on scroll

* Bump symfony/http-kernel from 4.4.6 to 4.4.13 in /twake/backend/core

Bumps [symfony/http-kernel](https://github.com/symfony/http-kernel) from 4.4.6 to 4.4.13.
- [Release notes](https://github.com/symfony/http-kernel/releases)
- [Changelog](https://github.com/symfony/http-kernel/blob/master/CHANGELOG.md)
- [Commits](symfony/http-kernel@v4.4.6...v4.4.13)

Signed-off-by: dependabot[bot] <support@github.com>

* Change icons, add reactions

* Improve files in messages

* Re-implement messages options

* Add linkable messages

* Add descending messages (no ui)

* Add style to descending messages

* Fix error with width

* Fix Drive UI

* Add go to end button

* End of week

* Fix 2 sentry errors

* Prepare input and fix sentry errors

* Update emoji picker

* Fix infinite loop

* Started MessageEditors service

* Fix channels categories and message text editor

* Reimplementing apps in input

* Reimplement time separators

* Re-implement drag and drop

* Fix header alignement

* Fix app icons in messages

* Fix ephemeral messages

* Fix jitsi not in thread

* Fix time separator ui

* Re-implement drag-drop of files

* Dbug drag+drop

* Re-implement file upload from computer

* Fix drag file UI

* Prepare edition

* Fix last message increment on muted channel quoted msg

* Reimplement message edition

* Change LocalStorage

* Fix local storage

* Fix too many items in localstorage

* Fix unable to get too long message for edition

* Save before going back in time

* Re-fix scroll stabilizer

* Fix scroll for link to message in channel feature

* Fix last message scroll alignement

* Fix time for new message

* Fix locked scroll to bottom on send message

* Fix inputs auto-comlete and openning

* Fix reconnexion to collections

* Improve scroll a bit and fix collections

Co-authored-by: Stéphane Vieira <36481167+stephanevieira75@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
@hantt12
Copy link

hantt12 commented Oct 1, 2020

My observation:

  1. The message is not shown in the middle of the screen. It is shown at the top

  2. In my opinion, it is a very good idea to provide a link to the message. However, adding the link to the time of the message is not a good idea because it is not friendly to user (they may not notice that there is a link in the time). How about adding "Copy link" option the same way as Edit and Delete option?

20201001_1.png

@RomaricMourgues
Copy link
Contributor

  1. Yes it is, but should be entirely visible from the thread subject. If they is scroll issues, can you create an other issue ?

  2. There is a "Copy link" but only on thread subjects, not in responses. I want it that way because we cannot yet have a jump to an answer.

I just noticed there is an error when trying to open the side view for a message without answers, may be we need to re)create an issue for this.

@hantt12
Copy link

hantt12 commented Oct 2, 2020

thanks for your answer. I have created an issue for it at https://app.zenhub.com/workspaces/twake-5f06c5bf7796310019354875/issues/twakeapp/twake/339

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants