@ -89,9 +89,13 @@ void MainWindow::settings(){
btnBoxAboutDialog - > set_visible ( false ) ;
ubl_make_plugs ( boxSave , boxButton , socket_ext_id_I , socket_trd_id_I ) ;
# ifdef WEBKIT_FOUND
one = WEBKIT_WEB_VIEW ( webkit_web_view_new ( ) ) ;
three = Glib : : wrap ( GTK_WIDGET ( one ) ) ;
wndWeb - > add ( * three ) ;
void * handle = NULL ;
handle = dlopen ( " libwebkit2gtk-4.0.so " , RTLD_LAZY ) ;
if ( handle ) {
one = WEBKIT_WEB_VIEW ( webkit_web_view_new ( ) ) ;
three = Glib : : wrap ( GTK_WIDGET ( one ) ) ;
wndWeb - > add ( * three ) ;
}
# endif
this - > flag_block_gui ( ) ;
if ( this - > check_root ( ) = = 0 ) {
@ -423,7 +427,11 @@ void MainWindow::get_builder() {
builder - > get_widget ( " entrySecurityLogin " , entrySecurityLogin ) ;
builder - > get_widget ( " cmbDefaultDonw " , cmbDefaultDonw ) ;
# ifdef WEBKIT_FOUND
builder - > get_widget ( " wndWeb " , wndWeb ) ;
void * handle = NULL ;
handle = dlopen ( " libwebkit2gtk-4.0.so " , RTLD_LAZY ) ;
if ( handle ) {
builder - > get_widget ( " wndWeb " , wndWeb ) ;
}
# endif
builder - > get_widget ( " lblHeadeWndWeb " , lblHeadeWndWeb ) ;
@ -918,23 +926,33 @@ void MainWindow::synopsis_show() {
void MainWindow : : open_browser ( ) {
# ifdef WEBKIT_FOUND
webkit_web_view_load_uri ( one , link_doc ) ;
wndWeb - > show_all ( ) ;
# else
string cmd = cmd_xdg + string ( _ ( link_doc ) ) + " & " ;
string buf = " " ;
if ( geteuid ( ) = = 0 ) {
string response_user = getlogin ( ) ;
int size_s = std : : snprintf ( nullptr , 0 , cmd_execute , response_user . c_str ( ) , cmd . c_str ( ) ) + 1 ;
auto size = static_cast < size_t > ( size_s ) ;
std : : unique_ptr < char [ ] > buf ( new char [ size ] ) ;
std : : snprintf ( buf . get ( ) , size , cmd_execute , response_user . c_str ( ) , cmd . c_str ( ) ) ;
cmd = std : : string ( buf . get ( ) , buf . get ( ) + size - 1 ) ;
void * handle = NULL ;
handle = dlopen ( " libwebkit2gtk-4.0.so " , RTLD_LAZY ) ;
if ( handle ) {
webkit_web_view_load_uri ( one , link_doc ) ;
wndWeb - > show_all ( ) ;
}
else {
this - > template_open_browser ( ) ;
}
obj_process_system . call ( cmd , " & " ) ;
# else
this - > template_open_browser ( ) ;
# endif
}
void MainWindow : : template_open_browser ( ) {
string cmd = cmd_xdg + string ( _ ( link_doc ) ) + " & " ;
string buf = " " ;
if ( geteuid ( ) = = 0 ) {
string response_user = getlogin ( ) ;
int size_s = std : : snprintf ( nullptr , 0 , cmd_execute , response_user . c_str ( ) , cmd . c_str ( ) ) + 1 ;
auto size = static_cast < size_t > ( size_s ) ;
std : : unique_ptr < char [ ] > buf ( new char [ size ] ) ;
std : : snprintf ( buf . get ( ) , size , cmd_execute , response_user . c_str ( ) , cmd . c_str ( ) ) ;
cmd = std : : string ( buf . get ( ) , buf . get ( ) + size - 1 ) ;
}
index_error = system ( cmd . c_str ( ) ) ;
}
void MainWindow : : info_status_app ( string stule ) {
boxInfo - > remove_class ( " boxInfoMessOK " ) ;
boxInfo - > remove_class ( " boxInfoMessError " ) ;
@ -995,7 +1013,11 @@ void MainWindow::info_warning_error(int mess) {
}
MainWindow : : ~ MainWindow ( ) {
# ifdef WEBKIT_FOUND
free ( one ) ;
void * handle = NULL ;
handle = dlopen ( " libwebkit2gtk-4.0.so " , RTLD_LAZY ) ;
if ( handle ) {
free ( one ) ;
}
# endif
}