Commit Graph

35 Commits (f0066d60066d3a2297bbec0fa1acbcd9d0d858f8)

Author SHA1 Message Date
Neel Patel 0056a94115 Add support for detachable tabs to the runtime.
This allows the Query Tool, Debugger and web browser tabs to be moved to different monitors as desired.

Fixes #1344
2017-06-16 09:57:19 +01:00
Khushboo Vashi 3a5fda44e4 Add a shortcut (Ctrl/Cmd + 0 (zero)) to the runtime to allow the zoom level to be reset. Fixes #2485 2017-06-13 10:21:51 +01:00
Neel Patel 07b06348ab While building runtime with QtWebEngine, we found 2 compilation errors which were introduced in a previous commit in runtime:
We set "setNetworkAccessManager" in WebEnginePage which was only required for Webkit so removed that statement.
"triggerAction" on WebPage is only required for Qt > 5 with WebKit only. Not required for WebEngine so added that condition.
2017-05-15 11:29:14 +01:00
Neel Patel 3ed00d3be7 1) Fixed compilation issue with QT4.
2) Make trigger action 'RequestClose' backword compatible with annulen webkit.
2017-05-10 13:34:39 +05:30
Neel Patel d0e9c82fea Fixes #2328
1) Fixed issue of opening Query Tool and Debugger in new Tab with QT 5.8 and annulen webkit
 2) Moved unload event of window from javascript files to html.
 3) Change alertify messages for debugger.
 4) Closed all connections created by debugger. Previously only one connection has been closed.
