diff --git a/src/ChatPage.h b/src/ChatPage.h
index 9bc5fb730e4a45980a93418a3e4d5e3a3ebaefc6..8e2e91920179524bd4f5a97d94613f79819beff1 100644
--- a/src/ChatPage.h
+++ b/src/ChatPage.h
@@ -65,7 +65,7 @@ class ChatPage : public QWidget
         Q_OBJECT
 
 public:
-        ChatPage(QSharedPointer<UserSettings> userSettings, QWidget *parent = 0);
+        ChatPage(QSharedPointer<UserSettings> userSettings, QWidget *parent = nullptr);
 
         // Initialize all the components of the UI.
         void bootstrap(QString userid, QString homeserver, QString token);
diff --git a/src/LoginPage.cpp b/src/LoginPage.cpp
index c06137c91e15c600fe8193d327d2bbb9636d3ddc..c3919b9310dcbcc7fe4b520776f28d8da5b56eb7 100644
--- a/src/LoginPage.cpp
+++ b/src/LoginPage.cpp
@@ -111,7 +111,7 @@ LoginPage::LoginPage(QWidget *parent)
 
         form_layout_->addLayout(matrixidLayout_);
         form_layout_->addWidget(password_input_);
-        form_layout_->addWidget(deviceName_, Qt::AlignHCenter, 0);
+        form_layout_->addWidget(deviceName_, Qt::AlignHCenter, nullptr);
         form_layout_->addLayout(serverLayout_);
 
         button_layout_ = new QHBoxLayout();
diff --git a/src/LoginPage.h b/src/LoginPage.h
index 99c249b10bdc79a7de5ff750be6881fe85ae140d..4b84abfc880519f3b996116c3275d963738cff73 100644
--- a/src/LoginPage.h
+++ b/src/LoginPage.h
@@ -38,7 +38,7 @@ class LoginPage : public QWidget
         Q_OBJECT
 
 public:
-        LoginPage(QWidget *parent = 0);
+        LoginPage(QWidget *parent = nullptr);
 
         void reset();
 
diff --git a/src/MainWindow.h b/src/MainWindow.h
index 1aadbf4d3c0801ded621a1f426efdb6ab6c82010..59f29d5017866324ffaff68ccc5c85f61af197b2 100644
--- a/src/MainWindow.h
+++ b/src/MainWindow.h
@@ -62,7 +62,7 @@ class MainWindow : public QMainWindow
         Q_OBJECT
 
 public:
-        explicit MainWindow(QWidget *parent = 0);
+        explicit MainWindow(QWidget *parent = nullptr);
 
         static MainWindow *instance() { return instance_; };
         void saveCurrentWindowSize();
diff --git a/src/RegisterPage.cpp b/src/RegisterPage.cpp
index 76721036eb3d75cc8a1f4a194585df1da172eece..2688e9a91d6eca4d9f71be3de41c0be3693c1653 100644
--- a/src/RegisterPage.cpp
+++ b/src/RegisterPage.cpp
@@ -90,10 +90,10 @@ RegisterPage::RegisterPage(QWidget *parent)
         server_input_ = new TextField();
         server_input_->setLabel(tr("Home Server"));
 
-        form_layout_->addWidget(username_input_, Qt::AlignHCenter, 0);
-        form_layout_->addWidget(password_input_, Qt::AlignHCenter, 0);
-        form_layout_->addWidget(password_confirmation_, Qt::AlignHCenter, 0);
-        form_layout_->addWidget(server_input_, Qt::AlignHCenter, 0);
+        form_layout_->addWidget(username_input_, Qt::AlignHCenter, nullptr);
+        form_layout_->addWidget(password_input_, Qt::AlignHCenter, nullptr);
+        form_layout_->addWidget(password_confirmation_, Qt::AlignHCenter, nullptr);
+        form_layout_->addWidget(server_input_, Qt::AlignHCenter, nullptr);
 
         button_layout_ = new QHBoxLayout();
         button_layout_->setSpacing(0);
diff --git a/src/RegisterPage.h b/src/RegisterPage.h
index b05cf150f0965d4ceb8587b50eebe301152ac78f..96a5b3ca1e6e7af3f57b2b5f57fc59e00f7481d3 100644
--- a/src/RegisterPage.h
+++ b/src/RegisterPage.h
@@ -30,7 +30,7 @@ class RegisterPage : public QWidget
         Q_OBJECT
 
 public:
