Commit Graph

1499 Commits

Author SHA1 Message Date
JC Brand
c01e9f8265 Move methods from chatbox view to message view
Specifically the methods related to requesting an upload slot and uploading a file.
Also show a progress indicator while a file is being uploaded.

Updates #161
2018-04-17 15:21:38 +02:00
JC Brand
db790183d8 Remove unused code 2018-04-17 15:21:38 +02:00
JC Brand
dad8eb2f48 Remove separate file converse-http-file-upload
It contained only `overrides` and some HTTP upload code was in other
modules.

Current thinking concerning overrides:

Usage of `overrides`, while useful in certain cases, should in general
be discouraged, since it's in essence "monkey patching" which makes it
more difficult to know whats executing at runtime and more difficult to
refactor.

Splitting modules up between XEPs is not always that useful. Some XEPs,
like HTTP Upload (and MAM comes to mind) have their functionality spread
out over single and group chats (and pubsub) and might for practical
purposes be considered "core" enough to not try and keep them in
separate modules (which inevitably requires overrides or a fundamentally
rethinking the architecture).

Where splitting code between modules makes a lot of sense is in keeping
Backbone Models and Views separate (so that alternative view libraries
like Vue could be used) and probably in keeping Single chats, MUC,
PubSub and MIX separate.

updates #161
2018-04-17 15:21:30 +02:00
JC Brand
de6ecbf07a Render messages via a new MessageView view
updates #161
2018-04-17 15:21:26 +02:00
JC Brand
264e6830af Remove references to unused parameters
updates #161
2018-04-17 15:21:21 +02:00
JC Brand
6cab7fcc41 Fix failing tests due to refactoring
updates #161
2018-04-17 15:21:16 +02:00
JC Brand
584f293d05 Updated and refactored the work from @worlword
* Use Promises instead of callbacks
* Update to latest (Last Call) version of XEP-0363
* Move non-view specific methods to models instead
* Add more tests

updates #161
2018-04-17 15:21:09 +02:00
JC Brand
9c2a5bd3b8 Merge branch 'worlword-httpFileUpload' into http-file-upload 2018-04-14 07:50:29 +02:00
JC Brand
042c1947ed Add file-upload button 2018-04-14 07:40:07 +02:00
JC Brand
a9d2881888 Fix disco hierarchy
Previously we kept all entities and their items (which are also
instances of _converse.DiscoEntity) in a flat array.

Instead, we should have a tree-like structure where items are stored
on the relevant entity (and recursively on other items).
2018-04-14 07:36:24 +02:00
JC Brand
77a51cc2a6 Initial work on XEP-0363: HTTP File Upload 2018-04-14 07:36:24 +02:00
worlword
3b1d27636d problem fixed, that file-upload would not start. Also did some code cleanup 2018-04-13 11:45:43 +02:00
worlword
ca40cf6541 removed EmptyLines in ChatView.js and Change Lineendings to LF in toolbar_fileUpload.html 2018-04-12 09:37:58 +02:00
worlword
bf3e6f2363 some code-changes to align with the coding standard 2018-04-12 09:24:41 +02:00
worlword
7660dbfb31 merge httpFileUpload-Branch with master 2018-04-12 07:43:39 +02:00
JC Brand
3d29567ab6 Revert "Don't show typing from different device CSN messages"
This reverts commit 7303e96cdb.

Instead of dropping the feature entirely, we can check if the CSN is a
carbon message.
2018-04-11 18:46:50 +02:00
worlword
c9a9d01112 used code from 'http-file-upload' branch. Buttons are now added to the toolbars through converse-http-file-upload.js. 2018-04-11 17:09:32 +02:00
worlword
fa80749658 refactoring based on the review from jcbrand 06.Apr.2018 2018-04-11 15:29:41 +02:00
JC Brand
7303e96cdb Don't show typing from different device CSN messages
To avoid showing them erroneously would mean keeping track of used
message ids which seems like more work than justified by the feature.

Fixes #1026
2018-04-10 20:56:54 +02:00
JC Brand
3d0435a755 Remove hack specific to the soon to be retired Slack XMPP gateway 2018-04-10 20:56:40 +02:00
JC Brand
9528d81c00 Move various MUC methods onto the Backbone.Model
To more cleanly separate views and models and to make MUC in headless
mode more viable.

