Commit graph

34 commits

Author SHA1 Message Date
Rasmus Karlsson 3cfb00d61f We now handle some write-connection messages like if users have been banned/timed out successfully by the user, or unbanned etc 2017-12-16 19:47:38 +01:00
Rasmus Karlsson d905e88671 We now handle irc NOTICE messages 2017-12-16 19:20:57 +01:00
Rasmus Karlsson 6d56148ed2 Implement basic ClearChat handling
Fixes #56
2017-12-16 19:08:32 +01:00
Rasmus Karlsson 87203c1120 Add system messages upon connecting/disconnecting 2017-12-16 18:13:40 +01:00
Rasmus Karlsson b13b8a2ce6 Simplify IrcManager connection creation/disconnecting
reword some comments/add some comments about unfitting methods in IrcManager
2017-12-16 17:18:08 +01:00
Rasmus Karlsson 676c7b9017 Reformat some files according to .clang-format 2017-12-16 02:22:35 +01:00
Rasmus Karlsson a372bae80d Change the way Twitch accounts are stored in AccountManager
This is done in a way which should simplify abstracting it to other
types of accounts if needed in the future

Remove comment about removing singletons - we're keeping them (and probably restoring some)

IrcManager now updates its "account" reference automatically through the
AccountManager.Twitch.userChanged-signal

Remove unused IrcManager getUser-method

IrcManager::beginConnecting is no longer called asynchronously. This
might want to be reverted in a more controlled asynchronous manner.

User Accounts are now stored as Shared Pointers instead of using
references/copies everywhere
2017-12-16 02:21:06 +01:00
Rasmus Karlsson 07f39f2667 Remove offline chat debug code 2017-12-16 01:27:37 +01:00
Rasmus Karlsson 7b2e3a94a6 Moved online status checking logic from ChatWidgetHeader to TwitchChannel
- Channel now needs to be initialized with a name. Special cases like the emote window just sends an empty string.
 - ChatWidget now has a signal which is called whenever the widgets channel is changed
 - Changed roomID from an std::string to a QString
2017-11-04 14:57:29 +01:00
hemirt f51372102e Networkmanager (#134)
* rename ImageLoader* to Network*

* static NetworkManager

* NetworkManager queue arbitrary requests

* modify urlfetch to use NetworkManager

* urlfetchjson in terms of NetworkManager

* fetchurljson fetchurltimeout fetchurljsontimeout

special fetch url functions with various connects and functions to be
called

* operate on fetched data in the correct thread

* operate on fetched resources in correct thread

* networkmanager urlfetch functions

* expose urlfetch functions of networkmanager through util and
util::twitch

* add caller to util functions

* cleanup

* formatting

* urlPut function for NetworkManager and util::twitch

* cleanup worker (no more leak)

* use urlfetch for LazyLoadedImage::loadImage

* Rename NetworkManager methods (#1)

* Rename NetworkManager methods

Remove unused NetworkManager methods
Remove unused NetworkManager includes

Reorder includes in lazyloadedimage.cpp and urlfetch.hpp

* try to simplify code, might break everything

* fixed some more stuff?
2017-10-27 20:09:02 +02:00
Cranken 881e695189 Added some functionality to the accountPopup (#117)
* Added some buttons.

* Added some more functionality.

* Finished adding button functionality.

* Implemented @fourtf's suggestions.
2017-09-23 19:23:10 +02:00
fourtf 3e24752477 fixed project code style in some files 2017-09-21 12:15:01 +02:00
fourtf c7b3480aaf ChatWidgetView -> ChannelView, added Emote Picker 2017-09-16 00:05:06 +02:00
Cranken 7db45aa7f2 Adds viewer list + livechecks (#105)
* Added check for livestatus + tooltip.

* Also added live check on startup.

* Added viewerlist + livesearch.

* Refactored code to make it compacter.
2017-09-11 22:37:39 +02:00
Rasmus Karlsson 8d2e48f944 Implement an advanced method of adding a user to chatterino.
You can now switch between multiple users in the settings dialog.
(Requires a restart for reconnecting etc)
2017-08-19 15:37:56 +02:00
Rasmus Karlsson 3f8c025e64 Store default client id in credentials.hpp 2017-08-19 15:29:36 +02:00
Rasmus Karlsson 467ca90fd8 Implement stupid account manager
After logging in, you need to restart chatterino
2017-07-28 19:46:53 +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 ab814d1e63 refactor stuff 2017-07-23 09:56:06 +02:00
Rasmus Karlsson 73ed39da14 Clean up twitch message parsing 2017-07-02 18:13:16 +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 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 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 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 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
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
Rasmus Karlsson 5b2b2e3e19 refactor/reformat. remove useless common.h 2017-06-07 10:09:24 +02:00
Rasmus Karlsson 2d2d6dad17 make connectionMutex QMutex into a std::mutex 2017-06-06 16:13:41 +02:00
Rasmus Karlsson 880fe7e81c fix deadlock, thanks hemirt 2017-06-06 16:10:16 +02:00
Rasmus Karlsson 6acaa56442 rename sendJoin to joinChannel 2017-06-06 16:06:13 +02:00
Rasmus Karlsson 6a5d4d49ee Only send REQ-messages on read connection 2017-06-06 15:58:26 +02:00
Rasmus Karlsson 1a428a54d5 Refactor IrcManager a bit
Create a new readConnection so we can read our own messages
2017-06-06 15:57:54 +02:00
Rasmus Karlsson ccf8e3bd83 move around files 2017-06-06 14:48:14 +02:00
Renamed from ircmanager.cpp (Browse further)