Christian Hergert
473aceea68
macos: add API to get monitor colorspace
2022-02-04 09:45:55 -08:00
Bastien Nocera
0621dbc745
inspector: Search by pointer address
...
Useful to find a widget that corresponds to a pointer address in gdb.
2022-02-04 18:39:56 +01:00
Christian Hergert
8ea0a4fc50
macos: precalculate clip regions as CGRect
...
We can make our drawRect do less work if we precalculate the clip
and damage regions upfront by intersecting them with the bounds.
2022-02-04 09:31:37 -08:00
António Fernandes
94ef818c9a
columnviewcolumn: Define autocleanup function
2022-02-04 11:13:46 +00:00
Christian Hergert
8112b49c36
macos: fix unmaximize opacity around edges of window
2022-02-03 19:26:16 -08:00
Christian Hergert
58b9c3a6d4
macos: use CGContext to draw cairo surfaces
...
Instead of relying on cairo_t to perform drawing from our backing
image surface to the Core Graphics context, we can convert the
cairo_image_surface_t into a CGImageRef without having to copy
data if we are certain of the alignment of the image up front.
Without this, there are many situations, based on the size of the
window that could cause cairo to take a slow path and malloc/copy
the data to ensure that alignment.
The previous commit titled "macos: align image surface rowstride to
16-bytes" ensures that this invariant is true so that our drawing
code can assume we can reference the framebuffer from the
cairo_image_surface_t using a CGDataProvider.
Since GdkMacosCairoContext and GdkMacosCairoSubview are coordinating,
we can also setup the transformation/scale early when drawing the
cairo_image_surface_t instead of when copying it to Core Graphics.
Furthermore, the CGImageRef is created with an RGB colorspace so
that we are not performing colorspace conversion to the output
device. We don't get color matching between displays, but we don't
expect that anyway, particularly with the software renderer.
2022-02-03 19:26:16 -08:00
Christian Hergert
4373743d4c
macos: align image surface rowstride to 16-bytes
...
When creating a cairo_image_surface_t we want both the framebuffer pointer
and each row to be aligned to 16-bytes so that Core Graphics will use more
optimal paths.
However, cairo_image_surface_create() will not guarantee that the rowstride
is aligned to 16-bytes so we must do that ourselves.
2022-02-03 19:26:16 -08:00
Christian Hergert
58159552ba
macos: avoid unnecessarily destroying cairo_t
...
This avoids destroying a cairo_t when we are within the frame as it
otherwise causes the surface to unnecessarily flush.
2022-02-03 19:26:16 -08:00
Christian Hergert
4bff24f83a
macos: cleanup window surface when destroying context
...
Make sure we release the cairo_surface_t for the window when
disposing the GdkMacosCairoContext.
2022-02-03 19:26:16 -08:00
Christian Hergert
f644925570
macos: be more careful about freezing/thawing surfaces
...
We need to avoid conflating the managing of frame callbacks from
the freeze/thaw mechanics and ensure we don't perform extra thaw
requests at the wrong time.
2022-02-03 19:26:16 -08:00
Christian Hergert
8a4fd3f2af
macos: check for destroyed surfaces in vfuncs
2022-02-03 19:26:16 -08:00
Christian Hergert
b7130a1ce3
macos: be more defensive about freezing updates
...
We only need to freeze the updates if we weren't in the queue already.
That should be the case, but just better to be defensive here.
2022-02-03 19:26:16 -08:00
Christian Hergert
519a44d224
macos: push to head of awaiting frames
...
Always add to the head of awaiting frames as the list is processed
in the opposite direction.
2022-02-03 19:26:16 -08:00
Christian Hergert
936034e07a
macos: remove popup surface from parent
2022-02-03 19:26:16 -08:00
Christian Hergert
ea43939f52
macos: handle NULL frame-clock when thawing
2022-02-03 19:26:16 -08:00
Jan Alexander Steffens (heftig)
d8befc612f
demos: Make our stack noexec
...
This is similar to https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4330
and https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4334 , which fixed
the main library but missed the demos.
2022-02-03 19:14:36 +00:00
Emmanuele Bassi
06ec4ec148
Merge branch 'zbrown/its-a-filename' into 'main'
...
cssprovider: from_path takes a path
See merge request GNOME/gtk!4436
2022-02-02 23:11:44 +00:00
Zander Brown
6fbcb967a0
cssprovider: from_path takes a path
...
Annotate it as such so that bindings can expose that appropriately
Related: https://github.com/gtk-rs/gtk4-rs/issues/861
2022-02-02 22:47:39 +00:00
Emmanuele Bassi
82e0241c42
Merge branch 'fix-app-launch-context-docs' into 'main'
...
gdkapplaunchcontext: Fix docs a bit
See merge request GNOME/gtk!4434
2022-02-01 20:34:41 +00:00
Phaedrus Leeds
8e000c2dbf
gdkapplaunchcontext: Fix docs a bit
...
The set_screen() and set_display() methods no longer exist.
2022-02-01 11:17:55 -08:00
Jakub Steiner
1f1aafd5c2
style: legible text selections
...
- follow adwaita styling
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/4664
2022-02-01 17:12:52 +01:00
Luca Bacci
d314298644
Merge branch 'win32-keys-ignore-ctrl-gtk4' into 'main'
...
gdkkeys-win32: Ignore CTRL bit for key translation
Closes #4667
See merge request GNOME/gtk!4431
2022-02-01 15:33:01 +00:00
Emmanuele Bassi
3cbe3abf67
Merge branch '4602-fix-kerning-of-gl-rendered-glyphs' into 'main'
...
Fix kerning of GL rendered glyphs
Closes #4602
See merge request GNOME/gtk!4429
2022-02-01 14:31:47 +00:00
Philip Zander
90ab8b8dd3
gdkkeys-win32: Ignore CTRL bit for key translation
...
Some keymaps on Windows contain bogus mappings for Ctrl+key for certain
keys, e.g. Ctrl+Backspace = Delete, or Ctrl+[ = 0x1B. These are never
used on Windows, so we should ignore them.
Fixes #4667
2022-02-01 14:12:56 +01:00
Marek Kasik
cb1dd66220
Fix kerning of GL rendered glyphs
...
Multiple scaled shifts by 1024 too.
Fixes : #4602
2022-02-01 09:31:35 +01:00
Boyuan Yang
d033a099ae
Update Chinese (China) translation
2022-01-31 03:51:23 +00:00
Boyuan Yang
78d9e5e181
Update Chinese (China) translation
2022-01-31 03:46:30 +00:00
sicklylife
41270ba8c9
Update Japanese translation
2022-01-30 15:26:50 +00:00
sicklylife
e2277438e9
Update Japanese translation
2022-01-30 15:15:27 +00:00
Piotr Drąg
b0936c913b
Update Polish translation
2022-01-29 14:59:17 +01:00
Väinö Mäkelä
4b05eb62c9
gdk: Update keyboard symbols from libxkbcommon
...
GTK's old key symbol list is missing a few symbols like the per mille
sign that is included in some keyboard layouts. This commit updates
gdkkeyuni.c to match libxkbcommon's current key symbol list.
2022-01-29 14:31:09 +02:00
Aleksandr Melman
fbacf0cb65
Update Russian translation
2022-01-28 11:05:57 +00:00
Emmanuele Bassi
05a53a1582
Merge branch 'infobar-xml' into 'main'
...
Escape Builder XML in GtkInfoBar docs
See merge request GNOME/gtk!4421
2022-01-28 10:49:37 +00:00
Elliott Sales de Andrade
be5873a057
Escape Builder XML in GtkInfoBar docs
2022-01-28 05:32:16 -05:00
Daniel Mustieles
c97f46bf28
Updated Spanish translation
2022-01-28 11:01:09 +01:00
Emmanuele Bassi
1d47882eab
Merge branch 'ebassi/manifest-dep-fix' into 'main'
...
flatpak: Add wayland-protocols to the manifests
See merge request GNOME/gtk!4420
2022-01-28 02:05:59 +00:00
Emmanuele Bassi
9dcbbb4300
flatpak: Use "main" branch for wayland
...
The default branch for wayland has changed, but the "master" branch
is still available with an older version.
2022-01-28 01:25:04 +00:00
Matthias Clasen
c9eda02fa1
Merge branch 'tiled-window-bracket-fix' into 'main'
...
theme: Drop shadow and border fixes for tiled windows
See merge request GNOME/gtk!4418
2022-01-27 17:29:13 +00:00
Matthias Clasen
a37584a404
Merge branch 'wip/baedert/for-master' into 'main'
...
build: Make GCC ignore fallthrough comments
Closes #4663
See merge request GNOME/gtk!4419
2022-01-27 16:27:12 +00:00
Leônidas Araújo
566f217f6f
Update Brazilian Portuguese translation
2022-01-27 16:25:07 +00:00
Matheus Barbosa
ca34c79443
Update Brazilian Portuguese translation
2022-01-27 15:47:53 +00:00
Timm Bäder
4be6c5b197
gesturesingle: Get rid of a fallthrough comment
...
Fixes #4663
2022-01-27 16:06:56 +01:00
Timm Bäder
7194196100
build: Make GCC ignore fallthrough comments
...
From the GCC manpage:
> Wimplicit-fallthrough=5 doesn't recognize any comments as
> fallthrough comments, only attributes disable
> the warning.
So, check for the =5 version after checking for the simple version. This
way we get -Wfallhrough with clang and -Wfallthrough -Wfallthrough=5
with GCC, which works.
2022-01-27 16:05:33 +01:00
Yuri Chornoivan
d9d2eb978d
Update Ukrainian translation
2022-01-27 14:47:37 +00:00
Carlos Garnacho
c8460c51bd
Merge branch 'realize-vs-focus-in' into 'main'
...
gtktext: Make sure input method sees focus in
See merge request GNOME/gtk!4402
2022-01-27 14:13:55 +00:00
Joonas Henriksson
b4d0235a05
theme: Fix incorrect border color for tiled windows
2022-01-27 06:08:40 +02:00
Joonas Henriksson
a5d1f78bf2
theme: Fix drop shadow for tiled windows
...
Misplaced curly bracket prevented the :backdrop styling from getting
applied. Also fix the indentation while at it.
2022-01-27 05:50:06 +02:00
Carlos Garnacho
9a7750e339
Merge branch 'hold-gestures' into 'main'
...
Add hold gestures
See merge request GNOME/gtk!3454
2022-01-26 23:37:28 +00:00
Fran Dieguez
d7c4ac7d02
Update Galician translation
2022-01-26 23:36:27 +00:00
Hugo Carvalho
1a08be066e
Update Portuguese translation
2022-01-26 22:48:02 +00:00