It is possible to run one installer by user at a time

pull/366/head
parent a21a886e50
commit d6de60e975

@ -5352,3 +5352,6 @@ msgstr ""
msgid "Close installer" msgid "Close installer"
msgstr "" msgstr ""
msgid "Application is already running"
msgstr ""

@ -5547,3 +5547,6 @@ msgstr "Снять всё"
msgid "Close installer" msgid "Close installer"
msgstr "Закрыть установщик" msgstr "Закрыть установщик"
msgid "Application is already running"
msgstr "Приложение уже запущено"

@ -1028,6 +1028,10 @@ main_window *yon_main_window_complete(){
} }
int main(int argc, char *argv[]){ int main(int argc, char *argv[]){
GApplication *app = (GApplication*)gtk_application_new("com.ublinux.ubinstall-gtk",G_APPLICATION_DEFAULT_FLAGS);
GError *err = NULL;
int reg = g_application_register(app,NULL,&err);
int remote = g_application_get_is_remote(app);
main_config.argv=argv; main_config.argv=argv;
main_config.argc = argc; main_config.argc = argc;
config_str unfound = NULL; config_str unfound = NULL;
@ -1037,6 +1041,25 @@ int main(int argc, char *argv[]){
textdomain(LocaleName); textdomain(LocaleName);
config_init(); config_init();
gtk_init(&argc,&argv); gtk_init(&argc,&argv);
if (!reg||remote){
yon_window *window = yon_window_new();
gtk_widget_set_size_request(window->Window,300,125);
yon_gtk_window_setup(GTK_WINDOW(window->Window),NULL,WARNING_TITLE_LABEL,icon_path,NULL);
GtkWidget *box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL,5);
GtkWidget *image = gtk_image_new();
GtkWidget *label = gtk_label_new(ALREADY_RUNNING_LABEL);
gtk_image_set_from_icon_name(GTK_IMAGE(image),warning_icon_path,0);
gtk_image_set_pixel_size(GTK_IMAGE(image),48);
gtk_box_pack_start(GTK_BOX(box),image,1,1,0);
gtk_box_pack_start(GTK_BOX(box),label,1,1,0);
gtk_box_pack_start(GTK_BOX(window->MainBox),box,1,1,0);
gtk_widget_show_all(box);
g_signal_connect(G_OBJECT(window->Window),"destroy",G_CALLBACK(gtk_main_quit),NULL);
gtk_widget_show(window->Window);
gtk_main();
exit(1);
}
yon_ubl_window_init(TITLE_LABEL,"",LocaleName,CssPath,LocaleName,version_application,WIKI_LINK); yon_ubl_window_init(TITLE_LABEL,"",LocaleName,CssPath,LocaleName,version_application,WIKI_LINK);
yon_ubl_setup_arguments(argc,argv,&unfound,&size,ADDITIONAL_ARGS); yon_ubl_setup_arguments(argc,argv,&unfound,&size,ADDITIONAL_ARGS);
if (size) { if (size) {

@ -50,6 +50,7 @@
#define active_icon_path "com.ublinux.libublsettingsui-gtk3.active-symbolic" #define active_icon_path "com.ublinux.libublsettingsui-gtk3.active-symbolic"
#define inactive_icon_path "com.ublinux.libublsettingsui-gtk3.inactive-symbolic" #define inactive_icon_path "com.ublinux.libublsettingsui-gtk3.inactive-symbolic"
#define info_icon_path "com.ublinux.libublsettingsui-gtk3.important-symbolic" #define info_icon_path "com.ublinux.libublsettingsui-gtk3.important-symbolic"
#define warning_icon_path "com.ublinux.libublsettingsui-gtk3.warning-symbolic"
#define LocalePath "/usr/share/locale" #define LocalePath "/usr/share/locale"
#define LocaleName "ubinstall-gtk" #define LocaleName "ubinstall-gtk"

@ -304,6 +304,7 @@ NULL)
#define ACCESSED_LABEL _("Accessed") #define ACCESSED_LABEL _("Accessed")
#define UNACCESSED_LABEL _("Unaccessed") #define UNACCESSED_LABEL _("Unaccessed")
#define INFO_LABEL _("Package information") #define INFO_LABEL _("Package information")
#define ALREADY_RUNNING_LABEL _("Application is already running")
// #define _LABEL _("Chosen size:") // #define _LABEL _("Chosen size:")
// #define _LABEL _("Overall size:") // #define _LABEL _("Overall size:")

Loading…
Cancel
Save