Commit graph

3601 commits

Author SHA1 Message Date
Cranken 23eb42013b Implemented issues #71 and #72 (#80)
* Implemented CTRL-Enter not erasing the input

* Added arrow Up and Down cycling through past messages.

* Disabled CTRL+Enter adding messages more than once.
2017-07-24 13:48:34 +02:00
Rasmus Karlsson 3bf111a091 More progress on tab-complete
There are missing parts to the "account-based" emotes that needs to be
completed before emote completion can be considered done. For now, when
I've been testing, I've been manually injecting the oauthClient and
oauthToken to the settings file with the `user_subscriptions` scope
2017-07-23 14:16:13 +02:00
Rasmus Karlsson e4fc6c25e6 Implement class SignalVector
It's a templated wrapper for std::vector with an overloaded `operator=`
which triggers a signal.
2017-07-23 14:10:12 +02:00
Rasmus Karlsson 9ccfff69d9 Add helper file common.hpp
The file currently contains function `qS(...)` which is an alias for
`QString::fromStdString(...)`
2017-07-23 14:09:20 +02:00
Rasmus Karlsson 0563136a34 Add option to display/hide localized names
Fix #49
2017-07-23 11:59:32 +02:00
Rasmus Karlsson 9b13581fa8 Include third party string-formatting lib 2017-07-23 11:57:30 +02:00
Rasmus Karlsson ab814d1e63 refactor stuff 2017-07-23 09:56:06 +02:00
Rasmus Karlsson ae95528236 Channel should never be a nullptr, set it to the "empty channel" 2017-07-10 08:32:33 +02:00
Rasmus Karlsson 5aa892e834 Refactor ConcurrentMap
* Add operator[] to ConcurrentMap which returns a TValue reference
* BTTV/FFZ channel emotes are now stored in the Emote Manager, and each Channel object has a reference to their own BTTV/FFZ channel emote map.
* Restructure EmoteManager a bit (simplify the ConcurrentMap havoc).
* Add EmoteData struct which can store emote data (for now only messages::LazyLoadedImage*)
* Add CompletionManager that does nothing
2017-07-09 17:58:59 +02:00
Rasmus Karlsson 1f1b0d7f03 Remove current preset completion strings
These will be filled in using our CompletionManager soon™️