Refs #1032
2018-04-10 18:59:02 +02:00
JC Brand
9a526d4194 Refactoring of the XEP-0085 Chat State Notifications code
* Distinguish between CSN messages and other types of messages
* Properly clear previous notifications
* Better handling of notifications from multiple users (in MUC)
* Rename methods to make clarify intent
2018-04-06 17:02:28 +02:00
worlword
7839f20846 fixed sendMessage for so that tests will work again 2018-04-05 08:45:58 +02:00
worlword
83c0d42ecf changed line-endings in converse-httpFileUpload.js 2018-04-04 16:03:44 +02:00
worlword
530e7f9d3f fixed file-upload-button in MUC and added changes.md entry 2018-04-03 12:29:12 +02:00
worlword
b23712aec3 added httpFileUpload to converse.js 2018-04-03 11:20:57 +02:00
JC Brand
e31373a6ae Fixes #1055 Wrong paths in build.js 2018-03-31 19:51:55 +02:00
ChaosKid42
fce9ee0db9 replace geoURIs (e.g. from Convesations) by links to openstreetmap (#1054)
* replace geoURIs by link to openstreetmap

* Added testcase
2018-03-31 18:29:01 +02:00
JC Brand
44a2f7807c Hook in ar and eu locales and document. 2018-03-31 15:45:23 +02:00
JC Brand
ebfd0a8f77 Move various funcitons related to MUC member lists to utils
and out of the MUC views plugin.

Refs #1032
2018-03-30 14:23:39 +02:00
JC Brand
06141b3212 Move methods from MUC view to model
* checkForReservedNick
* parseRoomFeatures
* sendConfiguration

Refs #1032
2018-03-30 14:23:39 +02:00
JC Brand
2705ec8193 Let the chatarea expand when the occupants sidebar is collapsed. 2018-03-30 14:23:39 +02:00
JC Brand
6a12a96e85 Fixes #1043 Parsing of bookmarks fail with missing nick element. 2018-03-30 14:23:39 +02:00
JC Brand
ce849aaffc Fix failing tests 2018-03-30 14:23:39 +02:00
JC Brand
d90416eae8 Add workaround for apparent Prosody bug
Details here: https://prosody.im/issues/1121
2018-03-30 14:22:53 +02:00
JC Brand
faaaa8139a Properly remove ContactView from the overview 2018-03-30 14:22:53 +02:00
JC Brand
93a20ee4ee Make sure removeFromRoster is called only once 2018-03-30 14:22:53 +02:00
JC Brand
b584f2efb3 Add a new config setting nickname
- for subscription requests
- when entering chat rooms
2018-03-30 14:22:53 +02:00
JC Brand
3354083934 Bugfix. Remove view for contact moved to different group
Otherwise the contact stays visible under "Pending Contacts" although
the subscription request has been accepted.
2018-03-30 14:22:53 +02:00
JC Brand
e8718ec3d3 Bugfix. Make sure group gets inserted
when it's created due to a new contact being added.

Was previously in the wrong place.
2018-03-30 14:22:52 +02:00
JC Brand
1029aae215 Write out map when calling create 2018-03-30 14:22:52 +02:00
JC Brand
c8f72b350b Disable vcard plugin is use_vcard is false 2018-03-30 14:22:52 +02:00
JC Brand
535fc7bc8d Use strings for map keys 2018-03-30 14:22:52 +02:00
JC Brand
9799ecce10 Focus inputs inside modals 2018-03-30 14:22:52 +02:00
JC Brand
0173d28f48 Clear "add contact" form after submission. 2018-03-30 14:22:52 +02:00
JC Brand
b9cdf6b71f Make sure relevant roster group gets inserted when a new contact gets added
by calling `sortAndPositionAllItems`.

Particularly relevant to the "Pending Contacts" group.
2018-03-30 14:22:52 +02:00
JC Brand
e1995c6d4e Focus input when showing the add contact modal 2018-03-30 14:22:51 +02:00
JC Brand
4f2b040f22 Allow setting a nickname when adding a roster contact 2018-03-30 14:22:51 +02:00
JC Brand
5e8843e8bd xhr_user_search_url fixes after some real world testing 2018-03-30 14:22:51 +02:00
JC Brand
95406a149d Re-add xhr_user_search_url and autocomplete when adding contacts 2018-03-30 14:22:51 +02:00
JC Brand
7a254a56e0 Pad the toggle and rename to "Chat Contacts"
to make it clearer that this toggle relates to chatting.
2018-03-30 14:16:07 +02:00
JC Brand
ea4337da51 Set column width for chatbox buttons in the sass file 2018-03-30 14:16:07 +02:00
JC Brand
2580cafa76 Bugfix. Fix selector 2018-03-30 14:16:07 +02:00
JC Brand
deff6e071c Remove the clear button. It was pretty useless
because it didn't actually clear anything permanently and upon page
reload the messages were there again.
2018-03-30 14:16:06 +02:00
JC Brand
516352c413 Disable emoji images by default 2018-03-30 14:16:06 +02:00
JC Brand
f260fd87e5 Don't close all chatboxes when reconnecting 2018-03-30 14:16:06 +02:00
JC Brand
6f67e3c721 Don't wrap the build in an anonymous define.
This cause the error "Mismatched anonymous define" when loading the
bundle in Plone.

The original reason for adding `start.frag` was to wrap the bundle in a
closure to not pollute the global namespace (e.g. overriding global
`define` and `require` with Almond`s versions) and secondarily to allow
people to load the bundle via require.js.

The second usecase should now probably be done via a shim in the
require.js config.
2018-03-30 14:16:06 +02:00
JC Brand
8fda25c997 Honor the allow_logout setting 2018-03-30 14:16:05 +02:00
JC Brand
69172af4d0 Make sure to use transpiled modules 2018-03-30 14:16:05 +02:00
JC Brand
81fb2f443d Bugfix. Make sure roster is re-inserted after reconnection 2018-03-30 14:16:04 +02:00
JC Brand
f90ca8f7f4 Remove unused class 2018-03-30 14:16:04 +02:00
JC Brand
11f02f78fe Fix more failing tests 2018-03-17 18:54:19 +00:00
JC Brand
cb0b99ac37 Bugfix. Show message author in spoiler messages 2018-03-17 14:39:30 +00:00
JC Brand
f0ae8c44ff Show caret for room, bookmark and group toggles 2018-03-17 11:42:17 +00:00
JC Brand
850c6aa2bd Fix more failing tests 2018-03-16 23:37:52 +00:00
JC Brand
7b8a244163 Fix failing bookmarks tests 2018-03-16 11:49:39 +00:00
JC Brand
39e427bca9 There's no longer a dropdown to set the status 2018-03-16 11:49:31 +00:00
JC Brand
2f46bb8ce7 Fix failing tests 2018-03-14 23:10:31 +00:00
JC Brand
1565decfc0 Add identifiable class name 2018-03-14 18:25:33 +00:00
JC Brand
c219d37083 Bugfix. Handle attrs not being defined 2018-03-14 18:25:19 +00:00
JC Brand
2ff18c2cfb Fix emoji test (now that bootstrap dropdown is used) 2018-03-14 17:32:01 +00:00
JC Brand
2045741fbe Add api.chatviews.get method 2018-03-14 13:27:36 +00:00
JC Brand
044907e4fa Looks like focus parameter was never used. 2018-03-14 13:27:36 +00:00
JC Brand
401513e695 Set fullname from roster contact 2018-03-14 13:02:08 +00:00
JC Brand
05e7cc8529 Let api.contacts.get return the RosterContact model 2018-03-14 13:01:29 +00:00
JC Brand
daff088c97 Don't set fullname in getChatBox, it's too generic
Instead do it in `_api.chats.create` which is specifically for private chats.
2018-03-14 12:06:38 +00:00
JC Brand
c621732f2f Bugfix. Get JID from presence 2018-03-14 11:54:22 +00:00
JC Brand
03d7f07a4c Bugfix. Chat wasn't being opened when receiving a message. 2018-03-13 19:11:49 +01:00
JC Brand
ca141401a0 Fix failing tests 2018-03-13 13:42:00 +01:00
JC Brand
c958a1822c Remove unused code (due to bootstrap dropdowns) 2018-03-11 12:12:15 +01:00
JC Brand
9c80ab5d43 Use bootstrap button markup 2018-03-11 12:07:36 +01:00
JC Brand
d7de739001 Add close button for controlbox in overlay view mode 2018-03-09 23:53:05 +01:00
JC Brand
a1145140c3 Various small tweaks
- Style room invite
- Remove old border-radius
- Show close icon for minimized chats
2018-03-09 23:27:12 +01:00
JC Brand
591e794f69 chat head: Show minimize icon and hide for now the vcard icon 2018-03-09 23:20:14 +01:00
JC Brand
c10a2596e3 Eagerly render emoji picker and avoid overflow in overlay view 2018-03-09 23:16:53 +01:00
JC Brand
986921c630 Small fixes for minimized chats toggle 2018-03-09 23:14:08 +01:00
JC Brand
392a7e8ab3 Don't use the bootstrap responsive grid for chats in overlay mode 2018-03-09 23:06:41 +01:00
JC Brand
849d6b2612 Update the minimized chats widget 2018-03-09 18:14:18 +01:00
JC Brand
9c0b7c71cd Render OTR menu as a bootstrap dropdown 2018-03-09 17:30:42 +01:00
JC Brand
9825d6e777 Use bootstrap dropdown to render the emoji picker 2018-03-09 14:51:24 +01:00
JC Brand
8bddd0d7f4 Some work on showing emoji in a dropdown 2018-03-09 11:46:50 +01:00
JC Brand
40f4555419 Only show controlbox head when logging in, in overlayed view mode 2018-03-09 11:46:23 +01:00
JC Brand
251c023b15 Remove the ability to resize horizontally 2018-03-09 11:02:15 +01:00
JC Brand
914a55707d Replace col- classes with Sass mixins 2018-03-09 10:12:05 +01:00
JC Brand
db44a4f44d Update the login form for the overlayed view mode 2018-03-07 21:40:55 +01:00
JC Brand
d72463c939 Make more semantic by putting login/register column info in css 2018-03-07 18:06:02 +01:00
JC Brand
b3f2fafeea Various smaller fixes and improvements 2018-03-07 14:36:19 +01:00
JC Brand
21e1b2694f Bugfix from master. 2018-03-07 11:06:11 +01:00
JC Brand
2db4550b13 Update chat events markup. 2018-03-07 11:02:12 +01:00
JC Brand
0d8d99b850 Bugfix. vcard doesn't necessarily have jid 2018-03-07 10:31:33 +01:00