Commit Graph

3290 Commits

Author SHA1 Message Date
Martin Kleusberg fc71212d91 dbhub: Use port 5550 for local development server
When connecting to a locally running development server use port 5550
instead of 443. This allows the server to run without any special
rights.
2020-07-09 09:51:48 +02:00
Martin Kleusberg 46ecf9094c dbhub: Update CA certificate for local testing
This updates the CA certificates which are used for a local dbhub server
as used for testing purposes.
2020-07-08 22:49:17 +02:00
Martin Kleusberg f4f014e741 Fix warning in SQL error log when creating an in-memory database
This fixes an invalid database pointer warning when trying to create a
new in-memory database.
2020-07-08 15:44:12 +02:00
Martin Kleusberg 7c3cce56d4 Fix SQL import of files with BOM
This fixes the import of SQL files with a leading BOM.

See issue #2323.
2020-07-08 15:37:51 +02:00
Martin Kleusberg d089a60bf7 Fix executing selected SQL text when there are multi-byte characters
Fix executing the selected SQL statement(s) when there are multi-byte
characters before the selection. Because QScintilla gives us the start
position of the selection in bytes and we used the value for counting
characters, the executed part of the text was off by a few characters.

See issue #2311.
2020-07-05 15:26:40 +02:00
mgrojo 0562f16dfa New settings for changing the selection appearance in editors
Default values follow desktop style as before.

See issue #2320.
2020-07-04 20:50:51 +02:00
mgrojo 662dbcf900 New setting for configuring brace matching background
This allows modifying this background colour and provides a better
default, which does not make the cursor invisible (in dark mode) and it
is itself visible outside of the current line (in light mode).

See issues #2203 and #2320
2020-07-04 17:08:01 +02:00
Justin Clift 0bb3b23070 No longer force Light theme on macOS when "Follow the desktop style" is chosen 2020-07-05 00:08:01 +10:00
Martin Kleusberg b9b67cce70 Disable lazy popululation for queries with compound operators
This disables the lazy population feature for queries in the Execute SQL
tab which contain a compound operator (UNION, EXCEPT, INTERSECT). Adding
a LIMIT clause to the statements (as needed for lazy population) results
in a syntax error, so running these queries does not show any data.

See issue #2316.
2020-07-01 13:11:45 +02:00
Martin Kleusberg ea6d008991 Fix a harmless warning when searching for an empty font name
When the index of the selected cell is invalid, i.e. no cell is
selected, we cannot retrieve the font of the selected cell. Trying to
look up the empty font name for updating the font combo box in the
Format toolbar then fails, outputting a warning with some Qt versions.

See issue #2288.
2020-07-01 12:52:15 +02:00
Justin Clift 7f60aaa1fd Merge pull request #2287 from scottfurry/obsoleteFNs
Qt Function Obsolescence
2020-06-27 19:33:41 +10:00
Justin Clift fd9104f7bf Add 3.12.0 release date to the README 2020-06-26 04:06:40 +10:00
Martin Kleusberg a157713c97 Reduce margin in docks
Reduce the margins in the layouts of the dock widgets in the main window
a bit. This reduces the amount of wasted screen space.

See issue #2299.
2020-06-24 23:07:42 +02:00
Martin Kleusberg 85e1d0863c tests: Clean up test cases 2020-06-23 16:36:53 +02:00
mgrojo a803069d5e Font change in Browse Data table not applied to RTL Text editor
See issue #2295
2020-06-22 12:39:52 +02:00
mgrojo efb5b1a07a Improve binary detection for cases starting by chance by a BOM
The presence of a sequence of bytes resembling a BOM does not guarantee
that the data is text. We can in those cases use the detection provided
by Qt. If the codec matches the one selected, we can consider that text.

See issue #2197
2020-06-21 23:18:09 +02:00
mgrojo f4d78ad786 Set savepoint before logging the SQL statement
Otherwise the sequence of savepoint and update statement is inverted in the
SQL log.

See issue  #1859
2020-06-21 17:56:43 +02:00
mgrojo 3485a52e16 Bar charts did not display labels in x axis when NULL values present
The problem was signaled by an error when calling addTicks:
[...]AddTicks[...] passed unequal length vectors for positions and labels

