Commit Graph

346 Commits

Author SHA1 Message Date
Akshay Joshi
4bb71c56ad Fixed an issue where the top menu disappears when entering into the full screen for minimum screen resolution. Fixes #6322 2021-03-17 18:47:25 +05:30
Akshay Joshi
49a59f8929 Added zoom scaling options with keyboard shortcuts in runtime. Fixes #6271 2021-03-15 14:26:11 +05:30
Dave Page
7780cbfb83 Cleanup some code warnings. 2021-03-12 15:20:57 +00:00
Dave Page
47e9ef070e Include the environment in the runtime log. 2021-03-12 15:07:08 +00:00
Dave Page
ec199e5e49 String tidy-up. 2021-03-12 14:52:41 +00:00
Akshay Joshi
296c23784f Fixed an issue where the python server is not closed when the user quits the
application from the top menu bar on OSX.

Python server will not be closed if the user quits the application from Dock,
for this we have updated the issue https://github.com/nwjs/nw.js/issues/7365

refs #6244
2021-02-22 14:58:04 +05:30
Akshay Joshi
2570f7d75c Fixed an issue where the user can't change the connection timeout setting if the fixed port number is enabled. Fixes #6249 2021-02-19 14:24:16 +05:30
Akshay Joshi
3fc0cc3e92 Fixed SonarQube issues 2021-02-15 17:31:20 +05:30
Akshay Joshi
3a50c17110 Ensure that the pgAdmin server should not be closed if the user clicks on the Cancel button of the 'Leave site' message box. 2021-02-05 14:41:23 +05:30
Akshay Joshi
102ffd141c Implemented runtime using NWjs to open pgAdmin4 in a standalone window
instead of the system tray and web browser. Used NWjs to get rid of QT
and C++. Fixes #5967

Use cheroot as the default production server for pgAdmin4. Fixes #5017
2021-01-29 13:38:27 +05:30
Akshay Joshi
e5407ab2bd Update version for release. 2021-01-25 17:32:56 +05:30
Akshay Joshi
b372f08a59 Update copyright notices for 2021 2021-01-04 15:34:45 +05:30
Akshay Joshi
bb25e85834 Update version for release. 2020-12-07 15:51:22 +05:30
Akshay Joshi
552a1bfaa6 Update version for release. 2020-11-09 14:35:55 +05:30
Akshay Joshi
9898e114f1 Update version for release. 2020-10-12 18:03:27 +05:30
Akshay Joshi
7dca844cbe Update version for release. 2020-09-14 17:53:54 +05:30
Akshay Joshi
76b0e3e9f7 Moved logic to check fixed port is in use to ConfigWindow class.
refs #5751
2020-09-08 12:00:24 +05:30
Akshay Joshi
9ae9ccff16 Modified the logic to check Port is in use for runtime. Fixes #5751. 2020-09-03 19:21:54 +05:30
Chris Mayo
0998d349ca Fixed an issue where the application ignores the fixed port configuration value. Fixes #5773 2020-08-27 12:49:58 +05:30
Akshay Joshi
59649ca42c 1) Enable the 'Configure' and 'View log' menu option when the server taking longer than usual time to start.
2) When an error occurs from the backend, the configure window opens and if the user has changed the setting
   of the port, it won't take any effect as we have retrieved the value of the port at the start of the runtime.
3) Added logic to identify the specified fixed port is already in use. Throw the error before starting the pgAdmin server.

Fixes #5751
2020-08-25 18:01:27 +05:30
Akshay Joshi
e3b1ef0b80 Update version for release. 2020-08-17 17:29:19 +05:30
Akshay Joshi
099fea15ae Fixed code smells in runtime code reported by SonarQube. 2020-07-29 18:26:41 +05:30
Akshay Joshi
510dd5c047 1) Fixed pgAdmin hang issue when the user clicks on 'View Log' menu option.
2) Fixed some code smell in runtime code.
2020-07-29 15:31:38 +05:30
Dave Page
5820b9521e Make sure the version check is compatible with older versions of Qt 2020-07-29 09:36:27 +01:00
Dave Page
46ba0310fa Make the runtime configuration dialog non-modal. Fixes #5490
Major refactoring of the runtime code, Specifically:
  - Move the bulk of the core code from main() into a new Runtime class.
  - Break up the mass of code that was main() into a number of relatively simple functions.
  - Make the Configuration dialog synchronous so the Log dialog can be properly viewed.
  - Enable/disable menu options at the right time.
  - Remove support for Qt < 5.0.
  - Remove the application name constant and hardcode the name to simplify the code.
  - Improve log messages.
  - Replace the sdbm hashing with Qt's MD5 hashing.
