using Gtk;
-class IdentityManagerApp : Window {
+class IdentityManagerApp {
public IdentityManagerModel model;
private IdentityManagerView view;
private MoonshotServer ipc_server;
#if OS_MACOS
public OSXApplication osxApp;
+ public bool on_osx_open_files (string file_name ) {
+ print ("on_osx_open_files() file_name = %s\n", file_name);
+ return ipc_server.install_from_file(file_name);
+ }
#endif
private const int WINDOW_WIDTH = 400;
private const int WINDOW_HEIGHT = 500;
public void show() {
view.show();
}
+
public IdentityManagerApp () {
model = new IdentityManagerModel(this);
view = new IdentityManagerView(this);
init_ipc_server ();
#if OS_MACOS
osxApp = OSXApplication.get_instance();
- osxApp.ns_application_open_file.connect(ipc_server.install_from_file);
+// This wont work with Vala 0.12
+// osxApp.ns_application_open_file.connect(ipc_server.install_from_file);
+// so we have to use this old way
+ Signal.connect(osxApp, "NSApplicationOpenFile", (GLib.Callback)(on_osx_open_files), ipc_server);
+// Signal.connect_data(osxApp, "NSApplicationOpenFile", (GLib.Callback)(ipc_server.install_from_file), ipc_server, null, 0);
+
#endif
view.show();
}