Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | state: simplify MONITOR reply handling | Simon Ser | 2023-08-25 | 1 | -10/+1 |
| | |||||
* | state: handle WHO replies in bulk | Simon Ser | 2023-04-19 | 1 | -17/+22 |
| | |||||
* | lib/irc: add formatURL | Simon Ser | 2023-04-19 | 1 | -11/+3 |
| | |||||
* | Load initial members state via WHO when channel is selected | Simon Ser | 2022-10-23 | 1 | -0/+1 |
| | | | | Closes: https://todo.sr.ht/~emersion/gamja/13 | ||||
* | Sort lists with localeCompare | Nolan Prescott | 2022-09-05 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | | | The difference in case sensitivity is the most obvious change with servers like soju that support CASEMAPPING ascii and rfc1459. Currently the list: 'Alpha', 'aardvark', 'Charlie', 'comma' currently sorts to: 'Alpha', 'Charlie', 'aardvark', 'comma' with this change it will instead become: 'aardvark', 'Alpha', 'Charlie', 'comma' If something like RFC 7613 gets broader support then there are a few more differences for a list like: 'éclair', 'ecstatic, 'aardvark', 'zed', 'Gamma' currently sorts to: 'Gamma', 'aardvark', 'ecstatic', 'zed', 'éclair' with this patch would instead sort to: 'aardvark', 'éclair', 'ecstatic', 'Gamma', 'zed' The above examples were run with a locale unspecified which fell back to my browser/host default of 'en'. | ||||
* | Fix invalid relative import | Simon Ser | 2022-06-27 | 1 | -1/+1 |
| | | | | Worked locally because it's served at the root… | ||||
* | Add a setting for seconds in timestamps | Simon Ser | 2022-06-27 | 1 | -0/+4 |
| | |||||
* | Add a settings dialog | Simon Ser | 2022-06-08 | 1 | -0/+9 |
| | | | | | | Add an option to hide chat events or always expand them. Closes: https://todo.sr.ht/~emersion/gamja/73 | ||||
* | Add support for bot mode | Simon Ser | 2022-06-08 | 1 | -0/+4 |
| | | | | References: https://ircv3.net/specs/extensions/bot-mode | ||||
* | state: add isReceiptBefore | Simon Ser | 2022-02-12 | 1 | -0/+13 |
| | |||||
* | keybindings: fix error on alt+h | Simon Ser | 2022-02-12 | 1 | -0/+10 |
| | | | | | | Fixes the following JS error: TypeError: e.setReceipt is not a function | ||||
* | Introduce isMessageBeforeReceipt | Simon Ser | 2022-02-11 | 1 | -0/+13 |
| | |||||
* | state: add bouncerNetworks helpers | Simon Ser | 2022-02-04 | 1 | -0/+14 |
| | |||||
* | state: fix prefix() call in MODE handler | Simon Ser | 2021-12-16 | 1 | -1/+1 |
| | | | | | | Lost during a refactoring. Fixes: ab3d4dd66183 ("Refactor ISUPPORT handling") | ||||
* | lib/irc: add CapRegistry | Simon Ser | 2021-12-10 | 1 | -2/+2 |
| | |||||
* | state: fix server bouncerNetID | Simon Ser | 2021-12-07 | 1 | -1/+1 |
| | | | | Ooops. | ||||
* | Move isBouncer props to server state | Simon Ser | 2021-12-07 | 1 | -2/+4 |
| | | | | Avoids having to pass this around. | ||||
* | Refactor ISUPPORT handling | Simon Ser | 2021-12-07 | 1 | -6/+14 |
| | | | | | | Add a helper class to parse ISUPPORT tokens. Instead of having manual ISUPPORT handling all over the place, use pre-processed values. | ||||
* | Update channel join status when kicked | Simon Ser | 2021-12-04 | 1 | -1/+4 |
| | |||||
* | Add support for draft/account-registration | Simon Ser | 2021-11-30 | 1 | -1/+11 |
| | | | | A new UI to register and verify accounts is added. | ||||
* | Add post-connect UI to login via SASL | Simon Ser | 2021-11-21 | 1 | -0/+3 |
| | | | | | | | | If the server supports SASL and if we aren't logged in with any account, add a UI to authenticate via SASL. This allows users to login anonymously then login via SASL. This will also ease the draft/account-registration implementation. | ||||
* | state: add account to server | Simon Ser | 2021-11-21 | 1 | -0/+5 |
| | |||||
* | Store WHO list in RPL_ENDOFWHO | Simon Ser | 2021-11-10 | 1 | -6/+1 |
| | | | | | This allows the state-tracker to figure out whether a WHO query returned no result. | ||||
* | Always insert non-chathistory messages at the end | Simon Ser | 2021-11-09 | 1 | -1/+1 |
| | |||||
* | Keep track of channel join status | Simon Ser | 2021-11-05 | 1 | -2/+9 |
| | | | | | This makes us behave better when we receive a self-PART message from the server. | ||||
* | Add hint in server operators buffer header | Simon Ser | 2021-11-01 | 1 | -0/+1 |
| | |||||
* | state: move in QUIT and NICK update logic | Simon Ser | 2021-10-23 | 1 | -5/+41 |
| | |||||
* | state: process RPL_NAMREPLY atomically | Simon Ser | 2021-10-23 | 1 | -9/+9 |
| | | | | | | This allows updating the buf.members map only once when receiving RPL_ENDOFNAMES, instead of repeatedly re-creating it each time a RPL_NAMREPLY message is received. | ||||
* | Allow bouncers to set NETWORK in ISUPPORT | Simon Ser | 2021-10-18 | 1 | -9/+14 |
| | | | | This allows bouncers to customize the name they appear with. | ||||
* | Fallback to bouncer network host if name is unset | Simon Ser | 2021-10-15 | 1 | -1/+1 |
| | |||||
* | Use ISUPPORT NETWORK if user hasn't specified custom name | Simon Ser | 2021-10-15 | 1 | -8/+9 |
| | |||||
* | Fix duplicate declaration in State.handleMessage | Simon Ser | 2021-09-21 | 1 | -1/+1 |
| | |||||
* | Add support for WHOX | Simon Ser | 2021-09-21 | 1 | -10/+10 |
| | | | | This allows querying the account of the user. | ||||
* | Add support for account-notify | Simon Ser | 2021-09-21 | 1 | -0/+6 |
| | |||||
* | Add support for extended-join | Simon Ser | 2021-09-21 | 1 | -0/+7 |
| | |||||
* | Update user username/hostname on JOIN | Simon Ser | 2021-09-21 | 1 | -3/+15 |
| | |||||
* | Update user on QUIT and NICK | Simon Ser | 2021-09-21 | 1 | -0/+19 |
| | |||||
* | Introduce per-server user map | Simon Ser | 2021-09-21 | 1 | -28/+29 |
| | | | | | | This allows us to store information about users in a signle place, instead of putting it in user buffers. This is required to display metadata about users in the channel members list. | ||||
* | Add State.create() | Simon Ser | 2021-09-21 | 1 | -0/+7 |
| | |||||
* | Add support for chghost | Simon Ser | 2021-09-06 | 1 | -0/+9 |
| | | | | See https://ircv3.net/specs/extensions/chghost | ||||
* | Rename buffer lastReadReceipt to prevReadReceipt | Simon Ser | 2021-08-24 | 1 | -1/+1 |
| | | | | | This field is intentionally behind the latest read receipt. Let's rename it to make that clearer. | ||||
* | Don't drop unread marker in addMessage | Simon Ser | 2021-08-24 | 1 | -0/+1 |
| | | | | Closes: https://todo.sr.ht/~emersion/gamja/76 | ||||
* | Add support for MONITOR | Simon Ser | 2021-08-24 | 1 | -1/+25 |
| | |||||
* | Add irc.forEachChannelModeUpdate helper | Simon Ser | 2021-06-11 | 1 | -38/+2 |
| | |||||
* | Move MODE state updates outof App | Simon Ser | 2021-06-11 | 1 | -2/+86 |
| | |||||
* | Move message key generation to State.addMessage | Simon Ser | 2021-06-11 | 1 | -0/+4 |
| | |||||
* | s/var/let/ | Simon Ser | 2021-06-10 | 1 | -55/+56 |
| | |||||
* | Add State.createServer | Simon Ser | 2021-06-10 | 1 | -0/+13 |
| | |||||
* | Use server buffer if name is unspecified in State.getBuffer | Simon Ser | 2021-06-10 | 1 | -0/+3 |
| | |||||
* | Add support for draft/event-playback | Simon Ser | 2021-06-04 | 1 | -0/+5 |
| |