Commit Graph

279 Commits

Author SHA1 Message Date
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