2020-07-28 16:13:05 +05:30
Akshay Joshi
c0e30c93e5 Update version for release. 2020-07-20 16:18:36 +05:30
Dave Page
13d2f9131d Replace the runtime themes with ones that don't have sizing issues. Fixes #5554 2020-07-17 15:31:04 +05:30
Dave Page
e6edf40048 Refactor server request code by removing some duplicated code in the runtime and improves some of the debug logs. 2020-07-11 16:59:26 +05:30
Dave Page
dd38fed6e0 Use ISO8601 date format in the runtime startup log. 2020-07-11 16:47:36 +05:30
Dave Page
5ac656c638 Refactor config loading/saving for the runtime config dialog to avoid code duplication. 2020-07-11 16:41:31 +05:30
Dave Page
6855ac1d5e Use QStandardPaths::AppLocalDataLocation in the runtime to determine where to store runtime logs. Fixes #5414 2020-07-11 16:32:08 +05:30
Dave Page
e0fa4a6cb2 Fix typo. Fixes #5517 2020-07-02 09:32:31 +01:00
Akshay Joshi
18b3cc2683 Initialize pointer variables with Q_NULLPTR. 2020-06-23 14:23:28 +05:30
Akshay Joshi
c2268c82ee Update version for release. 2020-06-22 17:42:46 +05:30
Akshay Joshi
cf64e2c97c Fixed runtime issues reported by SonarQube. 2020-06-16 14:53:40 +05:30
Akshay Joshi
a23fad0ba8 Tidy up some code to keep SonarQube happy. 2020-06-15 12:12:19 +01:00
Dave Page
9468c16233 Update hint test to use a modern Python version. 2020-05-27 11:36:03 +01:00
Akshay Joshi
1347c89d61 Update version for release. 2020-05-25 17:11:12 +05:30
Akshay Joshi
8a06a836f4 Ensure that pgAdmin4 should be compiled with older OSX SDK's. 2020-05-12 17:22:22 +05:30
Dave Page
46d186a49f Show the startup log as well as the server log in the runtime's log viewer. Fixes #5489 2020-05-07 11:01:02 +01:00
Dave Page
7164c677de UI layout tweaks. 2020-05-07 10:39:28 +01:00
Dave Page
94bd1f1680 Cleanup Python detection in the runtime project file. Fixes #5444 2020-05-04 10:20:51 +01:00
Dave Page
109051e1d5 Remove Python 2 support from the desktop runtime
refs #5443
2020-04-30 13:04:09 +05:30
Dave Page
e8a4b46ba1 Another attempt at fixing the 'do we need the --embed flag for Python' problem.
This change looks at the output from python-config --help (which may go
to stderr or stdout), and if it includes --embed, adds it to the later
call to get the libs string.
2020-04-29 16:19:54 +01:00
Dave Page
97be3d8179 Don't rely on python-config sending the help message to stderr, as older versions seem to use stdout. 2020-04-29 15:49:16 +01:00
Dave Page
505956d1fa OK, another attempt at this as it fails on non-Linux non-Python 3.8. 2020-04-29 14:29:47 +01:00
Dave Page
f7ef86dced Sigh. Remove extraneous closing bracket. It's always a bracket. 2020-04-29 14:04:32 +01:00
Dave Page
3138f36e05 Fix the runtime build with Python 3.8 on Linux 2020-04-29 13:55:53 +01:00
Akshay Joshi
50a423b142 Update version for release. 2020-04-27 21:23:51 +05:30
Dave Page
d5bfc726c0 Ignore the pre-compiled resources. 2020-04-24 14:56:46 +01:00
Neel Patel
ee29e64039 Fixed Mac OSX build by adding the prefix in qrc file. 2020-04-14 20:23:32 +05:30
Dave Page
41be5479af Added dark mode support for the configuration dialog on Windows/macOS runtime. Fixes #4292
Detects dark mode at server start and styles the runtime accordingly.

