summaryrefslogtreecommitdiff
path: root/src/startup.hpp
blob: a0123e429fac70ccb42e1590f5c961db8bb4e011 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#pragma once

#include <optional>

#include <glibmm/dispatcher.h>
#include <gtkmm/messagedialog.h>

// fetch cookies, build number async

class DiscordStartupDialog : public Gtk::MessageDialog {
public:
    DiscordStartupDialog(Gtk::Window &window);

    [[nodiscard]] std::optional<std::string> GetCookie() const;
    [[nodiscard]] std::optional<uint32_t> GetBuildNumber() const;

private:
    void RunAsync();

    void DispatchCallback();

    Glib::Dispatcher m_dispatcher;

    std::optional<std::string> m_cookie;
    std::optional<uint32_t> m_build_number;
};