2018-04-14 12:09:06 +00:00
|
|
|
using Gtk;
|
|
|
|
using Granite;
|
|
|
|
|
|
|
|
namespace Tootle{
|
|
|
|
|
|
|
|
public static Application app;
|
|
|
|
public static MainWindow window;
|
2018-04-27 18:50:08 +00:00
|
|
|
|
|
|
|
public static SettingsManager settings;
|
|
|
|
public static AccountManager accounts;
|
|
|
|
public static NetManager network;
|
|
|
|
public static CacheManager cache;
|
2018-04-14 12:09:06 +00:00
|
|
|
|
|
|
|
public class Application : Granite.Application {
|
|
|
|
|
|
|
|
public abstract signal void toast(string title);
|
2018-04-29 16:04:26 +00:00
|
|
|
public abstract signal void error(string title, string text);
|
2018-04-14 12:09:06 +00:00
|
|
|
|
|
|
|
construct {
|
|
|
|
application_id = "com.github.bleakgrey.tootle";
|
|
|
|
flags = ApplicationFlags.FLAGS_NONE;
|
|
|
|
program_name = "Toot";
|
|
|
|
build_version = "0.1.0";
|
2018-04-27 18:50:08 +00:00
|
|
|
settings = new SettingsManager ();
|
|
|
|
accounts = new AccountManager ();
|
|
|
|
network = new NetManager ();
|
|
|
|
cache = new CacheManager ();
|
2018-04-14 12:09:06 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
public static int main (string[] args) {
|
|
|
|
app = new Application ();
|
|
|
|
return app.run (args);
|
|
|
|
}
|
|
|
|
|
|
|
|
protected override void startup () {
|
|
|
|
base.startup ();
|
|
|
|
Granite.Services.Logger.DisplayLevel = Granite.Services.LogLevel.DEBUG;
|
|
|
|
window = new MainWindow (this);
|
|
|
|
}
|
|
|
|
|
|
|
|
protected override void activate () {
|
|
|
|
window.present ();
|
2018-04-27 18:50:08 +00:00
|
|
|
var has_token = Tootle.accounts.has_access_token();
|
2018-04-14 17:53:09 +00:00
|
|
|
if(has_token)
|
2018-04-27 18:50:08 +00:00
|
|
|
Tootle.accounts.update_current ();
|
2018-04-14 17:53:09 +00:00
|
|
|
else
|
2018-04-27 18:50:08 +00:00
|
|
|
Tootle.accounts.switched (null);
|
2018-04-14 12:09:06 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|