[RESOLU]WebGadget rendu aléatoire

Sujets variés concernant le développement en PureBasic
doudouvs
Messages : 244
Inscription : jeu. 07/mars/2013 19:02
Localisation : France Alsace / Espagne Girona

[RESOLU]WebGadget rendu aléatoire

Message par doudouvs »

Bonjour,

Suite un test avec le WebGadget j'ai quelques problèmes de rendu, ainsi que des liens non cliquable, voir invisible.

La Doc :
Linux
Le WebGadget utilise la bibliothèque WebKitGtk sur Linux. Le paquet est nommé
”libwebkit”. Certaines distributions peuvent comprendre une ancienne version de ce paquet
qui est nommé «WebKitGtk». Si votre distribution ne contient pas ce paquet alors les sources
peuvent être téléchargées sur Internet WebKitGtk home page.

Il y a bien les dernières version de libwebkit, WebKitGtk

En exemple j'ai pris le site purebasic, la liste des liens sont invisible
Introduction
Nouveautés
Téléchargement
Commander
Extraits
Support
FAQ

Impossible d'ouvrir le menu par contre les drapeaux sont cliquable.
Dernière modification par doudouvs le ven. 10/janv./2020 7:46, modifié 1 fois.
GCC 7.4.0 / PureBasic 5.71 / Ubuntu 18.04.3 LTS
doudouvs
Messages : 244
Inscription : jeu. 07/mars/2013 19:02
Localisation : France Alsace / Espagne Girona

Re: WebGadget rendu aléatoire

Message par doudouvs »

En faite il n'active pas le javascript

Il faut lui charger un lib ?
GCC 7.4.0 / PureBasic 5.71 / Ubuntu 18.04.3 LTS
doudouvs
Messages : 244
Inscription : jeu. 07/mars/2013 19:02
Localisation : France Alsace / Espagne Girona

Re: WebGadget rendu aléatoire

Message par doudouvs »

C'est en parti résolut libgtk-2 ne sera pas (ou plus) utiliser sur les linux, il faut charger libgtk-3

Code : Tout sélectionner

ImportC "/usr/lib/x86_64-linux-gnu/libgtk-3.so"
  webkit_web_settings_new()
  webkit_web_view_set_settings(*WebkitWebView, *WebkitSettings)
EndImport

Define WebkitSettings.I


 OpenWindow(10, 100, 200, 1024, 300, "PureBasic MiniBrowser v1.0", #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget)
 WebGadget(10, 10, 20, 1024, 300, "https://purebasic.com/")

 WebkitSettings = webkit_web_settings_new()
 webkit_web_view_set_settings(GadgetID(10), WebkitSettings)
    
    
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow

Ca marche aléatoirement
GCC 7.4.0 / PureBasic 5.71 / Ubuntu 18.04.3 LTS
doudouvs
Messages : 244
Inscription : jeu. 07/mars/2013 19:02
Localisation : France Alsace / Espagne Girona

Re: WebGadget rendu aléatoire

Message par doudouvs »

Bonjour,

Voila un truc qui marche presque car j'ai du faire des modifications sur les pages HTML j'utiliser des fenêtres modales avec des Event du genre

Code : Tout sélectionner

window.addEventListener('click', (event) => {
  if (event.target === dialog) {
    close(dialog);
  }
});
Avec les navigateurs Chrome, mini browser et firefox aucun souci pas un erreur dans la console javascript du navigateur alors que le webGadget me donne des avertissements

Code : Tout sélectionner

SyntaxError : Unexpected token ')'


Donc impossible de cliquer pour afficher la modale, je suis passer par bootstrap et la miracle ça marche pourtant c'est la même chose.


Donc voilà le code qui marche presque pour le rendu Web

Code : Tout sélectionner

ImportC "-lwebkitgtk-3.0"
  webkit_web_settings_new()
  webkit_web_view_load_string(*WebView, Content.P-UTF8, *MIMEType, *Encoding, *BaseURI)
  webkit_web_view_set_settings(*WebkitWebView, *WebkitSettings)
EndImport

  OpenWindow(0, 200, 100, 1024, 768, "WebGadget")
  WebGadget(0, 10, 10, 1024, 768, "http://*****")
  
  WebkitSettings = webkit_web_settings_new()
  webkit_web_view_set_settings(GadgetID(0), WebkitSettings)

Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow

Si quelqu'un sais comment dire au webGadget que je suis Français histoire qu'il m'affiche le site en Français
GCC 7.4.0 / PureBasic 5.71 / Ubuntu 18.04.3 LTS
doudouvs
Messages : 244
Inscription : jeu. 07/mars/2013 19:02
Localisation : France Alsace / Espagne Girona

Re: WebGadget rendu aléatoire

Message par doudouvs »

Bonjour,

Avec la lib 4 ça marche quand on va sur un site multilingue avec détection la il me met bien le Français

Code : Tout sélectionner

ImportC "-lwebkit2gtk-4.0"
  webkit_web_view_new()
  webkit_web_view_load_uri(webView, url.p-ascii)
EndImport 

EnableExplicit

Define window  = OpenWindow(0, 0, 0, 1024, 768, "WebGadget", #PB_Window_ScreenCentered)
Define webView = webkit_web_view_new()

 Define parent  = g_list_nth_data_(gtk_container_get_children_(WindowID(0)), 0)
 parent = g_list_nth_data_(gtk_container_get_children_(parent), 0)
 webkit_web_view_load_uri(webView, "http://****")

 gtk_widget_set_size_request_(webView, 1024, 768)
 gtk_container_add_(parent, webView)
 gtk_widget_show_all_(Window)

Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
GCC 7.4.0 / PureBasic 5.71 / Ubuntu 18.04.3 LTS
Répondre