Commit graph

379 commits

Author SHA1 Message Date
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
fourtf
8de0a59533 ircconnection and about page 2018-06-04 21:05:18 +02:00
fourtf
66dab0a6b7 selects correct image when scaling emotes 2018-06-04 15:11:06 +02:00
fourtf
6156b1f430 added categories to the accountspage 2018-05-28 08:34:54 +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
nuuls
6ee4945715 fixed mac stuff and added more debug code 2018-05-25 01:31:34 +02:00
fourtf
48e94a1169 added code for a notification system 2018-05-23 22:27:29 +02:00
fourtf
0f7c25d098 removed webengine support so the ci can build again 2018-05-17 17:47:17 +02:00
fourtf
8ee0f85a2b weekly "fixed building on linux" 2018-05-16 17:47:58 +02:00
fourtf
28fb877020 updated splitheader 2018-05-16 15:02:01 +02:00
Rasmus Karlsson
15b432a4cf Implement simple ignored phrase system 2018-05-13 19:25:12 +02:00
Rasmus Karlsson
3a48f5db96 Remove unused IgnoreMessagesPage widget 2018-05-13 19:25:12 +02:00
Rasmus Karlsson
9bad40742f Remove annoying warning from GCC 8.1.0
I hope this doesn't throw errors in earlier GCC versions
2018-05-13 17:49:34 +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
fourtf
463a1f1945 added new overlay for splits when you hold alt that does nothing yet 2018-05-08 16:55:20 +02:00
Rasmus Karlsson
5efc2c38d8 Clean up warnings 2018-05-06 14:16:41 +02:00
Rasmus Karlsson
03c8c00f16 Remove non-existing file pubsubmanager.hpp from chatterino.pro 2018-05-06 14:04:06 +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
fourtf
6bd787423d added template model/view magic for commands 2018-04-29 23:26:17 +02:00
Rasmus Karlsson
0f22d9d002 move pubsub stuff to the providers/twitch namespace and folder 2018-04-28 15:48:49 +02:00
fourtf
9426a9d633 Merge branch 'master' of https://github.com/fourtf/chatterino2 2018-04-28 13:48:49 +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
Rasmus Karlsson
f571a336e0 Add missing linker flag on linux 2018-04-21 00:05:04 +02:00
fourtf
e17a7cc222 added basic last run crash dialog 2018-04-20 00:15:57 +02:00
fourtf
683c4aed2d added basic version fetching 2018-04-19 22:16:55 +02:00
fourtf
3446a623f5 added select channel dialog 2018-04-18 09:15:56 +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
253ccc938e Disable more warnings, and specify that the no-unused-local-typedef operation should only be used with clang 2018-04-14 22:31:00 +02:00
Rasmus Karlsson
a684420e89 Also apply the clang bugfix for gcc 2018-04-14 22:30:31 +02:00
Rasmus Karlsson
b7266b1640 Fix warnings that occured on linux using clang 2018-04-14 21:59:51 +02:00
Rasmus Karlsson
a60e8265a5 Ignore 'unused local typedef' warning on Linux since it seems to give false positives 2018-04-14 21:54:21 +02:00
fourtf
2687da38ba added basic browser extension stuff 2018-04-11 22:53:15 +02:00
Rasmus Karlsson
6bdb9f9c9b also add the boost lib folder in case we need to link something 2018-04-11 00:46:20 +02:00
fourtf
2ede50af0e added version header 2018-04-11 00:18:33 +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
1c7f397f1b Move signallabel code out from its header 2018-03-30 14:39:33 +02:00
Rasmus Karlsson
4790f68557 make helper function for trimming a twitch channel name from irc 2018-03-25 11:37:57 +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
Rasmus Karlsson
d9bd39e8a4 Remove "CompletionManager". Completion models are now stored in Channel
Chatters list is now updated every 5 minutes
2018-03-24 12:02:07 +01:00
fourtf
11621fd146 removed providermanager from chatterino.pro 2018-02-09 13:35:36 +01:00
fourtf
54b0d9dda9 renamed ircchannel 2018-02-09 13:33:11 +01:00
fourtf
c0247d27e8 renamed irc provider files 2018-02-05 21:28:18 +01:00
fourtf
a44758ad23 Merge branch 'master' of https://github.com/fourtf/chatterino2 2018-02-05 21:20:38 +01:00
fourtf
b351c40d29 refactored irc 2018-02-05 15:11:50 +01:00
fourtf
0d417dfa2d minor style changes 2018-01-29 13:23:45 +01:00
confuseh
2391ad7d16 clang PCH workaround
https://bugreports.qt.io/browse/QTBUG-27018
2018-01-28 22:17:33 +01:00
fourtf
643486da14 enabled compact emtoes again 2018-01-28 16:29:47 +01:00
fourtf
3d479e4c83 fixed template compilation on mingw 2018-01-28 15:28:02 +01:00
Rasmus Karlsson
2f0844ebd9 Basic logging implemented
Implemented scuffed logging settings page
Add helper function to PathManager to create an arbitrary folder
2018-01-28 14:23:55 +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
d33adff5c9 fixed emotes popup emotes 2018-01-27 21:13:22 +01:00
fourtf
f4863cbccb added buttons to the custom window frame 2018-01-24 20:27:56 +01:00
fourtf
93cfcbd3f1 added empty ketboard settings page 2018-01-24 15:34:04 +01:00
fourtf
d741bf6df3 added SpecialChannelPage with a description for /mentions 2018-01-23 23:10:27 +01:00
fourtf
dd05ea28fe added basic keyword ignore setting 2018-01-23 21:35:42 +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
fourtf
de3a490257 added streamview widget 2018-01-19 14:49:21 +01:00
fourtf
6d6b99f3ef added moderation buttons 2018-01-17 14:14:31 +01:00
fourtf
a190eda075 fixed text selection 2018-01-16 00:26:04 +01:00
fourtf
e19a83679f moved window logic from BaseWidget to BaseWindow 2018-01-14 21:55:36 +01:00
fourtf
e0bb061c81 refactored the settings dialog 2018-01-12 23:09:27 +01:00
fourtf
a7fa4160e8 added define for myself 2018-01-11 20:26:32 +01:00
fourtf
10850c0ec7 I BROKE EVERYTHING
refactored the rendering process
2018-01-11 20:17:41 +01:00
Rasmus Karlsson
af1e0d13e5 add BOOST_DIRECTORY option in qmake file to use custom boost directory 2018-01-07 03:24:36 +01:00
Rasmus Karlsson
8aa459d826 Move shortcut creation code to its own helper file 2018-01-06 20:24:04 +01:00
fourtf
315cfd8605 bundling timeouts from same user 2018-01-05 23:14:55 +01:00
fourtf
47a813d5d6 added search popup 2018-01-05 13:42:23 +01:00
Rasmus Karlsson
334860dad2 Remove unused appdatapath class
Reformat some code
2018-01-05 03:00:29 +01:00
Rasmus Karlsson
346950d7b7 Add a PathManager that takes care of all paths and creating folders
Move all path/folder-related code from SettingManager to PathManager
2018-01-05 02:38:22 +01:00
Rasmus Karlsson
5f784ce9dc Disable "unreferences formatl parameter" warnings with msvc 2018-01-05 02:38:22 +01:00
fourtf
4a2850c4f5 moved selection into its own file 2018-01-04 23:50:30 +01:00
fourtf
871195265a Merge branch 'master' of https://github.com/fourtf/chatterino2 2018-01-04 02:59:44 +01:00
Rasmus Karlsson
9044700ec6 Convert remaining settings to the new settings system 2018-01-04 02:23:59 +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
02845b32d7 added application icon for windows 2018-01-04 00:16:48 +01:00
coral
0e8b50c4e9 New setting menu icons! (#189)
* LUL

* Added system icon for OSX
2018-01-02 03:44:52 +01:00
424eeb05d9 Created helper class IrcMessageHandler 2018-01-01 23:54:54 +01:00
3fc4ddea56 I hate c++ and everything it stands for 2018-01-01 22:29:21 +01:00
5a26d5f17f put singletons into their namespace 2017-12-31 22:58:35 +01:00
ad001431f2 renamed resources to ResourceManager 2017-12-31 02:21:33 +01:00
bfa2f1637e refactored the managers 2017-12-31 00:50:07 +01:00
Cranken
a617873f6a Implemented a new, better looking tooltip. (#158)
* Implemented a new, better looking tooltip.

* Pajlada fix.

* Fixed dragging behaving incorrectly.

* Fixed out of focus hovering getting stuck.
2017-12-23 22:17:38 +01:00
fourtf
fc81b118c7 replaced qt font scaling
remove the qt font scaling and added code that uses the actual scale/dpi value
2017-12-23 21:18:13 +01:00
Rasmus Karlsson
2bd80763e7 Fix some obvious warnings
Ignore some stupid warnings
2017-12-22 15:13:42 +01:00
Rasmus Karlsson
be3c85d72d Move some variables into const.hpp
Clean up some code in the AccountManager
2017-12-19 16:13:02 +01:00
Rasmus Karlsson
1a870685b0 Implement the "inline" account switch button
Make the account switch listview into a widget
2017-12-19 02:17:01 +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
e060f87b3c hehe fourtf 2017-12-17 00:01:42 +01:00
7f18cefee4 renamed a bunch of files and classes 2017-11-12 17:21:50 +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
fourtf
f0c21f5b49 refactored message drawing and layouting 2017-10-11 10:34:04 +02:00
Matija
7a99d90337 Made libcommuni show as 'libcommuni' in Qt Creator instead of 'src' (#121) 2017-10-08 15:34:06 +02:00
hemirt
e7e4ab768b Fix image loading slowness
Images are now loaded in another thread
2017-10-08 15:18:47 +02:00
Rasmus Karlsson
81e06f3a53 debug::Log can now be used instead of qDebug()
Usage:
```
QString string("world");
debug::Log("hello: {}", string);
```
2017-09-24 19:23:07 +02:00
fourtf
14511e10ef HiDPI commit 2017-09-22 00:50:43 +02:00
fourtf
222eedcd21 added gotToBottom and EnableNonClientDpiScaling 2017-09-21 17:34:41 +02:00
fourtf
3e24752477 fixed project code style in some files 2017-09-21 12:15:01 +02:00
fourtf
bd4601a5d4 added MessageColor to represet special colors 2017-09-21 00:54:10 +02:00
fourtf
a4995201f5 changed some filenames and stuff like that 2017-09-16 16:20:10 +02:00
fourtf
c7b3480aaf ChatWidgetView -> ChannelView, added Emote Picker 2017-09-16 00:05:06 +02:00
fourtf
84c23a5d00 modified buttons a bit 2017-09-15 17:23:49 +02:00
Confuseh
6ec8f6e032 Quality options for Streamlink (#103)
* added quality options for streamlink

* wrong default value
2017-09-11 23:35:59 +02:00
Rasmus Karlsson
a82774543c Fix warnings/reformat some code 2017-08-12 15:58:46 +02:00
fourtf
5df4cec55e removed winsdk
commented out winsdk for now as it is not being used right now
2017-08-05 16:23:43 +02:00
Rasmus Karlsson
65e18d4833 Remove unused Emojis class/cpp file 2017-07-31 21:57:21 +02:00
Cranken
8fb0671834 Added Highlights (#86)
Added Highlights
2017-07-31 00:37:22 +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
9b13581fa8 Include third party string-formatting lib 2017-07-23 11:57:30 +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
hemirt
2425ddbd2c Implement basic tab autocomplete (#75) 2017-07-09 00:09:02 +02:00
Rasmus Karlsson
ddf886eaf1 Add basic color scheme handling
Fix #59
2017-07-02 14:28:37 +02:00
Rasmus Karlsson
c2e67e4b90 attempt to implement urlFetch with a timeout 2017-06-26 15:53:43 +02:00
Rasmus Karlsson
7525dae768 work on dynamic badge-loading 2017-06-15 23:13:01 +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
2305afe700 add humanize as a dependency 2017-06-11 21:01:08 +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
ccf8e3bd83 move around files 2017-06-06 14:48:14 +02:00
Rasmus Karlsson
196bbace85 fix dependencies stuff 2017-06-06 11:18:16 +02:00
Rasmus Karlsson
548fbe5866 rename twitchaccount file to twitchuser to match class name 2017-05-30 15:22:44 +02:00
hemirt
a9a68add38 disable unwanted warnings (#45) 2017-05-28 00:35:38 +02:00
hemirt
e7b727fa64 fix MSVC (2015) libcommuni link errors, and use correct warn flag (#44)
* use fixed libcommuni submodule

* warn flag -W4 should be used for MSVS instead of -Wall, move libcommuni
define and include together

* define correct warning flags for MSVC and else
2017-05-27 23:35:58 +02:00
Rasmus Karlsson
896cf7a03b Add werr flag to bail on error
Add more specific warning flags

Add .clang-format symlinks to each source folder
2017-05-27 16:14:44 +02:00
fourtf
95c7ae9f18 fixed message cursor positions 2017-04-24 23:00:26 +02:00
fourtf
c2937eb7b3 renamed "user" to "account" 2017-04-18 02:29:32 +02:00
fourtf
34b9057f7e fixed compiling 2017-04-18 01:05:59 +02:00
fourtf
a0d29ebae8 added namespace comments 2017-04-14 17:47:28 +02:00
hemirt
5db315b522 dont use windows min max macros (#37)
* windowmanager destructor free _mainwindow, fix save - remove const in
settingsPath that is being written to from ptree tree

* syntax error

* remove destructor, _mainWindow does not need any special cleanup, let OS claim the resource

* nominmax
2017-04-14 14:25:49 +02:00
fourtf
11fed12be1 changed application data path from %appdata%/chatterino to
%appdata%/chatterino2
2017-04-13 18:51:46 +02:00
fourtf
96db82e867 refactoring 2017-04-12 17:46:44 +02:00
Rasmus Karlsson
46f432890f Simple logging implemented
Message now stores a copy of the content string
Use .nick() instead of .account() to get the users lowercase name (login name)
2017-03-11 11:38:47 +01:00
fourtf
c6c90d9f50 added another level of unneeded abstraction 2017-02-02 22:15:09 +01:00
fourtf
93660233fd added limited queue 2017-02-02 20:35:12 +01:00
daniel
dd3843cf6d fixed project file for macOS 2017-01-31 22:41:12 +01:00
fourtf
ceded7ff96 added stuff 2017-01-29 13:23:22 +01:00
fourtf
de8f6d1e82 added settingsdialog cancel 2017-01-24 19:51:57 +01:00
fourtf
9041dbf014 removed settings namespace 2017-01-23 16:38:06 +01:00
Rasmus Karlsson
5429e62e73 Utilize templates for Settings class
Use boost2::signals for the valueChanged signal (a LOT less messy to
        deal with than qt signals)
Remove unused settings classes (BoolSetting, FloatSetting, IntSetting,
        StringSetting)

What's left: Implement the remaining signals
2017-01-22 23:02:48 +01:00
Rasmus Karlsson
0ad5536c23 Require boost (sorry) 2017-01-22 22:56:10 +01:00
Rasmus Karlsson
a92c020477 Require C++14 instead of C++11 2017-01-22 22:55:33 +01:00
fourtf
a114bd1204 added auto resizing input & settings 2017-01-21 05:14:27 +01:00
fourtf
d215bd58b0 added settings 2017-01-20 06:10:28 +01:00
fourtf
2e8dc63a95 added namespaces 2017-01-18 21:30:23 +01:00
confuseh
5eb7349b57 getting rid of tons of warnings 2017-01-18 13:48:42 +00:00
fourtf
fa049cf420 added color normalizer for dark theme 2017-01-18 01:04:54 +01:00
fourtf
91e3976a09 input of channel names 2017-01-17 00:15:44 +01:00
fourtf
bacb183cdb added option to refresh only certain channels 2017-01-16 15:06:12 +01:00
fourtf
1194905646 chatwidgetview refreshes on new message 2017-01-16 03:15:07 +01:00
Rasmus Karlsson
5b3288dc32 require c++11 for the project (not sure if we need more) 2017-01-15 11:21:41 -05:00
fourtf
801e7b8a1e updated messages 2017-01-15 16:38:30 +01:00
fourtf
4dbe2b0254 added emote loading 2017-01-13 18:59:11 +01:00
fourtf
580a411e9d added spicy new segfaults 2017-01-11 01:08:20 +01:00
fourtf
82bc101bb8 added emojis 2017-01-06 23:28:48 +01:00
fourtf
4d96dcc5e3 asd 2017-01-05 20:49:33 +01:00
Rasmus Karlsson
7262c11458 the preprocessor command #warning is not standard.
use #pragma message WARN("xD") to make it work on gcc and msvc
2017-01-05 16:42:26 +01:00
fourtf
b7de109335 added words and message 2017-01-05 16:07:20 +01:00
fourtf
7a7b714e78 sdf 2017-01-04 15:12:31 +01:00
fourtf
2b4fa8071f asd 2017-01-03 21:19:33 +01:00
fourtf
a75cfa61f7 commit for hemirt 2017-01-01 18:43:52 +01:00
fourtf
a290f88685 added basic channel and fixed moving splits 2017-01-01 13:07:36 +01:00
fourtf
8b8b9706b3 classic fourtf commit 2017-01-01 02:30:42 +01:00
fourtf
4d1a0dd343 hemirt BabyRage 2016-12-30 19:20:04 +01:00
fourtf
42b5de161d asd 2016-12-30 12:46:03 +01:00
fourtf
2ce96a05bc added basic tabs 2016-12-30 12:20:26 +01:00
fourtf
b9073b3cc2 first commit 2016-12-29 17:31:07 +01:00