2017-05-09 13:03:44 +05:30
Dave Page 5a7a82b4e9 Simplify runtime startup polling, and increase retries to 30.
Ensure the splash screen is hidden before showing errors.
2017-02-27 10:49:47 +00:00
Dave Page 88aac7a4c9 Update the runtime build to allow users to force building with QtWebKit in Qt5, instead of QtWebEngine. 2017-02-13 11:44:53 +00:00
Dave Page f221194bcc Update copyright notices for 2017. 2017-01-04 13:33:32 +00:00
Neel Patel 4bde18685b Pass copy/cut/paste events from the runtime to the webview on Mac under QtWebEngine. 2016-11-29 14:18:39 +09:00
Dave Page 297733634b Use a more reasonable dynamic default for the window size (90% x 90%). Fixes #1939 2016-11-08 11:37:57 +00:00
Neel Patel 6e5683064e Use QtWebEngine with Qt5.5+ instead of QtWebKit. Fixes #1375, fixes #1641,
fixes #1916, fixes #1815, fixes #1332
2016-11-08 10:57:42 +00:00
Dave Page 821f70663e Fix default zoom setting. 2016-09-22 14:43:32 +01:00
Dave Page 8c913f5773 Allow zooming in the runtime with Ctrl/Cmd+Plus and Ctrl/Cmd+Minus. Fixes #1726 2016-09-22 12:37:38 +01:00
Neel Patel dcf5bfc495 Runtime fixes:
- Compilation error with Qt4 as "QUrlQuery" class was introduced since Qt5.
- Client side download code has been removed as now we support server side download.
- We should not delete sender object inside slot. If we do so it may crash the application. To avoid this, we used Qt's "deleteLater" which will delete the objects once the processing of all the events have been done.
2016-07-25 12:39:57 +01:00
Neel Patel a6024fc49a Support server side download in runtime application. 2016-07-18 15:28:20 +01:00
Neel Patel d22ea8bf61 Properly support file downloads in the desktop runtime. Fixes #1405. Fixes #1342 2016-07-13 12:26:24 +01:00
Dave Page b8c9ccc939 Use Alt+Shift for runtime shortcuts to avoid collisions with app shortcuts. 2016-06-29 20:31:40 +01:00
Dave Page 7e27c6280f Replace runtime menu with shortcuts for a cleaner UI (and
because 99% of users don't need those options anyway).
2016-06-17 11:32:39 +01:00
Neel Patel b64868079a QWebView does not render checkbox, and radio button propoerly on
MacOSX.

In order to fix it, we need to set 'style' to 'funsion' on MacOSX.

Reference:
https://bugreports.qt.io/browse/QTBUG-43366
2016-06-02 15:15:56 +05:30
Neel Patel 7b2e4fb467 Add Inspection support to the runtime when built in debug mode. 2016-05-19 09:33:00 -04:00
Neel Patel 3b7886e61e Runtime fixes for QT4 support. 2016-02-23 09:10:49 +00:00
Neel Patel d6d8a2348e Fix tab auto-hiding to work with Qt < 5.4. 2016-01-26 10:03:15 +00:00
Dave Page 39e822e846 Further nice-ification of the runtime UI. 2016-01-25 17:21:00 +00:00
Dave Page af742011a5 Further UI improvements for the runtime. 2016-01-22 14:24:06 +00:00
Dave Page b39943e3ff Fix comment 2016-01-21 09:07:48 +00:00
Dave Page 7c9347873f Use a custom configuration dialogue and allow the user to specify
the application path as well as the Python path.
2016-01-19 10:26:36 +00:00
Neel Patel 8f146ebb4c Support tabs in the runtime browser.
Added functionality to open different website link and load the
website data to different tab. To achieve this, new customized
QTabWidget and QWebView are added to render the data to WebView
widget. All the widgets (New Tab, WebViewWinodw, and QToolButton)
are added dynamically. QToolButton is used to traverse back and
forward to web document opened in WebViewWindow.

Introduced the New class called WebViewWindow which is derived
from QWebView. Each tab of the QTabWidget contains the instance
of WebViewWindow class. WebViewWindow class is useful to display
the web document.

Introduced New class called TabWindow which is derived from
QTabWidget. This class is useful to achieve following functionality:
  - Customize the close button of tabbar so that it can only be
    visible other then main pgAdmin 4 window.
  - Enable/Disable the toolbutton added left side of tabbar
    depending on the web history traversed by the user in WebViewWindow.
  - Set the tooltip text of the tabbar depending on the title change
    event of WebViewWindow class.

Modified the Qt project file to support the both the version
of python 2 and python 3.

Qt5 is recommended to test pgAdmin4 in dektop mode.
2016-01-18 14:33:28 +00:00
Dave Page cd9d005c49 Remove CherryPy from the source tree, and change references to Flask
instead. Add support to the runtime to allow the user to specify the
Python path. This needs to be more automated for release, but will be
useful for debugging and development.
2014-12-16 12:53:09 +00:00
Dave Page b022e5d347 Have the runtime check in a loop to see if the app server is up before
opening the browser window.
2013-10-04 21:49:12 +01:00
Dave Page 457a842cec Find a random port number to use for the application server to avoid conflicts
with any other apps that may have already bound to the default port used by CP.
2013-10-04 21:48:01 +01:00
Dave Page 7a066ec4b2 Save/restore the window position. 2013-10-04 21:42:16 +01:00
Dave Page 2d8f6481dc Fix a display issue in the Linux error handling.
Linux won't refresh the qWebView unless we explicitly process
events after telling it to load the page again.
2013-06-22 00:59:34 +01:00
Dave Page 9080a782d5 Handle slow startup of the web server.
If the web server is slow to start, we may need to retry the initial
page load. Implement a retry system that will retry the initial load
4 times, after 1, 2, 3 and 4 seconds, before giving up and leaving
the user with an error message and a link to retry manually.
2013-06-22 00:49:40 +01:00
Dave Page 28f45ea9f9 Initial PoC of a CherryPy app integrate with the runtime.
Upon startup, the runtime will attempt to locate pgAdmin4.py in a
number of different relative locations. Once found, it will execute
it in a new thread. The main window is then created and the brower's
initial page is set to the root of the CherryPy server. At present,
that's http://127.0.0.1:8080.
2013-06-21 23:21:11 +01:00
Dave Page 38ff104cb9 Add a very experimental QT based runtime for pgAdmin 4.
This runtime implements a brower control with embedded Python
interpretor. The Python interpretor runs a simple script at
startup to generate some HTML that is displayed in the browser.
Arbitrary URLs can be opened from the "Open URL" option on the
File menu.
2013-06-16 14:17:46 +01:00