aboutsummaryrefslogtreecommitdiffstats
path: root/Frameworks
Commit message (Collapse)AuthorAgeFilesLines
* - Clean up automatic reconnection coderowanbeentje2010-07-142-27/+50
| | | | | | - Allow keepalive pings to perform automatic reconnections after a few consecutive failures - Fix a number of keepalive ping bugs, including compatibility with the new threaded connection methods and reconnection timing issues causing keepalive pings to not fire correctly
* Improve handling of network drops, including a new automatic reconnection ↵rowanbeentje2010-07-132-7/+71
| | | | | | | | | | | | | attempt, as well as improved handling of networks not present. This addresses Issue #657. In MCPKit: - Disable MySQL automatic reconnection, and add our own reconnection code for greater consistency - If no network is available, delay reconnects by a short period to allow the network to come back up - Improved handling of proxy disconnects In SPSSHTunnel: - Improved handling of SSH tunnel disconnects, improving automatic reconnection via MCPKit and fixing potential memory/logic tramping. Also remove the "Retry" button from the Disconnected dialog, leaving only the choices "Reconnect" or "Disconnect".
* Finalise Sequel Pro tab style:rowanbeentje2010-07-128-48/+45
| | | | | | | | - Add custom Safari-style tab close buttons - Tweak margins, especially on the right when a progress indicator is active to avoid doubled margins - Fix tab bar rendering when using font/help etc windows Also update the .strings files to match latest changes
* - Add default socket locations for Mac OS X Server and XAMPP to default ↵rowanbeentje2010-07-081-4/+6
| | | | | | | socket search paths - Reorder socket search paths to favour OS X locations
* Tab tweaks:rowanbeentje2010-07-052-2/+7
| | | | | | - Improve hideForSingleTab: settings changes to only update the tab bar if only one tab exists; fixes tab sizing on drag start caused by placeholder cell/update tab bar display conflict - Improve tab drag location detection, particularly when dragging tabs into a new tab bar; drags into new tab bars now respond quickly and correctly
* - Fix tab bars in windows with only one tab not disappearing after dragging ↵rowanbeentje2010-07-031-4/+4
| | | | | | | a tab past/through them, by using PSMTabBar notifications instead of our own notifications; also fix PSMTabBar notification ordering. - When a tab drag starts, reorder all windows in front of other applications
* - Further improve casting for dist buildsrowanbeentje2010-07-011-1/+1
|
* - Update localisable stringsrowanbeentje2010-06-302-3/+1
| | | | | | - Fix a casting issue preventing release/dist builds - Remove a line of old debug
* Improve tab functionality, behaviour and interaction.rowanbeentje2010-06-3010-153/+380
| | | | | | | | | | | | | | | | | | | | | PSMTabBar general improvements: - Fix a phantom tab appearing in windows a tab was just dragged out of - Add support for a new control usersSafariStyleDragging property; this causes tabs being dragged inside a tab bar to snap to the tab bar, be drawn at full transparency (also no longer darkening the placeholder position), and alters tab ordering within the tab bar to be based on the tab position rather than the mouse position, for a more Mac-like reordering feel. - Add support for dragging items onto the menubar to cancel the drag - Alter the image of the dragged tab to use a tab drawn onto a transparent background instead of snapshotting a rectangle around the tab, improving drag appearance - Allow tabs to be dragged partially off screen and keep their position instead of snapping back fully onto the screen - Improve behaviour when dragging tabs out of and back into tab bars, or into new windows, resizing the tabs in the target tab bar to improve display and no longer intermittently showing close buttons while dragging - Pull windows to the front as tabs are dragged onto their tab bars - Abstract Custom Query Editor text snippet code, adding a delegate method so code could be moved to the SP window manager. Sequel Pro tab styling improvements: - Improve and clean up tab drawing code - Draw background tabs with shadows as appropriate - Improve logic for how background tab edges are drawn, handling edges cases better (active tab in overflow menu etc) and vastly improving drawing when a tab is being dragged (respect placeholder position when stacking tabs, draw edges on either side) Sequel Pro tab behaviour improvements: - Improve show/hide tab bar interaction - Improve window positioning after creating new windows via a drag - Alter tab dragging out of the tab bar to use an image based on the full window appearance - looks better, and fixes issues like the tab bar background not being drawn while dragging
* Improved calling of stored procedures:jakob2010-06-302-2/+31
| | | | | | | - added the CLIENT_MULTI_RESULTS flag to the connection flags - automatically discard all remaining results when unlocking the connection This is not a perfect solution, but will improve usability a lot for those who often call stored procedures. Sequel Pro still doesn't support multiple results -- it will show only the first and silently discard all the remaining ones.
* • made SP more robust against fast closing of tabs and windowsBibiko2010-06-291-2/+2
| | | | • setHideForSingleTab:YES after opening spfs session
* • simplified and unified tab tooltipsBibiko2010-06-181-1/+2
| | | | • added tooltips for tab's overflow menu
* Enable the "Sequel Pro" tab style by default, and include the following fixes:rowanbeentje2010-06-182-39/+36
| | | | | | | | - Fix display of the overflow menu - Improve tab spacing and internal layout - Improve tab names for documents to correctly show the database for background documents in additional cases - Update strings files
* • forgotten to remove debug logs for r2337Bibiko2010-06-171-1/+0
|
* • if a text string is dragged on tab this tab will be selected and the ↵Bibiko2010-06-171-1/+7
| | | | corresponding db doc switches to Custom Query editor to be able eg to drag a query from one tab to another one
* - Further improve appearance of Sequel Pro tab style (still hidden): fixed ↵rowanbeentje2010-06-172-33/+49
| | | | | | | drawing glitches, improved spacing, improved edge drawing - Enable tab switch commands even when documents are working
* - Improve MySQL 3 & MySQL 4 query cancellation and disconnection. This ↵rowanbeentje2010-06-161-44/+47
| | | | fixes a number of issues including http://spbug.com/l/13
* - Add tab bar shadow and active tab shadows to the Sequel Pro tab style ↵rowanbeentje2010-06-151-47/+77
| | | | (still hidden)
* - Fix comment retrieval issues for <4.1 when retrieving db structure - ↵rowanbeentje2010-06-141-1/+6
| | | | addresses crashes http://spbug.com/l/540 and http://spbug.com/l/106
* Initial stage of re styling the tab bar to actually look half decent.avenjamin2010-06-146-15/+760
| | | | | - Change line 373 of PSMTabBarControl to "SequelPro" to see new tabs. - The drawing of the tab edges needs to be redone on the very edge of each tab instead of being inset by a number pixels to resolve a few issues.
* - Replace the precompiled PSMTabBar framework with a build-from-source ↵rowanbeentje2010-06-0769-26/+8910
| | | | dependency, in preparation for future code and style changes
* - Ensure start/end query notifications are sent on the main thread to avoid ↵rowanbeentje2010-06-013-3/+115
| | | | | | | the interface being updated from the wrong thread on listeners - Add a "Support Files" folder to MCPKit, containing NSNotificationAdditions to support main thread notifications from within MCPKit
* Rename TablesList to SPTablesList.stuconnolly2010-05-271-1/+1
|
* Initial implementation of tabs:rowanbeentje2010-05-2340-0/+525
| | | | | | | | - Addition of PSMTabBar framework - Rework away from a document-based TableDocument - Support tabs throughout the application - Add menu items for creating tabs, and add support for dragging tabs to different windows
* Review queryDbStructureWithUserInfo:rowanbeentje2010-05-151-166/+127
| | | | | | | | - Remove extra call when changing databases, avoiding double calls - Fix an error if the document has had no encoding set yet (addresses http://spbug.com/l/200) - Tweak db struture querying to work on MySQL 3 and 4.0 - Rework function to remove duplicated logic, and to address a number of valueForUndefinedKey: exceptions logged via the bug tracker
* - Check return status when capturing query error message strings - this ↵rowanbeentje2010-05-091-2/+4
| | | | addresses http://spbug.com/l/250
* Rework alert sheets:rowanbeentje2010-05-091-5/+13
| | | | | | | - Change MCPConnection.m to no longer use a reference to tableWindow to attach sheets - instead use a delate error display method if available - Rework TableSource and TableContent sheetDidEnd methods into per-task methods rather than overloading contextInfo - Rework SPAlertSheets to perform actions on the main thread, with the loss of (unused) support for a didDismissSelector. This addresses a number of crashes logged by the crash reporter
* - Added OCMock.framework for unittests using mock objectsdrx7772010-05-0313-0/+217
|
* This changeset implements renaming and duplicating databases on a server. ↵drx7772010-04-282-12/+32
| | | | | | | | | | | | | | | | | | | Details as follows: * altered MCPConnection listTablesFromDB:like: to return NSArray * altered MCPConnection listFieldsFromTable:like: to use backtick quoted strings for table and fieldnames * added MCPConnection listTablesFromDB for a complete table list * added SPStringAdditions.h to various files to prevent warnings * added sheets for duplicate/rename DB in DBView.xib * added duplicate/rename menu items to MainMenu.xib * added outlets in TableDocument: databaseNewSheet databaseRenameSheet databaseCopyNameField databaseRenameNameField copyOnlyStructureButton copyDatabaseButton renameDatabaseButton * added methods in TableDocument: getConnection, copyDatabase, renameDatabase, _copyDatabase, _renameDatabase * added OCMock Framework for object mocking in tests * added group Others/DatabaseActions
* - Upgrade MySQL libraries to 5.1.46 (was 5.1.44)rowanbeentje2010-04-273-2/+2
| | | | | - Alter build scripts to use --enable-local-infile as a configuration option; this addresses http://spbug.com/644
* Add extra connection checking at multiple stages of getting the server's ↵stuconnolly2010-04-271-5/+7
| | | | process list. Fixes http://spbug.com/l/152.
* Enable all *reasonable* warnings for all build configurations and fix a few ↵stuconnolly2010-04-262-2/+2
| | | | of them.
* Bunch of improvements to the serve processes panel, including:stuconnolly2010-04-241-7/+7
| | | | | | | | | | - MCPKit's listProcesses (mysql_list_processes) method is now used, instead of running the query ourselves. - The ability to set whether or not the list is auto refreshed. - The ability to set the autorefresh interval, either via the presets or by entering a custom value (the interface for this might need updating). - Get the process list is now performed on a background thread. This completes the implementation of issue #607.
* Only attempt to check or set the max allowed packet if there is an active ↵stuconnolly2010-04-231-7/+14
| | | | connection as well as only displaying dialogs when there is a window visible. Fixes http://spbug.com/l/113.
* - changed the query locking mechanism for MCPConnection to be more thread ↵jakob2010-04-164-69/+127
| | | | | | | | safe. From now on, always use [self lockConnection] rather than [queryLock lock], independent of what thread you are running on - A warning is written to the console when the connection is unlocked multiple times (to identify potential race conditions) - modified MCPStreamingResult to ensure it only closes the connection once - added a check to prevent arrow key navigation past the last row
* Review usage of notifications, afterDelay: and waitUntilDone:NO calls:rowanbeentje2010-04-121-0/+1
| | | | | | | - Add more calls to deregister watchers to fix crashes to closing threads or objects - Fix a couple of memory leaks - Alter a few calls to be performed on main thread (afterDelay: operates on the thread is is called on) - this fixed database reloading after import and field/index deletion error sheets
* - Commit a missing binary file to complete zlib support for r2091rowanbeentje2010-04-121-0/+0
|
* Add a new SPFileHandle class to support gzip compression and writing on a ↵rowanbeentje2010-04-121-0/+1605
| | | | | | | | | | | background thread, and integrate for SQL import: - Implement streaming reading of gzip-compressed files for SQL import - Support exporting SQL dumps into a gzip-compressed file - SPFileHandle supports the most-used subset of NSFileHandle commands for easy integration - Integrate zlib 1.2.4 for improved gzip streaming performance (and support for custom buffer sizes and file offset positions) This implements Issue #571 .
* • improved querying db structure handlingBibiko2010-04-072-0/+22
| | | | - distinguish between any update tables list invoked by SP which causes a weak and quick refresh if nothing was changed and if the user pressed Table List Refresh button explicitly which will cancel any current db querying and pending ones
* • query db structureBibiko2010-04-072-57/+98
| | | | | | - improved encoding handling while querying - if SET NAMES ... fails bail to avoid exceptions - this should fix http://log.sequelpro.com/view/101
* - Improve on r2050, running reconnections after a proxy disconnect on a new ↵rowanbeentje2010-04-041-15/+22
| | | | thread to allow the UI to update and handle events on 10.6. Also clean up the logic in MCPConnection waiting for a proxy discoonect to handle more cases and simplify code.
* - Improve SPSSHTunnel question/password dialogs to no longer eat 100% CPU ↵rowanbeentje2010-03-311-2/+5
| | | | | | | | by switching from NSCondition blocking to NSLock blocking - Improve behaviour of SSH tunnels with no password in keychain - prompt appropriately - Set MXPConnection to check the proxy state when attempting to reconnect a dropped connection, extending the timer when an auth UI is up. This prevents a multiple-dialogs misbehaviour (or sometimes deadlock), addressing the last part of http://log.sequelpro.com/view/86 .
* • removed unnecessary retains, ergo fixed some memory leaksBibiko2010-03-311-11/+9
|
* • querying for db structure is queued for the same connection to avoid ↵Bibiko2010-03-312-316/+361
| | | | | | | | | | | 'overlapping' access to global variables • after querying db structure write back data on main thread • completion list displays animated sync images if connection is just querying db structure data • fixed some minor issue for completion list • make sure that if last window of a connection is closed all relevant data will be removed from global variables Note: please test!
* - Update FeedbackReporter with latest changes from master (minor tweaks ↵rowanbeentje2010-03-312-0/+0
| | | | resulting from merge of our updates, increased stack depth, fix problems logging exceptions on a large number of machines)
* • next trial to make getAllKeysOfDbStructure thread safeBibiko2010-03-301-6/+28
| | | | | | | | • some speed improvements for navigator - pre-calculate display string for type info to avoid doing it all the time while refreshing the outline view • suppress double-clicking at a not yet queried db structure if the same connection is querying another structure to avoid accessing the same storage objects from different threads (test) • reload outline view after filtering in navigator runs in its own thread to avoid blocking SP • fixed memory leaks while returning [obj copy]
* • some speed improvements and code simplifications for navigatorBibiko2010-03-301-10/+12
| | | | | | • avoid making the completion key list unique since it's possible to insert unique items only • added trigger to query db structure after SQL import • some work to avoid http://log.sequelpro.com/view/90 (not yet ideally - WIP)
* • fixed several threading issues due to threadingBibiko2010-03-292-8/+10
| | | | | - collection classes as NSMutableSet are NOT thread safe! • further tiny speed improvements for navigator
* • added some more sanity checks to avoid exceptions due to threadingBibiko2010-03-291-3/+9
|
* • improved completion suggestion for db schemataBibiko2010-03-291-3/+5
| | | | | | | | - if user typed "foo." and there's an unique schema path regardless cases (like there's an item Foo) show the content of the path Foo - now getUniqueDbIdentifierFor:term returns an array of found type (db or table) and the found string to handle case better for completion • tried to speed up the search in the navigator by using a NSPredicate • [MCPConennection allKeysofDbStructure] - fixed issue while returning if allKeysofDbStructure == nil