Register a button as a default button every time that it is shown,
so that multiple buttons in a frame can have the 'border style
(as long as only one is shown at a time).
original commit: a9cc79c89b438cf8eda9b66541f1cfaf6b3c1e4c
On Cocoa, a view's `drawRect:' method can be called from a
heartbeat thread that animates controls. Such a call happens
rarely for a `canvas%' or other class where `drawRect:'
is overridden, but since it can happen, ensure that the
callback runs on the Racket thread.
original commit: 57516164de983a9245bfee88cbf87b9ea5c13a25
There were especially problems with header columns, but
also intercell spacing was not taken into account.
Merge to v5.3.4
original commit: 44d59702c0b22624f8e0043ccf1c5e4f90ed9c4b
The relevant `on-paint' call is one that is forced for a GL
canvas to try to draw a frame's content before the frame is
shown. Sometimes, thread scheduling would let the frame get
sufficiently initialized at the Cocoa level before the `on-paint'
call happened, but sometimes not.
original commit: 94208558793118ed2bc30b2c6f9926204eabf6f8
Cocoa: use ellipses instead of line wrapping
Gtk: allow column sizing below title width
Merge to v5.3.4
original commit: 33700427f26b14704dc4e4f315e36b6cc597e219
A scroll request could fail if a resize notification is still
in flight (i.e., queued but not yet executed), so double-check
the size on a scroll request.
Closes PR 13582
original commit: bfc9c41358face5c6d79bad591b842e7f5dc38e8
It's possible to go from a state where one scroll bar is needed
(vertical or horizontal) to a state where each scrollbar is
needed iff the other scrollbar is needed. In that case, the
auto-scrollbar algorithm couldn't find either fixpoint and
would loop forever.
original commit: b041a151e61727124b8d1c50f72fcd6d73319f13
Removed the method from `canvas<%>', where it was never implemented
with the `racket/gui' reimplementation.
original commit: e0486a7cf0e0b24bc4d8cb6f3fe32ec6c68b1859
to let lexers say "call me again before you change the buffer"
also, use this in the 2d lexer
original commit: 761054890d8207d7689cce825d0fc777d15b1091
lexers it defers to
also, remove the checks in color.rkt in the framework (they are not
all covered by the added contract, but they mostly are and when they
aren't, most of those times are using the heavily tested racket-lexer)
original commit: b0343aa9f02f0024cba7a61db3bcf4165696dd85
The method uses the new `impersonator-ephemeron' function to
retain a callback as long any value that it impersonates
is reachable.
original commit: dbdfd4236f1f759a2c6706901dad25bd46998509
in the line numbers when it moves around
specifically, if the before and after green line are right
next to each other, then put it into a single edit sequence
(which unions the invalidated regions); if not, then we
may be jumping far away, so invalidate the two regions
and redraw them separately
original commit: ca8ad3b88b38034e4dac6715511a749581d0c059
Also, some cleanups of the code and
make the syntax-color/ library docs
point to color:text<%> instead of
color:text% (as the interesting information
is attached to the interface, not the class)
original commit: 1420ce4ed2667a5f8562eefe86479dae150c90eb
get-active-canvas to get-canvas
Unclear if this is a bug in get-active-canvas or not
closes PR 13507
original commit: 2c35a98ad89b6f59c5f7c87b7f441528da77ad11