summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-12-03Change text and icon for screensharing options in Firefox.Ivan Sein
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2018-11-29Merge pull request #1321 from nextcloud/fullscreen-share-firefoxJoas Schilling
Add support for sharing fullscreen on Firefox.
2018-11-29Fix eslintJoas Schilling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-11-29Merge pull request #1320 from ↵Joas Schilling
nextcloud/fix-room-polling-not-stopped-when-leaving-the-current-room Fix room polling not stopped when leaving the current room
2018-11-29Add support for sharing fullscreen on Firefox.Joachim Bauch
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2018-11-29Fix room polling not stopped when leaving the current roomDaniel Calviño Sánchez
When setting a room in the internal signaling a poller is started that synchronizes the room data periodically; that poller should be stopped when the room is left. Note, however, that the poller should not be stopped when leaving the current room if it was initialized for a room collection instead. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-28Merge pull request #1316 from nextcloud/rename-commentstabview-to-chatviewJoas Schilling
Rename "commentsTabView" to "chatView"
2018-11-28Move "comments.scss" to "chatview.scss"Daniel Calviño Sánchez
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-28Merge pull request #1315 from nextcloud/test-again-15-for-nowJoas Schilling
Test against 15 for now
2018-11-28Add CSS class to items in the autocomplete list for mentionsDaniel Calviño Sánchez
The CSS rules specific to the autocomplete list for mentions in the chat view were applied to any other autocomplete list. In the main Talk UI this is not a problem, as that is the only autocomplete list, but it could be when using the Talk chat view in other components, like the Files app. The autocomplete list is created as a child of the body element itself, so to limit the CSS rules only to the chat view it is not possible to just prepend "#chatView" to the rules. Instead, now each item has a CSS class (hopefully :-) ) unique to the chat view. Unfortunately, it does not seem to be possible to ensure that the rules defined in "autocomplete.scss" will not collide/override rules defined in other apps, as customizing the CSS classes in ".atwho-view" so the rules are applied only when it belongs to the chat view does not seem to be possible (except, maybe, with some hacks). Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-28Remove leftover CSS rules from the original import from the Comments appDaniel Calviño Sánchez
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-28Rename "CommentsTabView" to "ChatView"Daniel Calviño Sánchez
"CommentsTabView" is a legacy name from the original import of the code from the Comments app; besides being a better fit, "ChatView" also ensures that the CSS rules will not conflict with those from the Comments app when the Talk UI is used in the Files app. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-28Merge pull request #1313 from ↵Joas Schilling
nextcloud/bugfix/noid/fix-alignment-of-avatars-in-mention-box-2 Fix avatar position in mention box.
2018-11-28Merge pull request #1309 from ↵Joas Schilling
nextcloud/fix-appearance-of-message-list-in-public-share-authentication-page Fix appearance of message list in public share authentication page
2018-11-28Test against 15 for nowJoas Schilling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-11-28Merge pull request #1314 from nextcloud/extract-view-for-call-buttonJoas Schilling
Extract view for call button
2018-11-28Move CallButton to precompiled Handlebars templatesDaniel Calviño Sánchez
In Nextcloud 15 the default Content Security Policy disallows unsafe eval expressions, so Handlebars templates can no longer be compiled at runtime. For the time being that default Content Security Policy was lifted for Talk so "Handlebars.compile" could still be used. However, this only applies to Talk itself; when using Talk components in other apps they must abide to the Content Security Policy of those apps. As CallButton is going to be used in the Files app it has been moved to precompiled Handlebars templates (which are still compatible with the regular Talk UI). Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-28Fix avatar position in mention box.Ivan Sein
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2018-11-28Extract view for call buttonDaniel Calviño Sánchez
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-28Merge pull request #1310 from ↵Joas Schilling
nextcloud/move-chatview-and-richobjectstringparser-to-precompiled-handlebars-templates Move ChatView and RichObjectStringParser to precompiled Handlebars templates
2018-11-28Initialise the objects correctlyJoas Schilling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-11-28Use the new NamespaceJoas Schilling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-11-28Remove the compile files from the packageJoas Schilling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-11-28Move RichObjectStringParser to precompiled Handlebars templatesDaniel Calviño Sánchez
In Nextcloud 15 the default Content Security Policy disallows unsafe eval expressions, so Handlebars templates can no longer be compiled at runtime. For the time being that default Content Security Policy was lifted for Talk so "Handlebars.compile" could still be used. However, this only applies to Talk itself; when using Talk components in other apps they must abide to the Content Security Policy of those apps. As the RichObjectStringParser is going to be used in the Files app it has been moved to precompiled Handlebars templates (which are still compatible with the regular Talk UI). Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-28Move RichObjectStringParser into the views folderDaniel Calviño Sánchez
Although the RichObjectStringParser is not a view as such its functionality is closedly tied to views, so the views folder is a better place to live in. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-28Move ChatView to precompiled Handlebars templatesDaniel Calviño Sánchez
In Nextcloud 15 the default Content Security Policy disallows unsafe eval expressions, so Handlebars templates can no longer be compiled at runtime. For the time being that default Content Security Policy was lifted for Talk so "Handlebars.compile" could still be used. However, this only applies to Talk itself; when using Talk components in other apps they must abide to the Content Security Policy of those apps. As ChatView is going to be used in the Files app it has been moved to precompiled Handlebars templates (which are still compatible with the regular Talk UI). Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-28[tx-robot] updated from transifexNextcloud bot
2018-11-27Fix appearance of message list in public share authentication pageDaniel Calviño Sánchez
"guest.scss" in server sets the "width" and "margin-top" properties of ".wrapper" elements to position the main content of the public share authentication page. However, as the selector used in the rule is too broad it is also applied to the internal wrapper of the virtual list, so the properties need to be reset in that case. Besides that, the padding of the message list is ignored when using the virtual list, so that padding needs to be applied through the "left" and "right" properties of the internal wrapper of the virtual list. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-27[tx-robot] updated from transifexNextcloud bot
2018-11-26[tx-robot] updated from transifexNextcloud bot
2018-11-23Merge pull request #1261 from ↵Ivan Sein
nextcloud/show-again-participants-without-streams-in-a-call Show again participants without streams in a call
2018-11-23[tx-robot] updated from transifexNextcloud bot
2018-11-21Merge pull request #1307 from nextcloud/bugfix/noid/missing-rightbar-menu-handleJoas Schilling
Fix missing rightside bar menu handle
2018-11-21Also use the method for the no-password iconJoas Schilling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-11-21Fix the name of the variable for the black imageJoas Schilling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-11-21Merge pull request #1306 from ↵Joas Schilling
nextcloud/add-drone-step-to-check-handlebars-templates Add Drone step to check Handlebars templates
2018-11-21Add Drone step to check the Handlebars templatesDaniel Calviño Sánchez
Now if the source templates were modified but their compiled versions were not updated the Drone job will fail. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-21Extract compilation of Handlebars templates to its own scriptDaniel Calviño Sánchez
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-21Add Handlebars to the development dependenciesDaniel Calviño Sánchez
Dependencies declared in "package.json" are installed locally, so the call to the handlebars script must be updated accordingly. To ensure that Handlebars is installed before using it the Make step to compile the templates now depends on the step to setup the development environment. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-20Merge pull request #1271 from ↵Joas Schilling
nextcloud/improve-performance-of-the-list-of-chat-messages Improve performance of the list of chat messages
2018-11-20Merge pull request #1304 from ↵Joas Schilling
nextcloud/fix-getting-current-tab-id-when-there-are-no-tabs Fix getting current tab ID when there are no tabs
2018-11-20Fix getting current tab ID when there are no tabsDaniel Calviño Sánchez
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-20Adjust acceptance tests to the virtual list for the message listDaniel Calviño Sánchez
As the virtual list removes its child elements that are no longer visible the index of the messages in the acceptance test is no longer an absolute index for the whole list, but an index only for the currently visible messages. However, as all the messages sent in each test fit in the available space no message is hidden and the previous indexes are still valid. The only change needed is in the locator for chat messages; as they are declared as direct children of their parent now they must be set as descendants of the wrapper instead of as descendants of the message list itself. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-20Set "tabindex" to the container when it is scrollableDaniel Calviño Sánchez
Firefox automatically includes scrollable elements in the sequential keyboard navigation, but it needs to be explicitly done for Chromium. Moreover, setting "tabindex" is also needed in Chromium to be able to scroll by keeping a key pressed after focusing on the scrollable element by clicking on one of its children; in Firefox the event keeps being processed and the scrolling goes on until the key is released, but in Chromium, when "tabindex" is not set, the scrolling stops as soon as the child element is removed (which in the case of the virtual list happens when the element goes out of view). Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-20Use VirtualList for the message list in the chat viewDaniel Calviño Sánchez
The virtual list requires that its internal wrappers use an absolute position. Due to that absolute position the padding of the container does not affect the wrappers, so the desired padding must be applied through its left and right position. As the virtual list keeps only a subset of its elements in the DOM the ":first-child" pseudo-selector no longer refers to the actual first child element, but to the first one currently in the DOM; it would be necessary to apply the CSS rules using a specific CSS class set only in the desired element. However, as the first comment always includes the date separator, which already has a top margin, the top padding is not really needed in the first comment, so it was simply removed. Moving the message list between the main view and the sidebar changes its size, and thus it is necessary to reload the virtual list; when the virtual list is reloaded it is ensured that the last visible element will still be visible after the reload, so the chat view no longer needs to explicitly handle that. In a similar way, the message list also needs to be reloaded when the window is resized, or when the chat view is in the main view and the sidebar is opened or closed, as those actions change the size of the main view. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-20Expose first and last elements through gettersDaniel Calviño Sánchez
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-20Add helper method to scroll to a given elementDaniel Calviño Sánchez
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-20Add support for reloading the list when the container size changedDaniel Calviño Sánchez
When the size of the container changes the position and size of all the elements in the list could change. The virtual list relies on the cached values for those properties, so they must be cached again when they change. The values need to be cached from elements in the document, but it is not possible to add all the elements at once, even if temporary, to cache their values. Thus the reload is an incremental process that starts with the visible elements and progressively updates the rest of elements; during that process the list can be scrolled only to those elements already loaded, as those are the only ones with valid cached values. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-20Extract the load of previous elements to its own methodDaniel Calviño Sánchez
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-11-20Extract the load of next elements to its own methodDaniel Calviño Sánchez
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>