Patch modified by: Neel Patel
2020-04-13 13:22:00 +05:30
Neel Patel
9c93e93cb4 Make the configuration window in runtime to auto-resize. Fixes #4864 2020-04-13 13:09:26 +05:30
Dave Page
4da327088c Added an option to prevent a browser tab being opened at startup. Fixes #5353 2020-04-03 19:43:00 +05:30
Dave Page
e26a9a25d5 Fixed compilation warnings while building pgAdmin. Fixes #5351 2020-04-03 19:23:32 +05:30
Akshay Joshi
002fdb33fc Update version for release. 2020-03-30 17:39:33 +05:30
Akshay Joshi
43451fd3f0 Update version for release. 2020-03-02 17:28:20 +05:30
Akshay Joshi
1f0728b7d1 Update version for release. 2020-02-03 17:13:05 +05:30
Akshay Joshi
195e9663da Update version for release. 2020-01-06 17:55:41 +05:30
Dave Page
01c7636c75 Update copyright notices for 2020. 2020-01-02 14:43:50 +00:00
Dave Page
8cb239abcb Rename some internal environment variables that could conflict with Kubernetes. Fixes #4999. 2019-12-13 10:42:43 +05:30
Akshay Joshi
4a87b1387a Update version for release. 2019-12-09 18:05:09 +05:30
Akshay Joshi
8a03c42bd4 Update version for release. 2019-11-12 08:20:43 +05:30
Akshay Joshi
d7b1e2cd9c Update version for release. 2019-10-15 14:27:56 +05:30
Akshay Joshi
e64d6edc73 Update version for release. 2019-09-17 11:06:58 +05:30
Akshay Joshi
5c8aefc01e Update version for release 2019-08-20 10:26:49 +05:30
Akshay Joshi
b4d9fea83d Update version for release 2019-07-23 10:40:51 +05:30
Akshay Joshi
252429df50 Update version for release 2019-06-28 09:40:31 -04:00
Akshay Joshi
173acd46a5 Update version for release 2019-06-25 01:44:21 +05:30
Akshay Joshi
969a2961fe Update version for release. 2019-06-01 14:19:28 +05:30
Akshay Joshi
8851cb0704 Update version for release 2019-05-28 12:09:33 +05:30
Akshay Joshi
991fe3d797 Update version for release. 2019-04-30 10:49:49 +05:30
Akshay Joshi
ceb0e39e14 Update version for release 2019-04-08 18:31:51 +05:30
Akshay Joshi
7f23f729c6 Update version for release. 2019-04-01 15:19:25 +05:30
Akshay Joshi
28555b387f Update version for release 2019-03-04 17:35:55 +05:30
Akshay Joshi
9a758f8fd3 Update version for release. 2019-02-04 18:04:33 +05:30
Dave Page
08cf2c8310 Ensure we set the fixed port options properly when configuring following an error. 2019-01-23 12:12:16 +00:00
Akshay Joshi
8b135f2932 Update message catalog and version for release. 2019-01-11 23:34:24 +05:30
Aditya Toshniwal
d361e604c1 Further style tweaks. 2019-01-07 16:03:54 +05:30
Dave Page
d6778aa915 Bump version prior to 4.0 2019-01-04 10:53:10 +00:00
Aditya Toshniwal
6e5b54eb1a Increase default startup timeout and give progressive messages when things are slow. 2019-01-02 11:57:33 +00:00
Murtuza Zabuawala
e23d307c56 Update copyright notices for 2019 2019-01-02 15:54:12 +05:30
Dave Page
3448465e82 Defione Q_NULLPTR for Qt 4. 2018-12-06 11:08:17 +00:00
Dave Page
72a2db53c3 Use Q_NULLPTR instead of nullptr as some of our older build machines don't support C++ 11. 2018-12-06 10:40:49 +00:00
Dave Page
5cfe0ef115 Use C++ style casts. 2018-12-06 10:36:57 +00:00
Dave Page
312bcbc83f Use nullptr instead of NULL or 0. 2018-12-06 10:30:07 +00:00
Dave Page
566ff7b609 Use nullptr instead of NULL or 0. 2018-12-06 10:24:52 +00:00
Dave Page
45cd17af84 Use nullptr instead of NULL or 0. 2018-12-06 10:17:47 +00:00
Dave Page
f2773354c8 Remove blank messages from the Qt project file as they don't work on newer versions of QMake and aren't needed anyway. 2018-12-06 09:50:21 +00:00
Akshay Joshi
527e084ef7 Bump version number for release 2018-11-26 15:35:26 +05:30
Akshay Joshi
d97431cb4f Bump version number for release. 2018-10-29 22:29:07 +05:30
Dave Page
c092495b7a Bump version number for release. 2018-10-01 10:25:19 +01:00
Akshay Joshi
6a46e43567 Ensure the runtime can startup properly if there are wide characters in the logfile path on Windows. Fixes #3464 2018-09-18 15:08:31 +01:00
Akshay Joshi
003889f15e Added null checks and some more startup logs for runtime 2018-09-17 15:16:48 +05:30
Akshay Joshi
026969e3d1 Add a startup logger to the runtime to aid with debugging. 2018-09-14 14:41:52 +01:00
Dave Page
61f00a0cbb Update versions for 3.3. 2018-09-03 10:11:34 +01:00
Akshay Joshi
7479467a54 Update version and message catalog for release. 2018-08-06 16:15:11 +05:30
Dave Page
cb9fffc7de Remove comment that's not really needed any more. 2018-07-20 16:56:03 +01:00
Dave Page
a86604160a Allow the user to specify a fixed port number in the runtime to aid cookie whitelisting etc. Fixes #3506 2018-07-19 12:54:53 +01:00
Dave Page
2ce41e77f2 Add a menu option to the runtime to copy the appserver URL to the clipboard. Fixes #3510 2018-07-19 11:32:40 +01:00
Akshay Joshi
7f7feee8c1 Added keyboard shortcut for 'pgAdmin4' menu. 2018-07-17 18:52:06 +05:30
Dave Page
a49923dba2 Add hints for the config options. 2018-07-17 12:18:37 +01:00
Akshay Joshi
765a88addf Support running on systems without a system tray. Fixes #3316 2018-07-17 12:10:35 +01:00
Dave Page
0c6e80f64d Improve sizing on Linux 2018-07-11 13:31:19 +01:00
Dave Page
f04b2e33b5 Prep for 3.1 release. 2018-06-26 11:13:46 +01:00
Anthony DeBarros
a6ee27cf25 s/shutdown/shut down/ 2018-06-08 08:45:02 +01:00
Akshay Joshi
5f0799714d Cleanup Python 3 server startup code. Fixes #3277 2018-05-31 10:07:08 -04:00
Akshay Joshi
252a9b265b Ensure server cleanup on exit only happens if the server actually started up. Fixes #3277 2018-05-11 09:33:09 +01:00
Dave Page
c68848e7f3 Ensure the runtime core application is setup before trying to access any settings. Fixes #3333 2018-05-08 09:54:33 +01:00
Dave Page
4f79f00d61 One day I'll remember to update the version everywhere... 2018-05-04 14:13:57 +01:00
Dave Page
92ba055d66 Fix compiler warning. 2018-04-27 13:27:37 +01:00
Akshay Joshi
8232f26882 Avoid a crash in the runtime if there are spaces in the users username. Fixes #3227 2018-04-11 13:34:21 +01:00
Rahul Soshte
e467ffcfe4 Add a couple of files for git to ignore. 2018-04-11 09:58:44 +01:00
Dave Page
9464e04cf8 Ignore generated file 2018-04-09 16:31:29 +01:00
Dave Page
60c44e8f79 Fix issue seen with older versions of GCC. 2018-03-21 14:49:39 +00:00
Dave Page
80b29a85cc Secure runtime temp files. 2018-03-21 11:27:59 +00:00
Maxim Zakharov
54b1a79cb6 Sporadically crashes on Windows when exit. Fixes #3177
1) Shutdown the python server properly.
  2) Disabled "Shutdown server" menu till server is not successfully started.

