summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2013-03-04Limited support for Suunto DM4 importGravatar Miika Turkia
Basic functionality is implemented but at least support for multiple cylinders is missing. Event/alarm support is only partial. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-04Some Small Documentation ChangesGravatar chrislewis915@gmail.com
- Made a few small changes to user-manual.txt to inprove readability in English - Made reference to Map Provider selection in 'Preferences' Signed-off-by: chris <chrislewis915@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-04Update Russian translationGravatar Sergey Starosek
Updated for version 3.0.2 (unfortunatelly not in time) Signed-off-by: Sergey Starosek <sergey.starosek@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-04Fix the permission of the ICONFILE and the locale filesGravatar Sylvestre Ledru
Lintian, the Debian package static analyzer, was complaining about the "wrong" permissions on these files. Signed-off-by: Sylvestre Ledru <sylvestre@debian.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-04Improve pane position saving codev3.0.2Gravatar Robert C. Helling
We should test for being in PANE_THREE mode in save_pane_position() and replace the if()'s testing against window geometry. This eliminates some code duplication and, more importantly, save_pane_position() is also called from save_window_geometry() whose calling pattern is not obvious. Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-03Update README, ReleaseNotes and Makefile for 3.0.2Gravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-03Saving individual dives should not change the exiting filenameGravatar Dirk Hohndel
The current data file is not the same as the file to which individual dives were saved. Reported-by: Jan Schubert <Jan.Schubert@GMX.li> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-03Fix scaling problem in scrolled edit dialogGravatar Dirk Hohndel
With this change resizing the dive edit dialog once again has its content resize as well. So now we have the best of both worlds: if the content grows we add scroll bars (so things stay usable on small screens), yet when we resize the window, the notes area gets nice and big (which is great on big screens). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-03Only store pane positions if we currently display "View Three"Gravatar Dirk Hohndel
We tried to detect this without needing a global variable but that clearly was too dependent on decorations that the window manager might add. This code works reliably. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-03Try to capture some more potential buffer overflows caused by localizationGravatar Dirk Hohndel
A couple of these could clearly cause a crash just like the one fixed by commit 00865f5a1e1a ("equipment.c: Fix potential buffer overflow in size_data_funct()"). One would append user input to fixed length buffer without checking. We were hardcoding the (correct) max path length in macos.c - replaced by the actual OS constant. But the vast majority are just extremely generous guesses how long localized strings could possibly be. Yes, this commit is likely leaning towards overkill. But we have now been bitten by buffer overflow crashes twice that were caused by localization, so I tried to go through all of the code and identify every possible buffer that could be affected by this. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-03Extending user manualGravatar Jan Schubert
Adding UDDF support for DR5, kenozooid and in general, fixed some things, updated to 3.0.2 Signed-off-by: Jan Schubert <Jan.Schubert@GMX.li> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-03equipment.c: Fix potential buffer overflow in size_data_funct()Gravatar Lubomir I. Ivanov
strcpy() with buffer[10], could overflow on most languages. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-03Fix pane position bugGravatar Robert C. Helling
Argh. Maxint is not at the bottom or at the right. We have to check against the size of the window to determine we are not saving a maximized position. Here is a fix. Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-03Fix ESC key handling in Save dialog.Gravatar Sergey Starosek
Closing unsaved dive raises Save dialog with Yes/No/Cancel buttons. Pressing ESC dismisses dialog without saving changes. This commit adds GTK_RESPONSE_DELETE_EVENT response code check in order to fix that behavior. Reported-by: Jan Schubert <Jan.Schubert@GMX.li> Signed-off-by: Sergey Starosek <sergey.starosek@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-02Don't duplicate gpsfixes if downloading them multiple timesGravatar Dirk Hohndel
Simply clear out the table (and free the "dives" that were created). Reported-by: Sergey Starosek <sergey.starosek@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-02Recognize another name for auto created fixes from companion appGravatar Dirk Hohndel
We need to have this be one well defined string -> this requires a change to the companion app as well. This commit also hides the (untranslated) debug message if no dives in the dive table match a gpsfix downloaded from the webservice. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-02Webservice: only mark divelist changed if we actually modified itGravatar Dirk Hohndel
If no new gps fixes or new location names were obtained from the webservice there is no need to save the datafile on exit. Reported-by: Sergey Starosek <sergey.starosek@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-02Save window pane positionsGravatar Robert C. Helling
Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-02windows.c: Fix broken subsurface_unset_conf()Gravatar Lubomir I. Ivanov
windows.c has be revisited so many times, yet just now I've noticed that we aren't deleting/unsetting a configuration value ever. What has went strangely unnoticed is that subsurface_unset_conf() needs RegDeleteValue instead of RegDeleteKey. "keys" in the Windows registry are like folders which contain files (or "values"). So in this case we need to delete a "file" and not a "folder" using RegDeleteValue(). This ended up being a problem with the new prefs.c logic, where there is a check if a config value is the default value and then it will be unset/deleted. There was potential for a crash, where a NULL value can reach pango_font_description_from_string() for the divelist font. It also wasn't possible to change the divelist font back to the default font (e.g. Sans 8), once a different font was selected. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-02Dive computer import improvementsGravatar Miika Turkia
Parse dive computer information or divelog generator information and include it as divecomputerid and divecomputer as appropriate. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-02Another unused variable warning when building without libosmgpsmap.Gravatar Cristian Ionescu-Idbohrn
gtk-gui.c: In function 'preferences_dialog': gtk-gui.c:670:30: warning: unused variable 'map_provider' [-Wunused-variable] Signed-off-by: Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-01Grab a bit more info from UDDF importGravatar Miika Turkia
otu and po2 are now grabbed. The po2 value comes from setpo2 tag. Also divecomputerid is constructed from the generator information. Signed-off-by: Miika Turkia <miika.turkia@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-01Merge branch 'map-providers'Gravatar Dirk Hohndel
2013-03-01Make the map provider choice a preferenceGravatar Dirk Hohndel
Not all of the providers seem to work for me (Yahoo Satellite doesn't appear to give me any data), but for now I'll leave most of them in. We can later decide to offer only some of them. It might be more fun to be able to pick the provider directly from the map widget. But for now I kept this in the preferences which seemed to be a good place for it. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-01Remember window pane positionsGravatar Robert C. Helling
Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-01Fix saving of po2 valuesGravatar Linus Torvalds
It was very broken, although it just happened to work for the values dirk had in his own XML file (0 and 0.800 bar). Because of confusion with number of digits it would save 1.080 bar as 1.80 bar. Use our "show_milli()" helper for showing things that are in milli-units (which is what we tend to use for most of our values: mK, mbar, mm, ml) Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-03-01windows.c: use ANSI for subsurface_unset_conf()Gravatar Lubomir I. Ivanov
We may not write config variables with UTF-8 characters so the wchar_t conversation in subsurface_unset_conf() is not needed. This patch also attempts to improve subsurface_get_conf_bool() and subsurface_get_conf_int() or better consitentcy with the other OS files. For both functions return -1 if config key is not found. Previouosly there was a check for that in function get_from_registry(). Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Request a minimal height for the notes in the dive edit dialogGravatar Lubomir I. Ivanov
This sould give the notes text box around 8 lines of text. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28windows.c: Added support for "int" configuration storageGravatar Lubomir I. Ivanov
This patch addes body to the functions subsurface_get_conf_int() and subsurface_set_conf_int(). It also makes some small changes: - subsurface_get_conf_bool() now uses subsurface_get_conf_int() - for retrieving DWORDS we would only need RegQueryValueEx, thus the wchar_t conversations aren't really needed, unless we start storing integers in keys with UTF-8 characters in the name. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Added support for a scrollable area in the dive info dialogGravatar Lubomir I. Ivanov
This patch puts the contents of the dive edit dialog inside a scroll container, with a minimal size equal to the default dialog size when no equipment is added. If more tanks and weights entries are added, a scrollbar will appear on the right and the dialog will become scrollable. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Add MacOS support to window geometry save/restoreGravatar Henrik Brautaset Aronsen
Also make sure the config is flushed to disk. Signed-off-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Remember window sizeGravatar Amit Chaudhuri
This commit has gone through a few iterations and I trimmed it down to what I consider the "conservative minimum" - so this only stores window size, not window position. And in my mind that's the more relevant part, anyway. Have your window manager position the window at a "smart" spot on your screen... Signed-off-by: Amit Chaudhuri <amit.k.chaudhuri@gmail.com> Signed-off-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Move translations to transifex.comGravatar Kévin Raymond
Translation management is done through Transifex now for easy translations. Translators should note that fuzzy strings are not used any more since Transifex does not handle it (by choice). In order to pull translations, you need a transifex.com account. Signed-off-by: Kévin Raymond <shaiton@fedoraproject.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Better editing of existing divesGravatar Dirk Hohndel
This change makes it possible to edit date and time of a dive from the normal dive edit dialog (it turns the label at the top of the dialog into a button and allows the user to change the time from there - this seems much more obvious than the 'right-click in the divelist' approach). Additionally, if the dive has only one divecomputer and no samples (which likely means that the dive was manually entered in Subsurface or imported from another divelog where it was manually entered) then we allow editing of duration, max depth and avg depth as well. This fixes #75 (well, with the exception of water temperature.... we don't allow editing of that at all... I guess that should become a new trac item...) Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Update Russian translationGravatar Sergey Starosek
Signed-off-by: Sergey Starosek <sergey.starosek@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Better Bluetooth device support on MacGravatar Dirk Hohndel
We now show the correct device name for Bluetooth connected dive computers in the drop down menu in the Download dialog. This also updates the corresponding chapter in user manual. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28OSX: also need to add the CoreServices framework to linkerGravatar Dirk Hohndel
We had this before - it appears that some versions of OSX need us to explicitly list the frameworks we are using during the linking stage while others are perfectly happy without that. But since listing them doesn't appear to hurt this commit should be safe. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Fix compilation problem with LaunchServices on OSXGravatar Amit Chaudhuri
You cannot include the LSOpen.h directly on OSX - it is too far down in the System hierarchy to locate. Instead we include the umbrella header CoreServices.h which finds it for us. Signed off by Amit Chaudhuri <amit.k.chaudhuri@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Change layout of dive editing dialogGravatar Dirk Hohndel
We had a report that on small screen systems like netbooks with a vertical screen resolution of only 600 pixels Subsurface has usability issues, as the dive editing dialog is taller than the screen. While on some OSs the dialog can at least be moved around so the user can fill it out and click OK or Cancel, on others (Windows XP) that does not appear to be the case. This small change simply takes the equipment part of this dialog and positions it next to the dive info part instead of below it. This appears to solve the immediate issue - but by adding the maximum number of tanks and weight systems the dialog can still grow beyond 600 pixels vertically, so we may have to add a scroll widget in here as well. But for now this should be a nice improvement (and I find it reasonably pleasing on a large display as well). Fixes #67 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Add Portuguese translationGravatar Eduardo Ramalho
Most of the translated phrases have more characters than in english. But I verified the Subsurface user interface, and there are no strange side effects. I had just a doubt about "trip" translation. I used portuguese word equivalent to "expedition". Some of the diving related words we don't translate. Even "buddy" is the word used on local diving boats! Signed-off-by: Eduardo Ramalho <eduardo.ramalho@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Revert "Add Portuguese translation"Gravatar Dirk Hohndel
This reverts commit af9ba96da444f76794e3c46cf5189b027cb7e120. I had applied this to directory with work-in-progress code that was now mixed up with Eduardo's translation work. I'll re-apply just his translation instead. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Svedish translation glitchGravatar Robert C. Helling
This patch fixes a Unicode mishap in the Svedish localization that breaks the build process. Signed-off-by: Robert Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-28Documentation: Add Mac related info to the bluetooth sectionGravatar Jan Schubert
Signed-off-by: Jan Schubert <Jan.Schubert@GMX.li> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-27README: fix typoGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-27Spelling fixes for sv_SEGravatar Fredrik Steen
Fixed a spelling error. Signed-off-by: Fredrik Steen <fredrik@ppo2.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-27Update the READMEGravatar Dirk Hohndel
We can now build on Debian Squeeze again. We also point to both the stable version and the latest development sources in the README file. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-27Add Portuguese translationGravatar Eduardo Ramalho
Most of the translated phrases have more characters than in english. But I verified the Subsurface user interface, and there are no strange side effects. I had just a doubt about "trip" translation. I used portuguese word equivalent to "expedition". Some of the diving related words we don't translate. Even "buddy" is the word used on local diving boats! Signed-off-by: Eduardo Ramalho <eduardo.ramalho@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-27Added back support for versions of GTK pre 2.24Gravatar Lubomir I. Ivanov
Some functions in combo_box_with_model_and_entry() are only available to GTK 2.24 and newer. This patch adds only one #if branch, but probably adds support to a number of outdated distributions, such as Debian 6.0.4 and Ubuntu 10.04. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-27When manually adding a dive allow user to set avg depth as wellGravatar Dirk Hohndel
So far we only allowed setting the max depth. This changes the layout of the entry widget and makes our helper function create_date_time_widget return the hbox in which it positions the time entry. I plan to reuse this later when allowing to edit the duration as well as the start date and time under certain circumstances. This is a small part of a feature request; see #75 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2013-02-27Add all dive computers to the device_info_listGravatar Dirk Hohndel
Calling set_dc_nickname() only added a new entry if there was a conflict with an existing one - which works fine if we are reading a file saved by Subsurface, as there the device_info_list is populated at parse time, but fails for data imported from other sources. Fixes #74 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>