|
|
|
|
@ -307,23 +307,34 @@ void on_inspector_update(GtkWidget *self, inspector_window *window){
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
GtkWidget *yon_inspector_add_terminal(inspector_window *window,char *page_name){
|
|
|
|
|
GtkWidget *yon_inspector_add_terminal(inspector_window *window,char *page_name,int mode){
|
|
|
|
|
GtkBuilder *builder = gtk_builder_new_from_resource(glade_terminal_path);
|
|
|
|
|
GtkWidget *box = yon_gtk_builder_get_widget(builder,"TerminalBox");
|
|
|
|
|
GtkWidget *terminal = yon_gtk_builder_get_widget(builder,"LoggingTerminal");
|
|
|
|
|
GtkWidget *unfound_label = yon_gtk_builder_get_widget(builder,"UnfoundLabel");
|
|
|
|
|
GtkWidget *label = gtk_label_new(page_name);
|
|
|
|
|
gtk_notebook_append_page(GTK_NOTEBOOK(window->LoggingNotebook),box,label);
|
|
|
|
|
if (mode){
|
|
|
|
|
GdkRGBA rgba;
|
|
|
|
|
rgba.alpha=1;
|
|
|
|
|
rgba.red=0.95;
|
|
|
|
|
rgba.green=0.95;
|
|
|
|
|
rgba.blue=0.95;
|
|
|
|
|
vte_terminal_set_color_cursor(VTE_TERMINAL(terminal),&rgba);
|
|
|
|
|
vte_terminal_set_color_background(VTE_TERMINAL(terminal),&rgba);
|
|
|
|
|
rgba.red=0;
|
|
|
|
|
rgba.green=0;
|
|
|
|
|
rgba.blue=0;
|
|
|
|
|
vte_terminal_set_color_foreground(VTE_TERMINAL(terminal),&rgba);
|
|
|
|
|
return terminal;
|
|
|
|
|
} else {
|
|
|
|
|
gtk_widget_destroy(terminal);
|
|
|
|
|
gtk_widget_show(unfound_label);
|
|
|
|
|
char *label_text = yon_char_append(page_name,PATH_NOT_FOUND_LABEL);
|
|
|
|
|
gtk_label_set_text(GTK_LABEL(unfound_label),label_text);
|
|
|
|
|
return NULL;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void on_inspector_open(GtkWidget *self, main_window *widgets){
|
|
|
|
|
@ -364,13 +375,19 @@ void on_inspector_open(GtkWidget *self, main_window *widgets){
|
|
|
|
|
if (strcmp(name,"journald")){
|
|
|
|
|
window->last_mode=-1;
|
|
|
|
|
for (int i=0;i<window->journal_size;i++){
|
|
|
|
|
if (!access(window->journal_paths[i],F_OK)||!window->terminals)
|
|
|
|
|
yon_dictionary_add_or_create_if_exists_with_data(window->terminals,window->journal_paths[i],yon_inspector_add_terminal(window,window->journal_paths[i]));
|
|
|
|
|
if (!access(window->journal_paths[i],F_OK)){
|
|
|
|
|
yon_dictionary_add_or_create_if_exists_with_data(window->terminals,window->journal_paths[i],yon_inspector_add_terminal(window,window->journal_paths[i],1));
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
GtkWidget *terminal = yon_inspector_add_terminal(window,window->journal_paths[i],0);
|
|
|
|
|
if (terminal)
|
|
|
|
|
yon_dictionary_add_or_create_if_exists_with_data(window->terminals,window->journal_paths[i],terminal);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
gtk_widget_hide(window->JournalActionsBox);
|
|
|
|
|
} else {
|
|
|
|
|
window->last_mode=0;
|
|
|
|
|
yon_dictionary_add_or_create_if_exists_with_data(window->terminals,"Journald",yon_inspector_add_terminal(window,"Journald"));
|
|
|
|
|
yon_dictionary_add_or_create_if_exists_with_data(window->terminals,"Journald",yon_inspector_add_terminal(window,"Journald",1));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
on_inspector_update(window->UpdateButton,window);
|
|
|
|
|
@ -2365,6 +2382,9 @@ main_window *setup_window(){
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if (access(custom_logs_saving_file_path,F_OK)){
|
|
|
|
|
yon_file_create_full_path(custom_logs_saving_file_path,0777);
|
|
|
|
|
}
|
|
|
|
|
FILE *fl = fopen(custom_logs_saving_file_path,"w");
|
|
|
|
|
fclose(fl);
|
|
|
|
|
}
|
|
|
|
|
@ -2424,7 +2444,7 @@ int main(int argc, char *argv[], char **envp){
|
|
|
|
|
{ NULL, 0, NULL, 0 }
|
|
|
|
|
};
|
|
|
|
|
for (int i=0;i<argc;i++){
|
|
|
|
|
int argument=getopt_long(argc,argv,"hVvs:e:t:",long_options,&option_index);
|
|
|
|
|
int argument=getopt_long(argc,argv,"hVvs:e:t:c",long_options,&option_index);
|
|
|
|
|
switch(argument){
|
|
|
|
|
case 'h':
|
|
|
|
|
show_help=1;
|
|
|
|
|
@ -2447,6 +2467,7 @@ int main(int argc, char *argv[], char **envp){
|
|
|
|
|
main_config.load_socket_id=atoi(optarg);
|
|
|
|
|
break;
|
|
|
|
|
case 'c': system(yon_char_unite("rm -rfd ", yon_ubl_user_get_home_directory(),"/.config/",LocaleName,"/",NULL));
|
|
|
|
|
mkdir(yon_char_unite(yon_ubl_user_get_home_directory(),"/.config/",LocaleName,"/",NULL),0777);
|
|
|
|
|
break;
|
|
|
|
|
case 1:
|
|
|
|
|
main_config.lock_help=1;
|
|
|
|
|
@ -2473,9 +2494,9 @@ int main(int argc, char *argv[], char **envp){
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (getuid()!=0){
|
|
|
|
|
// main_config.lock_load_global=1;
|
|
|
|
|
// main_config.lock_save_global=1;
|
|
|
|
|
// main_config.lock_save_local=1;
|
|
|
|
|
main_config.lock_load_global=1;
|
|
|
|
|
main_config.lock_save_global=1;
|
|
|
|
|
main_config.lock_save_local=1;
|
|
|
|
|
}
|
|
|
|
|
gtk_init(&argc,&argv);
|
|
|
|
|
|
|
|
|
|
|