pull/89/head
Ivan Dmitrievich Yartsev 10 months ago
parent d7b86a7d6c
commit ee63c3fcb0

@ -29,10 +29,6 @@ if(WEBKIT_LIBRARIES_FOUND)
add_definitions(${WEBKIT_CFLAGS_OTHER}) add_definitions(${WEBKIT_CFLAGS_OTHER})
endif() endif()
configure_file(ubl-cmake.in ubl-cmake.h)
file(COPY ${CMAKE_CURRENT_BINARY_DIR}/ubl-cmake.h DESTINATION ./)
set(GRESOURCE_C resources.c) set(GRESOURCE_C resources.c)
set(GRESOURCE_XML gresource.xml) set(GRESOURCE_XML gresource.xml)
@ -68,19 +64,21 @@ add_custom_target(
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${GRESOURCE_C} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${GRESOURCE_C}
) )
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -std=c++2a") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always \
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always -lm")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissing-declarations -fdiagnostics-color=always \
-O2 -pipe -fno-plt -fexceptions \ -O2 -pipe -fno-plt -fexceptions \
-Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security \ -Wformat -Werror=format-security \
-fstack-clash-protection -fcf-protection") -fstack-clash-protection -fcf-protection")
string(FIND "${CMAKE_CXX_FLAGS}" "-D_FORTIFY_SOURCE" FORTIFY_FOUND)
if(FORTIFY_FOUND EQUAL -1)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wp,-D_FORTIFY_SOURCE=2")
endif()
set(SOURCE_FILES set(SOURCE_FILES
ubl-settings-video.c ubl-settings-video.c
ubl-settings-video.h ubl-settings-video.h
ubl-strings.h ubl-strings.h
${CMAKE_CURRENT_BINARY_DIR}/ubl-cmake.h
) )
set(LIBRARIES set(LIBRARIES

@ -1 +0,0 @@
#cmakedefine WEBKIT_FOUND

@ -2,19 +2,18 @@
config main_config; config main_config;
void on_terminal_done(GtkWidget *terminal, int , main_window *){
void on_terminal_done(GtkWidget *terminal, int size, main_window *widgets){
gtk_widget_destroy(terminal); gtk_widget_destroy(terminal);
} }
void on_terminal_more(GtkWidget *self, main_window *widgets){ void on_terminal_more(GtkWidget *, main_window *widgets){
int active = gtk_revealer_get_child_revealed(GTK_REVEALER(widgets->TerminalMoreRevieler)); int active = gtk_revealer_get_child_revealed(GTK_REVEALER(widgets->TerminalMoreRevieler));
if (active ==1) active = 0; if (active ==1) active = 0;
else active=1; else active=1;
gtk_revealer_set_reveal_child(GTK_REVEALER(widgets->TerminalMoreRevieler),active); gtk_revealer_set_reveal_child(GTK_REVEALER(widgets->TerminalMoreRevieler),active);
} }
void on_terminal_destroy(GtkWidget *self, main_window *widgets){ void on_terminal_destroy(GtkWidget *, main_window *widgets){
gtk_revealer_set_reveal_child(GTK_REVEALER(widgets->TerminalRevealer),0); gtk_revealer_set_reveal_child(GTK_REVEALER(widgets->TerminalRevealer),0);
gtk_widget_destroy(widgets->TerminalRevealer); gtk_widget_destroy(widgets->TerminalRevealer);
GtkTreeModel *model; GtkTreeModel *model;
@ -36,16 +35,16 @@ void on_terminal_destroy(GtkWidget *self, main_window *widgets){
yon_ubl_status_box_render(PROPRIETARY_OPETAION_DONE_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); yon_ubl_status_box_render(PROPRIETARY_OPETAION_DONE_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
} }
static void child_ready(VteTerminal *terminal, GPid pid, GError *error, gpointer user_data) static void child_ready(VteTerminal *terminal, GPid pid, GError *, gpointer user_data)
{ {
if (!terminal) return; if (!terminal) return;
if (pid == -1) printf("Error\n\n\n"); if (pid == -1) printf("Error\n\n\n");
else vte_terminal_feed_child(VTE_TERMINAL(terminal),(char*)user_data,strlen((char*)user_data)); else vte_terminal_feed_child(VTE_TERMINAL(terminal),(char*)user_data,strlen((char*)user_data));
} }
void on_terminal_check_progress(VteTerminal *terminal, main_window *widgets){ void on_terminal_check_progress(VteTerminal *, main_window *){
char *text = vte_terminal_get_text(terminal,NULL,NULL,NULL); // char *text = vte_terminal_get_text(terminal,NULL,NULL,NULL);
gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->TerminalInfoLabel),(double)yon_char_count(text,"::")/4); // gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets->TerminalInfoLabel),(double)yon_char_count(text,"::")/4);
} }
void yon_terminal_start(main_window *widgets, char *usr_command){ void yon_terminal_start(main_window *widgets, char *usr_command){
@ -109,9 +108,9 @@ void yon_terminal_start(main_window *widgets, char *usr_command){
gtk_widget_show_all(widgets->TerminalRevealer); gtk_widget_show_all(widgets->TerminalRevealer);
} }
void on_driver_pack_selection_change(GtkWidget *self, main_window *widgets){ void on_driver_pack_selection_change(GtkWidget *, main_window *widgets){
GtkTreeIter iter; GtkTreeIter iter;
char *name; // char *name;
GtkTreeModel *list_s=GTK_TREE_MODEL(main_config.list); GtkTreeModel *list_s=GTK_TREE_MODEL(main_config.list);
GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->DriversTree)); GtkTreeSelection *selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->DriversTree));
if (gtk_tree_selection_get_selected(selection,&list_s,&iter)){ if (gtk_tree_selection_get_selected(selection,&list_s,&iter)){
@ -125,7 +124,7 @@ void on_driver_pack_selection_change(GtkWidget *self, main_window *widgets){
} }
} }
void on_driver_pack_info(GtkWidget *self, main_window *widgets){ void on_driver_pack_info(GtkWidget *, main_window *widgets){
pthread_attr_t attr; pthread_attr_t attr;
pthread_t tid; pthread_t tid;
@ -144,7 +143,7 @@ void on_driver_pack_info(GtkWidget *self, main_window *widgets){
} }
} }
void on_pack_install_activate(GtkCellRendererToggle* self,gchar* path,main_window *widgets){ void on_pack_install_activate(GtkCellRendererToggle* ,gchar* path,main_window *widgets){
GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(widgets->DriversTree)); GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(widgets->DriversTree));
GtkTreeIter iter; GtkTreeIter iter;
@ -187,7 +186,7 @@ void on_pack_install_activate(GtkCellRendererToggle* self,gchar* path,main_windo
} }
} }
void on_module_install_activate(GtkCellRendererToggle* self,gchar* path,main_window *widgets){ void on_module_install_activate(GtkCellRendererToggle* ,gchar* path,main_window *widgets){
GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(widgets->DriversTree)); GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(widgets->DriversTree));
GtkTreeIter iter; GtkTreeIter iter;
@ -233,7 +232,7 @@ gboolean yon_filter_func(GtkTreeModel* model,GtkTreeIter* iter,main_window *widg
const char *target = gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(widgets->KernelsCombo)); const char *target = gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(widgets->KernelsCombo));
char *cur; char *cur;
gtk_tree_model_get(model,iter,2,&cur,-1); gtk_tree_model_get(model,iter,2,&cur,-1);
if (!strcmp(cur,target))return 1; if (!yon_char_is_empty(cur)&&!yon_char_is_empty(target)&&!strcmp(cur,target))return 1;
return 0; return 0;
} }
@ -244,9 +243,9 @@ void on_kernel_filter_changed(GtkWidget *self, main_window *widgets){
GtkTreeModel *model = gtk_tree_model_filter_new(GTK_TREE_MODEL(main_config.list),NULL); GtkTreeModel *model = gtk_tree_model_filter_new(GTK_TREE_MODEL(main_config.list),NULL);
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->DriversTree),model); gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->DriversTree),model);
gtk_tree_model_filter_set_visible_func(GTK_TREE_MODEL_FILTER(model),(GtkTreeModelFilterVisibleFunc)yon_filter_func,widgets,NULL); gtk_tree_model_filter_set_visible_func(GTK_TREE_MODEL_FILTER(model),(GtkTreeModelFilterVisibleFunc)yon_filter_func,widgets,NULL);
} else {
gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(gtk_tree_view_get_model(GTK_TREE_VIEW(widgets->DriversTree))));
} }
gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(gtk_tree_view_get_model(GTK_TREE_VIEW(widgets->DriversTree))));
} else { } else {
GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(widgets->DriversTree)); GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(widgets->DriversTree));
if (GTK_IS_TREE_MODEL_FILTER(model)) { if (GTK_IS_TREE_MODEL_FILTER(model)) {
@ -257,7 +256,7 @@ void on_kernel_filter_changed(GtkWidget *self, main_window *widgets){
} }
} }
void on_port_chosen_changed(GtkWidget *self, monitor_edit_window *window){ void on_port_chosen_changed(GtkWidget *, monitor_edit_window *window){
dictionary *dict=NULL; dictionary *dict=NULL;
for (int i=0;i<window->resolutionssize;i++){ for (int i=0;i<window->resolutionssize;i++){
free(window->resolutions); free(window->resolutions);
@ -283,10 +282,10 @@ void on_port_chosen_changed(GtkWidget *self, monitor_edit_window *window){
yon_char_remove_last_symbol(resolutions[i],'\n'); yon_char_remove_last_symbol(resolutions[i],'\n');
} }
resolution_supported *res = yon_dictionary_get_data(dict,resolution_supported*); resolution_supported *res = yon_dictionary_get_data(dict,resolution_supported*);
int found_size=0; // int found_size=0;
int found = -1; int found = -1;
for (int i=0;i<res->size;i++){ for (int i=0;i<res->size;i++){
char *check_line; // char *check_line;
for (int j=1;j<size;j++){ for (int j=1;j<size;j++){
if (strstr(resolutions[j],res->line[i])){ if (strstr(resolutions[j],res->line[i])){
found = j; found = j;
@ -326,7 +325,7 @@ void on_sensitive_change_reversed(GtkWidget *self, GtkWidget *toggle)
gtk_widget_set_sensitive(toggle, !state); gtk_widget_set_sensitive(toggle, !state);
} }
void on_auto_choose_drivers(GtkWidget *self, main_window *widgets) void on_auto_choose_drivers(GtkWidget *self, main_window *)
{ {
int state = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(self)); int state = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(self));
main_config.autoChooseDrivers=state; main_config.autoChooseDrivers=state;
@ -359,8 +358,7 @@ void on_resolutions_unsupported_show(GtkToggleButton *self, monitor_edit_window
} }
} }
void on_save_done(main_window *widgets, config_str output, int size){ void on_save_done(main_window *, config_str output, int size){
if (widgets) {};
// char *gapfix1 = yon_config_get_by_key(KWIN_TRIPLE_BUFFER); // char *gapfix1 = yon_config_get_by_key(KWIN_TRIPLE_BUFFER);
// char *gapfix2 = yon_config_get_by_key(GL_YIELD); // char *gapfix2 = yon_config_get_by_key(GL_YIELD);
// int gapfix1_status = yon_config_get_status(KWIN_TRIPLE_BUFFER); // int gapfix1_status = yon_config_get_status(KWIN_TRIPLE_BUFFER);
@ -386,14 +384,14 @@ void on_save_done(main_window *widgets, config_str output, int size){
void yon_interface_save(){ void yon_interface_save(){
char *autodrivers = NULL; // char *autodrivers = NULL;
char *freedrivers = NULL; // char *freedrivers = NULL;
char *dpms= NULL; // char *dpms= NULL;
char *dpi = NULL; char *dpi = NULL;
char *failsafenvidia = NULL; // char *failsafenvidia = NULL;
char *failsafeati = NULL; // char *failsafeati = NULL;
char *optirun = NULL; // char *optirun = NULL;
char *primusrun = NULL; // char *primusrun = NULL;
switch (gtk_combo_box_get_active(GTK_COMBO_BOX(main_config.widgets->AutoDriverCombo))){ switch (gtk_combo_box_get_active(GTK_COMBO_BOX(main_config.widgets->AutoDriverCombo))){
case 0: yon_config_remove_by_key(VGADRV_AUTO); case 0: yon_config_remove_by_key(VGADRV_AUTO);
break; break;
@ -453,8 +451,9 @@ void yon_interface_save(){
break; break;
case 1: yon_config_register(OPTIRUN,OPTIRUN_command,"no"); case 1: yon_config_register(OPTIRUN,OPTIRUN_command,"no");
break; break;
case 2: if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(main_config.widgets->OptirunEntry)))) case 2: if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(main_config.widgets->OptirunEntry)))){
yon_config_register(OPTIRUN,OPTIRUN_command,(char*)gtk_entry_get_text(GTK_ENTRY(main_config.widgets->OptirunEntry))); yon_config_register(OPTIRUN,OPTIRUN_command,(char*)gtk_entry_get_text(GTK_ENTRY(main_config.widgets->OptirunEntry)));
}
break; break;
} }
switch (gtk_combo_box_get_active(GTK_COMBO_BOX(main_config.widgets->PrimusrunCombo))){ switch (gtk_combo_box_get_active(GTK_COMBO_BOX(main_config.widgets->PrimusrunCombo))){
@ -462,8 +461,9 @@ void yon_interface_save(){
break; break;
case 1: yon_config_register(PRIMUSRUN,PRIMUSRUN_command,"no"); case 1: yon_config_register(PRIMUSRUN,PRIMUSRUN_command,"no");
break; break;
case 2: if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(main_config.widgets->PrimusrunEntry)))) case 2: if (!yon_char_is_empty(gtk_entry_get_text(GTK_ENTRY(main_config.widgets->PrimusrunEntry)))){
yon_config_register(PRIMUSRUN,PRIMUSRUN_command,(char*)gtk_entry_get_text(GTK_ENTRY(main_config.widgets->PrimusrunEntry))); yon_config_register(PRIMUSRUN,PRIMUSRUN_command,(char*)gtk_entry_get_text(GTK_ENTRY(main_config.widgets->PrimusrunEntry)));
}
break; break;
} }
// switch (gtk_combo_box_get_active(GTK_COMBO_BOX(main_config.widgets->FrameGapCombo))){ // switch (gtk_combo_box_get_active(GTK_COMBO_BOX(main_config.widgets->FrameGapCombo))){
@ -511,8 +511,8 @@ void yon_interface_update(){
char *optirun = yon_config_get_by_key(OPTIRUN); char *optirun = yon_config_get_by_key(OPTIRUN);
char *primusrun = yon_config_get_by_key(PRIMUSRUN); char *primusrun = yon_config_get_by_key(PRIMUSRUN);
char *discrete = yon_config_get_by_key(INTEGRATEDVGA); char *discrete = yon_config_get_by_key(INTEGRATEDVGA);
char *gapfix1 = yon_config_get_by_key(GL_YIELD); // char *gapfix1 = yon_config_get_by_key(GL_YIELD);
char *gapfix2 = yon_config_get_by_key(KWIN_TRIPLE_BUFFER); // char *gapfix2 = yon_config_get_by_key(KWIN_TRIPLE_BUFFER);
if (!yon_char_is_empty(autodrivers)&&!strcmp(autodrivers,"yes")) if (!yon_char_is_empty(autodrivers)&&!strcmp(autodrivers,"yes"))
gtk_combo_box_set_active(GTK_COMBO_BOX(main_config.widgets->AutoDriverCombo),2); gtk_combo_box_set_active(GTK_COMBO_BOX(main_config.widgets->AutoDriverCombo),2);
@ -606,56 +606,49 @@ void yon_interface_update(){
} }
void yon_load_proceed(YON_CONFIG_TYPE type){ void yon_load_proceed(YON_CONFIG_TYPE type){
if (type!=YON_CONFIG_CUSTOM){
yon_config_clean(); yon_config_clean();
}
if (!yon_char_is_empty(config_get_default_command)) if (!yon_char_is_empty(config_get_default_command))
yon_config_load_config(YON_CONFIG_DEFAULT,config_get_default_command,NULL); yon_config_load_config(YON_CONFIG_DEFAULT,config_get_default_command,NULL);
if (type==YON_CONFIG_GLOBAL){ switch (type){
yon_config_load_config(type,config_get_global_command,NULL); case YON_CONFIG_GLOBAL:
} else if (type==YON_CONFIG_LOCAL){ yon_config_load_config(type,config_get_command("global"),NULL);
yon_config_load_config(type,config_get_local_command,NULL); yon_ubl_status_box_render(yon_char_get_localised_from_lib(GLOBAL_LOAD_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE);
} else if (type==YON_CONFIG_CUSTOM){ break;
char *path=""; case YON_CONFIG_LOCAL:
textdomain(template_ui_LocaleName); yon_config_load_config(type,config_get_command(system),NULL);
GtkWidget *dialog = gtk_file_chooser_dialog_new(template_app_information.app_title,NULL,GTK_FILE_CHOOSER_ACTION_SAVE,CANCEL_LABEL,GTK_RESPONSE_CANCEL,OPEN_LABEL,GTK_RESPONSE_ACCEPT,NULL); yon_ubl_status_box_render(yon_char_get_localised_from_lib(LOCAL_LOAD_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE);
yon_gtk_window_setup(GTK_WINDOW(dialog),NULL,TITLE_LABEL,icon_name,"FileChooserWindow"); break;
textdomain(LocaleName); case YON_CONFIG_CUSTOM:
gtk_window_set_icon_name(GTK_WINDOW(dialog),"com.ublinux.ubl-settings-video"); char *path = NULL;
gtk_window_set_title(GTK_WINDOW(dialog),TITLE_LABEL); path=yon_custom_config_init(GTK_FILE_CHOOSER_ACTION_OPEN);
GtkFileFilter *filter = gtk_file_filter_new(); if (!yon_char_is_empty(path)){
gtk_file_filter_add_pattern(filter,"*.ini"); yon_config_clean();
gtk_file_filter_set_name(filter, "*.ini"); yon_config_load_config(type,config_get_command(path),NULL);
gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(dialog),filter); yon_ubl_status_box_render(yon_char_get_localised_from_lib(LOCAL_LOAD_SUCCESS_LABEL),BACKGROUND_IMAGE_SUCCESS_TYPE);
gtk_widget_show(dialog);
int response = gtk_dialog_run(GTK_DIALOG(dialog));
if (response == GTK_RESPONSE_ACCEPT){
char *file = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
if (!yon_char_is_empty(file)){
path=yon_char_unite("'",file,"'",NULL);
free(file);
}
gtk_widget_destroy(dialog);
} else {
gtk_widget_destroy(dialog);
} }
yon_config_load_config(type,yon_config_get_custom_command(path),NULL); break;
default:
break;
} }
} }
void on_config_local_load(GtkWidget *self,main_window *widgets){ void on_config_local_load(GtkWidget *self,main_window *){
if (self){} if (self){}
yon_load_proceed(YON_CONFIG_LOCAL); yon_load_proceed(YON_CONFIG_LOCAL);
main_config.load_mode=1; main_config.load_mode=1;
yon_interface_update(); yon_interface_update();
} }
void on_config_global_load(GtkWidget *self,main_window *widgets){ void on_config_global_load(GtkWidget *self,main_window *){
if (self){} if (self){}
yon_load_proceed(YON_CONFIG_GLOBAL); yon_load_proceed(YON_CONFIG_GLOBAL);
main_config.load_mode=0; main_config.load_mode=0;
yon_interface_update(); yon_interface_update();
} }
void on_config_custom_load(GtkWidget *self,main_window *widgets){ void on_config_custom_load(GtkWidget *self,main_window *){
if (self){} if (self){}
yon_load_proceed(YON_CONFIG_CUSTOM); yon_load_proceed(YON_CONFIG_CUSTOM);
main_config.load_mode=3; main_config.load_mode=3;
@ -665,20 +658,20 @@ void on_config_custom_load(GtkWidget *self,main_window *widgets){
void on_config_global_local_save(){ void on_config_global_local_save(){
yon_interface_save(); yon_interface_save();
main_config.save_config=3; main_config.save_config=3;
yon_save_proceed(NULL,YON_CONFIG_BOTH,config_get_global_command,NULL); yon_save_proceed(NULL,YON_CONFIG_BOTH,config_get_command("global"),NULL);
} }
void on_config_local_save(){ void on_config_local_save(){
yon_interface_save(); yon_interface_save();
main_config.save_config=1; main_config.save_config=1;
yon_save_proceed("system",YON_CONFIG_LOCAL,config_get_local_command,NULL); yon_save_proceed("system",YON_CONFIG_LOCAL,config_get_command("system"),NULL);
} }
void on_config_global_save(){ void on_config_global_save(){
yon_interface_save(); yon_interface_save();
main_config.save_config=0; main_config.save_config=0;
yon_save_proceed("global",YON_CONFIG_GLOBAL,config_get_global_command,NULL); yon_save_proceed("global",YON_CONFIG_GLOBAL,config_get_command("global"),NULL);
} }
@ -686,7 +679,7 @@ void on_config_custom_save(GtkWidget *self, main_window *widgets){
yon_interface_save(); yon_interface_save();
if (self&&widgets){} if (self&&widgets){}
main_config.save_config=1; main_config.save_config=1;
template_saving_window *window = yon_save_proceed(NULL,YON_CONFIG_CUSTOM,yon_config_get_custom_command("system"),NULL); template_saving_window *window = yon_save_proceed(NULL,YON_CONFIG_CUSTOM,config_get_command("system"),NULL);
if (window){}; if (window){};
} }
@ -696,7 +689,7 @@ void on_config_custom_save(GtkWidget *self, main_window *widgets){
/**void on_monitor_delete(GtkWidget *self,monitor_data windowd) /**void on_monitor_delete(GtkWidget *self,monitor_data windowd)
* [EN] * [EN]
*/ */
void on_monitor_delete(GtkWidget *self,monitor_data *window){ void on_monitor_delete(GtkWidget *,monitor_data *window){
if(window){ if(window){
GtkWidget *target = gtk_widget_get_parent(window->ScreenOverlay); GtkWidget *target = gtk_widget_get_parent(window->ScreenOverlay);
GtkWidget *flow_box = gtk_widget_get_parent(target); GtkWidget *flow_box = gtk_widget_get_parent(target);
@ -712,7 +705,7 @@ void on_monitor_delete(GtkWidget *self,monitor_data *window){
/**void on_monitor_switch(GtkWidget *self,monitor_data *window) /**void on_monitor_switch(GtkWidget *self,monitor_data *window)
* [EN] * [EN]
*/ */
void on_monitor_switch(GtkWidget *self,monitor_data *window){ void on_monitor_switch(GtkWidget *,monitor_data *window){
if(window){ if(window){
int enable = 0; int enable = 0;
gtk_widget_set_sensitive(window->MonitorImage,!enable); gtk_widget_set_sensitive(window->MonitorImage,!enable);
@ -722,20 +715,20 @@ void on_monitor_switch(GtkWidget *self,monitor_data *window){
/**void on_monitor_add(GtkWidget *self,monitor_data *window) /**void on_monitor_add(GtkWidget *self,monitor_data *window)
* [EN] * [EN]
*/ */
void on_monitor_add(GtkWidget *self,main_window *widgets){ void on_monitor_add(GtkWidget *,main_window *widgets){
if(widgets){ if(widgets){
yon_monitor_new(widgets,0); yon_monitor_new(widgets,0);
} }
} }
void on_monitor_config_save(GtkWidget *self, monitor_edit_window *window){ void on_monitor_config_save(GtkWidget *, monitor_edit_window *window){
int enabled=0; int enabled=0;
char *target=NULL; char *target=NULL;
int main_display=0; int main_display=0;
char *resolution = NULL; char *resolution = NULL;
char *rotate = NULL; char *rotate = NULL;
char *position = NULL; char *position = NULL;
int switch_off=0; // int switch_off=0;
int modeline_cvt = 0; int modeline_cvt = 0;
int cvt_reduced = 0; int cvt_reduced = 0;
int modeline_gtf = 0; int modeline_gtf = 0;
@ -752,7 +745,7 @@ void on_monitor_config_save(GtkWidget *self, monitor_edit_window *window){
if (pos&&gtk_combo_box_get_active(GTK_COMBO_BOX(window->PositionPortCombo))){ if (pos&&gtk_combo_box_get_active(GTK_COMBO_BOX(window->PositionPortCombo))){
position = yon_char_append(pos==1?"lo:":pos==2?"ro:":pos==3?"ab:":"be",gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(window->PositionPortCombo))); position = yon_char_append(pos==1?"lo:":pos==2?"ro:":pos==3?"ab:":"be",gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(window->PositionPortCombo)));
} }
switch_off = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->DoNotSwitchOffCheck)); // switch_off = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->DoNotSwitchOffCheck));
modeline_cvt = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->ModelineCVTCheck)); modeline_cvt = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->ModelineCVTCheck));
cvt_reduced = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UseCVTReducedCheck)); cvt_reduced = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UseCVTReducedCheck));
modeline_gtf = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->ModelineGTFCheck)); modeline_gtf = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->ModelineGTFCheck));
@ -827,28 +820,28 @@ void yon_monitor_parse(monitor_edit_window *window, char *string){
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->MainCheck),1); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->MainCheck),1);
} else if (strstr(parsed[i],"lo:")||strstr(parsed[i],"LeftOf:")){ } else if (strstr(parsed[i],"lo:")||strstr(parsed[i],"LeftOf:")){
char *location = yon_char_divide_search(parsed[i],":",-1); yon_char_divide_search(parsed[i],":",-1);
int target = yon_gtk_combo_box_text_find(window->PositionPortCombo,parsed[i]); int target = yon_gtk_combo_box_text_find(window->PositionPortCombo,parsed[i]);
gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationCombo),target); gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationCombo),target);
gtk_combo_box_set_active(GTK_COMBO_BOX(window->PositionPosCombo),1); gtk_combo_box_set_active(GTK_COMBO_BOX(window->PositionPosCombo),1);
} else if (strstr(parsed[i],"ro:")||strstr(parsed[i],"RightOf:")){ } else if (strstr(parsed[i],"ro:")||strstr(parsed[i],"RightOf:")){
char *location = yon_char_divide_search(parsed[i],":",-1); yon_char_divide_search(parsed[i],":",-1);
yon_gtk_combo_box_text_find(window->PositionPortCombo,parsed[i]); yon_gtk_combo_box_text_find(window->PositionPortCombo,parsed[i]);
gtk_combo_box_set_active(GTK_COMBO_BOX(window->PositionPosCombo),2); gtk_combo_box_set_active(GTK_COMBO_BOX(window->PositionPosCombo),2);
} else if (strstr(parsed[i],"ab:")||strstr(parsed[i],"Above:")){ } else if (strstr(parsed[i],"ab:")||strstr(parsed[i],"Above:")){
char *location = yon_char_divide_search(parsed[i],":",-1); yon_char_divide_search(parsed[i],":",-1);
yon_gtk_combo_box_text_find(window->PositionPortCombo,parsed[i]); yon_gtk_combo_box_text_find(window->PositionPortCombo,parsed[i]);
gtk_combo_box_set_active(GTK_COMBO_BOX(window->PositionPosCombo),3); gtk_combo_box_set_active(GTK_COMBO_BOX(window->PositionPosCombo),3);
} else if (strstr(parsed[i],"bee:")||strstr(parsed[i],"Below:")){ } else if (strstr(parsed[i],"bee:")||strstr(parsed[i],"Below:")){
char *location = yon_char_divide_search(parsed[i],":",-1); yon_char_divide_search(parsed[i],":",-1);
yon_gtk_combo_box_text_find(window->PositionPortCombo,parsed[i]); yon_gtk_combo_box_text_find(window->PositionPortCombo,parsed[i]);
gtk_combo_box_set_active(GTK_COMBO_BOX(window->PositionPosCombo),4); gtk_combo_box_set_active(GTK_COMBO_BOX(window->PositionPosCombo),4);
} else if (strstr(parsed[i],"rotate:")){ } else if (strstr(parsed[i],"rotate:")){
char *location = yon_char_divide_search(parsed[i],":",-1); yon_char_divide_search(parsed[i],":",-1);
if (strcmp(parsed[i],"normal")){ if (strcmp(parsed[i],"normal")){
gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationCombo),0); gtk_combo_box_set_active(GTK_COMBO_BOX(window->RotationCombo),0);
} else if (strcmp(parsed[i],"left")){ } else if (strcmp(parsed[i],"left")){
@ -867,7 +860,7 @@ void yon_monitor_parse(monitor_edit_window *window, char *string){
} }
} }
void on_monitor_configure(GtkWidget *self,monitor_data *window){ void on_monitor_configure(GtkWidget *,monitor_data *window){
if(window){ if(window){
monitor_edit_window *monitors = new(monitor_edit_window); monitor_edit_window *monitors = new(monitor_edit_window);
GtkBuilder *builder = gtk_builder_new_from_resource(glade_path_configuration); GtkBuilder *builder = gtk_builder_new_from_resource(glade_path_configuration);
@ -906,7 +899,7 @@ void on_monitor_configure(GtkWidget *self,monitor_data *window){
char *target = (char*)gtk_label_get_text(GTK_LABEL(window->NameLabel)); char *target = (char*)gtk_label_get_text(GTK_LABEL(window->NameLabel));
monitors->curport=NULL; monitors->curport=NULL;
dictionary *dict=NULL; // dictionary *dict=NULL;
int config_size; int config_size;
config_str config_ports = yon_config_get_all_by_key(XORG_PARAMETER,&config_size); config_str config_ports = yon_config_get_all_by_key(XORG_PARAMETER,&config_size);
for (int i=0;i<config_size;i++){ for (int i=0;i<config_size;i++){
@ -953,7 +946,7 @@ void on_monitor_configure(GtkWidget *self,monitor_data *window){
*/ */
void yon_monitor_view_update(){ void yon_monitor_view_update(){
GList *list = gtk_container_get_children(GTK_CONTAINER(main_config.widgets->MonitorsBox)); GList *list = gtk_container_get_children(GTK_CONTAINER(main_config.widgets->MonitorsBox));
for (int i=0;i<g_list_length(list);i++){ for (guint i=0;i<g_list_length(list);i++){
gtk_widget_destroy(GTK_WIDGET(g_list_nth_data(list,i))); gtk_widget_destroy(GTK_WIDGET(g_list_nth_data(list,i)));
} }
g_list_free(list); g_list_free(list);
@ -982,7 +975,7 @@ void yon_monitor_view_update(){
} }
} }
void yon_proprietary_local_get(main_window *widgets){ void *yon_proprietary_local_get(main_window *widgets){
gtk_list_store_clear(main_config.list); gtk_list_store_clear(main_config.list);
gtk_list_store_clear(main_config.list2); gtk_list_store_clear(main_config.list2);
gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->KernelsCombo)); gtk_combo_box_text_remove_all(GTK_COMBO_BOX_TEXT(widgets->KernelsCombo));
@ -1019,17 +1012,17 @@ void yon_proprietary_local_get(main_window *widgets){
} }
} }
} }
textdomain(template_ui_LocaleName); char *status_text = yon_char_unite(yon_char_get_localised_from_lib(SUCCESS_LABEL),". ", main_config.load_mode==1?yon_char_get_localised_from_lib(LOCAL_LOAD_SUCCESS_LABEL):yon_char_get_localised_from_lib(GLOBAL_LOAD_SUCCESS_LABEL),NULL);
yon_ubl_status_box_render(SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE); yon_ubl_status_box_render(status_text,BACKGROUND_IMAGE_SUCCESS_TYPE);
textdomain(LocaleName); free(status_text);
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->DriversTree),GTK_TREE_MODEL(main_config.list)); gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->DriversTree),GTK_TREE_MODEL(main_config.list));
g_thread_exit (NULL); g_thread_exit (NULL);
} }
void yon_proprietary_get_thread(GtkWidget *self,main_window *widgets){ void yon_proprietary_get_thread(GtkWidget *,main_window *widgets){
yon_ubl_status_box_render(PROPRIETARY_LOADING_LABEL,BACKGROUND_IMAGE_INFO_TYPE); yon_ubl_status_box_render(PROPRIETARY_LOADING_LABEL,BACKGROUND_IMAGE_INFO_TYPE);
gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->DriversTree),NULL); gtk_tree_view_set_model(GTK_TREE_VIEW(widgets->DriversTree),NULL);
GThread *thread = g_thread_new("drivers_loading",(GThreadFunc)(yon_proprietary_local_get),widgets); g_thread_new("drivers_loading",(GThreadFunc)(yon_proprietary_local_get),widgets);
} }
void yon_monitor_view_dictionary_destroy(void *window){ void yon_monitor_view_dictionary_destroy(void *window){
@ -1089,7 +1082,6 @@ void yon_monitor_set_resolutions(){
supported->size=0; supported->size=0;
yon_dictionary_add_or_create_if_exists_with_data(main_config.supported_resolutions,connected_ports[i],supported); yon_dictionary_add_or_create_if_exists_with_data(main_config.supported_resolutions,connected_ports[i],supported);
} }
config_str final=NULL;
for(int i=0;i<resolutions_size;i++){ for(int i=0;i<resolutions_size;i++){
int cur_pos=atoi(yon_char_divide_search(resolutions[i],":",-1)); int cur_pos=atoi(yon_char_divide_search(resolutions[i],":",-1));
dictionary *dct=NULL; dictionary *dct=NULL;
@ -1223,7 +1215,7 @@ void yon_adapter_window_setup(main_window *widgets){
GtkIconTheme *icthm=gtk_icon_theme_get_default(); GtkIconTheme *icthm=gtk_icon_theme_get_default();
gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->InformationCompanyLogoImage2),gtk_icon_info_load_icon(gtk_icon_theme_lookup_icon_for_scale(icthm, "com.ublinux.ubl-settings-video.nvidia-logo",64,1,GTK_ICON_LOOKUP_FORCE_SVG),NULL)); gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->InformationCompanyLogoImage2),gtk_icon_info_load_icon(gtk_icon_theme_lookup_icon_for_scale(icthm, "com.ublinux.ubl-settings-video.nvidia-logo",64,1,GTK_ICON_LOOKUP_FORCE_SVG),NULL));
} }
else if (strstr(vendor,"AMD"),strstr(vendor,"Advanced Micro Devices")){ else if (strstr(vendor,"AMD")&&strstr(vendor,"Advanced Micro Devices")){
GtkIconTheme *icthm=gtk_icon_theme_get_default(); GtkIconTheme *icthm=gtk_icon_theme_get_default();
gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->InformationCompanyLogoImage2),gtk_icon_info_load_icon(gtk_icon_theme_lookup_icon_for_scale(icthm, "com.ublinux.ubl-settings-video.amd-logo",64,1,GTK_ICON_LOOKUP_FORCE_SVG),NULL)); gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->InformationCompanyLogoImage2),gtk_icon_info_load_icon(gtk_icon_theme_lookup_icon_for_scale(icthm, "com.ublinux.ubl-settings-video.amd-logo",64,1,GTK_ICON_LOOKUP_FORCE_SVG),NULL));
} }
@ -1245,7 +1237,7 @@ void yon_set_sensitive_from_combo_box(GtkComboBox *toggle, GtkWidget *target){
gtk_widget_set_sensitive(target,active>1 ? 1 : 0); gtk_widget_set_sensitive(target,active>1 ? 1 : 0);
} }
void on_database_update(void *self,void *widgets){ void on_database_update(void *,void *widgets){
yon_terminal_window_launch(GTK_WINDOW(((main_window*)widgets)->Window),install_proprietary_command("")); yon_terminal_window_launch(GTK_WINDOW(((main_window*)widgets)->Window),install_proprietary_command(""));
} }
@ -1287,6 +1279,7 @@ template_main_window *yon_main_window_complete(main_window *widgets){
widgets->LoadDriversButton = yon_gtk_builder_get_widget(builder,"LoadDriversButton"); widgets->LoadDriversButton = yon_gtk_builder_get_widget(builder,"LoadDriversButton");
widgets->DriversTree = yon_gtk_builder_get_widget(builder,"DriversTree"); widgets->DriversTree = yon_gtk_builder_get_widget(builder,"DriversTree");
widgets->TopTree = yon_gtk_builder_get_widget(builder,"TopTree");
widgets->KernelsCombo = yon_gtk_builder_get_widget(builder,"KernelsCombo"); widgets->KernelsCombo = yon_gtk_builder_get_widget(builder,"KernelsCombo");
widgets->DriverModulesTab = GTK_WIDGET(gtk_builder_get_object(builder, "DriverModulesTab")); widgets->DriverModulesTab = GTK_WIDGET(gtk_builder_get_object(builder, "DriverModulesTab"));
@ -1326,8 +1319,14 @@ template_main_window *yon_main_window_complete(main_window *widgets){
g_signal_connect(G_OBJECT(widgets->OptirunCombo),"changed",G_CALLBACK(yon_set_sensitive_from_combo_box),widgets->OptirunEntry); g_signal_connect(G_OBJECT(widgets->OptirunCombo),"changed",G_CALLBACK(yon_set_sensitive_from_combo_box),widgets->OptirunEntry);
g_signal_connect(G_OBJECT(widgets->PrimusrunCombo),"changed",G_CALLBACK(yon_set_sensitive_from_combo_box),widgets->PrimusrunEntry); g_signal_connect(G_OBJECT(widgets->PrimusrunCombo),"changed",G_CALLBACK(yon_set_sensitive_from_combo_box),widgets->PrimusrunEntry);
g_signal_connect(G_OBJECT(widgets->KernelsCombo),"changed",G_CALLBACK(on_kernel_filter_changed),widgets); g_signal_connect(G_OBJECT(widgets->KernelsCombo),"changed",G_CALLBACK(on_kernel_filter_changed),widgets);
// yon_gtk_tree_view_column_minimal_fixed_size_set(gtk_tree_view_get_column(GTK_TREE_VIEW(widgets->DriversTree),0));
// yon_gtk_tree_view_column_minimal_fixed_size_set(gtk_tree_view_get_column(GTK_TREE_VIEW(widgets->DriversTree),1));
// gtk_tree_view_column_set_fixed_width(gtk_tree_view_get_column(GTK_TREE_VIEW(widgets->TopTree),0),gtk_tree_view_column_get_fixed_width(gtk_tree_view_get_column(GTK_TREE_VIEW(widgets->DriversTree),0))+gtk_tree_view_column_get_fixed_width(gtk_tree_view_get_column(GTK_TREE_VIEW(widgets->DriversTree),1)));
// yon_monitor_view_setup(widgets->mainMonitorVisualConfigurationBox); // yon_monitor_view_setup(widgets->mainMonitorVisualConfigurationBox);
gtk_combo_box_text_prepend_text(GTK_COMBO_BOX_TEXT(widgets->AutoDriverCombo),yon_get_default_label_with_parameter(VGADRV_AUTO_command));
yon_gtk_tree_view_minimal_fixed_size_set_full(GTK_TREE_VIEW(widgets->DriversTree)); yon_gtk_tree_view_minimal_fixed_size_set_full(GTK_TREE_VIEW(widgets->DriversTree));
yon_adapter_window_setup(widgets); yon_adapter_window_setup(widgets);
@ -1374,21 +1373,14 @@ int main(int argc, char *argv[]){
char *path = yon_char_unite(yon_ubl_user_get_home_directory(),"/.config/",LocaleName,"/",LocaleName,".conf",NULL); char *path = yon_char_unite(yon_ubl_user_get_home_directory(),"/.config/",LocaleName,"/",LocaleName,".conf",NULL);
yon_window_config_load(path); yon_window_config_load(path);
if (getuid()!=0){
textdomain(template_ui_LocaleName);
yon_ubl_status_box_render(ROOT_WARNING_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
textdomain(LocaleName);
}
if (system(yon_check_database_command)){ if (system(yon_check_database_command)){
dialog_confirmation_data *data = malloc(sizeof(dialog_confirmation_data)); dialog_confirmation_data *data = malloc(sizeof(dialog_confirmation_data));
data->action_text=DATABASE_UNACCESSIBLE_LABEL; data->action_text=DATABASE_UNACCESSIBLE_LABEL;
data->function = on_database_update; data->function = on_database_update;
data->data = widgets; data->data = widgets;
yon_confirmation_dialog_call(widgets->HeadOverlay,data); yon_confirmation_dialog_call(widgets->HeadOverlay,data);
} }
yon_proprietary_get_thread(NULL,(main_window*)widgets); yon_proprietary_get_thread(NULL,(main_window*)widgets);
// on_config_fill_interface(&widgets);
yon_monitor_set_resolutions(); yon_monitor_set_resolutions();
gtk_main(); gtk_main();
return 0; return 0;

@ -119,11 +119,7 @@
#define XORG_PARAMETER "XORG_MONITOR" #define XORG_PARAMETER "XORG_MONITOR"
#define config_get_command(target) yon_char_append("cat ",target) #define config_get_command(source) yon_char_unite("ubconfig --source ",source," get [video] XORG_MONITOR[*] VGADRV_AUTO VGADRV_NOFREE XORG_EXT XORG_DPI FAILSAFEATI FAILSAFENVIDIA OPTIRUN PRIMUSRUN INTEGRATEDVGA",NULL)
#define yon_config_get_custom_command(target) yon_char_unite("ubconfig --source ",target," get [video] XORG_MONITOR[*] VGADRV_AUTO VGADRV_NOFREE XORG_EXT XORG_DPI FAILSAFEATI FAILSAFENVIDIA OPTIRUN PRIMUSRUN INTEGRATEDVGA",NULL)
#define config_get_local_command "ubconfig --source system get [video] XORG_MONITOR[*] VGADRV_AUTO VGADRV_NOFREE XORG_EXT XORG_DPI FAILSAFEATI FAILSAFENVIDIA OPTIRUN PRIMUSRUN INTEGRATEDVGA"
#define config_get_global_command yon_char_new("ubconfig --source global get [video] XORG_MONITOR[*] VGADRV_AUTO VGADRV_NOFREE XORG_EXT XORG_DPI FAILSAFEATI FAILSAFENVIDIA OPTIRUN PRIMUSRUN INTEGRATEDVGA")
#define config_get_default_command "" #define config_get_default_command ""
#define config_get_global_only_parameters "" #define config_get_global_only_parameters ""
@ -179,6 +175,7 @@ typedef struct
GtkWidget *FrameGapCombo; GtkWidget *FrameGapCombo;
GtkWidget *DriversTree; GtkWidget *DriversTree;
GtkWidget *TopTree;
GtkCellRenderer *ModuleRenderer; GtkCellRenderer *ModuleRenderer;
GtkCellRenderer *PackageRenderer; GtkCellRenderer *PackageRenderer;
GtkWidget *KernelsCombo; GtkWidget *KernelsCombo;
@ -325,8 +322,50 @@ typedef struct
monitor_data *yon_monitor_new(main_window *widgets,int dull); monitor_data *yon_monitor_new(main_window *widgets,int dull);
void yon_launch_with_output(char *command); void yon_launch_with_output(char *command);
void yon_proprietary_local_get();
void yon_monitor_view_update(); void yon_monitor_view_update();
void on_save_done(main_window *, config_str output, int size);
void yon_proprietary_get_thread(GtkWidget *self,main_window *widgets); void yon_proprietary_get_thread(GtkWidget *self,main_window *widgets);
void on_terminal_done(GtkWidget *terminal, int size, main_window *widgets);
void on_terminal_more(GtkWidget *self, main_window *widgets);
void on_terminal_destroy(GtkWidget *self, main_window *widgets);
void on_terminal_check_progress(VteTerminal *terminal, main_window *widgets);
void yon_terminal_start(main_window *widgets, char *usr_command);
void on_driver_pack_selection_change(GtkWidget *self, main_window *widgets);
void on_driver_pack_info(GtkWidget *self, main_window *widgets);
void on_pack_install_activate(GtkCellRendererToggle* self,gchar* path,main_window *widgets);
void on_module_install_activate(GtkCellRendererToggle* self,gchar* path,main_window *widgets);
gboolean yon_filter_func(GtkTreeModel* model,GtkTreeIter* iter,main_window *widgets);
void on_kernel_filter_changed(GtkWidget *self, main_window *widgets);
void on_port_chosen_changed(GtkWidget *self, monitor_edit_window *window);
void on_sensitive_change(GtkWidget *self, GtkWidget *toggle);
void on_sensitive_change_reversed(GtkWidget *self, GtkWidget *toggle);
void on_auto_choose_drivers(GtkWidget *self, main_window *widgets);
void on_resolutions_unsupported_show(GtkToggleButton *self, monitor_edit_window *window);
void yon_interface_save();
void yon_interface_update();
void yon_load_proceed(YON_CONFIG_TYPE type);
void on_config_local_load(GtkWidget *self,main_window *widgets);
void on_config_global_load(GtkWidget *self,main_window *widgets);
void on_config_custom_load(GtkWidget *self,main_window *widgets);
void on_config_global_local_save();
void on_config_local_save();
void on_config_global_save();
void on_config_custom_save(GtkWidget *self, main_window *widgets);
void on_monitor_delete(GtkWidget *self,monitor_data *window);
void on_monitor_switch(GtkWidget *self,monitor_data *window);
void on_monitor_add(GtkWidget *self,main_window *widgets);
void on_monitor_config_save(GtkWidget *self, monitor_edit_window *window);
void yon_monitor_parse(monitor_edit_window *window, char *string);
void on_monitor_configure(GtkWidget *self,monitor_data *window);
void yon_monitor_view_update();
void *yon_proprietary_local_get(main_window *widgets);
void yon_proprietary_get_thread(GtkWidget *self,main_window *widgets);
void yon_monitor_view_dictionary_destroy(void *window);
monitor_data *yon_monitor_new(main_window *widgets,int dull);
void yon_monitor_set_resolutions();
void yon_adapter_window_setup(main_window *widgets);
void yon_set_sensitive_from_combo_box(GtkComboBox *toggle, GtkWidget *target);
void on_database_update(void *self,void *widgets);
template_main_window *yon_main_window_complete(main_window *widgets);
void config_init();
#endif #endif

@ -119,6 +119,10 @@
#define DESCRIPTION_LABEL _("Description") #define DESCRIPTION_LABEL _("Description")
#define VENDOR_LABEL _("Vendor") #define VENDOR_LABEL _("Vendor")
#define MODEL_LABEL _("Model") #define MODEL_LABEL _("Model")
#define KERNEL_LABEL _("Kernel:")
#define KERNEL_TAB_LABEL _("Kernel")
#define MODULE_TAB_LABEL _("Module")
#define DRIVER_INFO_LABEL _("Driver information")
#define USED_KERNEL_DRIVER_LABEL _("Kernel driver in use") #define USED_KERNEL_DRIVER_LABEL _("Kernel driver in use")
#define AVALIABLE_KERNEL_DRIVERS_LABEL _("Kernel modules") #define AVALIABLE_KERNEL_DRIVERS_LABEL _("Kernel modules")
#define INTEL_DESCRIPTION_LABEL _("UBLinux package includes Intel driver and utilities") #define INTEL_DESCRIPTION_LABEL _("UBLinux package includes Intel driver and utilities")

@ -1110,6 +1110,7 @@
<property name="visible">True</property> <property name="visible">True</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="receives-default">True</property> <property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Update</property>
<property name="image">image3</property> <property name="image">image3</property>
<style> <style>
<class name="thin"/> <class name="thin"/>
@ -1127,6 +1128,7 @@
<property name="sensitive">False</property> <property name="sensitive">False</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="receives-default">True</property> <property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Driver information</property>
<property name="image">image10</property> <property name="image">image10</property>
<style> <style>
<class name="thin"/> <class name="thin"/>
@ -1160,21 +1162,14 @@
</child> </child>
<child> <child>
<object class="GtkTreeViewColumn"> <object class="GtkTreeViewColumn">
<property name="sizing">fixed</property>
<property name="fixed-width">160</property>
<property name="title" translatable="yes">Installed</property> <property name="title" translatable="yes">Installed</property>
</object> </object>
</child> </child>
<child> <child>
<object class="GtkTreeViewColumn"/> <object class="GtkTreeViewColumn"/>
</child> </child>
<child>
<object class="GtkTreeViewColumn"/>
</child>
<child>
<object class="GtkTreeViewColumn"/>
</child>
<child>
<object class="GtkTreeViewColumn"/>
</child>
</object> </object>
<packing> <packing>
<property name="expand">False</property> <property name="expand">False</property>
@ -1201,6 +1196,8 @@
</child> </child>
<child> <child>
<object class="GtkTreeViewColumn"> <object class="GtkTreeViewColumn">
<property name="sizing">fixed</property>
<property name="fixed-width">80</property>
<property name="title" translatable="yes">Module</property> <property name="title" translatable="yes">Module</property>
<child> <child>
<object class="GtkCellRendererToggle" id="ModuleRenderer"/> <object class="GtkCellRendererToggle" id="ModuleRenderer"/>
@ -1213,6 +1210,7 @@
</child> </child>
<child> <child>
<object class="GtkTreeViewColumn" id="InstalledColumn"> <object class="GtkTreeViewColumn" id="InstalledColumn">
<property name="fixed-width">80</property>
<property name="title" translatable="yes">Package</property> <property name="title" translatable="yes">Package</property>
<property name="sort-order">descending</property> <property name="sort-order">descending</property>
<property name="sort-column-id">0</property> <property name="sort-column-id">0</property>
@ -1249,7 +1247,6 @@
</child> </child>
<child> <child>
<object class="GtkTreeViewColumn" id="DescriptionColumn"> <object class="GtkTreeViewColumn" id="DescriptionColumn">
<property name="sizing">autosize</property>
<property name="title" translatable="yes">Description</property> <property name="title" translatable="yes">Description</property>
<child> <child>
<object class="GtkCellRendererText"> <object class="GtkCellRendererText">

@ -478,264 +478,274 @@ msgid "Model"
msgstr "" msgstr ""
#: source/ubl-strings.h:122 #: source/ubl-strings.h:122
msgid "Kernel driver in use" msgid "Kernel:"
msgstr "" msgstr ""
#: source/ubl-strings.h:123 #: source/ubl-strings.h:123
msgid "Kernel"
msgstr ""
#: source/ubl-strings.h:124
msgid "Module"
msgstr ""
#: source/ubl-strings.h:124
msgid "Driver information"
msgstr ""
#: source/ubl-strings.h:125
msgid "Kernel driver in use"
msgstr ""
#: source/ubl-strings.h:126
msgid "Kernel modules" msgid "Kernel modules"
msgstr "" msgstr ""
#: source/ubl-strings.h:124 source/ubl-strings.h:158 #: source/ubl-strings.h:127 source/ubl-strings.h:161
msgid "UBLinux package includes Intel driver and utilities" msgid "UBLinux package includes Intel driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:125 source/ubl-strings.h:157 #: source/ubl-strings.h:128 source/ubl-strings.h:160
msgid "UBLinux module includes AMD driver and utilities" msgid "UBLinux module includes AMD driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:126 source/ubl-strings.h:156 #: source/ubl-strings.h:129 source/ubl-strings.h:159
msgid "UBLinux package includes AMD Vulkan driver and utilities" msgid "UBLinux package includes AMD Vulkan driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:128 #: source/ubl-strings.h:131
msgid "Important field is empty" msgid "Important field is empty"
msgstr "" msgstr ""
#: source/ubl-strings.h:130 #: source/ubl-strings.h:133
msgid "Load drivers from database" msgid "Load drivers from database"
msgstr "" msgstr ""
#: source/ubl-strings.h:131 #: source/ubl-strings.h:134
msgid "Choose driver automatically:" msgid "Choose driver automatically:"
msgstr "" msgstr ""
#: source/ubl-strings.h:132 #: source/ubl-strings.h:135
msgid "Free drivers:" msgid "Free drivers:"
msgstr "" msgstr ""
#: source/ubl-strings.h:133 #: source/ubl-strings.h:136
msgid "Default" msgid "Default"
msgstr "" msgstr ""
#: source/ubl-strings.h:134 #: source/ubl-strings.h:137
msgid "Switch nouveau and radeon off" msgid "Switch nouveau and radeon off"
msgstr "" msgstr ""
#: source/ubl-strings.h:135 #: source/ubl-strings.h:138
msgid "Switch nouveau off" msgid "Switch nouveau off"
msgstr "" msgstr ""
#: source/ubl-strings.h:136 #: source/ubl-strings.h:139
msgid "Switch radeon off" msgid "Switch radeon off"
msgstr "" msgstr ""
#: source/ubl-strings.h:137 #: source/ubl-strings.h:140
msgid "Switch free drvers on" msgid "Switch free drvers on"
msgstr "" msgstr ""
#: source/ubl-strings.h:138 #: source/ubl-strings.h:141
msgid "Do not switch off display(-s) (DPMS global configuration):" msgid "Do not switch off display(-s) (DPMS global configuration):"
msgstr "" msgstr ""
#: source/ubl-strings.h:139 #: source/ubl-strings.h:142
msgid "Automatic DPI" msgid "Automatic DPI"
msgstr "" msgstr ""
#: source/ubl-strings.h:140 #: source/ubl-strings.h:143
msgid "144 DPI - 150% (for 2K)" msgid "144 DPI - 150% (for 2K)"
msgstr "" msgstr ""
#: source/ubl-strings.h:141 #: source/ubl-strings.h:144
msgid "192 DPI - 200% (for 4K)" msgid "192 DPI - 200% (for 4K)"
msgstr "" msgstr ""
#: source/ubl-strings.h:142 #: source/ubl-strings.h:145
msgid "Display DPI" msgid "Display DPI"
msgstr "" msgstr ""
#: source/ubl-strings.h:143 #: source/ubl-strings.h:146
msgid "discrete video only (AMD/ATI):" msgid "discrete video only (AMD/ATI):"
msgstr "" msgstr ""
#: source/ubl-strings.h:144 #: source/ubl-strings.h:147
msgid "Driver Modules" msgid "Driver Modules"
msgstr "" msgstr ""
#: source/ubl-strings.h:145 #: source/ubl-strings.h:148
msgid "Devices and Drivers" msgid "Devices and Drivers"
msgstr "" msgstr ""
#: source/ubl-strings.h:147 #: source/ubl-strings.h:150
msgid "UBLinux module includes NVIDIA 340xx driver and utilities" msgid "UBLinux module includes NVIDIA 340xx driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:148 #: source/ubl-strings.h:151
msgid "UBLinux package includes NVIDIA 340xx driver and utilities" msgid "UBLinux package includes NVIDIA 340xx driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:149 #: source/ubl-strings.h:152
msgid "UBLinux module includes NVIDIA 390xx driver and utilities" msgid "UBLinux module includes NVIDIA 390xx driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:150 #: source/ubl-strings.h:153
msgid "UBLinux package includes NVIDIA 390xx driver and utilities" msgid "UBLinux package includes NVIDIA 390xx driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:151 #: source/ubl-strings.h:154
msgid "UBLinux module includes NVIDIA 470xx driver and utilities" msgid "UBLinux module includes NVIDIA 470xx driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:152 #: source/ubl-strings.h:155
msgid "UBLinux package includes NVIDIA 470xx driver and utilities" msgid "UBLinux package includes NVIDIA 470xx driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:153 #: source/ubl-strings.h:156
msgid "UBLinux module includes NVIDIA 510xx driver and utilities" msgid "UBLinux module includes NVIDIA 510xx driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:154 #: source/ubl-strings.h:157
msgid "UBLinux package includes NVIDIA 510xx driver and utilities" msgid "UBLinux package includes NVIDIA 510xx driver and utilities"
msgstr "" msgstr ""
#: source/ubl-strings.h:155 #: source/ubl-strings.h:158
msgid "UBLinux package includes opensource driver NVIDIA" msgid "UBLinux package includes opensource driver NVIDIA"
msgstr "" msgstr ""
#: source/ubl-strings.h:159 #: source/ubl-strings.h:162
msgid "UBLinux package includes AMD opensource driver" msgid "UBLinux package includes AMD opensource driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:160 #: source/ubl-strings.h:163
msgid "UBLinux package includes ATI opensource driver" msgid "UBLinux package includes ATI opensource driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:161 #: source/ubl-strings.h:164
msgid "UBLinux package includes dummy driver" msgid "UBLinux package includes dummy driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:162 #: source/ubl-strings.h:165
msgid "UBLinux package includes framebuffer video driver" msgid "UBLinux package includes framebuffer video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:163 #: source/ubl-strings.h:166
msgid "UBLinux package includes VIA video driver" msgid "UBLinux package includes VIA video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:164 #: source/ubl-strings.h:167
msgid "UBLinux package includes SiS video driver" msgid "UBLinux package includes SiS video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:165 #: source/ubl-strings.h:168
msgid "UBLinux package includes vesa video driver" msgid "UBLinux package includes vesa video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:166 #: source/ubl-strings.h:169
msgid "UBLinux package includes VMWare video driver" msgid "UBLinux package includes VMWare video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:167 #: source/ubl-strings.h:170
msgid "UBLinux package includes Voodoo video driver" msgid "UBLinux package includes Voodoo video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:168 #: source/ubl-strings.h:171
msgid "UBLinux package includes qxl video driver" msgid "UBLinux package includes qxl video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:170 #: source/ubl-strings.h:173
msgid "" msgid ""
"Driver for nVidia 8XXX, 9XXX, 1XX, 2XX, 3XX, 4XX, 5XX, 6XX, 7XX series video " "Driver for nVidia 8XXX, 9XXX, 1XX, 2XX, 3XX, 4XX, 5XX, 6XX, 7XX series video "
"cards" "cards"
msgstr "" msgstr ""
#: source/ubl-strings.h:171 #: source/ubl-strings.h:174
msgid "Driver for nVidia 6XX, 7XX, 9XX, 10XX, 16XX series video cards" msgid "Driver for nVidia 6XX, 7XX, 9XX, 10XX, 16XX series video cards"
msgstr "" msgstr ""
#: source/ubl-strings.h:172 #: source/ubl-strings.h:175
msgid "" msgid ""
"Driver for nVidia NVS, Quadro Sync, Quadro NVS, Quadro Blade/Embedded, " "Driver for nVidia NVS, Quadro Sync, Quadro NVS, Quadro Blade/Embedded, "
"Quadro, Quadro RTX, NVIDIA RTX series video cards" "Quadro, Quadro RTX, NVIDIA RTX series video cards"
msgstr "" msgstr ""
#: source/ubl-strings.h:173 #: source/ubl-strings.h:176
msgid "Open source nvidia graphics card driver" msgid "Open source nvidia graphics card driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:174 #: source/ubl-strings.h:177
msgid "" msgid ""
"Driver for AMD Radeon R9 285/290/290X, Radeon R9 360/380/380X/390/390X, " "Driver for AMD Radeon R9 285/290/290X, Radeon R9 360/380/380X/390/390X, "
"Radeon R9 Fury/Fury X/Nano, Radeon RX 400/500, Radeon RX Vega, Radeon VII, " "Radeon R9 Fury/Fury X/Nano, Radeon RX 400/500, Radeon RX Vega, Radeon VII, "
"Radeon RX 5000/6000/7000 series video cards" "Radeon RX 5000/6000/7000 series video cards"
msgstr "" msgstr ""
#: source/ubl-strings.h:175 #: source/ubl-strings.h:178
msgid "" msgid ""
"Driver for video cards Intel i810/i830/i915/945G/G965+ and newer, except GMA " "Driver for video cards Intel i810/i830/i915/945G/G965+ and newer, except GMA "
"3600" "3600"
msgstr "" msgstr ""
#: source/ubl-strings.h:176 #: source/ubl-strings.h:179
msgid "Opensource X.org amdgpu video driver for AMD graphics card" msgid "Opensource X.org amdgpu video driver for AMD graphics card"
msgstr "" msgstr ""
#: source/ubl-strings.h:177 #: source/ubl-strings.h:180
msgid "Opensource X.org ati video driver for ATI graphics card" msgid "Opensource X.org ati video driver for ATI graphics card"
msgstr "" msgstr ""
#: source/ubl-strings.h:178 #: source/ubl-strings.h:181
msgid "X.org dummy video driver" msgid "X.org dummy video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:179 #: source/ubl-strings.h:182
msgid "X.org framebuffer video driver" msgid "X.org framebuffer video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:180 #: source/ubl-strings.h:183
msgid "Open Source X driver for VIA IGPs" msgid "Open Source X driver for VIA IGPs"
msgstr "" msgstr ""
#: source/ubl-strings.h:181 #: source/ubl-strings.h:184
msgid "X.org SiS USB video driver" msgid "X.org SiS USB video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:182 #: source/ubl-strings.h:185
msgid "X.org vesa video driver" msgid "X.org vesa video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:183 #: source/ubl-strings.h:186
msgid "X.org vmware video driver" msgid "X.org vmware video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:184 #: source/ubl-strings.h:187
msgid "X.org 3dfx Voodoo1/Voodoo2 2D video driver" msgid "X.org 3dfx Voodoo1/Voodoo2 2D video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:185 #: source/ubl-strings.h:188
msgid "X.org X11 qxl video driver" msgid "X.org X11 qxl video driver"
msgstr "" msgstr ""
#: source/ubl-strings.h:187 #: source/ubl-strings.h:190
msgid "Database files must be updated" msgid "Database files must be updated"
msgstr "" msgstr ""
#: source/ubl-strings.h:189 #: source/ubl-strings.h:192
msgid "Warning: Couldn't find any supported kernel version" msgid "Warning: Couldn't find any supported kernel version"
msgstr "" msgstr ""
#: source/ubl-strings.h:191 #: source/ubl-strings.h:194
msgid "Default (All installed)" msgid "Default (All installed)"
msgstr "" msgstr ""
#: source/ubl-strings.h:193 #: source/ubl-strings.h:196
msgid "Are you sure want to install driver " msgid "Are you sure want to install driver "
msgstr "" msgstr ""
#: source/ubl-strings.h:194 #: source/ubl-strings.h:197
msgid "Are you sure want to remove driver " msgid "Are you sure want to remove driver "
msgstr "" msgstr ""
msgid "Discrete video only (AMD/ATI)"
msgstr "Только дискретное видео (AMD/ATI)"
msgid "Driver modules"
msgstr "Модули драйвера"

@ -484,170 +484,186 @@ msgid "Model"
msgstr "Модель" msgstr "Модель"
#: source/ubl-strings.h:122 #: source/ubl-strings.h:122
msgid "Kernel:"
msgstr "Ядро:"
#: source/ubl-strings.h:123
msgid "Kernel"
msgstr "Ядро"
#: source/ubl-strings.h:124
msgid "Module"
msgstr "Модуль"
#: source/ubl-strings.h:124
msgid "Driver information"
msgstr "Информация о драйвере"
#: source/ubl-strings.h:125
msgid "Kernel driver in use" msgid "Kernel driver in use"
msgstr "Используемый драйвер ядра" msgstr "Используемый драйвер ядра"
#: source/ubl-strings.h:123 #: source/ubl-strings.h:126
msgid "Kernel modules" msgid "Kernel modules"
msgstr "Модули ядра" msgstr "Модули ядра"
#: source/ubl-strings.h:124 source/ubl-strings.h:158 #: source/ubl-strings.h:127 source/ubl-strings.h:161
msgid "UBLinux package includes Intel driver and utilities" msgid "UBLinux package includes Intel driver and utilities"
msgstr "Пакет с драйвером и утилитами Intel" msgstr "Пакет с драйвером и утилитами Intel"
#: source/ubl-strings.h:125 source/ubl-strings.h:157 #: source/ubl-strings.h:128 source/ubl-strings.h:160
msgid "UBLinux module includes AMD driver and utilities" msgid "UBLinux module includes AMD driver and utilities"
msgstr "Пакет с драйвером и утилитами AMD" msgstr "Пакет с драйвером и утилитами AMD"
#: source/ubl-strings.h:126 source/ubl-strings.h:156 #: source/ubl-strings.h:129 source/ubl-strings.h:159
msgid "UBLinux package includes AMD Vulkan driver and utilities" msgid "UBLinux package includes AMD Vulkan driver and utilities"
msgstr "Пакет с драйвером и утилитами AMD с поддержкой Vulkan" msgstr "Пакет с драйвером и утилитами AMD с поддержкой Vulkan"
#: source/ubl-strings.h:128 #: source/ubl-strings.h:131
msgid "Important field is empty" msgid "Important field is empty"
msgstr "Пустое важное поле" msgstr "Пустое важное поле"
#: source/ubl-strings.h:130 #: source/ubl-strings.h:133
msgid "Load drivers from database" msgid "Load drivers from database"
msgstr "Загрузить список доступных драйверов" msgstr "Загрузить список доступных драйверов"
#: source/ubl-strings.h:131 #: source/ubl-strings.h:134
msgid "Choose driver automatically:" msgid "Choose driver automatically:"
msgstr "Автоматический выбор драйвера:" msgstr "Автоматический выбор драйвера:"
#: source/ubl-strings.h:132 #: source/ubl-strings.h:135
msgid "Free drivers:" msgid "Free drivers:"
msgstr "Свободные драйверы" msgstr "Свободные драйверы"
#: source/ubl-strings.h:133 #: source/ubl-strings.h:136
msgid "Default" msgid "Default"
msgstr "По умолчанию" msgstr "По умолчанию"
#: source/ubl-strings.h:134 #: source/ubl-strings.h:137
msgid "Switch nouveau and radeon off" msgid "Switch nouveau and radeon off"
msgstr "Отключить nouveau и radeon" msgstr "Отключить nouveau и radeon"
#: source/ubl-strings.h:135 #: source/ubl-strings.h:138
msgid "Switch nouveau off" msgid "Switch nouveau off"
msgstr "Отключить nouveau" msgstr "Отключить nouveau"
#: source/ubl-strings.h:136 #: source/ubl-strings.h:139
msgid "Switch radeon off" msgid "Switch radeon off"
msgstr "Отключить radeon" msgstr "Отключить radeon"
#: source/ubl-strings.h:137 #: source/ubl-strings.h:140
msgid "Switch free drvers on" msgid "Switch free drvers on"
msgstr "Включить свободные драйвера" msgstr "Включить свободные драйвера"
#: source/ubl-strings.h:138 #: source/ubl-strings.h:141
msgid "Do not switch off display(-s) (DPMS global configuration):" msgid "Do not switch off display(-s) (DPMS global configuration):"
msgstr "Не выключать дисплей(-и) (глобальная настройка DPMS):" msgstr "Не выключать дисплей(-и) (глобальная настройка DPMS):"
#: source/ubl-strings.h:139 #: source/ubl-strings.h:142
msgid "Automatic DPI" msgid "Automatic DPI"
msgstr "Автоматический выбор DPI" msgstr "Автоматический выбор DPI"
#: source/ubl-strings.h:140 #: source/ubl-strings.h:143
msgid "144 DPI - 150% (for 2K)" msgid "144 DPI - 150% (for 2K)"
msgstr "144 DPI - 150% (для 2K)" msgstr "144 DPI - 150% (для 2K)"
#: source/ubl-strings.h:141 #: source/ubl-strings.h:144
msgid "192 DPI - 200% (for 4K)" msgid "192 DPI - 200% (for 4K)"
msgstr "192 DPI - 150% (для 4K)" msgstr "192 DPI - 150% (для 4K)"
#: source/ubl-strings.h:142 #: source/ubl-strings.h:145
msgid "Display DPI" msgid "Display DPI"
msgstr "Масштабирование вывода изображения" msgstr "Масштабирование вывода изображения"
#: source/ubl-strings.h:143 #: source/ubl-strings.h:146
msgid "discrete video only (AMD/ATI):" msgid "discrete video only (AMD/ATI):"
msgstr "Только дискретное видео (AMD/ATI):" msgstr "Только дискретное видео (AMD/ATI):"
#: source/ubl-strings.h:144 #: source/ubl-strings.h:147
msgid "Driver Modules" msgid "Driver Modules"
msgstr "Модули драйвера" msgstr "Модули драйвера"
#: source/ubl-strings.h:145 #: source/ubl-strings.h:148
msgid "Devices and Drivers" msgid "Devices and Drivers"
msgstr "Устройства и драйвера" msgstr "Устройства и драйвера"
#: source/ubl-strings.h:147 #: source/ubl-strings.h:150
msgid "UBLinux module includes NVIDIA 340xx driver and utilities" msgid "UBLinux module includes NVIDIA 340xx driver and utilities"
msgstr "Пакет с модулем драйвера и утилитами NVIDIA 340xx" msgstr "Пакет с модулем драйвера и утилитами NVIDIA 340xx"
#: source/ubl-strings.h:148 #: source/ubl-strings.h:151
msgid "UBLinux package includes NVIDIA 340xx driver and utilities" msgid "UBLinux package includes NVIDIA 340xx driver and utilities"
msgstr "Пакет с драйвером NVIDIA 340xx" msgstr "Пакет с драйвером NVIDIA 340xx"
#: source/ubl-strings.h:149 #: source/ubl-strings.h:152
msgid "UBLinux module includes NVIDIA 390xx driver and utilities" msgid "UBLinux module includes NVIDIA 390xx driver and utilities"
msgstr "Пакет с модулем драйвера и утилитами NVIDIA 390xx" msgstr "Пакет с модулем драйвера и утилитами NVIDIA 390xx"
#: source/ubl-strings.h:150 #: source/ubl-strings.h:153
msgid "UBLinux package includes NVIDIA 390xx driver and utilities" msgid "UBLinux package includes NVIDIA 390xx driver and utilities"
msgstr "Пакет с драйвером NVIDIA 390xx" msgstr "Пакет с драйвером NVIDIA 390xx"
#: source/ubl-strings.h:151 #: source/ubl-strings.h:154
msgid "UBLinux module includes NVIDIA 470xx driver and utilities" msgid "UBLinux module includes NVIDIA 470xx driver and utilities"
msgstr "Пакет с модулем драйвера и утилитами NVIDIA 470xx" msgstr "Пакет с модулем драйвера и утилитами NVIDIA 470xx"
#: source/ubl-strings.h:152 #: source/ubl-strings.h:155
msgid "UBLinux package includes NVIDIA 470xx driver and utilities" msgid "UBLinux package includes NVIDIA 470xx driver and utilities"
msgstr "Пакет с драйвером NVIDIA 470xx" msgstr "Пакет с драйвером NVIDIA 470xx"
#: source/ubl-strings.h:153 #: source/ubl-strings.h:156
msgid "UBLinux module includes NVIDIA 510xx driver and utilities" msgid "UBLinux module includes NVIDIA 510xx driver and utilities"
msgstr "Пакет с модулем драйвера и утилитами NVIDIA 510xx" msgstr "Пакет с модулем драйвера и утилитами NVIDIA 510xx"
#: source/ubl-strings.h:154 #: source/ubl-strings.h:157
msgid "UBLinux package includes NVIDIA 510xx driver and utilities" msgid "UBLinux package includes NVIDIA 510xx driver and utilities"
msgstr "Пакет с драйвером NVIDIA 510xx" msgstr "Пакет с драйвером NVIDIA 510xx"
#: source/ubl-strings.h:155 #: source/ubl-strings.h:158
msgid "UBLinux package includes opensource driver NVIDIA" msgid "UBLinux package includes opensource driver NVIDIA"
msgstr "Пакет с драйвером NVIDIA с открытым исходным кодом" msgstr "Пакет с драйвером NVIDIA с открытым исходным кодом"
#: source/ubl-strings.h:159 #: source/ubl-strings.h:162
msgid "UBLinux package includes AMD opensource driver" msgid "UBLinux package includes AMD opensource driver"
msgstr "Пакет с драйвером AMD с открытым исходным кодом" msgstr "Пакет с драйвером AMD с открытым исходным кодом"
#: source/ubl-strings.h:160 #: source/ubl-strings.h:163
msgid "UBLinux package includes ATI opensource driver" msgid "UBLinux package includes ATI opensource driver"
msgstr "Пакет с драйвером ATI с открытым исходным кодом" msgstr "Пакет с драйвером ATI с открытым исходным кодом"
#: source/ubl-strings.h:161 #: source/ubl-strings.h:164
msgid "UBLinux package includes dummy driver" msgid "UBLinux package includes dummy driver"
msgstr "Пакет UBLinux с фиктивным драйвером" msgstr "Пакет UBLinux с фиктивным драйвером"
#: source/ubl-strings.h:162 #: source/ubl-strings.h:165
msgid "UBLinux package includes framebuffer video driver" msgid "UBLinux package includes framebuffer video driver"
msgstr "Пакет UBLinux с видеодрайвером кадрового буфера." msgstr "Пакет UBLinux с видеодрайвером кадрового буфера."
#: source/ubl-strings.h:163 #: source/ubl-strings.h:166
msgid "UBLinux package includes VIA video driver" msgid "UBLinux package includes VIA video driver"
msgstr "Пакет с видеодрайвером VIA" msgstr "Пакет с видеодрайвером VIA"
#: source/ubl-strings.h:164 #: source/ubl-strings.h:167
msgid "UBLinux package includes SiS video driver" msgid "UBLinux package includes SiS video driver"
msgstr "Пакет с видеодрайвером SiS" msgstr "Пакет с видеодрайвером SiS"
#: source/ubl-strings.h:165 #: source/ubl-strings.h:168
msgid "UBLinux package includes vesa video driver" msgid "UBLinux package includes vesa video driver"
msgstr "Пакет с видеодрайвером vesa" msgstr "Пакет с видеодрайвером vesa"
#: source/ubl-strings.h:166 #: source/ubl-strings.h:169
msgid "UBLinux package includes VMWare video driver" msgid "UBLinux package includes VMWare video driver"
msgstr "Пакет с видеодрайвером VMWare" msgstr "Пакет с видеодрайвером VMWare"
#: source/ubl-strings.h:167 #: source/ubl-strings.h:170
msgid "UBLinux package includes Voodoo video driver" msgid "UBLinux package includes Voodoo video driver"
msgstr "Пакет с видеодрайвером Voodoo" msgstr "Пакет с видеодрайвером Voodoo"
#: source/ubl-strings.h:168 #: source/ubl-strings.h:171
msgid "UBLinux package includes qxl video driver" msgid "UBLinux package includes qxl video driver"
msgstr "Пакет с видеодрайвером qxl" msgstr "Пакет с видеодрайвером qxl"
#: source/ubl-strings.h:170 #: source/ubl-strings.h:173
msgid "" msgid ""
"Driver for nVidia 8XXX, 9XXX, 1XX, 2XX, 3XX, 4XX, 5XX, 6XX, 7XX series video " "Driver for nVidia 8XXX, 9XXX, 1XX, 2XX, 3XX, 4XX, 5XX, 6XX, 7XX series video "
"cards" "cards"
@ -655,11 +671,11 @@ msgstr ""
"Драйвер для видеокарт nVidia серий 8XXX, 9XXX, 1XX, 2XX, 3XX, 4XX, 5XX, 6XX, " "Драйвер для видеокарт nVidia серий 8XXX, 9XXX, 1XX, 2XX, 3XX, 4XX, 5XX, 6XX, "
"7XX" "7XX"
#: source/ubl-strings.h:171 #: source/ubl-strings.h:174
msgid "Driver for nVidia 6XX, 7XX, 9XX, 10XX, 16XX series video cards" msgid "Driver for nVidia 6XX, 7XX, 9XX, 10XX, 16XX series video cards"
msgstr "Драйвер для видеокарт nVidia серий 6XX, 7XX, 9XX, 10XX, 16XX" msgstr "Драйвер для видеокарт nVidia серий 6XX, 7XX, 9XX, 10XX, 16XX"
#: source/ubl-strings.h:172 #: source/ubl-strings.h:175
msgid "" msgid ""
"Driver for nVidia NVS, Quadro Sync, Quadro NVS, Quadro Blade/Embedded, " "Driver for nVidia NVS, Quadro Sync, Quadro NVS, Quadro Blade/Embedded, "
"Quadro, Quadro RTX, NVIDIA RTX series video cards" "Quadro, Quadro RTX, NVIDIA RTX series video cards"
@ -667,11 +683,11 @@ msgstr ""
"Драйвер для видеокарт серии nVidia NVS, Quadro Sync, Quadro NVS, Quadro " "Драйвер для видеокарт серии nVidia NVS, Quadro Sync, Quadro NVS, Quadro "
"Blade/Embedded, Quadro, Quadro RTX, NVIDIA RTX" "Blade/Embedded, Quadro, Quadro RTX, NVIDIA RTX"
#: source/ubl-strings.h:173 #: source/ubl-strings.h:176
msgid "Open source nvidia graphics card driver" msgid "Open source nvidia graphics card driver"
msgstr "Драйвер видеокарты nvidia с открытым исходным кодом" msgstr "Драйвер видеокарты nvidia с открытым исходным кодом"
#: source/ubl-strings.h:174 #: source/ubl-strings.h:177
msgid "" msgid ""
"Driver for AMD Radeon R9 285/290/290X, Radeon R9 360/380/380X/390/390X, " "Driver for AMD Radeon R9 285/290/290X, Radeon R9 360/380/380X/390/390X, "
"Radeon R9 Fury/Fury X/Nano, Radeon RX 400/500, Radeon RX Vega, Radeon VII, " "Radeon R9 Fury/Fury X/Nano, Radeon RX 400/500, Radeon RX Vega, Radeon VII, "
@ -681,70 +697,70 @@ msgstr ""
"Radeon R9 Fury/Fury X/Nano, Radeon RX 400/500, Radeon RX Vega, Radeon VII, " "Radeon R9 Fury/Fury X/Nano, Radeon RX 400/500, Radeon RX Vega, Radeon VII, "
"Radeon RX 5000/6000 Видеокарты серии /7000" "Radeon RX 5000/6000 Видеокарты серии /7000"
#: source/ubl-strings.h:175 #: source/ubl-strings.h:178
msgid "" msgid ""
"Driver for video cards Intel i810/i830/i915/945G/G965+ and newer, except GMA " "Driver for video cards Intel i810/i830/i915/945G/G965+ and newer, except GMA "
"3600" "3600"
msgstr "" msgstr ""
"Драйвер для видеокарт Intel i810/i830/i915/945G/G965+ и новее, кроме GMA 3600" "Драйвер для видеокарт Intel i810/i830/i915/945G/G965+ и новее, кроме GMA 3600"
#: source/ubl-strings.h:176 #: source/ubl-strings.h:179
msgid "Opensource X.org amdgpu video driver for AMD graphics card" msgid "Opensource X.org amdgpu video driver for AMD graphics card"
msgstr "Видеодрайвер amdgpu с открытым исходным кодом X.org для видеокарты AMD" msgstr "Видеодрайвер amdgpu с открытым исходным кодом X.org для видеокарты AMD"
#: source/ubl-strings.h:177 #: source/ubl-strings.h:180
msgid "Opensource X.org ati video driver for ATI graphics card" msgid "Opensource X.org ati video driver for ATI graphics card"
msgstr "«Видеодрайвер ati с открытым исходным кодом X.org для видеокарты ATI" msgstr "«Видеодрайвер ati с открытым исходным кодом X.org для видеокарты ATI"
#: source/ubl-strings.h:178 #: source/ubl-strings.h:181
msgid "X.org dummy video driver" msgid "X.org dummy video driver"
msgstr "Фиктивный видеодрайвер X.org" msgstr "Фиктивный видеодрайвер X.org"
#: source/ubl-strings.h:179 #: source/ubl-strings.h:182
msgid "X.org framebuffer video driver" msgid "X.org framebuffer video driver"
msgstr "Видеодрайвер X.org для фреймбуфера" msgstr "Видеодрайвер X.org для фреймбуфера"
#: source/ubl-strings.h:180 #: source/ubl-strings.h:183
msgid "Open Source X driver for VIA IGPs" msgid "Open Source X driver for VIA IGPs"
msgstr "Драйвер X с открытым исходным кодом для VIA IGP" msgstr "Драйвер X с открытым исходным кодом для VIA IGP"
#: source/ubl-strings.h:181 #: source/ubl-strings.h:184
msgid "X.org SiS USB video driver" msgid "X.org SiS USB video driver"
msgstr "USB-видеодрайвер X.org SiS" msgstr "USB-видеодрайвер X.org SiS"
#: source/ubl-strings.h:182 #: source/ubl-strings.h:185
msgid "X.org vesa video driver" msgid "X.org vesa video driver"
msgstr "Видеодрайвер X.org Vesa" msgstr "Видеодрайвер X.org Vesa"
#: source/ubl-strings.h:183 #: source/ubl-strings.h:186
msgid "X.org vmware video driver" msgid "X.org vmware video driver"
msgstr "Видеодрайвер X.org vmware" msgstr "Видеодрайвер X.org vmware"
#: source/ubl-strings.h:184 #: source/ubl-strings.h:187
msgid "X.org 3dfx Voodoo1/Voodoo2 2D video driver" msgid "X.org 3dfx Voodoo1/Voodoo2 2D video driver"
msgstr "X.org 3dfx Voodoo1/Voodoo2 2D-видеодрайвер" msgstr "X.org 3dfx Voodoo1/Voodoo2 2D-видеодрайвер"
#: source/ubl-strings.h:185 #: source/ubl-strings.h:188
msgid "X.org X11 qxl video driver" msgid "X.org X11 qxl video driver"
msgstr "Видеодрайвер X.org X11 qxl" msgstr "Видеодрайвер X.org X11 qxl"
#: source/ubl-strings.h:187 #: source/ubl-strings.h:190
msgid "Database files must be updated" msgid "Database files must be updated"
msgstr "Базы данных репозитория должны быть обновлены" msgstr "Базы данных репозитория должны быть обновлены"
#: source/ubl-strings.h:189 #: source/ubl-strings.h:192
msgid "Warning: Couldn't find any supported kernel version" msgid "Warning: Couldn't find any supported kernel version"
msgstr "Предупреждение: Поддерживаемые версии ядра не найдены" msgstr "Предупреждение: Поддерживаемые версии ядра не найдены"
#: source/ubl-strings.h:191 #: source/ubl-strings.h:194
msgid "Default (All installed)" msgid "Default (All installed)"
msgstr "По умолчанию (все установленные)" msgstr "По умолчанию (все установленные)"
#: source/ubl-strings.h:193 #: source/ubl-strings.h:196
msgid "Are you sure want to install driver " msgid "Are you sure want to install driver "
msgstr "Вы уверены что хотите установить драйвер " msgstr "Вы уверены что хотите установить драйвер "
#: source/ubl-strings.h:194 #: source/ubl-strings.h:197
msgid "Are you sure want to remove driver " msgid "Are you sure want to remove driver "
msgstr "Вы уверены что хотите удалить драйвер " msgstr "Вы уверены что хотите удалить драйвер "

Loading…
Cancel
Save