Commit Graph

410 Commits

Author SHA1 Message Date
Tulir Asokan
ae3e7e2ad9 Fix bug in number of spaces in rainbows 2020-03-20 14:41:10 +02:00
Tulir Asokan
87b394abec Support formatting in rainbows
Fixes #119
2020-03-20 14:32:30 +02:00
Tulir Asokan
5a2c74514d Fix selecting other users' messages 2020-03-06 10:53:23 +02:00
Tulir Asokan
1eab5526e3 Update redact command help 2020-03-03 22:22:31 +02:00
Tulir Asokan
e25674ca5f Remove debug print 2020-03-03 21:59:34 +02:00
Tulir Asokan
fbe387f912 Don't send typing stop event if not necessary 2020-03-03 21:15:25 +02:00
Tulir Asokan
27ecb48e23 More small changes to room list 2020-03-03 20:58:33 +02:00
Tulir Asokan
43212996e9 Add another nil check in room list 2020-03-03 14:01:27 +02:00
Tulir Asokan
c829e436e4 Implement sending redactions 2020-03-01 22:35:25 +02:00
Tulir Asokan
9aa33d9b48 Fix room list ordering 2020-03-01 22:00:42 +02:00
Tulir Asokan
3c21281ada Implement selecting message to reply/react to with keyboard 2020-03-01 17:11:56 +02:00
Tulir Asokan
da4a2c670d
Merge pull request #111 from Evidlo/master
add notify_sound config option
2020-03-01 16:17:28 +02:00
evan
8deeec6f8d add notify_sound config option 2020-03-01 05:05:37 -06:00
Tulir Asokan
6b29d90fb4 Fix minor issues 2020-03-01 01:05:00 +02:00
Tulir Asokan
9d132d328b Add support for replying and reacting to messages 2020-03-01 00:33:37 +02:00
Tulir Asokan
699d0ea4e0 Update readme and /help 2020-02-25 20:46:24 +02:00
Tulir Asokan
a79de7ba76 Fix unexpected results when clicking some message senders 2020-02-22 03:04:44 +02:00
Tulir Asokan
58fff45d69 Add separate messages for invite reject/accept 2020-02-22 02:59:28 +02:00
Tulir Asokan
452b3d9cf9 Disable selecting service messages 2020-02-22 02:46:16 +02:00
Tulir Asokan
806f0f1bf0 Make invites mostly work 2020-02-22 01:30:43 +02:00
Tulir Asokan
455d9fc4c5 Improve tags and add initial invite handling 2020-02-22 01:17:52 +02:00
Tulir Asokan
ecdb1166e1 Fix invite parentheses in member list 2020-02-22 00:10:08 +02:00
Tulir Asokan
442fdac4d5 Enable lazy loading of members 2020-02-22 00:03:57 +02:00
Tulir Asokan
032a83d70b Add initial message selecting stuff 2020-02-21 00:29:29 +02:00
Tulir Asokan
98dd1bcdc9 Redraw UI when starting to load more messages 2020-02-20 23:08:37 +02:00
Tulir Asokan
852023c611 Fix compilation error 2020-02-20 22:42:53 +02:00
Tulir Asokan
fa8147f07a Add background color for reactions 2020-02-20 22:11:09 +02:00
Tulir Asokan
db1424a06d Add support for displaying reactions 2020-02-20 21:56:03 +02:00
Tulir Asokan
db7d2da50c Hide tombstoned rooms from room list 2020-02-20 01:10:26 +02:00
Tulir Asokan
8a0a3a6487 Improve login view and add .well-known resolution 2020-02-20 00:40:59 +02:00
Tulir Asokan
b6e20af056 Always set cursor to end when switching edit message 2020-02-19 23:48:47 +02:00
Tulir Asokan
55f58f2875 Fix some issues when logging out 2020-02-19 23:48:34 +02:00
Tulir Asokan
78f7a7aadc Hardcode name colors so individual colors can be removed 2020-02-19 23:42:26 +02:00
Tulir Asokan
56b9f22781 Add custom name for m.server_notice tag 2020-02-19 22:19:59 +02:00
Tulir Asokan
417bf25373 Show multiline errors in login view 2020-02-19 22:13:02 +02:00
Tulir Asokan
8e33beeee7 Don't ignore history init errors 2020-02-19 22:12:12 +02:00
Tulir Asokan
15e1d3f87c Fix rendering formatted m.emotes 2020-02-19 21:54:53 +02:00
Tulir Asokan
af99c76d46 Add support for editing /me 2020-02-19 21:32:13 +02:00
Tulir Asokan
0b0a40f735 Remove duplicate code for finding message to edit 2020-02-19 21:27:37 +02:00
Tulir Asokan
8b02183ab1 Ignore mouse motion events inside MessageView 2020-02-19 15:07:10 +02:00
Tulir Asokan
d02abd079f Add support for editing messages 2020-02-19 01:14:02 +02:00
Tulir Asokan
b4e27723d7 Fix mouse motion not being passed to input areas 2020-02-19 00:05:05 +02:00
Tulir Asokan
2610c2bf9f Update readme a bit and add SSO support 2020-02-18 21:31:28 +02:00
Tulir Asokan
18fa85f4c4 Update deps 2020-02-18 20:38:35 +02:00
Tulir Asokan
b76c301145 Add initial support for rendering replies 2019-06-17 13:46:02 +03:00
Tulir Asokan
fe439f076a Wrap events in custom struct to add gomuks-specific fields 2019-06-17 12:27:31 +03:00
Tulir Asokan
d1d129f6cf Add support for redactions. Fixes #19 2019-06-16 20:42:36 +03:00
Tulir Asokan
691708a76e Improve emoji autocompletion when the same emoji has many names 2019-06-16 19:54:54 +03:00
Tulir Asokan
7f917f0271 Add support for editing room tags 2019-06-16 19:32:57 +03:00
Tulir Asokan
967db30762 Fix message text color. Fixes #82 2019-06-16 17:14:17 +03:00
Tulir Asokan
eb2726e8df Somewhat hackily force focus to room view. Fixes #95 2019-06-16 16:52:19 +03:00
Tulir Asokan
859fd6092b Add/change commands 2019-06-16 16:32:56 +03:00
Tulir Asokan
242d3a00d9 Merge remote-tracking branch 'jrswab/imageResize' 2019-06-16 15:21:01 +03:00
Tulir Asokan
b019266062 Re-enable downloading images 2019-06-16 15:19:42 +03:00
Tulir Asokan
2b7d5d5401 Fix reply rendering infinite loop bug 2019-06-16 14:54:12 +03:00
Tulir Asokan
6bb932212c Add call trace command 2019-06-15 19:10:18 +03:00
Tulir Asokan
ef509eb308 Fix infinite recursion 2019-06-15 18:03:28 +03:00
Jaron Swab
3ebfb87da2 Scale image message based on the user's text area.
Using the "image" package from the standard library the images loaded by
gomuks now scale to one third the size of the text area. The image data
contains both hight and width while the scaling uses only width the
option to scale by hight is possible if passed into `CalculateBuffer()`.
`ansimage.NewScaledFromReader()` now takes the new variable based off
the size of the buffers' width.

