| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
longer matched the internal table representation, table storage exceptions would occur. Additional checks are now made against the column count; if a content result set is retrieved with an unexpected number of columns, the result set is discarded and a full table refresh is triggered to restore the state.
|
|
|
|
|
|
|
|
|
| |
- Set error strings on MCPConnection on user disconnect to allow existing error chcking to catch the state
- Improve close behaviour from threads
- Improve window close behaviour and appearance
- Add new checks for disconnection in one or two crash-prone locations
This addresses Issue #531, one of Issue #532, one of Issue #539, and probable reported crashes on Issue #541.
|
|
|
|
|
|
| |
- Fix incorrect uses of [NSString stringWithFormat:] with preconstructed strings and no arguments in SPUserManager
- To fix display issues, replace NSBeginAlertSheet (which includes automatic sprintf expansion of the message) with a safely-escaped SPBeginAlertSheet in many files
|
| |
|
|
|
|
|
|
|
|
| |
- SPDataStorage is a class designed for a 2D array of fixed-width data storage, replacing the current method of nested NSMutableArrays. NSFastEnumerator compatible.
- Overall memory overhead for table storage in memory reduced by 1.2-1.4x - this almost gains back the large memory jump seen for 64 bit
- Some operations (adding data, retrieving a single cell's data) are faster than nested NSMutableArrays; some operations (requesting a row as an NSArray) are slightly slower as the data needs to be converted, but overall result is a slight speed gain.
(- Could be used in future to store SQL results in C datatypes, avoiding very high NSObject overhead for numbers and short strings)
|
|
|
|
| |
certain conditions
|
|
|
|
|
|
|
| |
filtering is occurring, just pagination
- If the table count is estimated (eg InnoDB), but the end is reached via pagination, make the row count accurate based on the known number of rows
|
|
|
|
|
|
|
| |
behaviour to escape _ % automatically since it could be confusing to the user because it uses LIKE '%...%'
• reimplemented: scroll to newly added row in Content View
|
|
|
|
|
|
|
|
| |
- Change the error dialog buttons to "Edit row" and "Discard changes" instead of "OK" and "Cancel"
- Correctly refocus the deselected row
- Edit the first cell in the row after errors.
- Fix row deselection and error handling on the Table Source view
|
|
|
|
|
|
|
| |
release builds, including a large number of 64bit compatibility upgrades and tweaks
- Upgrade RegexKitLite to 3.3
|
|
|
|
|
|
| |
tableView:writeRows:toPasteboard:] method by [NSTableView tableView:writeRowsWithIndexes:toPasteboard:]
• some code cosmetics
|
|
|
|
|
| |
- reimplemented the display of the conjunction label for two arguments
- fixed bug while parsing and storing the number of arguments of each filter definition
|
|
|
|
|
|
|
| |
to avoid binary-mode result issues with certain versions of MySQL (including 4.1.14). This should address Issue #509.
- TableDocument now requests the server version string from MCPConnection, aiding caching
|
|
|
|
| |
correct row count" preference with a new Table row counts query level (never, only for small tables, always), defaulting to only for small tables - boundary currently set to 5MB. This addresses Issue #500
|
|
|
|
| |
icon, to reduce the overall space taken up in the bottom bar and to make it clearer a jump-to/options button is available
|
|
|
|
| |
This completes the conversion of all constants in SPConstants to extern's.
|
|
|
|
|
|
| |
- Fix pagination to not enable the "next page" arrow when looking at a small, complete, filtered result
- Move content table setup and drawing to a new method called on the main thread. Should improve thread safety, and fixes flickering updates. Tweak a few bits of drawing code to take advantage of main thread status to further reduce flicker and jumping
|
|
|
|
|
|
| |
- Fix a couple of memory leaks in the SPFieldEditor
- Fix a crash caused by attempted reselection of databases after disconnection if no database was selected
|
|
|
|
| |
crashes in the old non-threaded code when the row count is reduced (performSelectorOnMainThread:waitUntilDone:NO was deferring updates until past table reload). This addresses Issue #487.
|
|
|
|
| |
use thread locking to ensure data safety while the table is loading. This should fix intermittent loading and reload issues, including part of #463 and should address Issue #482
|
|
|
|
|
|
|
| |
an occasional crasher when getting table cells by adding a retain
- Alter MCPStreamingResult to use pthread mutexes in a further attempt to address Issue #463
|
|
|
|
|
|
|
| |
button mouseover text, display no text when 0 or 1 pages of results for clarity
- No longer include the old app icon in the built product (but leave it in the project)
|
|
|
|
|
|
|
|
| |
at the bottom. This addresses the last of Issue #49 and implements Issue #133; jump-to and two prefs affecting loading are available in a popup when clicking the pagination interface.
- Format row counts at the bottom of the content pane
- Increase the MCPStreamingResult buffer for a stronger workaround for #463
|
|
|
|
|
|
|
| |
encoding changes, status requests, or blob/text lookups on slower connections
- Restore first responder in TableContent loads on the main thread to fix a potential crasher
|
|
|
|
|
|
|
| |
update early in the change process, but ensure the change notification occurs on the main thread for stability. Added NSNotificationAdditions from the Colloquy project for this.
- Change the design of the progress indicator layer, and tweak task progress for improved feedback and less flickering by correctly updating interface as appropriate, and delaying status changes for a short time. This partially addresses Issue #455.
|
|
|
|
| |
we are about the replace it to prevent threading issues. Also, in fieldListForQuery check that dataColumns array is not empty before constructing the field list as well as only obtaining the table's columns if the field list is going to be built in the first place.
|
| |
|
|
|
|
|
|
|
|
|
| |
relationship, remove the key before the field to prevent an error. Obviously warn the user that the key is being dropped as well. Fixes issue #462.
This check also needs to be implemented when removing indexes as foreign keys depend on the presence of indexes to prevent table scans.
Something to be discussed, the display of foreign keys that are made up of multiple fields in the relations table and link arrows in the content table.
|
|
|
|
|
| |
- Add some NSTextView editing notifications to maintain state correctly in an attempt to fix issue in crash log on comment 9 on #460
|
|
|
|
| |
results. This improves partial content displays (using the new code as of r1530) and also improves custom query error reporting.
|
|
|
|
|
|
|
|
|
|
| |
functionality:
- MCPKit now supports cancelling the active query; for MySQL servers >= 5.0.0 a query kill is attempted from a new connection, and if that fails or for MySQL < 5 a reconnect is triggered.
- TableDocument now supports enabling a cancel task button on the task interface, including an optional callback
- Implement query cancellation for custom queries. This addresses Issue #86.
- Implement query cancellation for table content loads, filters, and sorts.
|
|
|
|
| |
consistent across all table views. Also includes live updating when the preference is changed as well as its implementation in the query console, process list and variables table views.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- New connection column (been meaning to add this for a while)
- Display table view column headers
- Enable table view text cell line truncating
- Allow table view columns to be re-ordered
- The table view now respects the display table view vertical grid lines preference
- Support for including the connection when saving messages to a file
- Support for showing/hiding the connection column
- Increase table view row height to match that of all others
- Display message time stamps using the user's system wide medium time format
|
| |
|
|
|
|
|
|
|
| |
- Thread history loading, thus using the nested task elvels and fixing history interaction in recent builds
- Thread initial database loads
- Improve progress indicator slightly
|
|
|
|
|
|
| |
is set to "UTF-8 via Latin1" by changing the query/connection's encoding to Latin1 temporarily
• replaced 'int' to NS(U)Integer
|
|
|
|
| |
equivalent of return in order to be consistent with other data deletion dialogs.
|
|
|
|
| |
window, regardless of key state, by passing in and looking for the table document instance
|
| |
|
|
|
|
|
|
|
|
| |
- Improve task support on previously supported views
- Use a threaded task load for all initial table loads
- Support threaded task loads for table content loads, reloads, sorts, and filters
- Improve upon previous threaded task loads by minimising view updates and supporting updates of the existing data arrays where valid
|
|
|
|
| |
functionality in place. This addresses r447, and threading will be reimplemented at a per-task level in the near future.
|
|
|
|
| |
main toolbar with constants.
|
|
|
|
| |
instead prevent selection/editing/sorting in code; this prevents the tableviews from going grey during the load and minimises flicker and loss of focussed elements.
|
|
|
|
|
|
|
| |
threaded queries
- Alter task notifications to pass the TableDocument as the notification object so that only the current window responds to the notification, allowing other windows to be fully used while a window is performing a task
|
|
|
|
|
|
|
|
| |
custom queries in a background thread with the task interface active.
- Rework custom query result processing to allow display of results as they come in
- Fix a memory leak
|
|
|
|
|
| |
- Correctly update the table content count when duplicating a row, and cancelling the add. This addresses issue #440.
|
|
|
|
| |
table redraw on new data, and increase the accuracy of the determinate progress as forced redraws are no longer an issue
|
|
|
|
|
|
|
|
|
| |
data loading:
- Removal of AMIndeterminateProgressIndicatorCell, and addition of a custom fork of YRKSpinningProgressIndicator which fixes bugs, adds threaded drawing, and adds a determinate mode.
- Addition of a task system within TableDocument, triggering display of a large central progress indicator and stopping the window from being interacted with in any way that would cause a query while the task is running.
- Add threaded TableContent content fetching, including use of the new task system and determinate progress bar; make fixes to improve threading stability and interaction.
|
| |
|
|
|
|
| |
LMITed or FILTERed but the table content is increasing. This addresses Issue #421.
|