Refactor Channel class a bit
2017-07-09 17:51:21 +02:00
Rasmus Karlsson b5b07a3e63 Change the way ChatWidget stores its channels name 2017-07-09 17:49:02 +02:00
Rasmus Karlsson 1f7d0dcead Disable tab to switch between splits
This will be custom made later, as tab is used for emote completion
2017-07-09 16:33:08 +02:00
hemirt 2425ddbd2c Implement basic tab autocomplete (#75) 2017-07-09 00:09:02 +02:00
fourtf fef62fda80 renamed the testcases 2017-07-03 19:57:00 +02:00
TranRed cc41783dad Test Cases (#70)
* Create general.md

* Rename general.md to TCgeneral.md

* Create TCaccountmanager.md

* Create TCtabsAndSplits.md

* Create TCchatting.md

* Create TCemotes.md

* Create TCchannelNavigation.md

* Create TCusernameTabbing.md

* Create TChighlighting.md

* Create TCappearanceSettings.md

* Create TCchatWindowNavigation.md

* Create TCchatterinoFeatures.md
2017-07-03 14:51:42 +02:00
Rasmus Karlsson 73ed39da14 Clean up twitch message parsing 2017-07-02 18:13:16 +02:00
Rasmus Karlsson a58cd3333e Implement emoji parsing
Fix #60
2017-07-02 17:39:51 +02:00
Rasmus Karlsson 17f8cc2293 Add initial docs folders 2017-07-02 17:21:59 +02:00
Rasmus Karlsson 5245cfacd1 Store channel room ID as a string instead of an int 2017-07-02 15:12:00 +02:00
Rasmus Karlsson 3e91340788 Implement subscription badges
Fix #61
2017-07-02 15:11:33 +02:00
Rasmus Karlsson 323cdc5561 Implement split clear chat
Fix #55
2017-07-02 14:40:36 +02:00
Rasmus Karlsson ddf886eaf1 Add basic color scheme handling
Fix #59
2017-07-02 14:28:37 +02:00
Rasmus Karlsson c5c2718dc0 Use addChat instead of re-implementing the same code (thanks hemirt)
Some refactoring

Updated settings library version
2017-07-02 13:37:24 +02:00
Rasmus Karlsson d2d65b9cb5 Merge branch 'master' of github.com:fourtf/chatterino2 2017-07-02 12:38:35 +02:00
Rasmus Karlsson 3c2ee99731 working on something 2017-07-02 12:36:50 +02:00
hemirt 0d27f16c4a fix wrong variable name, openChannelNameDialog on ctrl+t, give focus to (#47)
new split
2017-06-29 14:13:00 +02:00
Rasmus Karlsson f2ef14422b update settings lib version 2017-06-27 14:14:11 +02:00
Rasmus Karlsson 39056f40ef update settings version again :bbaper: 2017-06-27 10:09:13 +02:00
Rasmus Karlsson 7df7da70cb A lot of changes
Remove unused constructor of messages::Message
Fixed LimitedQueueSnapshot _-prefixes
Changed LimitedQueueSnapshot's usage of int to std::size_t
ColorScheme is no longer a singleton
Created a "BaseWidget" class which is pretty much a QWidget except it
has a reference of ColorScheme since most widgets will need a reference
to the style they should use.
BaseWidget can be implemented either with a BaseWidget parent (which
will copy the ColorScheme reference from the parent) or with a
normal QWidget parent and an explicit ColorScheme reference.
Save main window geometry on close
Fix font changing in the Settings Dialog
Update settings library version
2017-06-26 19:53:31 +02:00
Rasmus Karlsson c2e67e4b90 attempt to implement urlFetch with a timeout 2017-06-26 15:53:43 +02:00
Rasmus Karlsson 1d8795ef1b update settings version 2017-06-17 15:15:58 +02:00
Rasmus Karlsson 8e0bc16710 fix turbo being rendered as a staff badge 2017-06-17 11:49:04 +02:00
Rasmus Karlsson 17aa48fd07 add debugging code for adding messages to a split even if you don't have an internet connection 2017-06-17 11:37:45 +02:00
Rasmus Karlsson 1ecc6ff612 Clean up font management
Default to b.userName instead of message->account()
Made font updatable in the Settings dialog with a font dialog
More work on subscription badge loading

Known issues:
  - Font isn't updated in a split until a new message is written in that split
  - When font/font size is changed, old messages don't have their size updated causing weird layout of old messages
2017-06-17 11:37:13 +02:00
Rasmus Karlsson d2cbef9dff Enable DPI Scaling 2017-06-17 11:33:14 +02:00
Rasmus Karlsson 8f4e20db8e Rework badge types to fit with the way twitch sends badges 2017-06-16 10:11:44 +02:00
Rasmus Karlsson 56e521bc24 Start parsing unknown badges (i.e. game badges)
Prepare channel-specific data to be loaded (i.e. subscription badges)
2017-06-16 10:01:21 +02:00
Rasmus Karlsson 8715cf14ac Add "Miscellaneous" badge type for i.e. game badges 2017-06-16 09:57:08 +02:00
Rasmus Karlsson 95f60c34c5 fix dynamic bit badges 2017-06-16 08:03:13 +02:00
Rasmus Karlsson 7525dae768 work on dynamic badge-loading 2017-06-15 23:13:01 +02:00
Rasmus Karlsson e7282b5097 Fixed verified badges
Refactor more underscores into this->
2017-06-13 22:03:29 +02:00
Rasmus Karlsson 59d383c161 Huge refactor
- Remove some underscore-prefixes
 - Start using this-> more
 - Remove a few of the singletons (We pass references to managers to
         things that need it now. Might not be much better, but for now
         it works. It also shows what places might be slightly wrong
         designed)
2017-06-13 21:27:26 +02:00
fourtf 55b04ee7eb reordered README 2017-06-13 15:20:37 +02:00
Rasmus Karlsson 2305afe700 add humanize as a dependency 2017-06-11 21:01:08 +02:00
Rasmus Karlsson 7c3cd930f3 make a few settings into pajlada::Settings::Settings
Add setting to hide badges

Give focus to text input if you click anywhere in a chat widget
2017-06-11 20:53:43 +02:00
Rasmus Karlsson 945ca5d17a Implement naive split-closing. This will most likely have some memory leak (at least) 2017-06-11 12:04:22 +02:00
Rasmus Karlsson 4bfe58f14d more random refactoring 2017-06-11 12:00:53 +02:00
Rasmus Karlsson 1d6f558452 Remove SharedChannel (just use std::shared_ptr<Channel>)
More code-refactoring BBaper
2017-06-11 11:36:42 +02:00
Rasmus Karlsson 9cd70877a5 replace all instances of NULL with nullptr 2017-06-11 09:37:30 +02:00
Rasmus Karlsson 1c6ff37e76 rename header files from *.h to *.hpp 2017-06-11 09:31:45 +02:00