[résolu] impossible d'utiliser le PolicyDelegate du Webkit
Bonjour,
j'utilise une webview dans mon application.
Je souhaiterais faire en sorte que le navigateur par défaut se lance lorsqu'on clique sur certains liens.
Pour l'instant j'ai le code suivant dans MonAppDelegate.m :
Malheureusement la méthode webView: decidePolicyForNewWindowAction:... n'est jamais appelée !
Je planche sur ces quelques lignes de codes depuis quelques heures maintenant mais sans résultat.
Qu'est-ce que j'ai bien pu louper ??
Merci,
arnaud
j'utilise une webview dans mon application.
Je souhaiterais faire en sorte que le navigateur par défaut se lance lorsqu'on clique sur certains liens.
Pour l'instant j'ai le code suivant dans MonAppDelegate.m :
- (void) awakeFromNib<br />{<br />...<br /> [myWebView setPolicyDelegate:self];<br />}<br /><br />- (void)webView:(WebView *)sender decidePolicyForNewWindowAction:(NSDictionary *)actionInformation <br /> request:(NSURLRequest *)request newFrameName:(NSString *)frameName decisionListener:(id)listener {<br /> NSLog(@"deciding policy for new window action");<br /> [ [ NSWorkspace sharedWorkspace ] openURL:[ request URL ]];<br />}<br />
Malheureusement la méthode webView: decidePolicyForNewWindowAction:... n'est jamais appelée !
Je planche sur ces quelques lignes de codes depuis quelques heures maintenant mais sans résultat.
Qu'est-ce que j'ai bien pu louper ??
Merci,
arnaud
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
tu entends par quoi par "connection du delegate" ? Depuis InterfaceBuilder ?
Si tu n'indiques pas quel objet est le delegate de ta WebView, elle peut pas savoir à qui envoyer le message
il y a vraiment quelque chose que je ne dois pas comprendre ! ???
La méthode decidePolicyForNewWindowAction du PolicyDelegate n'est pas appelé quand on clique sur un lien javascript window.open()
Elle est appelé uniquement quand on utilise !
Je vais essayer de suivre ce qui est fait dans ce post
Merci en tout cas