See comment in issue #2286
2020-06-20 16:59:39 +02:00
Martin Kleusberg 9481bd8ef6 tests: Activate more parser tests
Now that we have parser support for named constraints we can activate a
couple more tests.
2020-06-19 16:02:08 +02:00
Martin Kleusberg 26fc5ba7e8 parser: Add support for single quoted constraint names
This adds support for constraints with single quoted names (i.e. using
the string literal syntax).
2020-06-19 16:01:24 +02:00
Martin Kleusberg fb3a9a0638 parser: Simplify code
This removes no longer needed code like the handling of not fully parsed
column constraints. It simplifies the code even further by handling
constraints in a more consistent manner which allows us to remove some
redundancies.
2020-06-19 15:18:02 +02:00
Martin Kleusberg d08dcba329 parser: Add support for named CHECK, DEFAULT, and COLLATE constraints
This adds support for fully parsing named CHECK, DEFAULT, and COLLATE
colum constraints. With these changes it is possible to edit table using
these named constraints without losing any information. It is still not
possible to edit these names via the UI though.
2020-06-19 14:48:06 +02:00
Martin Kleusberg 1559fb3aab parser: Extended support for NOT NULL and UNIQUE column constraints
This adds support for conflict actions in NOT NULL and UNIQUE column
constraints. It also supports named NOT NULL and UNIQUE column
constraints. With this it is now possible to edit tables which make use
of these constraints without losing any information. Adding constraints
like this via the UI is still not supported though.

Once more constraints are handled like this, the code can be probably
simplified a lot.
2020-06-19 13:13:23 +02:00
Martin Kleusberg 60f121434c Fix empty filters in project files
Fix loading of project files with empty filter values. If an empty
filter value was saved in a project file, it did not show up in the UI
but was partially added to the query anyway. This lead to an invalid
query with no results.

Also fix a possible loophole which at least in theory could lead to an
empty filter value being stored in the project file.

See issue #2288.
2020-06-19 10:35:46 +02:00
Justin Clift f7e593a8a4 Updated bug report template for 3.12.0 release 2020-06-18 15:30:19 +10:00
Scott Furry 99193b96b9 Qt Function Obsolescence
During a build with all warnings enabled, compiler reported numerous
Qt Functions as being obsolete. Review of the used functions, these
functions have been marked as obsolete as far back as Qt-5.12.x series.

Obsolete functions involved the use of Foreground/Background colour setting.

API description showing obsolete functions:
https://doc.qt.io/qt-5/qlistwidgetitem-obsolete.html
https://doc.qt.io/qt-5/qtreewidgetitem-obsolete.html
2020-06-17 16:32:01 -06:00
Justin Clift 4bd2b916da Update currentrelease file for 3.12.0 2020-06-17 16:36:12 +10:00
Martin Kleusberg 7c6ef2ae51 dbhub: Add text to upload button
Add some text ("Upload") to the push database button in the Remote dock
to make its function more obvious.
2020-06-13 11:58:30 +02:00
Martin Kleusberg 5cdda28608 dbhub: Log in by only selecting an identity, no need to press a button
This removes the login button from the dbhub dock. Instead of selecting
an identity and then clicking the login button, you are now logged in by
just selecting an identity.
2020-06-13 11:37:30 +02:00
Justin Clift fa3a0f5756 Updated French translation 2020-06-11 15:39:52 +10:00
Martin Kleusberg 834e6508bf Refactor TableBrowser class to make it easier to read and maintain
While easier maintainability is the main point of this commit it has two
more side effects: It fixes a big which leads to the filter row being
cleared when toggling the rowid visibility and it should improve the
performance a bit by avoiding double work.
2020-06-10 21:02:26 +02:00
Martin Kleusberg 535243ad67 Remove unused code 2020-06-10 15:46:46 +02:00
Martin Kleusberg ff37c90155 Add iif SQL function to the list of known functions in Execute SQL tab
This adds the iif function to the list of known functions for which we
offer tooltips in the Execute SQL tab. It was introduced in SQLite
3.32.0.
2020-06-10 15:28:27 +02:00
Martin Kleusberg facbcec793 Replace more Qt containers by STL containers and fix a ton of warnings 2020-06-10 15:05:22 +02:00
Martin Kleusberg 5748e14f9e Simplify code a bit
This removes some unnecessary complexity which was left over from an
experiment which did not quite work out as expected.
2020-06-10 14:53:13 +02:00
Bernardo Sulzbach 1e88dd8d59 Updates the Brazilian Portuguese files for 3.12.0 2020-06-09 23:37:36 +02:00
mgrojo 2a6acbfaae update German translation for v3.12.x
# Conflicts:
#	src/translations/sqlb_de.ts
2020-06-09 21:39:21 +02:00
Martin Kleusberg f559026537 Rename 'Open tab' to 'New tab' in the Execute SQL area
See issue #2276.
2020-06-09 20:38:24 +02:00
Martin Kleusberg 23b1021d34 Scale large images in ImageViewer to fit the viewport by default
See issue #2029.
2020-06-08 20:28:46 +02:00
Martin Kleusberg d653bf9f9b Replace some more Qt containers by their STL counterparts 2020-06-08 16:06:56 +02:00
Martin Kleusberg 2f28a3ef5c Drop support for loading the old project file format
This drops support for loading project files with binary data as created
until version 3.10.
2020-06-08 15:42:23 +02:00
Justin Clift 044e4842e8 Merge pull request #2275 from scottfurry/convert
Update to Windows Icon Generation script
2020-06-07 16:21:41 +10:00
Scott Furry 90698e5dc3 Update to Windows Icon Generation script
Update script `src/tools/create_windows_icon.sh`.
Script uses Imagemagick `convert` command and requires attention to ordering of arguments.

