• last updated 7 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Chat Redesign: avoid breakage produced by veeeeeeery long words by breaking them using the 'word-break' css property

Chat Redesign: revert setting automatically the focus on the input field after 'Full screen' switch, as it produces the not so nice effect on mobile devices of triggering the on-screen keyboard

Chat Redesign: add a fixed height to the 'xowiki-chat-messages-and-form' element on small widths, to make room for the user list and the input field.

Converge styling of chat in a single css file for both xowiki and chat packages

This might fork in the future, but there is no need atm

  1. … 1 more file in changeset.
Switch to a non-nsv approach to determine the right chat class

Unclutter the code by putting mode detection in a separate proc

Chat Redesign: restore focus on input field after 'Full screen' switch

Add leftover file

Chat reform:

- reduce code duplication by determining the proper chat class dynamically and storing it in an nsv

- move static content in the resources path. Serving them is now independent from the mounted xowiki path

- get rid of the ajax url path

    • -20
    • +0
    ./www/ajax/scripted-streaming-chat.js
    • -0
    • +205
    ./www/resources/chat-common.js
    • -0
    • +40
    ./www/resources/chat.js
    • -0
    • +20
    ./www/resources/scripted-streaming-chat.js
    • -0
    • +54
    ./www/resources/streaming-chat.js
  1. … 2 more files in changeset.
Chat Redesign: simplify style of 'Full Screen' icon

  1. … 1 more file in changeset.
Chat Redesign: simplify send icon svg and styles associated

  1. … 1 more file in changeset.
Chat Redesign: add send button + svg icon

  1. … 1 more file in changeset.
Allow to make other (non .adp) kinds of resources "theme aware" and use this to provide a theme mapping to the /resources/ URL pattern, then use this new capability to allow the override of css in the chat implementations

  1. … 2 more files in changeset.
Chat Redesign: make 'Full screen' images color filling easy to change in css

  1. … 1 more file in changeset.
Give xowiki chat also some kind of nice skin and centralize css retrieval

TODO: something smarter can be done in order to retrieve the proper css, based e.g. on theme, chat skin (to be implemented) etc. To be discussed is some way to resolve resources based on the theme.

    • -0
    • +202
    ./www/resources/chat.css
  1. … 2 more files in changeset.
New chat_room includelet, behaving as the existing chat one, but plugged with extra chat package's feature (transcript management...)

To avoid package_id to be overridden, we force it always to the one of the current chat

  1. … 2 more files in changeset.
Move chat machinery from xotcl-core to xowiki

Rationale: this feature makes little sense without the front-end xowiki provides and makes chat implementation harder to understand, as components are scattered in different packages.

  1. … 1 more file in changeset.
Add package_id to the parameters for the already-available chat includelet

Chat Redesign:

+ Add avatars to chat user list.

+ acs-subsite: new default avatar images (x50 and x100)

+ acs-subsite: provide with a default avatar (x50) on portrait-bits.tcl

+ acs-subsite: restrict portrait-bits.tcl to authenticated users

+ xowiki and chat: add blocks and styles for the user picture

  1. … 4 more files in changeset.
Chat Redesign: 'Full screen' trigger + icon, making the chat use the whole browser window.

  1. … 1 more file in changeset.
Chat Redesign: add LinkRegex global parameter to the chat package, containing the regexp that will look for URLs inside chat messages, so they can be properly formatted as html links.

  1. … 1 more file in changeset.
Chat Redesign:

+ New style classes, opening the door to further graphic redesign.

+ Revamping of the user list.

+ Revamping of the input block.

+ Small changes in the messages block, including floating timestamps to the right.

+ Responsive design: use flexbox for chat layout.

+ Responsive design: make user list horizontally scrollable for 'small' widths.

+ Expose user_id in a hidden div, in the chat adp, so it can be used by the javascript part to check and assign different styles to the chat messages if they belong to the user watching the page.

+ xotcl-core: Pass color and user_id in the message, avoiding the creation of the user link at this level.

+ xotcl-core: Remove user_link proc.

+ xowiki: Avoid autocompletion in input field.

+ xowiki: Adding and relocation of div elements.

+ xowiki: Simple function to transform url-like elements of the messages into links.

+ xowiki: Create user links in chat-common.js.

+ xowiki: Check user_id and assign classes to elements depending on the user watching the page.

  1. … 3 more files in changeset.
improve comments

remove comma before that

  1. … 5 more files in changeset.
Chat Redesign:

+ Improve responsiveness placing the user list on top of the chat in smaller screens

+ Use the input placeholder property for the message label

+ Hide the submit button

+ Slightly change the border colors

+ Leave the textbox size for the css

+ Increase the height to a more reasonable value

  1. … 1 more file in changeset.
Use the new utility to refresh the chat whenever one lands here from the browser history

Specialize the way chat::Chat class retrieves the package_id: use the context_id of the chat room (if this is a valid chat room)

This will allow to embed a chat::Chat instance in a xowiki page pinting to an existing chat room and let it use the chat package specific features to e.g. keep transcripts of a conversation

  1. … 3 more files in changeset.
reactivate ad_html_to_text in search renderer

add "style" to the elements to be delete for search

strip potentially confusing content from result of search renderer