Initial patch sent by Maxim, modified by Akshay Joshi.
2018-03-15 13:26:24 +05:30
Dave Page
8a56eb9cd0 Fix stupid thinko 2018-02-19 17:06:01 +00:00
Dave Page
df667bff53 Python 3 fix for the runtime. 2018-02-19 16:30:43 +00:00
Dave Page
2706d9cd8e Bump the version to 3.0, per discussion on the mailing lists 2018-02-05 15:38:20 +00:00
Dave Page
7192a2b675 Rewrite the runtime as a tray-based server which can launch a web browser. Fixes #3086 2018-02-05 15:32:14 +00:00
Dave Page
89821c0d19 Update copyright notices for 2018. 2018-01-05 10:42:50 +00:00
Neel Patel
90f5af8902 Avoid a potential crash when downloading. Fixes #2964 2017-12-19 12:20:01 +00:00
Dave Page
005abab7c4 Runtime version update 2017-12-18 11:13:28 +00:00
Neel Patel
8cc1a007b5 Ensure we can download large files and keep the user informed about progress. Fixes #2829. Fixes #2491. Fixes #2715 2017-11-20 14:43:34 +00:00
Neel Patel
96df3147d6 Check and attempt to fir the registry on Windows, if the text/css type is misconfigured. Fixes #2716 2017-11-15 16:33:24 +00:00
Neel Patel
8a4b2ea953 Confirm with the user before exiting the runtime. Fixes #2443 2017-11-07 20:10:55 -05:00
Dave Page
f195b18f2d Ship with pre-configured paths that can work in both Server and Desktop modes out of the box. Fixes #2662
Ship the web code using server mode with appropriate paths by default and enable the runtime to override the mode, and force into desktop changing the appropriate paths to user-specific ones.

Note that this change will likely cause more advanced users to have to tweak configs.

RPMs will also need changes to create /var/lib/pgadmin and /var/log/pgadmin, owned by the webserver account.
2017-08-25 10:54:28 +01:00
Dave Page
fb9eee47bd Bump the version number for 2.0. Let's get testing started ASAP! 2017-08-25 10:18:42 +01:00
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