Chat client for https://twitch.tv
Find a file
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
dependencies windows builds now use rapidjson from a submodule 2018-01-07 03:32:03 +01:00
docs added streamview widget 2018-01-19 14:49:21 +01:00
forms Rework the Account Popup Widget 2018-01-18 18:20:40 +01:00
lib made the code actually compile 2018-01-22 20:14:43 +01:00
resources removed "2" from the about page logo 2018-01-24 15:35:23 +01:00
src Switch some c-style includes to c++-style includes (i.e. stdint.h to 2018-04-11 22:54:34 +02:00
.clang-format Move clang-format file to the correct path 2017-05-27 14:59:26 +02:00
.gitignore New setting menu icons! (#189) 2018-01-02 03:44:52 +01:00
.gitmodules windows builds now use rapidjson from a submodule 2018-01-07 03:32:03 +01:00
.travis.yml started adding text selection 2017-02-17 23:51:35 +01:00
chatterino.pro Switch some c-style includes to c++-style includes (i.e. stdint.h to 2018-04-11 22:54:34 +02:00
ISSUE_TEMPLATE.md Create ISSUE_TEMPLATE.md 2018-01-07 00:16:26 +01:00
LICENSE Add LICENSE file (#130) 2017-10-13 21:57:43 +02:00
README.md Update README.md 2018-01-23 14:51:54 +01:00

alt text Chatterino 2

Chatterino 2 is the second installment of the Twitch chat client series "Chatterino". For now you can check out Chatterino 1 at https://chatterino.com.

Code style

The code is normally formated using clang format in Qt Creator. .clang-format contains the style file for clang format.

To setup automatic code formating with QT Creator, see this guide.

Building

Before building run git submodule update --init --recursive to get required submodules.

Windows

Using Qt Creator

Visual Studio 2017

Install Visual Studio 2017 and select "Desktop development with C++" and "Universal Windows Platform development. download the boost library and extract it to C:\local\boost

open-ssl
  1. download binaries for OpenSSL >= 1.0.2 or compile it from source. example download
  2. Place libeay32.dll and ssleay32.dll from OpenSSL in a directory in PATH.

Using MSYS2

Building using MSYS2 can be quite easier process. Check out MSYS2 at msys2.org. Be sure to add "-j <number of cores*2>" as a make argument so it will use all your cpu cores to build. example setup

  1. open appropriate MSYS2 terminal and do pacman -S mingw-w64-<arch>-boost mingw-w64-<arch>-qt5 mingw-w64-<arch>-rapidjson where <arch> is x86_64 or i686
  2. go into the project directory
  3. create build folder mkdir build && cd build
  4. qmake .. && mingw32-make

Linux

Ubuntu 16.04.2 LTS

most likely works the same for other Debian-like distros

  1. install QT Creator sudo apt-get install qtcreator qtmultimedia5-dev
  2. install boost-dev sudo apt-get install libboost-dev
  3. copy include/rapidjson from rapidjson into the chatterino directory so that the file <chatterino2 directory>/rapidjson/document.h exists
  4. open chatterino.pro with QT Creator and build

Arch Linux

install chatterino2-git from the aur or build manually as follows:

  1. sudo pacman -S qt5-base qt5-multimedia gst-plugins-ugly gst-plugins-good boost rapidjson
  2. go into project directory
  3. create build folder mkdir build && cd build
  4. qmake .. && make

Mac OSX

  1. install Xcode and Xcode Command Line Utilites
  2. install Qt Creator
  3. install brew https://brew.sh/
  4. brew install boost openssl rapidjson
  5. build the project using Qt Creator