Age | Commit message (Collapse) | Author | Files | Lines |
|
It is possible to receive multiple screen resize events, and resizeimg
would be called for different sizes, before _flushmemscreen actually
gets called with rectangle sizes different from the most recent
resizeimg call. The size mismatch would trigger illegal memory
access inside _flushmemscreen.
This commit protects _flushmemscreen by returning early if the requested
rectangle is outside of the current texture rectangle.
|
|
Fixes bug where devdraw does not "notice" mouse position after task
switch. Fixes https://github.com/9fans/plan9port/issues/232.
|
|
|
|
This replaces the pixel-art scaling algorithm used for upscaling before.
The results were not crisp enough to serve as everyday cursors.
|
|
Add a new macOS cocoa screen, cocoa-screen-metal.m.
Rewrite the macOS cocoa drawing code to use the builtin runloop,
and use Metal to push pixels with CAMetalLayer.
Remove all of the deprecated code, and simplify some of the logic.
Modify mkwsysrules.sh such that the new code is used only when
the system version is equal or higher than 10.14.
Allow touch events to simulate mouse clicks:
three finger tap for the middle mouse button;
four finger tap for the 2-1 chord.
Support Tresize.
Scale 16x16 Cursor up to 32x32 with an EPX algorithm.
Support macOS input sources including the basic dead keys and the
advanced CJK input methods.
Increase the communication buffers in cocoa-srv.c to allow more
input, especially for long sentences prepared by the macOS input
souces.
|
|
See https://plan9port-review.googlesource.com/c/plan9/+/1470
for discussion of the approach, especially Michael Stapleberg's comment:
Note that chromium, firefox and others have tried this and then switched to using the Xft.dpi X resource, see e.g. https://code.google.com/p/chromium/codesearch#chromium/src/chrome/browser/ui/libgtk2ui/gtk2_ui.cc and especially http://sources.debian.net/src/gnome-settings-daemon/3.18.2-1/plugins/xsettings/gsd-xsettings-manager.c/?hl=824#L80 for some anecdata about why this approach doesn’t work out.
The Xft.dpi resource is being set accurately by desktop environments (GNOME, KDE, …) and can easily be changed by users of niche window managers by editing ~/.Xresources.
I suggest we check only Xft.dpi, without considering the DPI environment variable or the monitor width/height.
|
|
This makes 2-1 chords possible with touchpad on a mac laptop.
|
|
|
|
After making the build on macOS silent on commit 310ae03,
the build was broken on macOS lesser than 10.12 (Sierra).
This commit conditionally checks the version the of the
SDK before using the defined values for silent build.
Fixes #66.
|
|
Change-Id: Ide32a9397701085b17fbd42f0866eb3de11e4190
Reviewed-on: https://plan9port-review.googlesource.com/2940
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
Should be a clean build now.
Change-Id: Id3460371cb5e8d4071f8faa9c2aec870d213a067
Reviewed-on: https://plan9port-review.googlesource.com/2781
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
Change-Id: Ie818f9246f749a9d3293019a1e01be4ce7e368b9
Reviewed-on: https://plan9port-review.googlesource.com/1400
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
Change-Id: I7585870aee57c7482ebdd19c117be7982123ce79
Reviewed-on: https://plan9port-review.googlesource.com/1130
Reviewed-by: Russ Cox <rsc@google.com>
|
|
Change-Id: I243a1fe3f9ec0841570c4cd69c02be9cfd9ade50
Reviewed-on: https://plan9port-review.googlesource.com/1172
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
On OSX 10.10, when you open an application that depends on devdraw, the
title bar only shows the first letter of the application's name. The
patch sets a default title as soon as the window is created, which
fixes this issue.
On OSX 10.10, when you open an application that depends on devdraw, this
application is opened in top of other windows, however the menu bar is
not updated. The patch calls topwin() at the end of makewin() in
src/cmd/devdraw/cocoa-screen.m .
Change-Id: Ie036928b5574c8df20ad8b2b54047e2f7a22bb41
Reviewed-on: https://plan9port-review.googlesource.com/1091
Reviewed-by: Russ Cox <rsc@swtch.com>
|
|
LGTM=rsc
R=rsc
https://codereview.appspot.com/33240044
|
|
TBR=rsc
https://codereview.appspot.com/53820044
|
|
R=rsc
CC=r
https://codereview.appspot.com/12577043
|
|
See https://bitbucket.org/rsc/plan9port/issue/128/alt-button-sticks-in-acme-sometimes-after
R=rsc
https://codereview.appspot.com/11453043
|
|
R=rsc
https://codereview.appspot.com/10458043
|
|
For single-button mouse users.
R=rsc
https://codereview.appspot.com/7620043
|
|
R=rsc
https://codereview.appspot.com/7304064
|
|
Ubuntu Precise seems to have a buggy X server
that sometimes fails at XCopyArea. Let devdraw
do it itself.
This will slow down remote X a little bit,
but slow and correct is better than fast and broken.
R=rsc
https://codereview.appspot.com/7310069
|
|
R=rsc
CC=plan9port.codebot
https://codereview.appspot.com/6850108
|
|
R=rsc
http://codereview.appspot.com/6782115
|
|
R=rsc
http://codereview.appspot.com/6854093
|
|
R=rsc
http://codereview.appspot.com/6846104
|
|
R=rsc
http://codereview.appspot.com/6847104
|
|
Fixed at 100 right now, but the plan is to make it accurate
and then use it.
R=rsc
http://codereview.appspot.com/6856091
|
|
Also add some ignored files to .hgignore
R=rsc
http://codereview.appspot.com/6842089
|
|
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5495046
|
|
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/6690049
|
|
R=rsc
http://codereview.appspot.com/6744054
|
|
R=rsc
http://codereview.appspot.com/6744053
|
|
Enable with export devdrawretina=1 (everything will be smaller).
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/6592072
|
|
Fixes remote X11 use via XQuartz 2.7.4.
R=rsc
http://codereview.appspot.com/6624058
|
|
This patch reverts the recent patch named "devdraw: fix for OS X 10.8", and fixes redrawing on OSX 10.8 differently, making scrolling under Acme 3 times faster.
R=rsc, mirtchovski
CC=plan9port.codebot
http://codereview.appspot.com/6452087
|
|
In MacOS 10.8, the NSBitmapImageRep class appears to cache the specified
image data at the time of construction. As a result updates to the
backing memimage object do not get pushed to the screen in flushimg.
This patch creates the NSBitmapImageRep object over again for each
flushimg which would appear to fix the problem.
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/6443063
|
|
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5748043
|
|
there is no more blank image when toggling
fullscreen, when unminimizing, or at startup; this
also means that we can live resize, but we only
enable live resizing with Page, because it seems
useless for other apps, and Acme and Sam bug with
it. The tradeoff is that bottom corners are
sometimes automatically rounded. There is a way to
prevent the rounding here:
http://parmanoir.com/Custom_NSThemeFrame
but this would obfuscate the code. Instead, we
make sure that the corners are always rounded.
Closing the window while its content is updated
causes an exception, without this patch. This
seems to happen regularly with stats(1).
This patch avoids a possible deadlock at startup,
which I never experienced. If I recollect right,
there is little chance that this happens on a
multi-core CPU.
Minimizing now activates next app in line, and
Devdraw now stops drawing while minimized.
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5499043
|
|
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5749043
|
|
Now, if you full-screen an app running on a secondary
screen, it only takes over that monitor. It does not cause
the primary screen to disappear.
Code by David Jeannot.
R=djeannot24
http://codereview.appspot.com/5708046
|
|
Remove swipe gestures.
Keep only 2-finger pinching and 3-finger tapping.
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5498094
|
|
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5558051
|
|
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5505092
|
|
Previously, the menu bar has been set to hidden
instead of autohidden in fullscreen mode, because
it appeared too easily. Occasionally however, it
still appears. This patch makes sure it won't.
With OS X Lion's fullscreen, the Dock is
autohidden, but sometimes remains hidden. This
bug comes with visual menu bar bugs
during space transition and when exiting
fullscreen. Those bugs happen after each
Devdraw's activation, for example. This patch
neutralizes them.
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5502091
|
|
This implementation is simpler to understand. It
removes conflicts with other modifiers and with
the virtual buttons. Pressing alt during a
sequence now cancels it correctly.
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5507049
|
|
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5528046
|
|
(The new variable "willactivate" is in the input
structure "in", which is illogical. But this
structure will soon be renamed "app". I postpone
the renaming to avoid conflicts with simultaneous
Codereview issues.)
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5504102
|
|
R=rsc
CC=plan9port.codebot
http://codereview.appspot.com/5503086
|