Neel Patel
deb5475b98
On certain linux operating systems, Qt application exits with an error
...
message such as 'X Error: BadDrawable'.
In order to resolve the issue, we need to let the Qt know not to load
the MIT-SHM extension.
Reference:
https://iwf1.com/quick-fix-one-kdes-common-xorg-errors-x-error-baddrawable/
2017-08-09 16:52:43 +05:30
Dave Page
d04ac7656a
Remove change made for debugging and committed in error.
2017-07-17 15:19:30 +01:00
Khushboo Vashi
c546182789
Modify the runtime to use time-based timeouts rather than retry based. Fixes #2556
...
This allows for slow vs. fast connection failures (e.g. an active rejection vs. no response).
2017-07-17 15:17:58 +01:00
Neel Patel
dc6a1936f5
Tidy up tab styling. Fixes #2557
2017-07-17 10:58:17 +01:00
Neel Patel
dcc74af87b
Stop tool buttons from changing their styling unexpectedly. Fixes #2559
2017-07-17 10:45:16 +01:00
Neel Patel
1fe0d51925
Prevent the tab bar being hidden when detached tabs are being closed. Fixes #2558
2017-07-17 10:14:40 +01:00
Mammoth Power
de06e63334
Fix a compiler error with older compilers.
2017-07-11 17:22:20 +01:00
Dave Page
374bf79911
Fix proxy support with Qt 5.9+
2017-07-11 11:48:13 +01:00
Neel Patel
c93aa3810d
Fix a compiler error with older compilers.
2017-07-11 09:14:53 +01:00
Dave Page
ea5dfe23a0
Bump version numbers prior to release.
2017-07-10 14:56:20 +01:00
Neel Patel
a21dad4c45
Fix runtime support under Qt4
2017-06-16 11:26:31 +01:00
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
Dave Page
dea850b503
Tune startup retry loop - try 50 times, with a 100ms pause between each attempt.
2017-06-11 14:38:22 +01:00
Dave Page
ef4b8e8c1c
Another minor perf tweak for the runtime.
2017-06-11 14:34:49 +01:00
Dave Page
f0d287588a
Couple of minor performance tweaks. Tests on my Windows VM show a consistent 30% startup time reduction.
2017-06-11 13:56:49 +01:00
Neel Patel
6e24cb038a
Ensure the runtime works correctly if a Windows user has a proxy server enabled.
2017-05-30 13:17:07 +01:00
Dave Page
f0e78309cb
Bump version in preparation for release.
2017-05-15 12:25:28 +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
0c435154ac
Adjust windows resources so they work consistently.
2017-04-10 15:15:15 +01:00
Dave Page
665ec46052
Fix application icon in mingw builds.
2017-04-10 14:29:53 +01:00
Dave Page
fdf292964b
Bump version numbers for release.
2017-04-10 14:24:46 +01:00
Dave Page
ee17c77093
Ignore some MinGW related build files.
2017-04-03 20:59:42 +01:00
Dave Page
e7cee870a7
Mingw32 compatibility fixes
2017-04-03 12:58:08 +01:00
Maxim Zakharov
4e16345257
Add support for proxies in the runtime. Fixes #2301
2017-03-29 12:17:16 -04:00
Dave Page
87bbb5ef2c
Revert to the old, arguably broken code for QT4 port selection, as QT4 doesn't support TCP socket binding as QT5 does.
2017-03-29 11:33:55 -04:00
Dave Page
44ce8985e0
Fix typo in variable name.
2017-03-28 08:55:38 -04:00
Dave Page
688c810300
Add header that seems to be needed with Python 3.
2017-03-28 08:41:38 -04:00
Maxim Zakharov
72548a99e1
Fix usage of QString::toUtf8(). Fixes #2299
...
Desktop runtime has a couple bugs using already freed memory supplied to embedded python leading to occasional crashes and failures to start maintenance processes (VACUUM, ANALYZE, REINDEX, CLUSTER).
This is caused by incorrect usage of QString::toUtf8() which returns newly created QByteArray which is automatically destroyed once closing context; e.g.
Py_SetPythonHome(pythonHome.toUtf8().data());
2017-03-28 08:26:16 -04:00
Dave Page
ea6d97c49d
Add a couple of headers that Qt 5.8 seems to be more picky about, and fix the free port check to use TCP not UDP
2017-03-26 21:02:15 -04:00
Ashesh Vashi
7767c085c3
Resolved an issue finding the python interpreter on *nix systems, and
...
Windows 2008 R2 (32 bit), while running the pgAdmin 4 as runtime for
the PostgreSQL one click installers.
- Found a typo in runtime code, we were appending the path using ';' on
*nix systems too. We should have used ':', and that did not allow the
os.environ['PATH'] to identify the correct path of the python
interpreter under the 'venv' directory.
- On Windows 2008, it was not honouring the environment variables, set
under the Qt application (e.g. pgAdmin4.exe runtime), in the python
application. (e.g. pgAdmin4.py). We will need to assume that - the
python interpreter resides under the 'venv' directory outside the
'bin' directory.
- Also, on windows 2008, it was setting PYTHONHOME environment variable
to the full path of the pgAdmin4.exe, we need to reset it to 'venv'
directory, if we find the python interpreter under it.
Thanks Murtuza Zabuawala for tips, and help.
2017-03-10 21:19:06 +05:30
Dave Page
063177155e
Bump version prior to release.
2017-03-06 15:35:08 +00:00
Dave Page
6696b3c316
Authenticate the runtime to the server. Fixes #2228
2017-03-06 14:53:49 +00:00
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
2ebd256307
Fix startup complete tests to ensure we properly poll the server for completed startup. Fixes #2192
2017-02-26 11:52:42 +00:00
Dave Page
d9ddd64a8b
Qt 5.8 seems to generate an additional header we should ignore.
2017-02-16 11:27:14 +00:00
Dave Page
40f2520fa6
Add comment to note command line qmake usage.
2017-02-13 12:08:36 +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
d3232b2449
Fix runtime version number.
2017-02-10 12:02:42 +00:00
Dave Page
e95dc5f895
Fix indentation
2017-02-08 11:40:43 +00:00
Jonas Thelemann
2db705ad80
Add runtime/pgAdmin4 to .gitignore, and re-order entries for ease of maintenance.
2017-01-16 14:46:44 +00:00
Dave Page
f221194bcc
Update copyright notices for 2017.
2017-01-04 13:33:32 +00:00
Dave Page
f80f271e0c
Only include the triggerWebViewWindowEvents declaration where appropriate.
2016-12-12 09:40:46 +00:00
Dave Page
c4c3d2b6b8
Change the org name and product name to ensure the the runtime config file is sensibly named.
...
This changes the default orgname to 'pgadmin' and product name to 'pgadmin4' in the runtime.
2016-12-02 11:24:32 +09:00
Dave Page
58910c4b62
Allow the ApplicationPath to be absolute.
2016-12-02 11:10:08 +09: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
d5351ad657
Add file resources to the windows runtime. Fixes #1874
2016-11-18 15:46:39 +00: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
5be9d5f054
Fixes #1909 Handle startup errors more gracefully in the runtime
2016-11-02 13:42:08 +05:30
Dave Page
517a85866b
Update version number for release.
2016-10-24 16:30:37 +01: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
Dave Page
cd3b938179
Tweak splash screen image
2016-09-05 16:55:34 +01:00
Dave Page
1ce74fb8b1
Add a simple splash screen
2016-09-05 16:45:01 +01:00
Neel Patel
a3e8ba93ae
Ensure that argc/argv are set for the runtime interpretor, and that
...
PYTHONHOME is properly configured.
2016-08-16 11:29:42 +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
Ashesh Vashi
fc34f85aa3
Set the sys path from the runtime as we were doing it earlier along with the
...
PYTHONPATH environment variable settings.
2016-06-21 18:24:07 +05:30
Ashesh Vashi
980ab4735e
Revert "Adding proper virtual environment path on windows."
...
As per Dave, we are not using 'pgAdmin 4' from the community installer,
hence - we should not bother about it.
This reverts commit 3484998775
.
2016-06-21 17:44:46 +05:30
Ashesh Vashi
3484998775
Adding proper virtual environment path on windows.
2016-06-21 16:54:34 +05:30
Ashesh Vashi
061a9d9322
Using the preprocessor macor Q_OS_WIN differently, it was failing to
...
compile the runtime on windows with C1017 error.
2016-06-21 15:45:26 +05:30
Ashesh Vashi
4a7607445f
Setting the PYTHONPATH variable before initializing the python
...
environment using Py_Initialize() function.
Also, add virtual environment binary path to the PATH environment
variable.
2016-06-21 15:02:35 +05:30
Ashesh Vashi
8b8e6fe59b
Passing the arguments to the function appending the path by reference.
2016-06-20 23:04:00 +05:30
Ashesh Vashi
691f01b623
[Runtime] Setting few of the environment variables (i.e. PATH and
...
PYTHONPATH) to run the runtime with the virtual environment properly.
And, also allow to use the python interpreter to be used with the
background process modules.
- Add binary directory of the virtual environment to PATH environment
variable.
- Add lib, dynamic libraries (python specific), and site-package
directories of the virtual environment in the PYTHONPATH environment
variable.
2016-06-20 21:31:19 +05:30
Dave Page
c16df45f2c
Allow QMAKE_[C|CXX|L]FLAGS to be set externally from PGADMIN_[C|CXX|LD]FLAGS environment variables respectively.
2016-06-20 12:54:49 +01:00
Dave Page
2c06ab4ac3
Allow the python-config executable to be specified in the environment.
2016-06-20 11:19:57 +01:00
Asser Schrøder Femø
fc955537a8
Fix runtime compatibility with newer Python versions
...
Initial patch by Asser. Change restricted to Python 3.3 and above by me as PyUnicode_DecodeFSDefault was added in 3.3.
2016-06-20 10:51:46 +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
Dave Page
e9dc1496e2
Favour Python 2 as it's more widely tested.
2016-06-17 11:32:39 +01:00
Dave Page
4dc563d71c
Fix python detection on Linux/Mac.
2016-06-17 09:40:06 +01:00
Dave Page
73988bcece
Do a more sensible venv search on Windows, and don't update the
...
registry upon installation.
2016-06-16 16:22:45 +01:00
Dave Page
cef0dc7c88
Hunt for the runtime on Windows in the same way we do on Mac.
2016-06-16 13:07:35 +01:00
Dave Page
fa917a0828
Prevent the runtime from compiling bytecode to avoid permissions issues.
2016-06-16 11:30:23 +01:00
Leonard Hecker
702609517f
This quite trivial patch adds support for HiDPI (i.e. "retina") displays on OS X.
...
The reason for this issue is that you guys use a heavily trimmed down Info.plist
file, which among others doesn't contain the NSPrincipalClass key.
Without that key an OS X application is treated as a legacy one and thus won't
support many "new" features including HiDPI displays.
By adding the key back, you a) follow the recommended Info.plist style and
b) get HiDPI support for free!
Apart from that I _really_ recommend adding the following keys too (mostly
keys added by default by Xcode - I've guessed the values):
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>pgAdmin 4</string>
<key>CFBundleShortVersionString</key>
<string>1.0.0</string>
<key>CFBundleVersion</key>
<string>1.0.0</string>
<key>LSMinimumSystemVersion</key>
<string>10.9</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2016 The pgAdmin Development Team. All rights reserved.</string>
2016-06-11 18:14:47 +01:00
Neel Patel
d1a0a9bab2
Icon for the Windows runtime executable. Fixes #1310
2016-06-08 10:54:28 +01:00
Dave Page
4380c6714e
Fix venv search path on Mac.
2016-06-07 12:12:39 +01:00
Sandeep Thakkar
3074af101b
Add Mac Appbundle generation support.
2016-06-02 13:56:56 +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
Ashesh Vashi
fddc30c99f
[Runtime] Adding python libs in the LIBS build environment.
2016-06-02 13:12:45 +05:30
Neel Patel
7b2e4fb467
Add Inspection support to the runtime when built in debug mode.
2016-05-19 09:33:00 -04:00
Dave Page
a5bb65c468
Search path for the runtime when running in a Mac dev env.
2016-05-10 16:39:02 +01:00
Sandeep Thakkar
c8406a5994
Fix the runtime search path when running in a Mac App Bundle
2016-05-06 15:53:00 +01:00
Vladimir Koković
2d5c69503e
Ensure runtime settings are synced after they are updated.
2016-04-16 19:00:49 -04:00
Neel Patel
3b7886e61e
Runtime fixes for QT4 support.
2016-02-23 09:10:49 +00:00
Ashesh Vashi
9274d87c55
Creating separate .gitignore for runtime, and added them in .gitignore
...
new temporary files created by qmake.
2016-02-18 17:12:53 +05:30
Neel Patel
8a06d5bd54
Remove a duplicate code line and add Windows environment setup info.
2016-02-03 09:58:58 +00:00
Neel Patel
efc8815ecb
Update the runtime to properly support Windows.
2016-02-02 13:16:01 +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
f1f09242ed
Set the window title.
2016-01-22 14:24:06 +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
07fac62bce
Improve sizing of Python Path input box.
2016-01-14 15:53:29 +00:00
Dave Page
81405dbe0a
Use the modern pgAdmin icon on Mac
2016-01-14 15:22:49 +00:00
Dave Page
2354c3e07d
Allow multiple Python Path elements to be given in a semi-colon delimited list.
2016-01-12 13:50:49 +00:00
Prasad Somwanshi
6c62d9eecd
sleep api used in pgAdmin4.cpp doesn't seem cross-platform(used from POSIX
...
specific C header). Either need to be replaced by C++11 equivalent or Qt
one. QThread::sleep seem appropriate to me.
2015-10-29 11:24:07 +01:00
Dave Page
fe834d1ed2
Re-organise node structure and loading to make things somewhat more
...
simple. This also adds the ability to display servers on the treeview.
2015-03-10 13:09:11 +00:00
Dave Page
5cffcabc70
Update the runtime to use URLs provided by the utils module.
2015-01-20 13:56:37 +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
1db7d968e2
Fix merge error.
2014-03-09 14:39:12 +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
a1524f3726
Add a qmake cache.
2013-10-04 21:42:16 +01:00
Dave Page
467d7d571b
Include pgAdmin4.h in the project file.
2013-10-04 21:42:16 +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
7fd90ac10f
QT4 compatibility.
2013-06-21 23:32:32 +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