Commit Graph

18313 Commits

Author SHA1 Message Date
John Ralls
b2b32e29fa Work around googletest bug 920.
https://github.com/google/googletest/issues/920, already addressed in configure.ac.
2017-04-17 11:52:44 -07:00
John Ralls
82c9367503 Merge branch 'PR140' into maint 2017-04-16 16:59:35 -07:00
John Ralls
bf3052206e Merge branch 'pr141' 2017-04-16 07:20:15 -07:00
Nitin Anand
4da080d363 Fix crash while saving scheduled transaction template 2017-04-16 13:12:02 +05:30
John Ralls
81fa7d76c4 Adjust CMAKE_C_FLAGS for better release/debug behavior. 2017-04-15 10:26:52 -05:00
Geert Janssens
dd9b2007b0 Gtk3: fix failing item-edit widget on sheets
There were several problems since the conversion to gtk3
* widget wasn't displayed at all - apparently this was because I had overriden the draw function of the gtklayout (sheet)
  -> fixed by adding a draw callback instead
* several gtk warnings about allocating sizes to widgets without using *get_preferred_width/height
  -> fixed by adding the itemedit dropdowns to the layout only when they are requested
* the arrow button didn't want to resize small enough
  -> fixed by adding a custom style to drops the button's internal padding
* there were several sizing issues which ironically got fixed dropping much of the custom sizing code
2017-04-14 19:23:19 +02:00
Geert Janssens
24ed305c18 Gtk3: fix register redrawing when the window is scrolled
The new drawing interface in gtk3 uses a different coordinate system.
Some calculations had to be adjusted to this.
2017-04-14 19:22:29 +02:00
Geert Janssens
3a76cb91f1 Gtk3: Fix register not being drawn - item_edit still missing
While the data is displayed the widget to edit the active cell isn't yet.
2017-04-14 19:21:35 +02:00
Geert Janssens
e5d2ab8dc5 Fix build with webkitgtk >= 2.8 2017-04-14 19:21:35 +02:00
John Ralls
d632abaa96 Get links working. 2017-04-14 19:21:35 +02:00
John Ralls
bb0376240d Get WebKit2Gtk basics compiling and working.
Copy and register links don't work.
2017-04-14 19:21:35 +02:00
John Ralls
15ef317968 Revert "Fix query period in test-account-get-trans-type-splits-interval."
This reverts commit e66dd12aa9. Because
the test only seems to fail crossing a DST boundary.
2017-04-14 19:21:34 +02:00
John Ralls
bf86524884 Correct gnc-html-webkit.c indentation. 2017-04-14 19:21:34 +02:00
Geert Janssens
8f66cf4286 Gtk3: Replace obsolete functions
gtk_statusbar_set_has_resize_grip
gdk_drawable_get_screen
gdk_device_get_core_pointer

There is no replacement for it in gtk3 and it's probably
not needed any more either.
2017-04-14 19:21:34 +02:00
Geert Janssens
e40acf5915 Temporarily disable deprecation warnings 2017-04-14 19:21:34 +02:00
John Ralls
89021dde39 Remove if-0-ed out code from gnc-html-webkit.c 2017-04-14 19:21:34 +02:00
Geert Janssens
87a0cb7360 Gtk3: fix direct access issue for entry widget in cell renderer mode
The old code directly accessed a member variable of GtkEntry. This
direct access is no longer possible, but there is no public function
to get/set this variable. There is a private one  used by
GtkComboBox internally) but it's not exported so it can't be used either.

As an interim solution I peeked at how hesiod handled it in his earlier
(unmerged) gtk3 branch. He replaced this private access with setting
gtk_widget_set_visible, something I wouldn't have considered in this
situation. The issue is in the register2 code, so for now it's not
too important. We can investigate this more when the register rewrite
is picked up again.
2017-04-14 19:21:34 +02:00
Geert Janssens
e26480ccbb Gtk3: Convert GdkColor into GdkRGBA
Only gnc-dense-cal.[ch] is left untouched because it's use
of color is tightly coupled to the use of GtkStyle. This
latter needs conversion as well, but would be too much to
add in one commit.

Additionally the register code uses GtkStyle to extract
colors. This has been partially converted to using GdkRGBA
with the inconvenient side effect that depending on how
a color is retrieved it has to be freed with gdk_rgba_free
or not. This may be cleaned up later.
2017-04-14 19:21:34 +02:00
Geert Janssens
f07ad114c4 Gtk3: replace expose_event size_request functions
expose_event has been replaced with draw
size_request has become get_preferred_width and get_preferred_height
2017-04-14 19:21:34 +02:00
Geert Janssens
2ca938bd67 Gtk3: Fix the remaining gtk direct access violations
These could not be fixed in Gtk2 because the accessor functions were only added as of Gtk3.
2017-04-14 19:21:34 +02:00
Geert Janssens
42264efd1b Gtk3: adapt to changed callback function signature 2017-04-14 19:21:34 +02:00
Geert Janssens
3065005f05 Gtk3: use CSS style instead of old GtkStyle interface 2017-04-14 19:21:20 +02:00
John Ralls
aa6854fb1b Use the Mac Locale to find the account templates only when building with quartz. 2017-04-10 15:23:25 -07:00
Mike Alexander
ce83251bd0 Fix a minor typo. 2017-04-10 01:53:04 -04:00
Mike Alexander
c7226ddd4f Delete left over line from previous merge conflict. 2017-04-10 01:37:23 -04:00
Mike Alexander
ce79222f05 Merge branch 'maint' 2017-04-10 01:27:47 -04:00
Mike Alexander
a2687bcbe3 Fix the SWIG Guile wrapping of functions that have a "struct tm" parameter.
The biggest problem was that a pointer to an out of scope struct tm was
passed to the wrapped function.  With opt level 2, clang doesn't bother
setting the contents of the struct since it goes out of scope without being
used.  This caused the transaction report to never report anything since
the start and end times it got were ridiculous.

