Matthew Flatt
2ab1fb319a
rearrange dc fields to avoid undefined-checking chaperone
2016-03-02 08:42:55 -07:00
Matthew Flatt
be30bf721d
Cocoa: avoid backing-dc failure on zero-sized canvas
...
Closes https://github.com/racket/racket#1255
2016-02-22 05:05:35 -07:00
Robby Findler
d88ba8d2cd
fix on-scroll-to callback method when an editor has multiple canvases
...
closes PR 15252
2016-02-17 08:58:09 -06:00
Matthew Flatt
5736535b8a
avoid spurious screen refresh on text-measure operations
...
The drawing layer now indicates whether drawing content was
changed as it releases a drawing handle.
2016-02-05 16:51:39 -07:00
Matthew Flatt
d28ab71058
fix -singleInstance
for GTK+3
...
Closes PR 15240
2016-02-05 10:40:04 -07:00
Matthew Flatt
345a20c5e8
use NSOpenGLPFAAllowOfflineRenderers for GC bitmap
...
Try to tell Macs with two graphics cards that it's ok to
use the low-performance one for the GC bitmap (when
GL is used for that, which is OS X 10.11 and later).
2016-01-16 08:50:06 -07:00
Matthew Flatt
55d0d96dbe
Gtk: fix handling of widget to extract text colors
...
With GTK+ 3 on Raspbian, at least, the old management of the
widget causes a crash.
2016-01-12 10:05:09 -07:00
Matthew Flatt
e206dab087
use #:runtime?-id
for improved cross-build support
2016-01-09 09:47:28 -07:00
Matthew Flatt
4d5d08f07f
fix back-end reference for cross-build
2016-01-08 16:45:16 -07:00
Matthew Flatt
6e7964b0b7
include icons needed by "gui-lib" in the package
...
The "plt-logo-48x48.png" file is a copy of "plt-48x48.png" from
"icons", but renamed to avoid conflicts.
2016-01-08 16:31:52 -07:00
Matthew Flatt
dbce2e2878
avoid an NSTableColumn warning
2016-01-08 07:58:53 -07:00
Matthew Flatt
0e344def40
Windows play-sound: remove extra delay after async
2016-01-05 07:31:01 -07:00
Matthew Flatt
8ae077c22a
Windows play-sound: use the right custodian registration
...
Otherwise, a GC tends to terminate the sound.
2016-01-04 19:19:51 -07:00
Matthew Flatt
76c305852b
Windows play-sound: avoid leaks and shutdown on custodian
...
Also, stop a synchronous sound on a break exception.
2016-01-04 18:10:23 -07:00
Matthew Flatt
edc56ee8de
Windows: change play-sound
to use MCI
...
Provided by Eli Barzilay.
This approach is better than a separate process, because creating
too many processes can overwhelm the OS. Also, MCI supports more
sound formats.
2016-01-04 17:41:53 -07:00
Matthew Flatt
41d4e9dd2d
Cocoa: fix refresh and fullscreen problems
...
Add more agressive re-enabling of screen updates and explicit `update`
calls to avoid partially refreshed frames and never-updated titlebars
on El Capitan.
Also, use `close` instead of `orderOut` to hide a frame. That fixes
problems with closing windows that are in fullscreen mode.
Closes racket/drracket#33
2015-12-31 15:50:41 -07:00
Matthew Flatt
196797b529
Windows: fix play-sound
to return a boolean
2015-12-28 10:09:10 -06:00
Matthew Flatt
ca24d94cdc
Cocoa: avoid screen sync for GC-blit GL context
...
Affects 10.11 and up
2015-12-28 09:42:23 -06:00
Matthew Flatt
87c2317cbc
Windows: change play-sound
to run an external program
...
Running a sound through a separate process allows multiple
sounds to be played at once.
2015-12-28 08:24:34 -07:00
Matthew Flatt
87e17a89da
Windows: fix get-current-mouse-state
for HiDPI
2015-12-23 08:31:38 -07:00
Matthew Flatt
d170a8ff31
editor<%>: request incremental GC on key & mouse events
2015-12-19 12:45:25 -07:00
Matthew Flatt
446df9e047
put on-to-scroll
callbacks in a refresh sequence
...
Avoid flickering for the "#lang" line and documentation
wedge in DrRacket, for example.
2015-12-19 07:54:30 -07:00
Matthew Flatt
1944cd8dbd
regsiter-collecting-blit: support background bitmap in El Capitan
...
The GC blit implementation used on Mc OS X 10.11 assumed that
the no-GC bitmap is blank. Make it use the given no-GC bitmap.
Also, repair the left-to-right flipping(!) of the GC bitmap,
and repair a backing-scale mismatch that could leave a thin
border around a GC blit.
2015-12-18 16:05:48 -07:00
Robby Findler
3af5db35be
fix bugs in support and docs for the snip flag HANDLES-BETWEEN-EVENTS
...
(the previous commit was pushed too soon; it is completely broken. Apologies)
2015-12-17 22:24:59 -06:00
Robby Findler
759d89443f
add support and docs for the snip flag HANDLES-BETWEEN-EVENTS
2015-12-17 16:18:46 -06:00
Jay McCarthy
c1cddc538c
Casting flag-x-error-handler in this case too. Necessary for getting GL working on my Linux/Nvidia box to test pict3d
2015-12-14 08:55:36 -05:00
Matthew Flatt
c4793a218f
Windows: avoid refresh on no-op canvas show-scrollbars
2015-12-03 05:36:42 -07:00
Matthew Flatt
d3f212b98c
fix copy-on-scroll for non-integer scroll offset
2015-12-02 20:50:21 -07:00
Robby Findler
fe77bb34d4
more on scroll-by-copy
...
make it per-editor customizable, add callbacks, and use
them to make the special first line mixin work properly
when it is enabled
2015-11-26 13:11:47 -06:00
Matthew Flatt
79128627d2
avoid scrolling too far for scroll-via-copy
...
But scroll-via-copy is still not enabled.
2015-11-25 16:14:54 -07:00
Matthew Flatt
4358d22a0a
disable scroll via copy
...
Sometimes doesn't work right, as illustrated by PR 15186
2015-11-25 08:46:37 -07:00
Matthew Flatt
bdac2da540
enable scoll via copy
2015-11-25 05:07:44 -07:00
Matthew Flatt
33395ae1cf
Cocoa: canvas DC copy
improvement
2015-11-24 15:01:25 -07:00
Matthew Flatt
3873064c80
Cocoa: avoid over-eager refresh on OS X 10.11
...
A relatively late correction to refresh handling for El Capitan
(commit 9bf18505d5
) causes a canvas to be refreshed too often
in some cases. Delay the refresh to restore the old timing
without the old bug.
2015-11-23 20:45:25 -07:00
Matthew Flatt
facc07e123
Cocoa: make copy
method work for canvas DC
...
Also correct problems with disabled scrolling via `copy`.
2015-11-23 12:13:48 -07:00
Matthew Flatt
b29a7ae399
Gtk+ 3: open library in "global" mode to support the printer dialog
...
Opening a shared object in global mode risks conflicts with
other shared objects, but opening only one library that way
will hopefully not create conflicts.
2015-11-19 12:03:18 -07:00
Thomas Hilliker
acab3f14e1
added length parameter to call of snip insert
2015-11-11 16:54:05 -06:00
Matthew Flatt
9bf18505d5
fix refresh on El Capitan
...
When restoring autodisplay, need to check whether a display was
lost since display was suspended.
2015-11-07 06:45:34 -07:00
Matthew Flatt
746956a6ae
skip clean-up of bitmap that isn't there
...
Backing-bitmap allocation might fail for a too-large window?
2015-10-29 07:43:45 -04:00
Matthew Flatt
172b7d5a56
implement GL screen sync for Windows canvases
2015-10-18 18:15:03 -06:00
Matthew Flatt
5a1d5557c4
implement GL screen sync for X11 canvases
2015-10-18 18:08:05 -06:00
Matthew Flatt
4daafb2357
implement GL screen sync for Cocoa canvases
2015-10-18 17:49:32 -06:00
Matthew Flatt
1d3a308532
Windows: fix WM_GESTURE handling
...
Broken boolean expression treated `next-scroll-is-change?` backward.
2015-10-06 21:31:34 -06:00
Matthew Flatt
a35b0e4831
another Mac OS X 10.11 refresh repair
...
Avoid frames that start out unpainted and end up with a too-dark
titlebar.
2015-10-06 21:24:10 -06:00
Matthew Flatt
216798a08c
don't overpaint for clearing a canvas
...
Just in case clipping is not in place, since we have the right
rectangle handy anyway.
2015-10-06 09:42:28 -06:00
Brian Mastenbrook
d393e1a5bf
Per http://msdn.microsoft.com/en-us/library/windows/desktop/dd562171(v=vs.85).aspx - adds support for SB_THUMBPOSITION events. Improves touchpad scrolling on Surface Pro 3, but not touch scrolling.
2015-10-05 06:35:20 -06:00
Matthew Flatt
b842b1feec
Mac OS X 10.11: register control font to make it Pango-accessible
...
The new system control font is (intentially) not associated with a
font family, so it's inaccessible via Pango. A patch to Pango lets
us synthesize and register new families, so the control font can
be made accessible.
2015-10-04 20:36:17 -06:00
Matthew Flatt
cdc992ccb9
fix problems and consistency with fullscreen
in frame%
...
The `fullscreen` method implied `show` on Mac OS X and Windows, but
not on Gtk, and a frae shown that was was not properly registered
as shown (e.g., the application could exit). For consistency, adjust
`fullscreen` to not imply `show`. Also, shift to a remaining frame
on Mac OS X when a fullscreen frame is closed.
2015-10-04 14:19:00 -06:00
Matthew Flatt
ea576d3177
Mac OS X 10.11: disable auto-update for suspended-flush windows
...
Previous versions of OS X seem to have automatically disabled
update for a window when flushing is disabled, but now we have to
do it ourselves, otherwise text editors can flicker a lot. (The
system change is probably related to the removal of the
`isFlushWindowDisabled` method of `NSWindow` (which was
deprecated in 10.10).
2015-10-04 12:11:21 -06:00
Matthew Flatt
52ac3da7bd
allow 0 as initial value for manual scrollbars
...
Broken by 4ad47927
.
2015-10-04 10:36:27 -06:00