diff --git a/source/ubl-settings-manager.c b/source/ubl-settings-manager.c
index 3bea26a..0df89ab 100644
--- a/source/ubl-settings-manager.c
+++ b/source/ubl-settings-manager.c
@@ -38,7 +38,9 @@ int cmld=0;
void on_plug_added(GtkSocket* self, actionWidgets *builder){
- //printf("Plug has been added!\n");
+ gtk_widget_show(builder->socketbutton);
+ gtk_widget_show(builder->ThirdSocket);
+ printf("Plug has been added!\n");
gtk_widget_set_vexpand(builder->HideWhileLaunch,0);
gtk_widget_hide(builder->HideWhileLaunch);
gtk_widget_set_vexpand(GTK_WIDGET(builder->socketplace),1);
@@ -51,18 +53,21 @@ void on_plug_added(GtkSocket* self, actionWidgets *builder){
}
void on_plug_removed(GtkSocket* self, actionWidgets *widgets){
+ gtk_widget_show(widgets->appSettings);
gtk_widget_show(widgets->HideWhileLaunch);
gtk_widget_set_vexpand(widgets->socketplace,0);
gtk_widget_set_vexpand(widgets->HideWhileLaunch,1);
- //printf("Plug has been removed!\n\n\n");
+ printf("Plug has been removed!\n\n\n");
+ if(widgets->socketbutton)
gtk_widget_destroy(widgets->socketbutton);
+ if(widgets->ThirdSocket)
gtk_widget_destroy(widgets->ThirdSocket);
gtk_widget_show(widgets->appSettings);
}
void on_Item_activated(GtkIconView* self, GtkTreePath* path, actionWidgets *applist){
- //printf("\n\n\nActivated\n\n\n");
+ printf("\n\n\nActivated\n\n\n");
GtkTreeIter iter;
char *name;
gtk_tree_model_get_iter(gtk_icon_view_get_model(self),&iter,path);
@@ -79,16 +84,7 @@ void on_Item_activated(GtkIconView* self, GtkTreePath* path, actionWidgets *appl
printf("%d\n%d\n\n\n\n",gtk_socket_get_id(GTK_SOCKET(applist->socket)),gtk_socket_get_id(GTK_SOCKET(applist->socketbutton)));
sprintf(arg,"--socket-id=%d",gtk_socket_get_id(GTK_SOCKET(applist->socket)),gtk_socket_get_id(GTK_SOCKET(applist->socketbutton)));
- if (tempapp[0].Type==2)
- if (tempapp->Pluggable==1)
- if (tempapp->DualPluggable==1){
- char *dualarg=malloc(strlen("--socket-id= --socket-ext-id= --socket-trd-id=")+30);
- sprintf(dualarg,"--socket-id=%d --socket-ext-id=%d --socket-trd-id=%d",gtk_socket_get_id(GTK_SOCKET(applist->socket)),gtk_socket_get_id(GTK_SOCKET(applist->socketbutton)),gtk_socket_get_id(GTK_SOCKET(applist->ThirdSocket)));
- launch_app_with_arguments(tempapp[0].Exec,dualarg);
- } else
- py_launch_app(tempapp[0].Exec,arg);
- else py_launch_app(tempapp[0].Exec,"");
- else if (tempapp[0].Type==1){
+ if (tempapp[0].Type==1){
if (tempapp->Pluggable==1)
if (tempapp->DualPluggable==1){
char *dualarg=malloc(strlen("--socket-id= --socket-ext-id= --socket-trd-id=")+30);
@@ -108,7 +104,6 @@ void on_gnome_Item_activated(GtkIconView* self, GtkTreePath* path, actionWidgets
gtk_widget_destroy(applist->socket);
}
applist->socket=create_socket(applist);
- on_about_system(NULL,applist);
gtk_tree_model_get_iter(gtk_icon_view_get_model(self),&iter,path);
gtk_tree_model_get(gtk_icon_view_get_model(self),&iter,1,&name,-1);
@@ -118,29 +113,22 @@ void on_gnome_Item_activated(GtkIconView* self, GtkTreePath* path, actionWidgets
memset(arg,0,100);
sprintf(arg,"--socket-id=%d",gtk_socket_get_id(GTK_SOCKET(applist->socket)));
- if (tempapp[0].Type==2)
- if (tempapp->Pluggable==1)
- if (tempapp->DualPluggable==1){
- char *dualarg=malloc(strlen("--socket-id= --socket-ext-id= --socket-trd-id=")+30);
- sprintf(dualarg,"--socket-id=%d --socket-ext-id=%d --socket-trd-id=%d",gtk_socket_get_id(GTK_SOCKET(applist->socket)),gtk_socket_get_id(GTK_SOCKET(applist->socketbutton)),gtk_socket_get_id(GTK_SOCKET(applist->ThirdSocket)));
- py_launch_app(tempapp[0].Exec,dualarg);
- gtk_widget_hide(applist->appSettings);
- } else{
- py_launch_app(tempapp[0].Exec,arg);
- gtk_widget_destroy(applist->socketbutton);
- }
- else py_launch_app(tempapp[0].Exec,"");
- else if (tempapp[0].Type==1){
- if (tempapp->Pluggable==1)
+ if (tempapp[0].Type==1){
+ if (tempapp->Pluggable==1){
+
if (tempapp->DualPluggable==1){
- char *dualarg=malloc(strlen("--socket-id= --socket-ext-id= --socket-trd-id=")+30);
- sprintf(dualarg,"--socket-id=%d --socket-ext-id=%d --socket-trd-id=%d",gtk_socket_get_id(GTK_SOCKET(applist->socket)),gtk_socket_get_id(GTK_SOCKET(applist->socketbutton)),gtk_socket_get_id(GTK_SOCKET(applist->ThirdSocket)));
- launch_app_with_arguments(tempapp[0].Exec,dualarg);
- } else{
- launch_app_with_arguments(tempapp[0].Exec,arg);
- gtk_widget_destroy(applist->socketbutton);
- }
+ gtk_widget_hide(applist->appSettings);
+ char *dualarg=malloc(strlen("--socket-id= --socket-ext-id= --socket-trd-id=")+30);
+ sprintf(dualarg,"--socket-id=%d --socket-ext-id=%d --socket-trd-id=%d",gtk_socket_get_id(GTK_SOCKET(applist->socket)),gtk_socket_get_id(GTK_SOCKET(applist->socketbutton)),gtk_socket_get_id(GTK_SOCKET(applist->ThirdSocket)));
+ launch_app_with_arguments(tempapp[0].Exec,dualarg);
+ }
+ else{
+ launch_app_with_arguments(tempapp[0].Exec,arg);
+ gtk_widget_destroy(applist->socketbutton);
+ }
+ }
else {
+ on_about_system(NULL,applist);
launch_app(tempapp[0].Exec);
gtk_widget_destroy(applist->socketbutton);
}
@@ -225,6 +213,12 @@ int on_settings_accept(GtkWidget *button, dictionary **widgetsDs){
char *fromint=malloc(5);
memset(fromint,0,5);
GError *err=NULL;
+ char *login=getlogin();
+ if (strcmp(login,"root")==0){
+ login=main_config.lastUser;
+ } else {
+ main_config.lastUser=login;
+ }
char *pth=malloc(7+strlen(UserConfigPath)+strlen(getlogin()));
sprintf(pth,"%s%s%s","/home/",getlogin(),UserConfigPath);
g_key_file_load_from_file(gfile,pth,G_KEY_FILE_NONE,&err);
@@ -258,6 +252,7 @@ int on_settings_accept(GtkWidget *button, dictionary **widgetsDs){
g_key_file_set_string(gfile,"window","LabelSize",fromint);
sprintf(fromint,"%d",(int)((float)main_config.labelDensity/1000));
g_key_file_set_string(gfile,"window","LabelDensity",fromint);
+ g_key_file_set_string(gfile,"window","User",login);
for (dictionary *dict=widgets->ICSys->first;dict!=NULL;dict=dict->next){
IVGraphicals *IV=(IVGraphicals*)dict->data;
g_key_file_set_string(gfile,"sections",IV->sectionName,IV->categories);
@@ -758,13 +753,17 @@ GtkWidget *create_socket(actionWidgets *builder){
g_signal_connect(G_OBJECT(socket),"plug-removed",G_CALLBACK(on_plug_removed),builder);
g_signal_connect(G_OBJECT(socket),"destroy",G_CALLBACK(on_plug_removed),builder);
- g_signal_connect(G_OBJECT(socketbutton),"plug-added",G_CALLBACK(on_plug_added),builder);
- g_signal_connect(G_OBJECT(socketbutton),"plug-removed",G_CALLBACK(on_plug_removed),builder);
- g_signal_connect(G_OBJECT(socketbutton),"destroy",G_CALLBACK(on_plug_removed),builder);
+ // g_signal_connect(G_OBJECT(socketbutton),"plug-added",G_CALLBACK(on_plug_added),builder);
+ // g_signal_connect(G_OBJECT(socketbutton),"plug-removed",G_CALLBACK(on_plug_removed),builder);
+ // g_signal_connect(G_OBJECT(socketbutton),"destroy",G_CALLBACK(on_plug_removed),builder);
+
+ // g_signal_connect(G_OBJECT(ThirdSocket),"plug-added",G_CALLBACK(on_plug_added),builder);
+ // g_signal_connect(G_OBJECT(ThirdSocket),"plug-removed",G_CALLBACK(on_plug_removed),builder);
+ // g_signal_connect(G_OBJECT(ThirdSocket),"destroy",G_CALLBACK(on_plug_removed),builder);
+
gtk_box_pack_start(GTK_BOX(builder->socketplace),socket,true,true,0);
gtk_box_pack_start(GTK_BOX(builder->socketbuttonplace),socketbutton,1,1,0);
builder->socketbutton=socketbutton;
-
gtk_box_pack_start(GTK_BOX(builder->ThirdSocketPlace),ThirdSocket,1,1,0);
builder->ThirdSocket=ThirdSocket;
return socket;
@@ -920,6 +919,7 @@ int setup_config(){
main_config.iconSegmentSize=g_key_file_get_integer(configfile,"window","IconSegmentSize",NULL);
main_config.labelSize=g_key_file_get_integer(configfile,"window","LabelSize",NULL);
main_config.labelDensity=g_key_file_get_integer(configfile,"window","LabelDensity",NULL);
+ main_config.lastUser=g_key_file_get_string(configfile,"window","User",NULL);
if (main_config.labelSize==0) main_config.labelSize=12;
if (main_config.labelDensity==0) main_config.labelDensity=0;
main_config.labelSize=main_config.labelSize*1000;
diff --git a/source/ubl-settings-manager.h b/source/ubl-settings-manager.h
index 25df934..92f3100 100644
--- a/source/ubl-settings-manager.h
+++ b/source/ubl-settings-manager.h
@@ -66,6 +66,7 @@ typedef struct {
dictionary *sections;
int labelSize;
int labelDensity;
+ char *lastUser;
} config;
typedef struct {
diff --git a/ubconfig-main.conf b/ubconfig-main.conf
index 2609f03..ab0f139 100644
--- a/ubconfig-main.conf
+++ b/ubconfig-main.conf
@@ -8,6 +8,7 @@ IconSize=2
IconSegmentSize=321
LabelSize=12
LabelDensity=0
+User=
[sections]
Personal=XFCE;
diff --git a/ubl-settings-manager.css b/ubl-settings-manager.css
index d214062..437117d 100644
--- a/ubl-settings-manager.css
+++ b/ubl-settings-manager.css
@@ -14,3 +14,8 @@ background-color: #404040;
font-weight: bold;
}
+.roundborder * {
+ border-style:solid;
+ border-width:1px;
+ border-radius:5px;
+}
diff --git a/ubl-settings-manager.glade b/ubl-settings-manager.glade
index c835e28..d8c980b 100644
--- a/ubl-settings-manager.glade
+++ b/ubl-settings-manager.glade
@@ -1684,9 +1684,14 @@
False
@@ -1762,10 +1767,15 @@
2