-        RegisterPage(QWidget *parent = 0);
+        RegisterPage(QWidget *parent = nullptr);
 
 protected:
         void paintEvent(QPaintEvent *event) override;
diff --git a/src/RoomInfoListItem.h b/src/RoomInfoListItem.h
index 16553c733825f66f18df7431cbbfce65d804f591..5cb9e83c9750fb1d83a55a14c02af8935a79cdd8 100644
--- a/src/RoomInfoListItem.h
+++ b/src/RoomInfoListItem.h
@@ -65,7 +65,7 @@ class RoomInfoListItem : public QWidget
         Q_PROPERTY(QColor btnTextColor READ btnTextColor WRITE setBtnTextColor)
 
 public:
-        RoomInfoListItem(QString room_id, const RoomInfo &info, QWidget *parent = 0);
+        RoomInfoListItem(QString room_id, const RoomInfo &info, QWidget *parent = nullptr);
 
         void updateUnreadMessageCount(int count, int highlightedCount);
         void clearUnreadMessageCount() { updateUnreadMessageCount(0, 0); };
diff --git a/src/RoomList.h b/src/RoomList.h
index 51a2404372189ab5b29b0b99b98ca60bdb8dc41f..fef552c6bcdee8e42992c06e9df3ed8fb111634e 100644
--- a/src/RoomList.h
+++ b/src/RoomList.h
@@ -35,7 +35,7 @@ class RoomList : public QWidget
         Q_OBJECT
 
 public:
-        explicit RoomList(QWidget *parent = 0);
+        explicit RoomList(QWidget *parent = nullptr);
 
         void initialize(const QMap<QString, RoomInfo> &info);
         void sync(const std::map<QString, RoomInfo> &info);
diff --git a/src/TextInputWidget.h b/src/TextInputWidget.h
index 3674ee0d8ab905ab29624a9fec986bca0c0655f4..ac79be8befa87f441d5f16f1519a48bbdd0fc03c 100644
--- a/src/TextInputWidget.h
+++ b/src/TextInputWidget.h
@@ -142,7 +142,7 @@ class TextInputWidget : public QWidget
         Q_PROPERTY(QColor borderColor READ borderColor WRITE setBorderColor)
 
 public:
-        TextInputWidget(QWidget *parent = 0);
+        TextInputWidget(QWidget *parent = nullptr);
 
         void stopTyping();
 
diff --git a/src/TopRoomBar.h b/src/TopRoomBar.h
index 5ab25f397695f4e31b2324f59e2e378f3ed44596..63ce847e13cd6788789ab3010932285138f16879 100644
--- a/src/TopRoomBar.h
+++ b/src/TopRoomBar.h
@@ -40,7 +40,7 @@ class TopRoomBar : public QWidget
         Q_PROPERTY(QColor borderColor READ borderColor WRITE setBorderColor)
 
 public:
-        TopRoomBar(QWidget *parent = 0);
+        TopRoomBar(QWidget *parent = nullptr);
 
         void updateRoomAvatar(const QString &avatar_image);
         void updateRoomAvatar(const QIcon &icon);
diff --git a/src/UserInfoWidget.h b/src/UserInfoWidget.h
index 263dd0c22823cc97746a65a19d133003e0c45739..e1a925a478ea3f8a489a3386dabbdd74b175150b 100644
--- a/src/UserInfoWidget.h
+++ b/src/UserInfoWidget.h
@@ -31,7 +31,7 @@ class UserInfoWidget : public QWidget
         Q_PROPERTY(QColor borderColor READ borderColor WRITE setBorderColor)
 
 public:
-        UserInfoWidget(QWidget *parent = 0);
+        UserInfoWidget(QWidget *parent = nullptr);
 
         void setDisplayName(const QString &name);
         void setUserId(const QString &userid);
diff --git a/src/UserSettingsPage.h b/src/UserSettingsPage.h
index 8658e80e0f86205d8693ca61c9d27820820d7f31..299905abd9ea0126289f803ff753063f14a6f7b5 100644
--- a/src/UserSettingsPage.h
+++ b/src/UserSettingsPage.h
@@ -147,7 +147,7 @@ class UserSettingsPage : public QWidget
         Q_OBJECT
 
 public:
-        UserSettingsPage(QSharedPointer<UserSettings> settings, QWidget *parent = 0);
+        UserSettingsPage(QSharedPointer<UserSettings> settings, QWidget *parent = nullptr);
 
 protected:
         void showEvent(QShowEvent *event) override;
