Commit Graph

388 Commits

Author SHA1 Message Date
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
Tulir Asokan
28e5f9d4b0 Add package docs 2018-04-15 13:34:39 +03:00
Tulir Asokan
d060d10615 Allow clicking names to mention them 2018-04-14 15:33:20 +03:00
Tulir Asokan
85757c387e Fix typo in newline stripping 2018-04-14 11:50:57 +03:00
Tulir Asokan
f5530ff99c Move message parsing to parser subpackage 2018-04-14 11:50:18 +03:00
Tulir Asokan
782ba0657a Make HTML rendering more advanced
Also add Python-like HTML parser thing in lib/htmlparser
2018-04-14 11:44:09 +03:00
Tulir Asokan
e7bf5bd59f Add basic HTML rendering (ref #16) 2018-04-14 00:34:25 +03:00
Tulir Asokan
69c163cfe9 Unknown changes that possibly fix and/or break things 2018-04-13 21:25:45 +03:00
Tulir Asokan
7e5e802e90 Cache TString version of UITextMessage.MsgText 2018-04-11 19:36:15 +03:00
Tulir Asokan
92a2428865 Allow clicking images and load images from cache 2018-04-11 19:20:40 +03:00
Tulir Asokan
ff7ee333a1 Rename UIString to TString, move ansimage to lib/ and switch to tcell fork 2018-04-11 17:57:15 +03:00
Tulir Asokan
c0705b02a0 Move notification package to lib/ and add open package 2018-04-11 15:05:42 +03:00
Tulir Asokan
8270bc0322 Move event parsing to ui/messages and add image displaying 2018-04-10 19:31:28 +03:00
Tulir Asokan
ee67c1446c Convert message buffer to use custom colorable strings 2018-04-10 16:07:16 +03:00
Tulir Asokan
eda2b575f0 Refactor UI to use interfaces everywhere 2018-04-09 23:45:54 +03:00
Tulir Asokan
2ba2fde396 Gofmt 2018-04-02 13:47:20 +03:00
Tulir Asokan
dd89fa621d Improve debug output options 2018-04-02 13:47:20 +03:00
Tulir Asokan
adce6d3211 Don't wrap user list 2018-03-26 22:03:30 +03:00
Tulir Asokan
d684187f42 Don't send notifications for current room 2018-03-26 20:59:58 +03:00
Tulir Asokan
e0298521c6 Add sounds to notifications 2018-03-26 18:04:10 +03:00
Tulir Asokan
b31d968814 Show notifications and highlights in room list. Fixes #8 2018-03-26 17:22:47 +03:00
Tulir Asokan
6095638fbb Fix and/or break scroll bar 2018-03-26 14:31:44 +03:00
Tulir Asokan
23bb46b18f Move room list to custom widget 2018-03-25 14:21:59 +03:00
Tulir Asokan
c128666109 Refactor things and add proper wheel scroll support 2018-03-25 12:35:50 +03:00
Tulir Asokan
e414e20215 Add mouse handler stub and keep track of focus 2018-03-24 22:14:17 +02:00
Tulir Asokan
1321e1a06a Possibly speed up syncs with filters 2018-03-24 14:16:11 +02:00
Tulir Asokan
38364646a7 Refactoring and documentation 2018-03-23 23:39:17 +02:00
Tulir Asokan
76cfbecc09 Remove panic when sending message if GetSessionOwner() returns nil 2018-03-23 17:45:58 +02:00
Tulir Asokan
7dc773c990 Render scroll position and indicate if at end/beginning of history. Fixes #9 2018-03-23 17:26:15 +02:00
Tulir Asokan
03e9a0d5ac Documentation and refactoring 2018-03-23 14:44:36 +02:00
Tulir Asokan
7cc55ade30 Fix membership event processing 2018-03-23 14:20:46 +02:00
Tulir Asokan
a3f48093eb gofmt and govet 2018-03-23 01:20:26 +02:00
Tulir Asokan
16635dcde7 Refactor PushRuleset#GetActions() and ViewMain event processing 2018-03-23 01:00:13 +02:00
Tulir Asokan
a5e7800ab6 Fix bugs and compile errors 2018-03-22 23:52:55 +02:00
Tulir Asokan
373b25c01c Rename matrix/room/ to matrix/rooms/ 2018-03-22 23:46:43 +02:00
Tulir Asokan
20a1a31fa8 Add doc.go files 2018-03-22 23:45:54 +02:00
Tulir Asokan
a9c899f0d5 Refactoring and documentation 2018-03-22 23:40:26 +02:00
Tulir Asokan
497ae566c0 Move LoginView to own struct 2018-03-22 23:03:45 +02:00
Tulir Asokan
b93dea2e1c Refactoring and documentation 2018-03-22 23:03:36 +02:00
Tulir Asokan
225dbdba4e Use display names in join/leave messages 2018-03-22 22:38:49 +02:00
Tulir Asokan
152b89ed5e Add support for m.emote. Fixes #6 2018-03-22 21:45:02 +02:00
Tulir Asokan
702a75a8c0 Save history to disk. Fixes #1 2018-03-22 19:54:31 +02:00
Tulir Asokan
232f7fe1be Update constants and demagicify RoomView drawing 2018-03-22 18:14:08 +02:00
Tulir Asokan
c32fffda15 Move history mutex to rooms.Room 2018-03-22 17:37:35 +02:00
Tulir Asokan
516ea42317 Use Flex as MainView base instead of Grid 2018-03-22 17:00:56 +02:00
Tulir Asokan
492a8752f1 Move input field to RoomView 2018-03-22 16:44:24 +02:00
Tulir Asokan
9fd67102ad Refactoring and godocs 2018-03-21 23:29:58 +02:00
Tulir Asokan
0e90972fe8 Handle some corner cases in MessageView 2018-03-21 19:46:30 +02:00
Tulir Asokan
35b6c7bd27 Add external debug file, refactoring and push rule parser 2018-03-21 18:46:25 +02:00
Tulir Asokan
7994c289aa Refactor some things and format everything 2018-03-21 00:21:24 +02:00
Tulir Asokan
85f289c98d Rename UpdateLogs back to LoadHistory 2018-03-20 23:31:04 +02:00
Tulir Asokan
095b982603 Show messages in message view while sending 2018-03-20 19:55:42 +02:00
Tulir Asokan
59cd900301 Simplify MessageView buffer recalculation to one loop 2018-03-20 17:26:37 +02:00
Tulir Asokan
508b4ea280 Add colon after username completion at beginning of line 2018-03-20 16:03:05 +02:00
Tulir Asokan
bfb5151cb6 Re-add colors to date change messages 2018-03-20 13:01:59 +02:00
Tulir Asokan
3897f23bc4 Add support for loading more history 2018-03-20 12:16:32 +02:00
Tulir Asokan
de2a8aee06 Add some vim-style keybindings to advanced inputfields 2018-03-20 12:14:30 +02:00
Tulir Asokan
160e8ff836 Don't panic if room list is empty 2018-03-19 15:19:44 +02:00
Tulir Asokan
43127dad0f Switch forms to use advanced inputfields and use user-friendly panics for UI errors 2018-03-19 10:57:31 +02:00
Tulir Asokan
7a4b108b37 Avoid showing panics directly if debug mode is not enabled 2018-03-19 01:21:53 +02:00
Tulir Asokan
72945c9a28 Organize files 2018-03-18 21:24:03 +02:00