Also most functions that take a struct tm pointer can change the contents
of the struct (if only to normalize it) so pass the new values back to Scheme.

Finally all calls to gnc_localtime and gnc_gmtime from Scheme leaked a struct tm
and calling gnc_tm_free from Scheme is a really bad idea so don't wrap it.
2017-04-09 16:25:45 -04:00
Mike Alexander
cdc94c7131 Calling sigfigs_denom with a zero crashes due to a divide by zero. 2017-04-08 19:48:23 -04:00
Mike Alexander
6933ab765d Add an XCode target to run the numeric unit tests and rename the main target to GnuCash. 2017-04-08 19:48:12 -04:00
Mike Alexander
85d2442521 Update XCode file lists and sort them alphabetically. 2017-04-08 19:47:59 -04:00
Mike Alexander
d18fce775f Fix a crash in scrub_sx_split_numeric introduced in b3eb9d0. 2017-04-08 19:41:21 -04:00
Mike Alexander
bfa5090db9 gnc_numeric_convert should return an invalid number unchanged instead of crashing. 2017-04-08 19:40:08 -04:00
John Ralls
5ff319205d Revert "Some instrumentation output..."
This reverts commit 2035806db7 that I
didn't want to push in the first place.
2017-04-08 09:27:15 -07:00
John Ralls
8ec92f2fe3 Change GTest annotations to use the right class name for GncInt128 tests. 2017-04-08 09:18:34 -07:00
John Ralls
2035806db7 Some instrumentation output for how much the numerator or denominator is shifted. 2017-04-07 12:39:47 -07:00
John Ralls
fd6234f58f Better manage truncation in GncRational::round_to_numeric.
Mike Alexander brought this up with a test case that failed to round down
sufficiently; he found that reducing the rounding denominator by 2 sufficed
to make his test case pass.

In fact the sizing of the replacement denominator by shifting the larger of
the numerator or denominator by an arbitrary 62 bits was not correct most
of the time, so instead we begin with a shift of the full lower leg worth,
try to do the conversion, and if the conversion is still “big” shift the
larger value one more and try the operation again, repeating until the
result will fit in a GncNumeric.
2017-04-07 12:38:55 -07:00
John Ralls
a467d0d397 Fix GncInt128 maxbits to account for the flag bits. 2017-04-07 12:29:04 -07:00
John Ralls
de1c56b53d Fix carrying to the wrong end of the lower leg in left shift. 2017-04-07 12:27:59 -07:00
John Ralls
e55b78614c Fix a magic number in GncInt128. 2017-04-07 12:26:51 -07:00
John Ralls
e20009a08d Save Changes Bug 780889 - Split-register transactions result in invalid...
price:type "transaction".

Add 'transaction' to the schema and document it in gnc-pricedb.h.
2017-04-03 21:16:43 -07:00
John Ralls
6e7334fe88 Add some tests looking for a GncInt128 divide overflow problem.
Problem mentioned in mail from Mike Alexander; this test doesn't find it.
2017-04-02 16:33:01 -07:00
John Ralls
844a6db32b Bug 780845 - link in github repo README file needs correction/editing 2017-04-02 09:22:16 -07:00
John Ralls
5a58b93a71 Bug 780845 - link in github repo README file needs correction/editing 2017-04-02 09:21:03 -07:00
Geert Janssens
b9abc0b5ba Gtk3: Fix cursor handling 2017-03-31 14:04:31 +02:00
Geert Janssens
9b5fbcb2cb Gtk3: GtkObject has been removed
Replace with GtkWidget instead
2017-03-31 14:04:31 +02:00
Geert Janssens
2528bfde6b Switch to building with the gtk+-3.0 toolkit 2017-03-31 14:04:31 +02:00
Geert Janssens
6edbb53fe6 GnucashSheet - drop unused variables 2017-03-31 14:03:49 +02:00
Geert Janssens
4b30a7dae7 GnucashSheet - fix screen refresh
I noticed improper screen redraws when switching cells while the
window was scrolled down. The drawing logic is pretty conflated
so instead of hunting this down, I have made it so that the full
visible part of the windows gets redrawn each time the user
switches to a different cell.
This is slightly more expensive, but should still be ok.
2017-03-31 14:03:49 +02:00
Geert Janssens
d439d37980 Fix two critical GObject warnings 2017-03-31 14:03:49 +02:00
Geert Janssens
68091faa80 ItemEdit - drop unused function 2017-03-31 14:03:49 +02:00