Commit graph

228 commits

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