code fixes for library edits, webkit2gkt-dependent browser function is moved to library

pull/13/head
parent 96528102fc
commit fd47737f5a

@ -32,7 +32,6 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wall -Wextra -Werror -Wmissin
set(SOURCE_FILES
ubl-settings-video.c
ubl-utils.c
ubl-settings-video.h
ubl-settings-video-cm.h)
set(LIBRARIES

@ -18,9 +18,7 @@ void on_subwindow_close(GtkWidget *self)
void on_monitor_config_save(GtkWidget *self, monitor_edit_window *window){
monitorconfig *config = yon_dictionary_get_data(window->config,monitorconfig*);
if (gtk_combo_box_get_active(GTK_COMBO_BOX(window->templateMonitorConfigurationPortCombo))==0){
videoconfig.status_render.text_to_render=MONITOR_PORT_ERROR_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_FAIL_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,MONITOR_PORT_ERROR_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
return;
}
config->main=0;
@ -34,9 +32,7 @@ void on_monitor_config_save(GtkWidget *self, monitor_edit_window *window){
config->port=NULL;
config->resolution=NULL;
config->frequency=0;
videoconfig.status_render.text_to_render=MONITOR_PORT_SUCCESS_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,MONITOR_PORT_SUCCESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
config->port = (char*)gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(window->templateMonitorConfigurationPortCombo));
window->config->key = yon_char_new(config->port);
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->templateMonitorConfigurationParameterLineCheck))==0){
@ -89,11 +85,7 @@ void on_terminal_destroy(GtkWidget *self, widgets_dict *widgets){
gtk_widget_destroy(widgets->TerminalRevealer);
yon_proprieary_get();
yon_gtk_list_store_fill_with_proprietaries(videoconfig.list);
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_OPETAION_DONE_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_OPETAION_DONE_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
}
static void child_ready(VteTerminal *terminal, GPid pid, GError *error, gpointer user_data)
@ -169,11 +161,7 @@ void yon_terminal_start(widgets_dict *widgets, char *usr_command){
}
void on_driver_pack_install(GtkWidget *self,widgets_dict *widgets){
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_INSTALLING_IN_PROGRESS_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_INSTALLING_IN_PROGRESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
GtkTreeIter iter;
char *name;
GtkTreeModel *list_s=GTK_TREE_MODEL(videoconfig.list);
@ -182,20 +170,12 @@ void on_driver_pack_install(GtkWidget *self,widgets_dict *widgets){
gtk_tree_model_get(list_s,&iter,1,&name,-1);
yon_terminal_start(widgets,yon_char_get_augumented(install_proprietary_command,name));
} else {
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_NOTHING_SELECTED_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_FAIL_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_NOTHING_SELECTED_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
}
}
void on_driver_install(GtkWidget *self,widgets_dict *widgets){
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_INSTALLING_IN_PROGRESS_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_INSTALLING_IN_PROGRESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
GtkTreeIter iter;
char *name;
GtkTreeModel *list_s=GTK_TREE_MODEL(videoconfig.list);
@ -204,20 +184,12 @@ void on_driver_install(GtkWidget *self,widgets_dict *widgets){
gtk_tree_model_get(list_s,&iter,1,&name,-1);
yon_terminal_start(widgets,yon_char_get_augumented(install_proprietary_command,name));
} else {
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_NOTHING_SELECTED_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_FAIL_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_NOTHING_SELECTED_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
}
}
void on_driver_pack_delete(GtkWidget *self,widgets_dict *widgets){
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_DELETING_IN_PROGRESS_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_DELETING_IN_PROGRESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
GtkTreeIter iter;
char *name;
GtkTreeModel *list_s=GTK_TREE_MODEL(videoconfig.list);
@ -226,20 +198,12 @@ void on_driver_pack_delete(GtkWidget *self,widgets_dict *widgets){
gtk_tree_model_get(list_s,&iter,1,&name,-1);
yon_terminal_start(widgets,yon_char_get_augumented(delete_proprietary_command,name));
} else {
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_NOTHING_SELECTED_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_FAIL_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_NOTHING_SELECTED_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
}
}
void on_driver_delete(GtkWidget *self,widgets_dict *widgets){
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_DELETING_IN_PROGRESS_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_DELETING_IN_PROGRESS_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
GtkTreeIter iter;
char *name;
GtkTreeModel *list_s=GTK_TREE_MODEL(videoconfig.list);
@ -248,11 +212,7 @@ void on_driver_delete(GtkWidget *self,widgets_dict *widgets){
gtk_tree_model_get(list_s,&iter,1,&name,-1);
yon_terminal_start(widgets,yon_char_get_augumented(delete_proprietary_command,name));
} else {
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_NOTHING_SELECTED_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_FAIL_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_NOTHING_SELECTED_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
}
}
@ -269,11 +229,7 @@ void on_driver_pack_info(GtkWidget *self, widgets_dict *widgets){
gtk_tree_model_get(list_s,&iter,1,&name,-1);
pthread_create(&tid,&attr,(void*)yon_launch_app,yon_char_get_augumented(get_info_proprietary_command,name));
} else {
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_NOTHING_SELECTED_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_FAIL_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_NOTHING_SELECTED_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
}
}
@ -290,11 +246,7 @@ void on_driver_info(GtkWidget *self,widgets_dict *widgets){
gtk_tree_model_get(list_s,&iter,1,&name,-1);
pthread_create(&tid,&attr,(void*)yon_launch_app,yon_char_get_augumented(get_info_proprietary_command,name));
} else {
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_NOTHING_SELECTED_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_FAIL_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_NOTHING_SELECTED_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
}
}
@ -441,21 +393,14 @@ void on_configuration_save_local(GtkWidget *self, widgets_dict *widgets)
// }
if (str){
yon_config_save(str);
videoconfig.status_render.text_to_render=LOCAL_SAVE_SUCCESS;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,LOCAL_SAVE_SUCCESS,BACKGROUND_IMAGE_SUCCESS_TYPE);
}
// else
// yon_ubl_status_box_render(widgets->mainStatusBox, widgets->mainStatusIcon, widgets->mainStatusLabel, _("Local configuration saving failed."), BACKGROUND_IMAGE_FAIL_TYPE);
}
void on_configuration_save_local_global(GtkWidget *self, widgets_dict *widgets)
{
on_configuration_save_global_local(self, widgets);
videoconfig.status_render.text_to_render=GLOBAL_LOCAL_SAVE_SUCCESS;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,GLOBAL_LOCAL_SAVE_SUCCESS,BACKGROUND_IMAGE_SUCCESS_TYPE);
}
void on_configuration_save_global_local(GtkWidget *self, widgets_dict *widgets)
@ -466,10 +411,7 @@ void on_configuration_save_global_local(GtkWidget *self, widgets_dict *widgets)
str=yon_configuration_get_save_command(save_drivers_global_local_command);
if (str){
yon_config_save(str);
videoconfig.status_render.text_to_render=LOCAL_SAVE_SUCCESS;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,LOCAL_SAVE_SUCCESS,BACKGROUND_IMAGE_SUCCESS_TYPE);
}
}
@ -485,10 +427,7 @@ void on_configuration_save_global(GtkWidget *self, widgets_dict *widgets)
// }
if (str){
yon_config_save(str);
videoconfig.status_render.text_to_render=LOCAL_SAVE_SUCCESS;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,LOCAL_SAVE_SUCCESS,BACKGROUND_IMAGE_SUCCESS_TYPE);
}
}
@ -662,6 +601,45 @@ void on_monitor_configure(GtkWidget *self,monitor_window *window){
}
}
void on_read_documentation(GtkWidget *self,gpointer user_data){
yon_ubl_browser_window_open(UBLINUX_WIKI_LINK,WEB_VIEW_TITLE_LABEL);
}
void on_toggle(GtkWidget *self, int *changing_var){
*changing_var = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(self));
}
void on_link(GtkWidget *self, char* link, gpointer user_data){
if (GTK_IS_ABOUT_DIALOG(self)){
gtk_widget_destroy(self);
}
if (videoconfig.alwaysredirect==0){
GtkBuilder *builder=gtk_builder_new_from_file(glade_path);
GtkWidget *sureWindow=yon_gtk_builder_get_widget(builder,"HelpSureWindow");
GtkWidget *readButton=yon_gtk_builder_get_widget(builder,"ReadHelpButton");
GtkWidget *cancelButton=yon_gtk_builder_get_widget(builder,"CancelHelpButton");
GtkWidget *titleLabel=yon_gtk_builder_get_widget(builder,"helpHeader");
GtkWidget *headQuestionLabel=yon_gtk_builder_get_widget(builder,"webHeaderNameLabel");
GtkWidget *textLabel=yon_gtk_builder_get_widget(builder,"helpText");
GtkWidget *alwaysOpenCheck=yon_gtk_builder_get_widget(builder,"AlwaysOpenHelpCheckbox");
g_signal_connect(G_OBJECT(readButton),"clicked",G_CALLBACK(on_read_documentation),NULL);
g_signal_connect(G_OBJECT(readButton),"clicked",G_CALLBACK(on_subwindow_close),NULL);
g_signal_connect(G_OBJECT(cancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL);
g_signal_connect(G_OBJECT(alwaysOpenCheck),"toggled",G_CALLBACK(on_toggle),&videoconfig.alwaysredirect);
gtk_label_set_text(GTK_LABEL(titleLabel),SETTINGS_VIDEO_TITLE_LABEL);
gtk_label_set_text(GTK_LABEL(headQuestionLabel),HELP_TITLE_LABEL);
gtk_label_set_text(GTK_LABEL(textLabel),HELP_INFO_LABEL);
gtk_button_set_label(GTK_BUTTON(alwaysOpenCheck),HELP_ALWAYS_OPEN_LABEL);
gtk_widget_show(sureWindow);
}else {
on_read_documentation(NULL,NULL);
}
}
/**void on_about()
* [EN]
*/
@ -674,6 +652,7 @@ void on_about()
gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(window), version_application);
gtk_about_dialog_set_website_label(GTK_ABOUT_DIALOG(window), _("Project Home Page"));
gtk_about_dialog_set_comments(GTK_ABOUT_DIALOG(window), _("Videocard and monitor configuration manager"));
g_signal_connect(G_OBJECT(window),"activate-link",G_CALLBACK(on_link),NULL);
gtk_widget_set_visible(hideButtonBox, 0);
gtk_widget_show(window);
}
@ -1001,11 +980,7 @@ void on_config_fill_interface(widgets_dict *widgets)
* [EN]
*/
dictionary *yon_proprieary_get(){
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_LOADING_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_FAIL_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_LOADING_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
videoconfig.proprietary=NULL;
int drivers_size=0;
config_str drivers=yon_config_load(get_proprietary_drivers_command,&drivers_size);
@ -1027,11 +1002,7 @@ dictionary *yon_proprieary_get(){
}
if (videoconfig.proprietary){
yon_gtk_list_store_fill_with_proprietaries(videoconfig.list);
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render="";
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_OPETAION_DONE_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
} else {
drivers=yon_config_load(get_proprietary_drivers_local_command,&drivers_size);
if (drivers){
@ -1052,18 +1023,10 @@ dictionary *yon_proprieary_get(){
}
yon_gtk_list_store_fill_with_proprietaries(videoconfig.list);
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_USE_LOCAL_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_USE_LOCAL_LABEL,BACKGROUND_IMAGE_SUCCESS_TYPE);
} else
{
videoconfig.status_render.strings_size=0;
videoconfig.status_render.text_strings_to_render=NULL;
videoconfig.status_render.text_to_render=PROPRIETARY_LOADING_FAILED_LABEL;
videoconfig.status_render.type=BACKGROUND_IMAGE_FAIL_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,PROPRIETARY_LOADING_FAILED_LABEL,BACKGROUND_IMAGE_FAIL_TYPE);
}
}
}
@ -1550,7 +1513,7 @@ void yon_setup_widgets(widgets_dict *widgets)
// g_signal_connect(G_OBJECT(widgets->extraPrimusunChooseAppsButton), "clicked", G_CALLBACK(on_apps_chooser_open), widgets);
g_signal_connect(G_OBJECT(widgets->mainHeaderSettingsAboutMenuItem), "activate", G_CALLBACK(on_about), NULL);
g_signal_connect(G_OBJECT(widgets->mainHeaderSettingsDocumentationMenuItem), "activate", G_CALLBACK(on_about), NULL);
g_signal_connect(G_OBJECT(widgets->mainHeaderSettingsDocumentationMenuItem), "activate", G_CALLBACK(on_link), NULL);
g_signal_connect(G_OBJECT(widgets->mainHeaderLoadGlobalMenuItem), "activate", G_CALLBACK(on_configuration_load_global), widgets);
g_signal_connect(G_OBJECT(widgets->mainHeaderLoadLocalMenuItem), "activate", G_CALLBACK(on_configuration_load_local), widgets);
@ -1711,10 +1674,7 @@ int main(int argc, char *argv[])
// yon_gtk_list_store_fill_with_proprietaries(videoconfig.list);
// yon_gtk_list_store_fill_with_proprietaries(videoconfig.modulelist);
gtk_widget_show(widgets.MainWindow);
// yon_fill_ui(&widgets);
videoconfig.status_render.text_to_render=LOCAL_LOAD_SUCCESS;
videoconfig.status_render.type=BACKGROUND_IMAGE_SUCCESS_TYPE;
yon_ubl_status_box_render(&videoconfig.status_render);
yon_ubl_status_box_render(videoconfig.status_render,LOCAL_LOAD_SUCCESS,BACKGROUND_IMAGE_SUCCESS_TYPE);
on_config_fill_interface(&widgets);
yon_monitor_set_resolutions();
yon_adapter_window_setup(&widgets);

@ -1,5 +1,9 @@
#include <gtk/gtk.h>
#include <gtk/gtkx.h>
#include "ubl-settings-video-cm.h"
#ifdef WEBKIT_FOUND
#include <webkit2/webkit2.h>
#endif
#include <vte-2.91/vte/vte.h>
#include <locale.h>
#include <stdio.h>
@ -11,14 +15,13 @@
#include <fcntl.h>
#include <getopt.h>
#include <libintl.h>
#ifdef WEBKIT_FOUND
#include <webkit2/webkit2.h>
#endif
#include "ubl-utils.h"
#include "ubl-settings-video-strings.h"
#ifndef UBL_SETINGS_VIDEO_H
#define UBL_SETINGS_VIDEO_H
#define UBLINUX_WIKI_LINK " https://wiki.ublinux.ru/ru/Программное_обеспечениерограммы_и_утилиты/Все/ubl-settings-video"
#define icon_name "com.ublinux.ubl-settings-video"
#define banner_path "/usr/share/ubl-settings-video/images/ubl-settings-video-banner.png"
@ -105,6 +108,7 @@ typedef struct {
typedef struct
{
int alwaysredirect;
config_str loaded_config;
int configsize;
int autoChooseDrivers;

Loading…
Cancel
Save