| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://docs.gtk.org/Pango/method.Layout.set_auto_dir.html says:
> When the auto-computed direction of a paragraph differs from the
> base direction of the context, the interpretation of
> PANGO_ALIGN_LEFT and PANGO_ALIGN_RIGHT are swapped.
Now that symbols are placed based using alignment, we don't want RTL
symbols placed on the wrong side of the key rendering. To do this, we
invert the alignment for RTL symbols.
Closes: #8
|
|
|
|
|
| |
This information (whether a symbol is LTR or RTL) will be useful in
figuring out how to align the symbol on the drawing of the key.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, left-displayed symbols (those produced without AltGr) are
drawn on a key rendering in a full-width cell, but right-displayed
symbols (those produced with AltGr) are only drawn in half-width cells
on the key rendering.
This means that left-displayed symbols can still overlap with
right-hand symbols if they happen to be wide, but right-hand symbols
are more likely to be truncated ("ellipsized").
This change still allows the symbols to overlap, but makes
right-displayed symbols less likely to be ellipsized. We do this by
using alignment to place right-displayed symbols to the right, instead
of using a half-width cell.
|
|
|
|
|
| |
Previously would crash when running:
$ gkbd-keyboard-display -l nosuchlayout
|
|\
| |
| |
| |
| | |
Avoid some deprecated Gdk/Gtk codepaths
See merge request GNOME/libgnomekbd!10
|
| |
| |
| |
| |
| |
| |
| |
| | |
The only places that were using GdkScreen were using it to get monitor
width and height.
All the gdk_screen_* calls that were being used are explicitly
deprecated. Use GdkDisplay instead.
|
| | |
|
|/
|
|
|
|
| |
See https://developer.gnome.org/hig/stable/typography.html
https://bugzilla.gnome.org/show_bug.cgi?id=772762
|
|
|
|
|
| |
Asking for a keyboard device's position doesn't even make sense
anyway.
|
|
|
|
| |
It's not needed with modern gtk+ .
|
|
|
|
| |
This isn't needed and in fact causes runtime warnings.
|
| |
|
|
|
|
|
|
| |
XkbGetKeyboard() might fail but we might still be able to work with a
XkbGetKeyboardByName() later in gkbd_keyboard_drawing_set_keyboard()
so don't abort the initialization if it fails.
|
|
|
|
|
|
| |
We need to tell gtk+ we handled the key event otherwise gtk+ keynav
key events will move focus to the close button and it looks like the
dialog stopped working.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When drawing the keyboard without having set the groups and levels there
is a segmentation fault:
Program received signal SIGSEGV, Segmentation fault.
0x00007fffe49ae8c9 in draw_key_label (is_pressed=<optimized out>, xkb_height=<optimized out>, xkb_width=<optimized out>, xkb_origin_y=<optimized out>,
xkb_origin_x=<optimized out>, angle=0, keycode=<optimized out>, drawing=0xa540e0, context=0xca6080) at gkbd-keyboard-drawing.c:1017
1017 if (drawing->groupLevels[glp] == NULL)
Fix that.
The widget now is able to draw a keyboard without the keys labels, which
can be useful when testing just the keyboard geometry.
https://bugzilla.gnome.org/show_bug.cgi?id=760988
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When track_modifiers is true and a modifier key gets pressed, do not
free and reallocate the data and, in particular, do not reallocate
drawing->keys zeroing it; this would result in the modifier keys pressed
states to be forgotten and the modifier keys not to be shown as pressed
when in fact they are (the keyboard symbols reflect the shift level
correctly).
Fix the current situation, allowing the modifier keys pressed state to
be drawn correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=734621
|
|
|
|
|
|
|
|
|
|
|
| |
Some keys like the function key "FN" are described in geometry files but
they have no keycode associated to them. You can find such keys in the
thinkpad and in the hhk geometry files.
Allow drawing the shape of these keys with invalid keycodes, and just
skip looking for the labels as the label is derived from the keycode.
https://bugzilla.gnome.org/show_bug.cgi?id=734618
|
|
|
|
|
|
|
| |
* Cleans up a bunch of warnings, and gets g-ir-scanner to actually
recognize the annotations.
https://bugzilla.gnome.org/show_bug.cgi?id=675729
|
| |
|
| |
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=653155
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=647646
|
|
|
|
|
| |
Using large screens can cause bad, huge, windows
http://bugzilla.gnome.org/show_bug.cgi?id=647646
|
|
|
|
|
| |
It was 10, it is 12 now
https://bugzilla.gnome.org/show_bug.cgi?id=642903
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=643754
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=642903
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=642903
|
| |
|
|
|
|
| |
http://bugzilla.gnome.org/show_bug.cgi?id=642903
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=642903
|
|
|
|
| |
http://bugzilla.gnome.org/show_bug.cgi?id=642903
|
|
|
|
| |
https://bugs.freedesktop.org/show_bug.cgi?id=34369
|
|
|
|
| |
Use proper name from xml instead of group name
|
|
|
|
| |
API is fixed, proper title taken from libxklavier meta data
|
|
|
|
| |
To be used by g-c-c
|
|
|
|
| |
It is going to be used by the gnome-shell and gnome-control-center
|
|
|
|
| |
And there is no need to invalidate - it will be done anyway
|
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=640423
At the same time, gtkvbox still doing strange things, to be continued
|
|
|
|
| |
Using widget allocation allows to provide correct invalidation area for updates.
|
|
|
|
| |
When outlines are too thick, LEDs are not visible at all
|
|
|
|
|
|
|
| |
For some reason, the coordinates are taken from the window corner.
Should be investigated. For now, closing
https://bugzilla.gnome.org/show_bug.cgi?id=640424
https://bugzilla.gnome.org/show_bug.cgi?id=640422
|
|
|
|
| |
As a side effect, fixed https://bugzilla.gnome.org/show_bug.cgi?id=640424
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=640425
|
| |
|
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=640425
Also, a bit of indent love
|
|
|
|
|
|
| |
No-window widgets _must_ call gtk_widget_set_has_window (w, FALSE)
in _init; else the clipping/transformation logic in GTK+ gets
confused.
|
| |
|
|
|
|
| |
Preparing for introspection
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=633680
|