Script update for use w/ Bash 5
2020-06-07 00:17:51 -06:00
Martin Kleusberg fa04d72f20 Fix possible crash when loading project files
This fixes a possible crash when loading project files which occurs with
some versions of Qt when trying to set the column widths in the Browse
Data tab.

Thanks to @hertzhaft for spotting and fixing this.

See issue #2232.
2020-06-06 16:45:12 +02:00
Justin Clift ba1c2a10ff Update Windows icon creation script at Scott suggestion :)
As per https://github.com/sqlitebrowser/sqlitebrowser/pull/2270
2020-06-06 13:33:51 +10:00
Justin Clift 454f182d28 Merge pull request #2270 from scottfurry/icon_cleanup
Application icon cleanup
2020-06-06 13:30:19 +10:00
Scott Furry 1ddb403593 Application icon cleanup
Ensure images used for application icon are a "best quality" image
with consistent square size. A sharp, square image is vital for downstream
usage/installation.

File `images/logo.svg` was taken as canonical source. File was edited in
inkscape. It's document properties were cleaned up(incl. image metadata).
Document viewport was made to be a large size and square(256px^2).
Image itself was resized to ensure an 8px margin.

File `images/logo.png` was created from svg (inkscape `export to png`
command). Image was generated with high compression as well as ensuring
an alpha layer and square sizing.

File `src/icons/sqlitebrowser.png` was copied from `images/logo.png`.
2020-06-05 04:30:19 -06:00
Martin Kleusberg 81bddb45d5 Do not show fields twice when parsing a table was incomplete
When the CREATE TABLE statement of a table could not be parsed
completely we asked SQLite for more information on this table and added
that to the table representation. This however made all fields appear
twice. With this commit we only ask SQLite for information on the table
when our parser did not yield any information at all to avoid this
problem.

See issue #2269.
2020-06-05 11:40:35 +02:00
Martin Kleusberg f81da0d29c Remove "NULL" in margin of editor in Edit dialog for empty cells
When clicking on a cell with a NULL value while, the Edit dialog
switches into text mode and shows an empty text with "NULL" written in
the line number margin. When then changing to an empty string cell, the
text in the editor did not change (it is still empty after all). This
prevented an action from triggering which meant that the "NULL" text in
the line number marging was not removed.

See issue #2204.
2020-06-03 17:04:46 +02:00
Martin Kleusberg d3c69ad291 Add zooming to image viewer in the Edit Dialog
This adds some basic zooming functionality to the image viewer used in
the Edit Dialog.

See issue #2029.
2020-06-03 15:03:15 +02:00