This may resolve issue #92
2019-06-15 11:01:05 -04:00
Tulir Asokan
0f08c49df4 Fix bumping unloaded rooms in room list when receiving messages 2019-06-15 17:51:36 +03:00
Tulir Asokan
160b035c4d Unbreak more things 2019-06-15 17:04:08 +03:00
Tulir Asokan
a55ea42d7f Unbreak things 2019-06-15 01:11:54 +03:00
Tulir Asokan
ae3bb9c7a3 Add pm command 2019-06-14 21:01:24 +03:00
Tulir Asokan
7c39729ada Remove room alias argument and switch to room after creating 2019-06-14 20:56:41 +03:00
Jaron Swab
fcd44fe63f Users can now create a new room directly in Gomuks
Added the ability to create a room from within gomuks using the now
`/create` command. This comman takes the room name followed by the
alias. Room name may contain spaces but the alias may not as per the
Matrix alias conventions.

Also update `/help` to include the new command.
2019-06-13 21:14:32 -04:00
Tulir Asokan
4bcdcd1ccd Fix go 1.11 and go get compatibility 2019-05-12 17:34:47 +03:00
Tulir Asokan
08d99d776d Fix potential deadlock in room switching 2019-04-27 15:11:38 +03:00
Tulir Asokan
6f54066c43 Add partial deadlock detection in debug mode 2019-04-27 15:02:52 +03:00
Tulir Asokan
bc7e2d9a1c Add locks and other sync stuff 2019-04-27 15:02:21 +03:00
Tulir Asokan
60e3fe3927 Stop replacing text of event links 2019-04-15 00:34:48 +03:00
Tulir Asokan
98a8b52862 Minor UI changes 2019-04-13 17:04:52 +03:00
Tulir Asokan
e5264a242d Fix user list 2019-04-13 14:27:50 +03:00
Tulir Asokan
43a7bdab72 Add better stringification for UI message types for debugging 2019-04-13 00:51:58 +03:00
Tulir Asokan
abd21affc4 Fix code block rendering 2019-04-10 22:59:37 +03:00
Tulir Asokan
a9199dd9f2 Split container/text HTML entities and add support for <hr> 2019-04-10 22:49:33 +03:00
Tulir Asokan
db0e24ccc2 Use already parsed events for replies if possible 2019-04-10 21:06:19 +03:00
Tulir Asokan
7e0278c571 Fix m.emote rendering 2019-04-10 17:08:39 +03:00
Tulir Asokan
45a68c7fb5 Fix tests 2019-04-10 02:47:47 +03:00
Tulir Asokan
099eebfa67 Misc changes 2019-04-10 02:28:24 +03:00
Tulir Asokan
005c51c3b5 Re-add reply rendering 2019-04-10 02:19:38 +03:00
Tulir Asokan
20d3f8232d Remove commented code 2019-04-10 01:44:45 +03:00
Tulir Asokan
06c306bee9 Fix date change messages and input submit handling 2019-04-10 01:42:27 +03:00
Tulir Asokan
bbde121947 It compiles. Ship it! 2019-04-10 01:04:39 +03:00
Tulir Asokan
dbee49476d Start refactoring various things in message rendering and sending 2019-04-09 18:45:41 +03:00
Tulir Asokan
2b6c435e50 Refactor message parsing things 2019-04-09 18:42:49 +03:00
Tulir Asokan
927be9bdcd Move stripLinebreak to a struct field in the HTML parser 2019-04-09 01:03:17 +03:00
Tulir Asokan
887e2e232a Fix non-syntax-highlighted code block newline rendering 2019-04-09 00:59:56 +03:00
Tulir Asokan
5d7c1a4caa Improve handling of multiple linebreaks 2019-04-07 22:54:55 +03:00
Tulir Asokan
e6180c9b6f Move special list/blockquote prefixing to renderer 2019-04-07 22:25:53 +03:00
Tulir Asokan
cf93671ecd Add syntax highlighting. Fixes #28 2019-04-07 20:13:23 +03:00
Tulir Asokan
083ae8bd44 Remove commented code 2019-04-07 18:25:13 +03:00
Tulir Asokan
b0c4ef81e9 More changes to do #91 2019-04-07 18:21:38 +03:00
Tulir Asokan
21b81ccb27 Initial changes to do #91 2019-04-07 03:22:51 +03:00
Tulir Asokan
e9cf38a866 Focus username field in login view automatically 2019-04-06 18:03:37 +03:00
Tulir Asokan
7ad2103f8f Move history storage to matrix package. Fixes #90 2019-04-05 23:44:17 +03:00
Tulir Asokan
535fbbb4f7 Change even more things 2019-03-30 18:51:32 +02:00
Tulir Asokan
1b1cabb360 Even more changes 2019-03-28 23:28:27 +02:00
Tulir Asokan
6a3017888f Merge remote-tracking branch 'nepugia/nep' into mauview 2019-03-27 01:21:25 +02:00
Tulir Asokan
cc63a197c6 Change more things 2019-03-26 22:09:10 +02:00
Tulir Asokan
c3c7cc9b35 Change things 2019-03-26 19:57:44 +02:00
Tulir Asokan
8aa134b8b2 Start moving to mauview 2019-03-26 00:37:35 +02:00
Pascal Abresch
cefa840c28 adds kick, ban, unban and invite command 2019-03-19 16:06:40 +01:00
Pascal Abresch
c5bf3f894c fixed send and setstate to allow spaces 2019-03-19 16:06:18 +01:00
Pascal Abresch
e9b76ccfec adds /msetstate 2019-03-19 15:58:57 +01:00
Pascal Abresch
576de5264e adds /msend 2019-03-19 15:57:50 +01:00
Tulir Asokan
01523ae8ce Fix go vet warning 2019-02-12 14:58:12 +02:00
Tulir Asokan
bf2a5e9b34 Update license and sort imports 2019-01-23 00:26:51 +02:00
Tulir Asokan
d624023ca3 Fix potential negative index when getting color from name 2019-01-12 00:44:32 +02:00
Tulir Asokan
331597b9f8 Switch to Go modules and make other changes 2019-01-11 23:28:47 +02:00
Tulir Asokan
a0815a6f3d Fix named colors and remove HTML from plaintext body when sending 2018-11-14 00:28:53 +02:00
Tulir Asokan
7651e84be9 Merge branch 'master' into update 2018-11-14 00:01:20 +02:00
Tulir Asokan
ba387764ca Fix things 2018-11-14 00:00:35 +02:00
Ville Ranki
7417df0f3c Alt-a to jump to next channel with unread messages. 2018-10-18 17:02:38 +03:00
Tulir Asokan
cfb2cc057c Update to latest gomatrix. Things are broken 2018-09-05 10:55:48 +03:00
Vishnunarayan K I
68db26bcac Emojify message (#65) 2018-07-02 10:00:42 +03:00
Digital
cf3f3e51d1 Add support for more key events (#64)
In some cases tcell sends Key{Ctrl,Alt}{Up,Down} events instead of
Key{Up,Down} event that have the corresponding modifier mask set.
(these key combinations are used for switching rooms)
2018-06-30 23:28:53 +03:00
Digital
bf84fc09b2 Add option to disable typing notifications (#63) 2018-06-30 23:26:40 +03:00
Tulir Asokan
b03a3b6cec Make /rainbow yellow readable in light-themed clients 2018-06-11 19:52:22 +03:00
Tulir Asokan
5e3994ce2c Add font tag support and /rainbow command 2018-06-11 19:52:22 +03:00
evan
4962a78e4c turn off dynamic colors in fuzzy search 2018-06-06 11:56:48 -05:00
Tulir Asokan
b9079e22d2 Gofmt 2018-06-02 00:44:21 +03:00
Tulir Asokan
134604edce Add ui toggle for image rendering 2018-06-02 00:43:56 +03:00
Tulir Asokan
7868bd90fa Improve newlines in HTML parser 2018-06-02 00:28:21 +03:00
Tulir Asokan
1da02e3a13 Rewrite HTML parser 2018-05-31 16:59:40 +03:00
Tulir Asokan
e604346211 Add very basic arbitrary message/state event sending commands 2018-05-27 15:30:52 +03:00
Tulir Asokan
094a566189 Split command system from main view 2018-05-27 14:54:07 +03:00
Tulir Asokan
b63c451706 Fix m.emote messages in bare message views 2018-05-27 14:51:16 +03:00
Tulir Asokan
c9e138c5e8 Update tcell and include tcell database in debian package 2018-05-26 00:07:01 +03:00
evan
dd63d32d62 fix room name overwriting unread count 2018-05-25 00:14:05 -05:00
Tulir Asokan
b76c8d0147 Add UI preferences and simplify config save/load (ref #43) 2018-05-24 23:27:12 +03:00
evan
9f425f9909 switch fuzzysearch to upstream 2018-05-23 10:21:08 -05:00
Tulir Asokan
1d44d3da1a Add real bare view 2018-05-23 00:44:29 +03:00
Tulir Asokan
14903e0cdc Add bare mode and fix terminal resize bug. Fixes #48 2018-05-22 22:06:49 +03:00
Tulir Asokan
4849ef08b8 Re-enable coloring of new name in name change events 2018-05-22 21:18:46 +03:00
Tulir Asokan
34359a0599 More cleanup 2018-05-22 18:43:00 +03:00
Tulir Asokan
dc4e831022 Split up TagRoomList.Draw() 2018-05-22 18:40:25 +03:00
Tulir Asokan
f5e07f40db Move TagRoomList stuff into new file and split RoomList.Draw() 2018-05-22 18:30:25 +03:00
Tulir Asokan
c87097627e Split up getMembershipEventContent() 2018-05-22 17:36:41 +03:00
Tulir Asokan
f30eb65256 Fix missing newlines 2018-05-22 17:25:57 +03:00
Tulir Asokan
cc28c7b65f Gofmt 2018-05-22 17:24:47 +03:00
Tulir Asokan
cce79ab7d8 Clean up code 2018-05-22 17:23:54 +03:00
evan
b22ef132b7 fuzzy finder cleanup 2018-05-21 11:49:23 -05:00
evan
8c869b0fd7 make room finder transparent 2018-05-21 11:08:47 -05:00
evan
2fb1925881 fuzzy search prototype 2018-05-21 11:00:21 -05:00
Tulir Asokan
cbbec5bd18 Add transparent centering to widget 2018-05-21 18:21:35 +03:00
Tulir Asokan
e079f76157 Don't delete empty tags to avoid bugs 2018-05-17 16:30:02 +03:00
Tulir Asokan
76cff95540 Move all cache to ~/.cache/gomuks
Now `rm -rf ~/.cache/gomuks` has the same effect as `/clearcache`
2018-05-17 16:29:18 +03:00
Tulir Asokan
512ca88804 Fix notifications about own messages 2018-05-16 21:42:07 +03:00
Tulir Asokan
a8a4c72d14 Show per-tag room count in room list 2018-05-16 21:06:50 +03:00
Tulir Asokan
8a3fbc24ab Handle m.direct and m.receipt events
Fixes #12
Fixes #45
2018-05-16 20:51:43 +03:00
Tulir Asokan
c88801a657 Fix user list after initial sync. Fixes #36 2018-05-16 14:28:57 +03:00
Tulir Asokan
cb3a6e764e Fix room ordering after initial sync (ref #36) 2018-05-15 18:47:34 +03:00
Tulir Asokan
fdbb168e2b Display ban/unban events 2018-05-15 18:02:36 +03:00
Tulir Asokan
709a57d029 Fix displayname in leave messages 2018-05-15 17:55:08 +03:00
Tulir Asokan
5884ce3233 Fix sender color in membership events 2018-05-15 17:55:08 +03:00
Tulir Asokan
b6ebd7d8b5 Don't colorize new name in name change message 2018-05-15 17:55:08 +03:00
Tulir Asokan
eff910ff43 Update room list Previous/Next handling when selected room is not visible 2018-05-15 17:55:08 +03:00
Tulir Asokan
d53aa02c0f Add test for DeleteSession() and fix potential bug in roomlist CheckTag() 2018-05-11 07:53:17 +03:00
Tulir Asokan
1e6b599649 Don't parse room ID 2018-05-10 20:07:24 +03:00
Tulir Asokan
151141f288 Add command to log out 2018-05-10 15:47:24 +03:00
Tulir Asokan
2a02f518b2 Highlight whole room list row even if room name is short 2018-05-04 01:09:55 +03:00
Tulir Asokan
122b2441c9 Add support for explicit ordering and limiting rooms shown under a tag
Fixes #41
2018-05-04 00:55:30 +03:00
Tulir Asokan
85cbd64c5e Fix panic adding new room views from MainView.GetRoom() 2018-05-02 14:17:16 +03:00
Tulir Asokan
b49416ed80 Refactoring 2018-05-01 19:17:57 +03:00
Tulir Asokan
986c84b768 Update ui AddRoom and RemoveRoom parameters 2018-04-30 23:12:43 +03:00
Tulir Asokan
c600ce68a2 Fix room list updating when joining/leaving 2018-04-30 23:09:14 +03:00
Tulir Asokan
9ad3a95ba6 Re-render UI after printing message send error 2018-04-30 22:37:08 +03:00
Tulir Asokan
b3543e9090 Stop showing rooms the user has left in the room list. Fixes #35 2018-04-30 22:28:29 +03:00
Tulir Asokan
8346f65e3d Fix autoscrolling in room list when using keyboard. Fixes #34 2018-04-30 12:50:12 +03:00
Tulir Asokan
c5ec94a78f Add mouse scrolling support to room list (ref #34) 2018-04-30 12:40:28 +03:00
Tulir Asokan
cc929ba899 Fix splitting long messages without spaces. Fixes #38 2018-04-30 12:01:43 +03:00
Tulir Asokan
74119ee242 Move defer and add a debug print 2018-04-30 12:01:24 +03:00
Tulir Asokan
d1b62b854c Fix native terminal paste and custom form widgets 2018-04-30 11:03:13 +03:00
Tulir Asokan
576bab9e2e Fix People tag 2018-04-25 00:42:05 +03:00
Tulir Asokan
7026ed99a3
Merge pull request #33 from tulir/initial-sync
Use initial sync data instead of fetching room list, state, history, etc manually
2018-04-24 22:58:30 +03:00
Tulir Asokan
d7d654e2ec Flatten calculateBufferWithText() and gofmt 2018-04-24 22:50:04 +03:00
Tulir Asokan
6aceb4f8d2 Fix First(), Last(), Next() and Previous() of RoomList 2018-04-24 22:46:16 +03:00
Tulir Asokan
49cd74c548 Replace tabs with spaces so that they get rendered 2018-04-24 22:09:04 +03:00
Tulir Asokan
9ccceb48b9 Disable initial history fetch (comes with initial sync) 2018-04-24 22:08:09 +03:00
Tulir Asokan
28c6527544 Fix/break/change things 2018-04-24 17:12:08 +03:00
Tulir Asokan
e64df67ec3 Everything is no longer broken 2018-04-24 16:51:40 +03:00
Tulir Asokan
2a0145db88 Handle tag events 2018-04-24 02:13:43 +03:00
Tulir Asokan
135fcbf284 Make time-based room list sorting persistent (ref #11) 2018-04-24 02:13:43 +03:00
Tulir Asokan
1e8705319a Organize room list by last received message (ref #11) 2018-04-24 02:13:43 +03:00
Tulir Asokan
16406d6c91 Fix panic if replaceBuffer() is called with message not in buffer. Fixes #32 2018-04-24 02:13:43 +03:00
Tulir Asokan
9308f4cb47 Show errors in login view. Fixes #14 2018-04-23 12:55:38 +03:00
Tulir Asokan
ea965766b4 Gofmt and enable a test 2018-04-23 00:04:10 +03:00
Tulir Asokan
bfb5f0dd45 Add room alias autocompletion 2018-04-22 21:05:42 +03:00
Tulir Asokan
7e946a0703 Fix golint warnings 2018-04-22 20:14:40 +03:00
Tulir Asokan
7abfd97cda Allow clicking on room list entries to switch room. Fixes #30 2018-04-21 21:53:52 +03:00
Tulir Asokan
7da1555c84 Improve Markdown rendering
* Remove paragraphs from output HTML
* Remove mention link wrapper from text (leaving only mention name)
2018-04-21 21:24:07 +03:00
Tulir Asokan
d147fc7579 Improve tab completion system 2018-04-21 19:41:19 +03:00
Tulir Asokan
c3386ba118 Fix golint issues 2018-04-19 11:35:52 +03:00
Tulir Asokan
b1dc965a4a Gofmt 2018-04-19 11:10:34 +03:00
Tulir Asokan
b17ff318c2 Disconnect UI from main Gomuks struct. Fixes #21 2018-04-18 18:35:54 +03:00
Tulir Asokan
3b2d5fa034 Fix nick coloring 2018-04-18 17:33:59 +03:00
Tulir Asokan
bb36996194 Add support for sending Markdown messages 2018-04-18 14:46:03 +03:00
Tulir Asokan
3750d5007f Create pills when tab-completing or clicking nicks 2018-04-18 13:38:33 +03:00
Tulir Asokan
4f4e78ae0c Fix another nil pointer panic in the HTML parser (ref #20) 2018-04-16 12:04:00 +03:00
Tulir Asokan
0d4d597909 Fix panic in HTML parser (#20) 2018-04-15 17:54:11 +03:00
Tulir Asokan
bb9ed4558b Refactor things 2018-04-15 14:03:05 +03:00