Well there are two solutions:

1.) use an iFrame => opening links inside the iframe should just work. 
However the URL won't be displayed in the browsers url bar, maybe you don't 
want that. And because you mentioned it: The iframe must not have a fixed 
size, you can stretch it via CSS, an example using CSS 
Flexbox: https://jsfiddle.net/zzvtafv6/

2.) Make a custom widget/composite that takes the HTML and displays it as 
you do now. However that widget/composite should then intercept all clicks 
on anchors, prevent the browser default action, extract the href url and 
download the contents using a XMLHttpRequest. Once you have the result you 
can again set the html into your custom widget/composite. Basically don't 
let the browser fetch the url but do it yourself. However you must 
implement additional logic for clicks on anchors with modifiers and other 
special cases (CTRL + left click, right click -> open as, right click -> 
open) that trigger specific browser actions like opening the link in a new 
tab. It might be a bit tricky to get right so the user does not notice that 
you have actually intercepted their clicks.

Using an iframe is probably the easiest solution, and they are still 
allowed in HTML5.


Maybe there is a possible 3rd solution using web components / html import, 
see: http://webagility.com/posts/web-components-vs-iframes but I think you 
still need to intercept clicks that way, as in the 2nd solution.


-- J.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.

Reply via email to