Commit graph

256 commits

Author SHA1 Message Date
fourtf 96103de1ea fixed tiny badges 2018-05-23 20:13:55 +02:00
fourtf 65846fe1c7 scaling emotes and badges 2018-05-23 13:31:55 +02:00
fourtf dafbda6a4a asdf 2018-05-23 04:22:17 +02:00
fourtf 4d3437e6d1 fixed timeouts for non moderators 2018-05-17 13:43:01 +02:00
fourtf d24e1f8314 fixed selections moving when new messages come in while selecting 2018-05-17 12:17:31 +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 34a58021bc added basic alternating messages backgrounds 2018-05-06 14:39:27 +02:00
fourtf ba4173822e created base for all the list based settings 2018-05-06 00:32:45 +02:00
Rasmus Karlsson 0f22d9d002 move pubsub stuff to the providers/twitch namespace and folder 2018-04-28 15:48:49 +02:00
Rasmus Karlsson 2f195891cd Finish up singleton refactoring into one giant class 2018-04-28 15:20:18 +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
Rasmus Karlsson 32b6417a55 Combine Ban/Timeout pubsub actions
Fully implement PubSub ban/unban messages
Move the "message combining" to Channel::addMessage

Disable "irc" ban/timeout handling for now. In the future, we might want
to use this if you're not a moderator in a channel.
2018-04-27 18:35:31 +02:00
fourtf 859f4aefcb added new TupleTableModel for settingsdialog 2018-04-25 14:51:22 +02:00
fourtf 4743e9f86c only connect to the gif frame update signal for gif emotes 2018-04-18 17:20:33 +02:00
fourtf 692563fd8e adjusted optimization 2018-04-18 17:10:17 +02:00
fourtf 4c99f2b5fd decreased lag when opening the emote/emoji menu 2018-04-18 17:03:37 +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 5fcec26a5c Clarify that a variable is currently unused, but I am unaware forsenKek if should be used later 2018-04-14 22:32:22 +02:00
Rasmus Karlsson b7266b1640 Fix warnings that occured on linux using clang 2018-04-14 21:59:51 +02:00
fourtf d0a71f37ed fixed text copying if a single word is selected 2018-04-11 22:54:34 +02:00
fourtf c587024c53 Fixes #270 Copying text is broken 2018-04-11 22:54:34 +02:00
fourtf 3ba55ee511 selections now render over all images 2018-04-11 22:54:34 +02:00
fourtf eb26b1fbb3 fixed issue with selecting text and word wrapping 2018-04-11 22:54:34 +02:00
fourtf 91d1af6dd9 Fixes #291 links clickable area 2018-04-11 22:54:34 +02:00
fourtf d2bf99b343 Fixes #276 Color of the moderator buttons are black if the timestamp is disabled 2018-04-11 22:54:34 +02:00
fourtf fffe9c93c4 fixes #307 2018-04-11 22:54:34 +02:00
fourtf 0322c73eb5 fixed an issue where normal emotes would be redrawn like gif emotes 2018-04-11 22:54:34 +02:00
fourtf ed50f1835f added debug information on F10 2018-04-11 22:54:34 +02:00
Rasmus Karlsson 6ea3a1df08 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-11 22:54:34 +02:00
Rasmus Karlsson 4888178079 Reformat 2018-04-11 22:54:34 +02:00
fourtf 05335c6440 removed the chrome style tabs 2018-04-11 22:54:34 +02:00
Rasmus Karlsson 9a4ee07ed4 Fixed an issue where Badges and emotes were not rendered transparently in disabled messages
I'm a master programmator

