I am using Extjs4.0 to develop a web application. The application require drag a Extjs Panel outside current browser. Then create a new browser instance which has the panel object.
I did some research. Javascript has window.open function which can create a new window. But how can I pass the panel parameters to the new browser instance?
Does any one have relative experiences? or have some suggestions?
Try GreyBox
Note :- Sometime it breaks if there is an error in page
for e.g. it fails to open SO
but it works fine otherway
This is impossible. You are asking if you can drag an ExtJS Panel outside the Browser itself? Think about it, you can't do that.
You can open a new Window with ExtJS content, sure.
Related
I wrote an ExtJS application like this:
the sub menu is dynamic added by clicking the button on the left.
The question is :
as the sub panel is created dynamically, so if I refresh the whole page, the panel will go away.
What I expected is it could still display the same content before refresh pages.
So, my question is how to handle this in ExtJS?
Do I need to record the current panel information into Ext.App?
ExtJS is a framework to build Web Applications that run inside the browser.
With Web Applications, just like normal applications, you don't close the program and start it anew (like a browser refresh does) just because someone wants to switch to a different toolbar or look at different data. You work with multiple panels, switch between them, and/or open windows.
You could for instance generate multiple panels inside a container with card layout, and bring to front the panel that you want to show right now.
If you have a license that allows you to use Sencha Architect, there is a nice "navigation" sample available in Architect from where you can start and look at how it's done.
I am working on an application in which we open all the views in a tabPanel, it was pretty simple to do that.
Now we got a new requirement where we have to open the view in Browser popup window so that it can be dragged to a secondary monitor. Ext.Window will not work.
we have a single page application and not sure how i can open a view in separate browser window.
i have tried the following, but then no JS events works on the new window:
var OpenWindow = window.open('', windowName, 'width=330,height=200,resizable=0');
OpenWindow.document.body.appendChild(divObj);//divObj is a div object in which i rendered the extjs view.
it open the popup but non of the style or js is working.
please help or point some example where it is accomplished.
Thanks in advance.
When opening a new window it doesn't have any information about ExtJS at all. you will need to include extjs into the new windows html. The best way to do this is to create a new popoup index file or page to be called. so say you are using routers properly in extjs say you have a site called http://testsite.com
Then you can in your window being opened create the elements in your current application to load when calling testsite.com/#popup then you just place it into your window.open. If you are managing your calls with something like PHP and using a framework for routing you can set it up the same way and have your javascript and extjs to be called from it as well.
var OpenWindow = window.open('http://testsite.com/#popup', windowName, 'width=330,height=200,resizable=0');
Reccomend creating a router like this: Extjs Routing Guide and from there have the component brought into focus on the page and placed that url into your popup if no backend system is used. Creating a new route in a backend link would be the best way to go, but you will still need to call your extjs applications components into your new page as well.
As title said I have a issue to use “pull to refresh” feature with WebBrowser in Codenameone.
The issue is that “pull to refresh” feature cannot be used with BorderLayout and I need this type of layout to expand WebBrowser over entire screen.
I’ve tried different mix of layouts combinations to avoid usage of BorderLayout so that “pull to refresh” can work but the final result is that I cannot expand WebBrowser over entire screen and have at same time the “pull to refresh” working.
Question: How can I have WebBrowser expanded over entire screen so that I can use “pull to refresh” feature for it?
Thanks.
WebBrowser is a Peer Component hence it handles everything natively including pointer events. This means our pull to refresh logic can't possibly work within a web browser and you have quite a few other limitations.
If you want pull to refresh functionality in a WebBrowser you will need to do it using JavaScript, its an all or nothing issue. FYI You should use a BorderLayout with WebBrowser.
I'm using the default WebBrowser control inside a WPF application. HTML code is loaded using NavigateToString method (html is passed as a parameter).
Pages render correctly, but users aren't able to click on any links (nothing happens when they click on the links). The problem was partly solved by adding the URLs to trusted zone, but that is not always possible.
Are there any configurations that should be adjusted in IE (or wherever else) that would allow opening any links inside an embedded WebBrowser?
in my case using MyWebBrowser.Navigate(new Uri(...)); works, and hyperlinks work as designed but when i use MyWebBrowser.NavigateToString(htmlContent); hyperlinks stop working
i am developing a trigger.io application using backbone, the entire app is in one page but i need to open a detail page in a new window (not a modal view, a tab in android).
I don't know if it's possible to render a view in a new window, or write to history the view and navigate to the url.
Can anybody give me some tips.
Thanks
If you want to open a special view, specify a route calling this view.
Now you create a simple link with target blank to the route.
The application gets started in the new window and loads the action mapped to the route.
I think this is the best solution to do this, although there are ways to create windows and communicate between them in JavaScript. If you need to control the new tab, e.g. closing the tab or act on its content you are forced to create the new tab by javascript and keep a reference to the new tab.