diff --git a/src/WelcomePage.h b/src/WelcomePage.h
index 480dc702fe254473e6d0cf4fd479eb9449f334ac..ae6602154584ba18bdd7b7c74ae88100a471177d 100644
--- a/src/WelcomePage.h
+++ b/src/WelcomePage.h
@@ -7,7 +7,7 @@ class WelcomePage : public QWidget
         Q_OBJECT
 
 public:
-        explicit WelcomePage(QWidget *parent = 0);
+        explicit WelcomePage(QWidget *parent = nullptr);
 
 protected:
         void paintEvent(QPaintEvent *) override;
diff --git a/src/dialogs/ImageOverlay.cpp b/src/dialogs/ImageOverlay.cpp
index cbdd351cb28d435a0d5145b65496c719f85823a9..a98c39c2ed0480da161a2bfb43356148fec94eef 100644
--- a/src/dialogs/ImageOverlay.cpp
+++ b/src/dialogs/ImageOverlay.cpp
@@ -32,7 +32,7 @@ ImageOverlay::ImageOverlay(QPixmap image, QWidget *parent)
   , originalImage_{image}
 {
         setMouseTracking(true);
-        setParent(0);
+        setParent(nullptr);
 
         setWindowFlags(windowFlags() | Qt::FramelessWindowHint);
 
diff --git a/src/popups/ReplyPopup.cpp b/src/popups/ReplyPopup.cpp
index 42a5a6d37f462efcf7896ee18aa05daf53bbc2f5..5058c039c541bb3e4c8095b4e04755ec02e1d4a5 100644
--- a/src/popups/ReplyPopup.cpp
+++ b/src/popups/ReplyPopup.cpp
@@ -13,9 +13,9 @@
 
 ReplyPopup::ReplyPopup(QWidget *parent)
   : QWidget(parent)
-  , userItem_{0}
-  , msgLabel_{0}
-  , eventLabel_{0}
+  , userItem_{nullptr}
+  , msgLabel_{nullptr}
+  , eventLabel_{nullptr}
 {
         setAttribute(Qt::WA_ShowWithoutActivating, true);
         setWindowFlags(Qt::ToolTip | Qt::NoDropShadowWindowHint);
diff --git a/src/popups/SuggestionsPopup.h b/src/popups/SuggestionsPopup.h
index dcd054f8ba04df9f1a55ad8e11948d4612d67fdd..f84870e7d4e78b87e458145a3091f9f575faad07 100644
--- a/src/popups/SuggestionsPopup.h
+++ b/src/popups/SuggestionsPopup.h
@@ -59,7 +59,7 @@ private:
                 size_t posToRemove = layout_->count() - 1;
 
                 QLayoutItem *item;
-                while (startingPos <= posToRemove && (item = layout_->takeAt(posToRemove)) != 0) {
+                while (startingPos <= posToRemove && (item = layout_->takeAt(posToRemove)) != nullptr) {
                         delete item->widget();
                         delete item;
 
diff --git a/src/timeline/TimelineModel.h b/src/timeline/TimelineModel.h
index fb32f0fb23827ee09e90b7a8709e8568216df98e..2d0e9627a4ddcab6465af012c31293aaaf257f1a 100644
--- a/src/timeline/TimelineModel.h
+++ b/src/timeline/TimelineModel.h
@@ -126,7 +126,7 @@ class TimelineModel : public QAbstractListModel
                      typingUsersChanged)
 
 public:
-        explicit TimelineModel(TimelineViewManager *manager, QString room_id, QObject *parent = 0);
+        explicit TimelineModel(TimelineViewManager *manager, QString room_id, QObject *parent = nullptr);
 
         enum Roles
         {
diff --git a/src/timeline/TimelineViewManager.h b/src/timeline/TimelineViewManager.h
index 5880a38269cf5596b73d4514f5c068ec2f914a3d..8552d6b3656fb49f804256a1df027e96dff6d6f2 100644
--- a/src/timeline/TimelineViewManager.h
+++ b/src/timeline/TimelineViewManager.h
@@ -29,7 +29,7 @@ class TimelineViewManager : public QObject
                      replyingEventChanged)
 
 public:
-        TimelineViewManager(QSharedPointer<UserSettings> userSettings, QWidget *parent = 0);
+        TimelineViewManager(QSharedPointer<UserSettings> userSettings, QWidget *parent = nullptr);
         QWidget *getWidget() const { return container; }
 
         void sync(const mtx::responses::Rooms &rooms);
diff --git a/src/ui/Avatar.h b/src/ui/Avatar.h
index a643c8c46c860a1fcd80407cce4f6516b29aa5d0..d6d0b5c76598a06b145d255bfe727c9b6c6a2793 100644
--- a/src/ui/Avatar.h
+++ b/src/ui/Avatar.h
@@ -15,7 +15,7 @@ class Avatar : public QWidget
         Q_PROPERTY(QColor backgroundColor WRITE setBackgroundColor READ backgroundColor)
 
 public:
-        explicit Avatar(QWidget *parent = 0, int size = ui::AvatarSize);
+        explicit Avatar(QWidget *parent = nullptr, int size = ui::AvatarSize);
 
         void setBackgroundColor(const QColor &color);
         void setIcon(const QIcon &icon);
diff --git a/src/ui/Badge.h b/src/ui/Badge.h
index fd73ad3070bf5d05206705594dedcddc5ed5e3c5..748b56fdc4470c53a0872909fb5f336d5bb7feae 100644
--- a/src/ui/Badge.h
+++ b/src/ui/Badge.h
@@ -16,9 +16,9 @@ class Badge : public OverlayWidget
         Q_PROPERTY(QPointF relativePosition WRITE setRelativePosition READ relativePosition)
 
 public:
-        explicit Badge(QWidget *parent = 0);
-        explicit Badge(const QIcon &icon, QWidget *parent = 0);
-        explicit Badge(const QString &text, QWidget *parent = 0);
+        explicit Badge(QWidget *parent = nullptr);
+        explicit Badge(const QIcon &icon, QWidget *parent = nullptr);
+        explicit Badge(const QString &text, QWidget *parent = nullptr);
 
         void setBackgroundColor(const QColor &color);
         void setTextColor(const QColor &color);
diff --git a/src/ui/FlatButton.h b/src/ui/FlatButton.h
index d29903c2b81f7f80c0fde69e485e3f4e69f8266f..764df6e90b58a20396d79da719ac993f5c9fb008 100644
--- a/src/ui/FlatButton.h
+++ b/src/ui/FlatButton.h
@@ -91,14 +91,14 @@ class FlatButton : public QPushButton
         Q_PROPERTY(qreal fontSize WRITE setFontSize READ fontSize)
 
 public:
-        explicit FlatButton(QWidget *parent         = 0,
+        explicit FlatButton(QWidget *parent         = nullptr,
                             ui::ButtonPreset preset = ui::ButtonPreset::FlatPreset);
         explicit FlatButton(const QString &text,
-                            QWidget *parent         = 0,
+                            QWidget *parent         = nullptr,
                             ui::ButtonPreset preset = ui::ButtonPreset::FlatPreset);
         FlatButton(const QString &text,
                    ui::Role role,
-                   QWidget *parent         = 0,
+                   QWidget *parent         = nullptr,
                    ui::ButtonPreset preset = ui::ButtonPreset::FlatPreset);
         ~FlatButton();
 
diff --git a/src/ui/LoadingIndicator.h b/src/ui/LoadingIndicator.h
index 1585098eff9047296463a79c09c457704922028f..e72a8c4856e637de7105f8a7541f2a38d0915125 100644
--- a/src/ui/LoadingIndicator.h
+++ b/src/ui/LoadingIndicator.h
@@ -12,7 +12,7 @@ class LoadingIndicator : public QWidget
         Q_PROPERTY(QColor color READ color WRITE setColor)
 
 public:
-        LoadingIndicator(QWidget *parent = 0);
+        LoadingIndicator(QWidget *parent = nullptr);
 
         void paintEvent(QPaintEvent *e);
 
diff --git a/src/ui/RaisedButton.h b/src/ui/RaisedButton.h
index edd5ee4a0a63e1214cfcd2a9933e08353a74532a..74543262c657476ce0b43c91c4e7c1a04f9b09fe 100644
--- a/src/ui/RaisedButton.h
+++ b/src/ui/RaisedButton.h
@@ -11,8 +11,8 @@ class RaisedButton : public FlatButton
         Q_OBJECT
 
 public:
-        explicit RaisedButton(QWidget *parent = 0);
-        explicit RaisedButton(const QString &text, QWidget *parent = 0);
+        explicit RaisedButton(QWidget *parent = nullptr);
+        explicit RaisedButton(const QString &text, QWidget *parent = nullptr);
         ~RaisedButton();
 
 protected:
diff --git a/src/ui/Ripple.cpp b/src/ui/Ripple.cpp
index e22c4a62164191f7e141221a635961391a9dc2e4..ef8a62dd1aaaf1f0307ed56d76d51a54b0722567 100644
--- a/src/ui/Ripple.cpp
+++ b/src/ui/Ripple.cpp
@@ -3,7 +3,7 @@
 
 Ripple::Ripple(const QPoint &center, QObject *parent)
   : QParallelAnimationGroup(parent)
-  , overlay_(0)
+  , overlay_(nullptr)
   , radius_anim_(animate("radius"))
   , opacity_anim_(animate("opacity"))
   , radius_(0)
diff --git a/src/ui/Ripple.h b/src/ui/Ripple.h
index 9184f0610765b77af396bfb9c11e2519d7943acd..3701fb6c0c65bc53917147b0fe4e98b1c16a676e 100644
--- a/src/ui/Ripple.h
+++ b/src/ui/Ripple.h
@@ -16,8 +16,8 @@ class Ripple : public QParallelAnimationGroup
         Q_PROPERTY(qreal opacity WRITE setOpacity READ opacity)
 
 public:
-        explicit Ripple(const QPoint &center, QObject *parent = 0);
-        Ripple(const QPoint &center, RippleOverlay *overlay, QObject *parent = 0);
+        explicit Ripple(const QPoint &center, QObject *parent = nullptr);
+        Ripple(const QPoint &center, RippleOverlay *overlay, QObject *parent = nullptr);
 
         inline void setOverlay(RippleOverlay *overlay);
 
diff --git a/src/ui/RippleOverlay.h b/src/ui/RippleOverlay.h
index 9ef91fbf2ade58c267b1bdd4b30f3ab359f77c36..5d12aff7f35dc7641e37937d81d835b8ef8ff338 100644
--- a/src/ui/RippleOverlay.h
+++ b/src/ui/RippleOverlay.h
@@ -11,7 +11,7 @@ class RippleOverlay : public OverlayWidget
         Q_OBJECT
 
 public:
-        explicit RippleOverlay(QWidget *parent = 0);
+        explicit RippleOverlay(QWidget *parent = nullptr);
 
         void addRipple(Ripple *ripple);
         void addRipple(const QPoint &position, qreal radius = 300);
diff --git a/src/ui/TextField.cpp b/src/ui/TextField.cpp
index 0ae2516d7892e60667e84ce051904eea706642b7..6c1552a8b695d5e8c9c04955c1a52eb5ffa0ebb2 100644
--- a/src/ui/TextField.cpp
+++ b/src/ui/TextField.cpp
@@ -16,7 +16,7 @@ TextField::TextField(QWidget *parent)
         QPalette pal;
 
         state_machine_    = new TextFieldStateMachine(this);
-        label_            = 0;
+        label_            = nullptr;
         label_font_size_  = 15;
         show_label_       = false;
         background_color_ = pal.color(QPalette::Window);
@@ -230,9 +230,9 @@ TextFieldStateMachine::TextFieldStateMachine(TextField *parent)
         normal_state_  = new QState;
         focused_state_ = new QState;
 
-        label_       = 0;
-        offset_anim_ = 0;
-        color_anim_  = 0;
+        label_       = nullptr;
+        offset_anim_ = nullptr;
+        color_anim_  = nullptr;
         progress_    = 0.0;
 
         addState(normal_state_);
diff --git a/src/ui/TextField.h b/src/ui/TextField.h
index 1675a2e069bfc0236c81d3f144f85cd46ea773af..100fed31245818a9584c6fe9f4b890a3436f5d1e 100644
--- a/src/ui/TextField.h
+++ b/src/ui/TextField.h
@@ -22,7 +22,7 @@ class TextField : public QLineEdit
         Q_PROPERTY(QColor backgroundColor WRITE setBackgroundColor READ backgroundColor)
 
 public:
-        explicit TextField(QWidget *parent = 0);
+        explicit TextField(QWidget *parent = nullptr);
 
         void setInkColor(const QColor &color);
         void setBackgroundColor(const QColor &color);
diff --git a/src/ui/Theme.h b/src/ui/Theme.h
index d1d7e2a6c63f6d1d3ea1e0d98e552912fb2c79d0..ecff02b5bccb179c4639df00945d2d6d116969d1 100644
--- a/src/ui/Theme.h
+++ b/src/ui/Theme.h
@@ -78,7 +78,7 @@ class Theme : public QObject
 {
         Q_OBJECT
 public:
-        explicit Theme(QObject *parent = 0);
+        explicit Theme(QObject *parent = nullptr);
 
         QColor getColor(const QString &key) const;