Fixes #300
2018-04-11 22:54:34 +02:00
Rasmus Karlsson fba2967777 Re-fix timeout message merging
Fix #298
2018-04-11 22:54:34 +02:00
Rasmus Karlsson 010c061a25 Fixes the previous "Disabled message" behaviour
Fixes #295
2018-04-11 22:54:34 +02:00
Rasmus Karlsson 9886021c6a Add "Timeout action" setting 2018-04-11 22:54:34 +02:00
fourtf e047a55da8 fixed compiling on macos 2018-02-05 23:56:16 +01:00
fourtf b351c40d29 refactored irc 2018-02-05 15:11:50 +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 88586b53b7 Switch bitwise operator in message from &= to |=
Flags still don't work for me properly, probably due to EnumFlags not
being fully implemented
2018-01-28 14:24:37 +01:00
fourtf f474db9443 minor changes in MessageLayout 2018-01-28 04:07:45 +01:00
fourtf 772dc97d92 minor changes to MessageColor 2018-01-28 03:57:22 +01:00
fourtf 11775071b9 made Link a struct 2018-01-28 03:52:52 +01:00
fourtf 99aac9eb6a minor code improvements 2018-01-28 03:48:15 +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 fa344deaf0 fixed #237 /mentions 2018-01-23 23:28:06 +01:00
fourtf f42d48860c fixes #249 2018-01-23 22:51:15 +01:00
fourtf 0f4ec70bf3 Fixes #53 last read message indicator 2018-01-23 22:48:33 +01:00
fourtf 418189d39c Fixes #230 appearence settings not updating 2018-01-23 22:00:58 +01:00
fourtf 8a77f918f6 fixed timestamps not updating when changed in the settings 2018-01-23 21:56:25 +01:00
fourtf 91d45214d9 fixed emotes settings a little bit 2018-01-23 21:35:42 +01:00
fourtf 135f9910f8 renamed template method from "append" to "emplace"
to be in line with the std library naming scheme
2018-01-22 14:39:24 +01:00
fourtf bd50b2ae79 Fixes #248 user color not normalized 2018-01-22 14:35:51 +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
fourtf f3357cf0f4 Fixes #225 fix am/pm for timestamps 2018-01-17 18:36:12 +01:00
fourtf b3951262c8 messages refresh when toggeling the button 2018-01-17 17:02:34 +01:00
fourtf e694214243 added toggle for moderation mode 2018-01-17 16:52:51 +01:00
fourtf 91fca258bf fixed searching 2018-01-17 14:25:03 +01:00
fourtf 6d6b99f3ef added moderation buttons 2018-01-17 14:14:31 +01:00
fourtf db41044daf Fixed #216 bundles connected and disconnected 2018-01-17 03:10:21 +01:00
fourtf e1ff4c818e added background color to the accountswitchwidget 2018-01-17 02:22:57 +01:00
nuuls 6f95a219a7
fixed it 2018-01-16 22:37:06 +01:00
fourtf 0ca916717c added basic buggy text copying 2018-01-16 02:39:31 +01:00
fourtf c01843977b fixed word wrapping 2018-01-16 00:56:17 +01:00
fourtf 385f9e44d0 fixed text selection color 2018-01-16 00:34:32 +01:00
fourtf a190eda075 fixed text selection 2018-01-16 00:26:04 +01:00
fourtf 6701c3d0b2 fixed compiling 2018-01-15 04:08:48 +01:00
fourtf c79f88ed10 fixed gif emotes being offset 2018-01-13 03:08:31 +01:00
fourtf 9703cf6ad4 fixed gif emotes not drawing 2018-01-13 02:13:59 +01:00
fourtf 40733ca312 fixed disabled messages not being greyed out 2018-01-13 02:03:53 +01:00
fourtf e0bb061c81 refactored the settings dialog 2018-01-12 23:09:27 +01:00
Rasmus Karlsson 3c8c793e47 Add missing return in MessageElement::setTrailingSpace 2018-01-12 18:42:13 +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
fourtf 20eab57db5 added highlights to the scrollbar 2018-01-06 03:48:56 +01:00
fourtf 99f2d0dd27 fixed type of Message::Flags 2018-01-06 00:02: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
fourtf df81a0e5a5 Pause chat while hovering. Fixes #208
Also pauses when clicking with double-click-links enabled and while
selecting text
2018-01-05 11:22:51 +01:00
fourtf 43568556be Fixes #195 2018-01-05 01:31:01 +01:00
fourtf 4a2850c4f5 moved selection into its own file 2018-01-04 23:50:30 +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
3e5937011a the rewrite that nobody wanted 2018-01-02 02:15:11 +01:00
330a79f6f1 made message grey out when user it timed out 2018-01-01 23:29: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
1940b0197c emotes now have less margin 2017-12-28 17:46:36 +01:00
Cranken 223f4af55a Implemented loading recent messages. (#162) 2017-12-27 01:22:12 +01:00
Rasmus Karlsson 13b39e374b Tabs now highlight when a highlight is received
Work on #88
2017-12-26 12:32:24 +01:00
fourtf 72ed52c35c fixed system messages not splitting words properly 2017-12-24 00:24:35 +01:00
fourtf 2bf53f73f8 oh no the bad commit descriptions are back D: 2017-12-23 23:24:35 +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 4b36893818 Add simple tooltip system 2017-12-19 03:38:42 +01:00
fourtf c950e9c58a added some code for collapsing messages 2017-12-19 00:10:03 +01:00
Rasmus Karlsson 03958420be We now also add localized names to the autocompletion
Changed the login name in autocompletion to the display name
Autocompletion model is now only updated on the "first completion"
2017-12-17 21:05:48 +01:00
Rasmus Karlsson 5839b9f522 add username to message (simple) 2017-12-17 17:48:46 +01:00
5cb33647dc fixed splits not redrawing after font changed 2017-12-17 03:26:23 +01:00
Rasmus Karlsson 70cbb9df7f Make more use of single pattern 2017-12-17 02:18:13 +01:00
202cdeaefb Merge branch 'master' of https://github.com/fourtf/chatterino2 2017-12-17 01:55:30 +01:00
dd11c56b9a fixed msgs not layouting after changing settings 2017-12-17 01:54:15 +01:00
Rasmus Karlsson eb8e14b8fe Move more settings over to pajlada settings system 2017-12-17 01:19:56 +01:00
269a5500d8 Merge branch 'master' of https://github.com/fourtf/chatterino2 2017-12-17 00:07:03 +01:00
f36d346a4f dpi 2017-12-17 00:06:24 +01:00
Rasmus Karlsson e060f87b3c hehe fourtf 2017-12-17 00:01:42 +01:00
Rasmus Karlsson 357515ab39 createTimeoutMessage now also handles permaban-messages 2017-12-16 19:45:23 +01:00
Rasmus Karlsson 6d56148ed2 Implement basic ClearChat handling
Fixes #56
2017-12-16 19:08:32 +01:00
Rasmus Karlsson b39034ab74 Move message timestamp-code to its own function 2017-12-16 19:03:22 +01:00
Rasmus Karlsson 87203c1120 Add system messages upon connecting/disconnecting 2017-12-16 18:13:40 +01:00
Rasmus Karlsson 3cc19bd4ce reformat messagecolor class 2017-12-16 17:53:48 +01:00
Rasmus Karlsson 064daaa77a selections can now start outside of a message
This means in the empty space under any available messages
2017-11-04 13:17:35 +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
hemirt bdee9fff70 fix image loader scrollbar crash (#129)
* fix image loader scrollbar crash
2017-10-11 14:46:56 +02:00
fourtf f0c21f5b49 refactored message drawing and layouting 2017-10-11 10:34:04 +02:00
Rasmus Karlsson 19630bf91b Clean up ImageLoaderManager
Unpointered NetworkAccessManager
Removed debug output
Removed unneeded includes
2017-10-08 15:30:55 +02:00
hemirt e7e4ab768b Fix image loading slowness
Images are now loaded in another thread
2017-10-08 15:18:47 +02:00
Matija cb8846c0ae Threaded image downloading (#118) 2017-09-28 22:24:03 +02:00
Rasmus Karlsson c14dc43b18 fix highlights - reformat some stuff 2017-09-24 18:43:24 +02:00
fourtf 3e24752477 fixed project code style in some files 2017-09-21 12:15:01 +02:00
fourtf 8eaca85402 increased limit for messages to 1000 2017-09-21 02:22:35 +02:00
fourtf ab641abd9c fixed ctrl+c to copy text 2017-09-21 02:20:02 +02:00
fourtf bd4601a5d4 added MessageColor to represet special colors 2017-09-21 00:54:10 +02:00
Rasmus Karlsson 51e5d198fb fix message deleting bug 2017-09-17 04:39:30 +02:00
fourtf c7b3480aaf ChatWidgetView -> ChannelView, added Emote Picker 2017-09-16 00:05:06 +02:00
fourtf 81b1a8774b added text selection 2017-09-12 19:06:16 +02:00
Rasmus Karlsson a82774543c Fix warnings/reformat some code 2017-08-12 15:58:46 +02:00
Rasmus Karlsson ac6db75dc6 Reformat according to .clang-format 2017-08-12 12:09:26 +02:00
fourtf e1364f2bd2 gave links color 2017-08-05 18:44:14 +02:00
Rasmus Karlsson 42cbc30ad6 fix regex again :bbona: 2017-08-01 13:28:12 +02:00
Rasmus Karlsson 62a1148c02 fix link regex (Thanks Cranken1337) 2017-07-31 22:26:48 +02:00
Cranken 5feaf4c8eb Implemented the accountpopup. Also fixed regex again. (#89) 2017-07-31 22:14:54 +02:00
Cranken a975e15573 Fixed regex triggering on everything. (#87) 2017-07-31 14:23:23 +02:00
Rasmus Karlsson 626002c8ff reformat code 2017-07-31 00:57:42 +02:00
Cranken 8fb0671834 Added Highlights (#86)
Added Highlights
2017-07-31 00:37:22 +02:00
Cranken f787d3f464 Added support for non http/https links. (#82) 2017-07-26 12:01:23 +02:00
Rasmus Karlsson b3b89e8019 Made links open in browser 2017-07-26 09:08:19 +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 8f4e20db8e Rework badge types to fit with the way twitch sends badges 2017-06-16 10:11:44 +02:00
Rasmus Karlsson 8715cf14ac Add "Miscellaneous" badge type for i.e. game badges 2017-06-16 09:57:08 +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
Rasmus Karlsson 2305afe700 add humanize as a dependency 2017-06-11 21:01:08 +02:00