Commit graph

297 commits

Author SHA1 Message Date
fourtf
c2e2dfb577 this commit is too big 2018-08-02 14:23:27 +02:00
fourtf
3b3c5d8d75 added code to handle a single connection 2018-07-16 17:23:41 +02:00
fourtf
280bb4cf8e Renamed private members 2018-07-06 19:24:35 +02:00
fourtf
eeb514c444 minor changes 2018-07-05 18:17:12 +02:00
fourtf
6059f98c21 renamed UpdatePromptDialog to UpdateDialog 2018-07-05 16:04:50 +02:00
fourtf
3d7926cac1 added the update download button for linux/mac (updates don't work tho
so it doesn't show)
2018-07-05 13:25:10 +02:00
fourtf
59332270b5 put the update button code into it's own file 2018-07-05 12:54:38 +02:00
fourtf
2df142bd50 renamed *Manager files 2018-06-28 19:46:45 +02:00
fourtf
6a93aa412e moved IsBigEndian into it's own file 2018-06-27 13:03:59 +02:00
Rasmus Karlsson
f76512c31e Remove authenticated get function from urlfetch
Implement twitch account emote getter function in TwitchAccount
2018-06-27 00:16:30 +00:00
fourtf
c5441c6d4a fixed minor issues 2018-06-26 17:51:31 +02:00
fourtf
804d324d79 removed NativeEventHelper 2018-06-26 17:27:18 +02:00
fourtf
54eb07e116 removed namespaces 2018-06-26 17:06:17 +02:00
fourtf
2df0566492 removed namespaces 2018-06-26 16:37:59 +02:00
fourtf
15abedd869 moved files into src/common 2018-06-26 15:33:51 +02:00
fourtf
0bc08a364c created directory for dialogs 2018-06-26 15:11:45 +02:00
fourtf
a9bf9cf722 rename #3 2018-06-26 14:09:39 +02:00
fourtf
c9722b9780 rename #2 2018-06-26 13:24:55 +02:00
fourtf
ec04f10895 rename #1 2018-06-26 13:23:57 +02:00
fourtf
6375a902a0 fixed size of the attachedwindow for the browser extension for scaling 2018-06-25 22:07:17 +02:00
pajlada
eae2c2c521
Emote popup channelname (#475)
Fix #464
2018-06-24 14:42:40 +02:00
fourtf
9a719dcd05 added completion for default twitch commands 2018-06-24 13:57:19 +02:00
Rasmus Karlsson
6c727cf82b Settings now saves unicode QString settings properly
Fix #503
2018-06-24 13:21:16 +00:00
fourtf
f5a05543cd added autocompletion for commands 2018-06-24 11:24:21 +02:00
Rasmus Karlsson
942217fd6a Fix removing items in an EditableModelView
Fix #489
Fix #456

If @fourtf could take a look at this fix it would be nice KKaper
2018-06-23 14:46:21 +00:00
fourtf
4aec66e3ea small refactor of twitchserver 2018-06-22 23:24:45 +02:00
fourtf
440a3c41fe LayoutCreator<T>::operator * now returns a reference 2018-06-22 12:34:33 +02:00
fourtf
2f91e3097a changed settings paths 2018-06-21 13:02:34 +02:00
fourtf
394009dda8 added ui scaling 2018-06-19 19:02:19 +02:00
fourtf
3f9a48fd72 fixed linux 2018-06-11 19:11:33 +02:00
fourtf
ea9f9e7f18 added ui scaling 2018-06-11 15:07:04 +02:00
fourtf
9b26fce781 changes for light mode 2018-06-11 15:07:04 +02:00
Rasmus Karlsson
85e19d0bd6 Remove more QString usages 2018-06-07 16:40:31 +02:00
Rasmus Karlsson
d2e750129c Remove unused std::string version of CompletionModel addString 2018-06-07 16:40:31 +02:00
Rasmus Karlsson
63c38c02d0 Make FFZEmotes fully conform and use QString instead of std::string 2018-06-07 16:40:31 +02:00
Rasmus Karlsson
6906d1dc1c Make BTTVEmotes fully conform and use QString instead of std::string 2018-06-07 16:40:31 +02:00
fourtf
6000b7626e fixes #185 2018-06-06 18:59:18 +02:00
fourtf
86e4a669ad added basic new user popup 2018-06-06 13:35:33 +02:00
Rasmus Karlsson
5724c7ef67 play around with the QString json deserializer 2018-06-06 11:42:01 +02:00
Rasmus Karlsson
30c117f129 Add a mutable each function 2018-06-06 01:30:26 +02:00
Rasmus Karlsson
e09e0a5ab4 Move emojis to its own class 2018-06-05 17:28:36 +02:00
Rasmus Karlsson
78664f79ee Move FFZ emotes to its own class 2018-06-05 17:28:36 +02:00
Rasmus Karlsson
f83c07be53 Move bttv emotes to its own class 2018-06-05 17:28:36 +02:00
Rasmus Karlsson
e12d386a5a Move twitch emote-related stuff to TwitchEmotes class 2018-06-05 17:28:36 +02:00
Rasmus Karlsson
d584852bc0 Fix tag string parsing 2018-06-05 16:29:06 +02:00
fourtf
66dab0a6b7 selects correct image when scaling emotes 2018-06-04 15:11:06 +02:00
fourtf
829809b0e1 added rightclicking selections to copy them 2018-06-04 14:39:26 +02:00
fourtf
5923e30132 fixed emote popup images 2018-06-04 12:48:23 +02:00
fourtf
4a2709cbc3 fixed resub messages 2018-06-04 12:23:23 +02:00
fourtf
3a78068810 forgot to commit in a while 2018-06-01 14:20:46 +02:00
fourtf
6156b1f430 added categories to the accountspage 2018-05-28 08:34:54 +02:00
fourtf
0fed9ca5d2 added add account login back in 2018-05-27 03:17:33 +02:00
fourtf
7e68e662e3 renamed Twitch to twitch 2018-05-26 20:26:25 +02:00
fourtf
8c9be20f9b changed AccountManager to AccountController 2018-05-26 20:25:00 +02:00
fourtf
9aa9b90267 fixed /r and tab text alignment 2018-05-25 13:53:55 +02:00
fourtf
f72e1b5d82 fixed message expanding not working 2018-05-25 12:45:18 +02:00
nuuls
6ee4945715 fixed mac stuff and added more debug code 2018-05-25 01:31:34 +02:00
fourtf
7b192897da minor fixes 2018-05-16 15:42:45 +02:00
Rasmus Karlsson
88e97325f8 Fix windows-specific compilation error 2018-05-16 15:12:48 +02:00
Rasmus Karlsson
937fffc34b Implement /ignore and /unignore commands
Simplify authorized network requests for Twitch V5 api
add onShow virtual function to settings pages if they need to be refreshed when shown
Actually ignoring messages from ignored users is still not implemented

Working on #247
2018-05-16 15:09:41 +02:00
Rasmus Karlsson
64160e60af Fix right-clicking of emotes
There are a few more actions that we might want to add at a later date,
      but a simple feature set has been implemented

Fix #386
2018-05-16 03:55:56 +02:00
fourtf
454b6bcb70 added username autocompletions with @ 2018-05-14 17:28:00 +02:00
fourtf
a0e33ef9e6 fixed crash when onError is not set 2018-05-14 15:12:09 +02:00
Rasmus Karlsson
7bc63ba38f Added result code to ignore/unignore calls
Add ignore/unignore calls that take the user ID to avoid double api
calls
Fully implement the account popup ignore/unignore feature
Fix #247
2018-05-13 17:53:24 +02:00
Rasmus Karlsson
d4c31309f0 Move stringify function to rapidjson-helpers 2018-05-13 17:51:01 +02:00
Rasmus Karlsson
752992760b Fix windows-specific compilation error 2018-05-12 19:50:22 +02:00
Rasmus Karlsson
bf0b5d08d8 Implement /ignore and /unignore commands
Simplify authorized network requests for Twitch V5 api
add onShow virtual function to settings pages if they need to be refreshed when shown
Actually ignoring messages from ignored users is still not implemented

Working on #247
2018-05-12 20:34:13 +02:00
Rasmus Karlsson
98082d1064 Fix compilation issue on GCC 8.1.0
Fix #377
2018-05-12 16:07:03 +02:00
fourtf
b83c8e2735 this better compile 2018-05-10 18:18:12 +02:00
Rasmus Karlsson
1381214911 Use non Qt 5.10 method of starting a detached process 2018-05-06 17:24:20 +02:00
Rasmus Karlsson
49458e4fac Add brief description to Streamlink settings page
Add links to Streamlink website and download page to Streamlink settings page
Make streamlink custom path usage more explicit
Change how streamlink runs, it now works perfectly on Linux so that if you don't have a custom path set, it will try to just run "streamlink" in your PATH variable

This needs testing on Windows again
2018-05-06 16:33:16 +02:00
fourtf
b95388107f added regex highlights 2018-05-06 12:52:47 +02:00
fourtf
ba4173822e created base for all the list based settings 2018-05-06 00:32:45 +02:00
fourtf
4c3f0921e2 changed CommandManager to CommandController 2018-04-30 23:44:01 +02:00
Rasmus Karlsson
b907bf5639 Fix compilation on gcc 2018-04-30 20:35:01 +02:00
fourtf
13f1caa294 made commands view more abstract 2018-04-30 00:41:58 +02:00
fourtf
6bd787423d added template model/view magic for commands 2018-04-29 23:26:17 +02:00
fourtf
9426a9d633 Merge branch 'master' of https://github.com/fourtf/chatterino2 2018-04-28 13:48:49 +02:00
Rasmus Karlsson
ae26b835b6 Perform initial refactoring work
Things that were once singletons are no longer singletons, but are
instead stored in the "Application" singleton

Some singletons still remain, and some renaming/renamespacing is left
2018-04-27 22:11:19 +02:00
fourtf
49069beed7 reworked commands settings page 2018-04-27 01:11:09 +02:00
fourtf
e23ce31e05 improved the highlights settings page 2018-04-26 23:07:02 +02:00
fourtf
ea7fcf260c fixed issues for gcc 2018-04-26 20:58:32 +02:00
fourtf
d078ef5fe0 added debug logs and code to assert that we are in the gui thread 2018-04-26 18:10:26 +02:00
fourtf
b176dc5295 switched up the settings pages 2018-04-25 20:35:32 +02:00
fourtf
859f4aefcb added new TupleTableModel for settingsdialog 2018-04-25 14:51:22 +02:00
fourtf
3446a623f5 added select channel dialog 2018-04-18 09:15:56 +02:00
Rasmus Karlsson
5f142e8d52 Add some error checks to Image::loadImage
Add default value to loadedPixmap
2018-04-16 23:48:30 +02:00
pajlada
23cf8cc484
PubSub system (#346)
* Add websocketpp dependency

* Initial pubsub commit

Renamed selection min and max variables to selectionMin and selectionMax
to bypass windows min/max macros being stupid.

TwitchAccount is now initialized with its User ID. It cannot be changed
after it has been initialized.

* Update openssl folder

* Update installation instructions

* Split up websocketpp dependency to its own code only and openssl.pri

* Add missing include to asio steady_timer

* Update dependencies for linux
2018-04-15 15:09:31 +02:00
Rasmus Karlsson
b7266b1640 Fix warnings that occured on linux using clang 2018-04-14 21:59:51 +02:00
fourtf
2687da38ba added basic browser extension stuff 2018-04-11 22:53:15 +02:00
fourtf
86c844c791 added debug information on F10 2018-04-06 16:37:30 +02:00
Rasmus Karlsson
adf3ff3075 Switch some c-style includes to c++-style includes (i.e. stdint.h to
cstdint)

Make MessageElement to a class to fit better with the derived classes.
Make MessageLayoutElement to a class to fit better with the derived
classes.

Remove virtual from override functions

Replace all instances of boost::signals2 with pajlada::Signals. This
lets us properly use clang code model to check for issues.

Add missing virtual destructor to AbstractIrcServer
Add missing virtual destructor to MessageLayoutElement

Remove unused "connectedConnection" connection in TwitchChannel

Fix typo in TrimChannelName function
Fix typo in MessageParseArgs

Replace some raw pointers with unique pointers where it made more sense.
This allowed us to remove some manually written destructors whose only
purpose was to delete that raw pointer.

Reformat: Add namespace comments
Reformat: Add empty empty lines between main namespace beginning and end
Reformat: Re-order includes
Reformat: Fix some includes that used quotes where they should use angle
brackets
Reformat: Replace some typedef's with using's

Filter out more useless warnings
2018-04-03 03:00:34 +02:00
Rasmus Karlsson
f820024fd5 Reformat 2018-04-01 16:44:25 +02:00
Rasmus Karlsson
be66338fe2 General cleanups/reformats
- Clean up imports
- Comment EmojiData
- Reorder TwitchAccount constructor
- Fix typo in TwitchChannel
- Add emoji parsing test code at the bottom of EmoteManager
2018-03-31 13:44:15 +02:00
Rasmus Karlsson
2d15716b5f Add helper methods to FlagsEnum where I can make sure that it actually works forsenT 2018-03-31 11:23:07 +02:00
Rasmus Karlsson
57e0e85d77 Update a usernames "timeAdded" every time it tries to be added
This keeps "recent chatters" from expiring

Progress on #57
2018-03-30 15:58:05 +02:00
Rasmus Karlsson
89d7b7db87 expire non-recent chatters 2018-03-30 13:51:15 +02:00
Rasmus Karlsson
f567f10d10 CompletionModel tagged strings now have types (i.e. bttv emote, name, twitch emote)
Usernames can be overriden (capitalized overrides lowercase, but not the other way around)
2018-03-30 12:06:02 +02:00
Rasmus Karlsson
41fbcc738b Fix and improve Streamlink code
Move streamlink code to its own file

Fixes #275

Untested on linux, but should work decently there as well.
2018-03-24 14:15:27 +01:00
Rasmus Karlsson
b2f041989c Move CompletionModel to a more appropriate folder 2018-03-24 12:13:22 +01:00
fourtf
b351c40d29 refactored irc 2018-02-05 15:11:50 +01:00
fourtf
3d479e4c83 fixed template compilation on mingw 2018-01-28 15:28:02 +01:00
fourtf
c62a91ac2b fixed message flags |= and &= operations 2018-01-28 14:45:39 +01:00
fourtf
431b9a8c1f Merge branch 'master' of https://github.com/fourtf/chatterino2 2018-01-28 03:39:47 +01:00
fourtf
591ab4d8da simplified message.cpp 2018-01-28 03:29:42 +01:00
fourtf
f292d2e097 fixed live status being cached 2018-01-23 21:40:51 +01:00
fourtf
dd05ea28fe added basic keyword ignore setting 2018-01-23 21:35:42 +01:00
fourtf
3104aae80a fixed crash 2018-01-19 23:41:02 +01:00
Rasmus Karlsson
03ff2205fa test code 2018-01-19 22:45:33 +01:00
fourtf
66e99fd36f renamed and moved asyncexec.hpp to posttothread.hpp 2018-01-19 14:53:57 +01:00
Rasmus Karlsson
702d4b2eec Rework the Account Popup Widget
Fixed Account Popup Widget Follow/Unfollow
Ignoring now also works, but doesn't have the ability to unignore

Add a URL Delete method to the network manager

Fixes #235
2018-01-18 18:20:40 +01:00
fourtf
e0372a2453 moved dpi handling out of helper file 2018-01-14 21:59:45 +01:00
fourtf
2073447df7 added highlights page again 2018-01-13 02:00:02 +01:00
fourtf
e0bb061c81 refactored the settings dialog 2018-01-12 23:09:27 +01:00
Rasmus Karlsson
83763cf9a9 Remove unused method EmoteData::getImageForSize 2018-01-12 19:13:19 +01:00
fourtf
10850c0ec7 I BROKE EVERYTHING
refactored the rendering process
2018-01-11 20:17:41 +01:00
Rasmus Karlsson
9fa9d7f0e3 Implement preferred emote quality setting.
This doesn't work super well for Twitch emotes because they don't
conform to a proper emote scaling standard

Fixes #150
2018-01-07 02:59:46 +01:00
Rasmus Karlsson
df733282be Move highlight phrases to new settings system
Add a setting serialize/deserializer for QString
Add constructor to ChatterinoSetting that doesn't take a default value
2018-01-04 01:52:37 +01:00
5a26d5f17f put singletons into their namespace 2017-12-31 22:58:35 +01:00
bfa2f1637e refactored the managers 2017-12-31 00:50:07 +01:00
Rasmus Karlsson
307dc16d79 use twitch get with rapidjson json in refreshLiveStatus
we now check that all values are legit, which can be an issue if we are
sent invalid json data
2017-12-28 18:17:25 +01:00
fourtf
2bf53f73f8 oh no the bad commit descriptions are back D: 2017-12-23 23:24:35 +01:00
Rasmus Karlsson
3f6881390e add twitch getAuthorized method which passes through a custom client ID and oauth token 2017-12-22 17:36:32 +01:00
Rasmus Karlsson
2bd80763e7 Fix some obvious warnings
Ignore some stupid warnings
2017-12-22 15:13:42 +01:00
Rasmus Karlsson
42749538a7 Add helper method for creating a UUID
Fix QString formatter
2017-12-22 14:33:04 +01:00
Rasmus Karlsson
795deac727 move QString-formatting to helpers.hpp so fS works with it all the time 2017-12-22 14:08:13 +01:00
fourtf
ded61256de moved native event handler to it's proper file 2017-12-19 01:32:06 +01:00
Rasmus Karlsson
02e5030475 add fS function to simplify string formatting with fmt::format 2017-12-17 17:01:37 +01:00
Rasmus Karlsson
8687d01cea fix ParseTagString function 2017-12-17 00:56:33 +01:00
6b46d12558 added ParseTagString code 2017-12-17 00:39:27 +01:00
Rasmus Karlsson
e060f87b3c hehe fourtf 2017-12-17 00:01:42 +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
49c2f442cb fix mingw compilation issues 2017-11-04 16:56:38 +01:00
Rasmus Karlsson
2de98dc1f8 Move timeout logic to NetworkRequest 2017-10-27 22:04:05 +02:00
Rasmus Karlsson
41ec892bf8 Remove urlFetchJSON usages. They now use NetworkRequest.getJSON 2017-10-27 21:22:06 +02: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
fourtf
f0c21f5b49 refactored message drawing and layouting 2017-10-11 10:34:04 +02:00
fourtf
8b25d37a37 added benchmark util 2017-10-08 17:23:46 +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
Daniel _
206a3518b0 fixed dpi not initializing when the window shows 2017-09-23 18:37:51 +02:00
fourtf
14511e10ef HiDPI commit 2017-09-22 00:50:43 +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
c2e67e4b90 attempt to implement urlFetch with a timeout 2017-06-26 15:53:43 +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
b66dc479e6 fix scroll to bottom issue 2017-06-06 21:18:05 +02:00
Rasmus Karlsson
ccf8e3bd83 move around files 2017-06-06 14:48:14 +02:00