Commit Graph

21828 Commits

Author SHA1 Message Date
Matthias Clasen
2cb31edf6f inspector: Show the warning dialog without delay
The delay was a mistaken attempt to work around a problem that
is now better understood, see
https://bugzilla.gnome.org/show_bug.cgi?id=735338
2014-09-26 09:50:33 -04:00
Matthias Clasen
3214122fbd Remove some redundant code
No need to check the same widget twice in a row for being a window.
2014-09-26 09:50:33 -04:00
Matthias Clasen
3b62f2f01d GtkWindow: improve the inspector keybinding
Binding signals can return a boolean indicating whether they
handled the event. Use that here and return FALSE if the
inspector keybinding is disabled.
2014-09-26 09:50:33 -04:00
Matthias Clasen
1041f93f7f inspector: life-cycle fixes
When closing the inspector before the main window, we must take
care to sever all signal connections and weak refs, otherwise
things will go bad when the window is closed later.
2014-09-25 23:05:15 -04:00
Carlos Garnacho
d17fd81d9b button: Fix ::clicked emission on touchscreens sending pointer events
When GtkGestureMultiPress::released happens, in_button should be unset
after emitting GtkButton::released, whose default implementation uses it.
Moreover, in_button should only be unset there for real touch events, not
guaranteed to trigger crossing events, as opposed to every pointer/touch
events from touchscreens.

https://bugzilla.gnome.org/show_bug.cgi?id=737297
2014-09-25 21:25:52 +02:00
Matthias Clasen
fcec9b9812 Use titlebar action settings for CSD windows
Instead of hardcoding these actions, consult the settings.
Note that not all of the actions supported by gnome-shell are
implemented here, only maximize, minimize, lower, and menu.

https://bugzilla.gnome.org/show_bug.cgi?id=729782
2014-09-25 14:54:49 -04:00
Matthias Clasen
d20fdd18eb Factor out titlebar click actions
So they can be made configurable.

https://bugzilla.gnome.org/show_bug.cgi?id=729782
2014-09-25 14:54:49 -04:00
Matthias Clasen
1d8a1a04f6 Add settings for titlebar actions
These match the GSettings that mutter/metacity/gnome-shell have
for this. We change the default for the middle-click action to
none, since lower is just a terrible default.

We're slightly bending the rules here, since we're adding new
settings after .0, but a) it is just barely after .0, and b) settings
are not really application API.

https://bugzilla.gnome.org/show_bug.cgi?id=729782
2014-09-25 14:54:02 -04:00
Matthias Clasen
96fd15454b Make GtkModelButton work with touch
Some recent refactoring changed things so that in_button is no
longer TRUE when released() is called for touch events. As a minimal
fix, let GtkButton do more of the work by chaining up to its
pressed and released handlers, which know how to handle touch
events. This could be further improved by leaving more of the
state handling to GtkButton, like it was done for GtkToggleButton.
2014-09-24 23:33:23 -04:00
Matthias Clasen
c0685c0f58 Fix comment typo 2014-09-24 20:31:11 -04:00
Matthias Clasen
7a81aaf3c8 GtkSwitch: Use gtk_widget_add_tick_callback
This api automatically takes care of dealing with disappearing
frame clocks, which we currently forget to and pay with crashes.
2014-09-23 11:23:20 -04:00
Carlos Garnacho
0285a255bc popover: Don't run full dispose() when unmanaging the widget
A popover can go unmanaged for 2 reasons, when the widget it points to
gets destroyed, or transitionally in gtk_popover_set_relative_to(). In
both of these cases it makes sense to only unset popover information
about the previous widget managing it, if the popover is meant to
survive the unmanaging through extra refs.

Also, the focus widget prior to a modal popover being shown is considered
information about the relative_to widget, unset it on
gtk_popover_update_relative_to() with the rest.

https://bugzilla.gnome.org/show_bug.cgi?id=736193
2014-09-22 20:59:09 -04:00
Carlos Garnacho
6b7b55f9b2 gtkwindow: run ::event and specific handlers for EWMH action triggering events
This gives an opportunity for implementations to handle these events
differently, instead of hardcoding the WM-triggering behavior.

gtk_window_event() only forwards events for WM management if the event
widget is not the window (ie. caught when bubbling), so is safe to be
called here without triggering gtk_window_handle_wm_event() twice.

This commit is an adaption to master of
https://bugzilla.gnome.org/show_bug.cgi?id=736702#c1 by Cosimo Cecchi.
2014-09-22 20:51:24 -04:00
Carlos Garnacho
f8f74b59e3 scalebutton: Invert smooth scroll dy when adding to the current value
On regular scrolling (ie. not natural scrolling), positive deltas in the
Y axis (downwards) should actually move the value towards the adjustment
minimum value to be more intuitive. This also makes the scrolling
directions match between the button and the popped up scale.

https://bugzilla.gnome.org/show_bug.cgi?id=736830
2014-09-22 20:28:27 -04:00
Matthias Clasen
eb96a7f832 inspector: Show the source of settings
This can be useful at times to see if a setting is coming
from an XSetting, or overridden by the application.

https://bugzilla.gnome.org/show_bug.cgi?id=736971
2014-09-22 19:40:49 -04:00
Matthias Clasen
18931cf0db GtkSettings: Add a private getter for the source
Settings have a little more metadata than plain properties. They
can come from different sources. Make this information available
so we can show it in the inspector.

https://bugzilla.gnome.org/show_bug.cgi?id=736971
2014-09-22 19:40:49 -04:00
Sébastien Wilmet
2ebe813c98 inspector: remove g_message()
It was probably added for debugging purposes.

https://bugzilla.gnome.org/show_bug.cgi?id=736557
2014-09-22 15:51:41 +02:00
Matthias Clasen
61de42a731 Make gtk-undelete work again as icon name
The convention we use now is to not append any suffix for ltr icons,
and append -rtl for rtl. Make gtk-undelete follow this pattern.
2014-09-21 23:13:29 -04:00
Matthias Clasen
964c202c38 GtkIconTheme: Repair symbolic fallback with rtl/ltr
For symbolic icons, we prefer symbolics in inherited themes over
generic icons in the theme itself. So far this was implemented
by looking at icon_name[0] and looking that up in inherited themes
if it is symbolic. But with automatic rtl/ltr handling, the first
icon  name will always have an -rtl or -ltr suffix, and an icon
with that suffix is not going to exist in most cases. To fix this,
look for shorter icon names too, as long as they are still symbolic.

https://bugzilla.gnome.org/show_bug.cgi?id=737000
2014-09-21 14:49:22 -04:00
Matthias Clasen
1b858e4212 Trivial: clarify a comment
Using 'highcolor' here seems confusing, since there is a theme
by that name. Just say full-color.
2014-09-21 14:29:36 -04:00
Matthias Clasen
3c96ea0ae7 inspector: Look up the schema recursively
This is the recommended way to use this function. It should
also fix problems with the inspector when GSETTINGS_SCHEMA_DIR
is set.

https://bugzilla.gnome.org/show_bug.cgi?id=737027
2014-09-20 19:52:23 -04:00
Matthias Clasen
fb126586ed inspector: Avoid a crash
We were forgetting to free the hash table, which then gave
us weak ref notifies at an unexpected time.

https://bugzilla.gnome.org/show_bug.cgi?id=737026
2014-09-20 19:30:45 -04:00
Jasper St. Pierre
df236fba58 gtkwindow: Make sure to update the shadow width, opaque region and border windows when realizing
Otherwise, they might not be properly set before the window is mapped.

For the opaque region and border window, it means that they won't get
set before the next size allocation, which tends to not be a bit deal.

For the shadow width, though, _GTK_FRAME_EXTENTS has a different meaning
when it's set before the window is mapped, so we need to make sure that
it's properly set when the window is mapped.
2014-09-19 17:39:46 -06:00
Matthias Clasen
9603754f7d Fix warning grammar 2014-09-18 21:57:20 -04:00
Matthias Clasen
c75793ee17 Fix parse-sass.sh script
The script runs into this error here:
OptionParser::NeedlessArgument: needless argument: --sourcemap=none
2014-09-18 21:53:20 -04:00
Matthias Clasen
eb6fb7326d Raleigh: Drop decoration-layout style property
This is not used anymore.
2014-09-17 15:11:25 -04:00
Sébastien Wilmet
c104c64436 Better mark GtkAlignment as deprecated
- Move the class to the Deprecated section.
- Warning at the bottom of the class description.
- A missing property was not marked as deprecated.
- Update doc of gtk_container_set_border_width() to not mention
  GtkAlignment.

https://bugzilla.gnome.org/show_bug.cgi?id=736622
2014-09-17 15:02:50 +02:00
Sébastien Wilmet
21e0a114e0 docs: GtkStatusIcon is deprecated since 3.14, not 3.16 2014-09-17 15:02:50 +02:00
Matthias Clasen
29eae57be4 Undreprecate GtkMisc::x/yalign for now
These can't quite be replaced by h/valign, so keep the properties
undeprecated for 3.14.
2014-09-15 23:22:54 -04:00
Benjamin Otte
6b16c795ba iconview: Unset prelit item in leave-notify
We don't want to keep a prelit item when the mouse cursor is elsewhere.
2014-09-16 04:30:01 +02:00
Benjamin Otte
072c417416 iconview: Remove iterm->prelight
item->prelight
is always equal to
  iconview->priv->last_prelight == item
so there is no need to track it separately.
2014-09-16 04:30:00 +02:00
Benjamin Otte
48d56c4077 iconview: always draw a cell background
Don't just draw it for selected cells.
2014-09-16 04:30:00 +02:00
Matthias Clasen
fdb13b6ef5 Revert "GtkAssistant: Drop use of GtkMisc"
This reverts commit 687eae4b51.

Still not a solved problem.
2014-09-15 21:11:06 -04:00
Benjamin Otte
86607c0f21 iconview: Don't queue redraws when nothing changes
We were queueing redraws for the old and the new prelit item, even when
they were the same item.
2014-09-15 16:35:40 +02:00
Руслан Ижбулатов
45ab4ae09b build: Set no_undefined in Makefile.decl
This simplifies the code and - more importantly - fixes the cases like
in testsuite/reftests where the no_undefined definition was missing.

https://bugzilla.gnome.org/show_bug.cgi?id=736382
2014-09-15 16:35:40 +02:00
Benjamin Otte
1741de47db treeview: Apply column-header region always
... so that invisible columns get it, too.

Works around weird effects seen when buttons are animated and columns
get hidden/shown.
2014-09-15 16:35:40 +02:00
Benjamin Otte
e9ce9a814b label: Clear layout after setting GtkLabel::lines property
Otherwise the label will not pick up the property.
2014-09-15 16:35:40 +02:00
Chun-wei Fan
15a9f1bdf5 gtk/gtkgladecatalog.c: Fix Visual Studio Builds
The _GDK_EXTERN decoration needs to be with the function prototype, if one
exists, so move the _GDK_EXTERN decoration up.
2014-09-15 12:26:32 +08:00
Bastien Nocera
355afc8f56 inspector: Show hidden windows in the inspector
This allows us to access otherwise hidden windows, which can be
useful to provide better debug information than would be available
through other means.

https://bugzilla.gnome.org/show_bug.cgi?id=736557
2014-09-14 08:47:05 -04:00
Matthias Clasen
3ad8bae1c4 inspector: Fix initial state of dark switch
Noticed while debugging a totem problem.
2014-09-14 08:38:28 -04:00
Lapo Calamandrei
76019fad0e Adwaita: osd progressbar fixes
See https://bugzilla.gnome.org/show_bug.cgi?id=735959
2014-09-13 16:21:37 +02:00
Lapo Calamandrei
dcffe0e2e3 Adwaita: uneven paddings on .text-button.image-button
We want buttons with an icon and text to have the padding of the
text-button on the label side and on the image-button on the icon
side.
2014-09-13 12:27:38 +02:00
Matthias Clasen
6064fc343e Drop unused code
Not worth keeping this around.
2014-09-12 22:31:25 -04:00
Matthias Clasen
76b1361902 Drop two pointless lines
These return statements weren't making any difference.
2014-09-12 22:31:10 -04:00
Matthias Clasen
45369d506b GtkDnd: Move X11-specific code out of generic code path
There was some X11-specific code before an early exit
in the functions that grab and ungrab keys during DND.
It seems to not cause a problem under Wayland, but moving
it out of the way seems right anyway.
2014-09-12 22:31:04 -04:00
Lapo Calamandrei
8c6b2fb94b Revert "Adwaita: theme active-menu buttons"
This is app specific, doesn't belongs here.
2014-09-12 19:12:25 +02:00
Lapo Calamandrei
961b7a9210 Adwaita: theme active-menu buttons 2014-09-12 18:01:58 +02:00
Jakub Steiner
eb9dcc1636 Adwaita: keep pathbar the same height as imagebuttons
- the previous patch introduced uneven height on the toolbar
2014-09-12 14:03:04 +02:00
Lapo Calamandrei
3d2e8ed1d8 Adwaita: better stack switcher logic
Now the stack switcher buttons look right even when not in the
header-bar.
2014-09-12 13:48:52 +02:00
Jakub Steiner
0060f84477 Adwaita: space pathbar better
https://bugzilla.gnome.org/show_bug.cgi?id=736535
2014-09-12 12:57:52 +02:00
Ross Lagerwall
08e1c8e30a GtkPlacesSidebar: Fix a memory leak
https://bugzilla.gnome.org/show_bug.cgi?id=736512
2014-09-12 08:08:09 +01:00
Ross Lagerwall
0c12d3afcc GtkPlacesSidebar: Don't update bookmark if cancelled
If the query fails because it has been cancelled, it means that
dispose() has been called, so don't try and update anything.

This fixes a segfault with Nautilus in certain situations.

https://bugzilla.gnome.org/show_bug.cgi?id=736512
2014-09-12 08:08:09 +01:00
Ross Lagerwall
94ed54f8ad GtkPlacesSidebar: Only add shortcut if query succeeds
https://bugzilla.gnome.org/show_bug.cgi?id=736512
2014-09-12 08:08:09 +01:00
Matthias Clasen
3d7f059087 GtkStackSwitcher: More disconnect fixes
When resetting the stack, don't forget to disconnect signals.

https://bugzilla.gnome.org/show_bug.cgi?id=736307
2014-09-11 20:42:12 -04:00
Matthias Clasen
6573cebe71 GtkMessageDialog: Minor documentatation update
The message area is no longer a vbox.
2014-09-11 15:48:44 -04:00
Takao Fujiwara
9f1724b355 Update gtk_compose_seqs_compact[] table for French layout bepo variant.
fr(bepo) XKB keymap sends dead_stroke with AltGr+l keys
and gtk-im-simple-context should send '/' with
dead_stroke+dead_stroke keys but gtkimcontextsimpleseqs.h
was not sorted in the descending order and failed to get
dead_stroke.
Also need to add dead_currency for Shift+AltGr+e and
dead_belowcomma for Shift+AltGr+Cedilla.

https://bugzilla.gnome.org/show_bug.cgi?id=736250
2014-09-10 21:30:46 -04:00
Lapo Calamandrei
a13c41137e Adwaita: blue selection mode checks
...to make them visible in the dark variant, e.g. Boxes.
2014-09-10 20:03:26 +02:00
Lapo Calamandrei
9ba4d97008 Adwaita: remove borders from insensitive flat buttons 2014-09-09 21:34:42 +02:00
Matthias Clasen
2e88ae8ad9 GtkStackSwitcher: Disconnect signals when a child is removed
This is quite an oversight, and causes bad things to happen if
the child is later changed.

https://bugzilla.gnome.org/show_bug.cgi?id=736307
2014-09-09 14:48:59 -04:00
Colin Walters
115eb5ed4c Fix stray dash addition in previous commit 2014-09-08 17:12:45 -04:00
Matthias Clasen
700e78d847 Remove more leftover —es
These were leftover at various places in the documentation.
2014-09-08 16:51:44 -04:00
Matthias Clasen
656deeb489 Fix a missing id in the docs
label-text-layout was missing, causing two broken links further
down in the page.
2014-09-08 15:36:15 -04:00
Matthias Clasen
ffe0ec6883 GtkAssistant: Make Escape cancel the assistant
This is an expected keybinding, and it is not hard to support.
Note that we use a private ::escape signal instead of using
::cancel directly, since we want to be able to suppress the
cancellation when we are on a progress page.

https://bugzilla.gnome.org/show_bug.cgi?id=579625
2014-09-08 00:09:55 -04:00
Matthias Clasen
169ca5ad21 Fix a thinko in adjustment animation
The target value is only relevant if we're actually animating.
Don't look at it otherwise.

https://bugzilla.gnome.org/show_bug.cgi?id=736178
2014-09-07 22:45:08 -04:00
Matthias Clasen
e2c54098da tree view: Fix column drag highlight
This is a bandaid fix that makes the origin case work again
by switching RGBA window. The arrow case is still unreliable.

https://bugzilla.gnome.org/show_bug.cgi?id=732916
2014-09-07 22:25:23 -04:00
Matthias Clasen
be97bad3a0 Avoid criticals when drags end
Its seems that gtk_gesture_get_last_event may return NULL,
protect against that to avoid critical warnings.
2014-09-07 21:24:01 -04:00
Timm Bäder
53014d0132 inspector: Don't unref NULL objects
When closing the application window before closing the inspector window,
the selected widget will be set to NULL once and all the property pages
will try to g_object_weak_unref that NULL widget, so bail out in
gtk_inspector_prop_list_set_object if it's NULL.

https://bugzilla.gnome.org/show_bug.cgi?id=736201
2014-09-06 21:35:23 -04:00
Matthias Clasen
a1af365566 Don't forget to allocate popovers
When GtkApplicationWindow has a menubar, we don't chain up
to the GtkWindow size_allocate, which used to position the
popovers. Move that to _gtk_window_set_allocation() which
is always called by GtkApplicationWindow.

https://bugzilla.gnome.org/show_bug.cgi?id=736205
2014-09-06 21:32:53 -04:00
Matthias Clasen
e9df5edc11 Avoid compiler warnings
The previous commit was sloppy with parameter types.
2014-09-06 21:28:31 -04:00
Matthias Clasen
794230e708 GtkCellRendererAccel: Try harder to capture bound keys
Add a grab on the editable widget, so that we can capture
also shortcuts which are bound in the application itself.

https://bugzilla.gnome.org/736203
2014-09-06 20:56:03 -04:00
Benjamin Otte
9a8a4a8b14 widget: Don't assume opacity is 100%
... just because there is no style context instantiated yet. Instead,
instantiate a style context during realize() and ask it.

Fixes problems with dim labels not being dimmed on first show.

Testcase included.

https://bugzilla.gnome.org/show_bug.cgi?id=735240
2014-09-07 01:57:10 +02:00
Benjamin Otte
95959ef470 overlay: Handle overlays when no main widget exists
Just pretend that the main widget is an empty widget the size of the
overlay.
Makes it possible to write testcases where no size requests are run on
overlay widgets before size_allocate() is called.

Testcase included.
2014-09-07 01:57:09 +02:00
Bastien Nocera
c849b8edd6 tooltip: Fix warning with GtkCellRendererAccel
(gnome-shell-extension-prefs:22382): GLib-GObject-WARNING **: invalid cast from 'GtkInvisible' to 'GtkWindow'
(gnome-shell-extension-prefs:22382): Gtk-CRITICAL **: gtk_window_set_transient_for: assertion 'parent == NULL || GTK_IS_WINDOW (parent)' failed

 #1  0x00007fffeeb81a12 in g_log (log_domain=log_domain@entry=0x7fffeeea3464 "GLib-GObject", log_level=log_level@entry=G_LOG_LEVEL_WARNING, format=format@entry=0x7fffeeeaa878 "invalid cast from '%s' to '%s'") at gmessages.c:1079
 #2  0x00007fffeee9c2a9 in g_type_check_instance_cast (type_instance=0xb314c0, iface_type=iface_type@entry=9020048) at gtype.c:4021
 #3  0x00007ffff0a06e25 in gtk_tooltip_set_last_window (tooltip=tooltip@entry=0xbb8c10, window=<optimized out>) at gtktooltip.c:910
 #4  0x00007ffff0a08dfd in _gtk_tooltip_handle_event (event=event@entry=0xbf72c0) at gtktooltip.c:1538
 #5  0x00007ffff090d7a9 in gtk_main_do_event (event=0xbf72c0) at gtkmain.c:1785
 #6  0x00007ffff0496ab2 in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>) at gdkeventsource.c:364
 #7  0x00007fffeeb7a8c3 in g_main_dispatch (context=0x807300) at gmain.c:3067

https://bugzilla.gnome.org/show_bug.cgi?id=736131
2014-09-06 19:05:46 -04:00
Matthias Clasen
fa0e43471c GtkCellRendererAccel: Stop editing on focus out
This is not automatic, and with grabs in place, it is awkward
to have focus moved elsewhere, so stop editing whenever the
cell editable loses focus.
2014-09-06 19:03:07 -04:00
Matthias Clasen
bdd1871cba GtkCellRendererAccel: rework the grabbing
Grab keyboard/mouse on the toplevel, and grab the focus to the
cell editable, so we actually see the key events.
2014-09-06 19:03:06 -04:00
Matthias Clasen
fcb69e110b Remove an unneeded include 2014-09-06 19:03:06 -04:00
Matthias Clasen
fe11f8f875 Revert "gtkcellrendereraccel: Use a GtkInvisible to grab on"
This reverts commit fe5402d32e.
2014-09-06 19:02:41 -04:00
Matthias Clasen
84ff0c201a Don't set an input shape unless client-decorated
We were actually setting an input shape larger than the window
in !csd, and this was confusing at least openbox.

https://bugzilla.gnome.org/736064
2014-09-06 15:43:11 -04:00
Matthias Clasen
98c87dc6ed inspector: Fix fallout from function renaming 2014-09-06 12:47:41 -04:00
Timm Bäder
a4d9eccbc6 inspector: Show widget allocation
https://bugzilla.gnome.org/show_bug.cgi?id=736191
2014-09-06 11:39:48 -04:00
Lapo Calamandrei
7633118e7d Adwaita: inhert backdrop selected list rows 2014-09-06 17:14:09 +02:00
Lapo Calamandrei
66accf2b37 Adwaita: set color on flat buttons in selected list-rows 2014-09-06 17:09:08 +02:00
Lapo Calamandrei
c6f5ad8855 Adwaita: better switch on selected list-rows 2014-09-06 17:02:20 +02:00
Hiroyuki Ito
e5eb59a2f8 Fix a crash in recent chooser DND
Reported in https://bugzilla.gnome.org/show_bug.cgi?id=736173
2014-09-06 10:37:25 -04:00
Lapo Calamandrei
532a8afeb1 Adwaita: really fix tooltips background
See https://bugzilla.gnome.org/show_bug.cgi?id=736155 for details.
2014-09-06 16:02:34 +02:00
Matthias Clasen
d55e3b25a7 Fix various compiler warnings
Mostly missing declarations and missing statics.
2014-09-05 21:21:49 -04:00
Matthias Clasen
c88c16d1f4 inspector: Fix various compiler warnings
Mostly missing declarations and missing statics.
2014-09-05 20:52:03 -04:00
Matthias Clasen
f401c85ee3 Adwaita: Avoid double backgrounds in tooltips 2014-09-05 14:57:04 -04:00
Matthias Clasen
1629903943 GtkIconTheme: Make suffix_from_name NULL-safe
This can happen sometimes with GFileIcons that are
not representable as a local path. Better not to crash
in this case.
2014-09-05 13:15:14 -04:00
Lapo Calamandrei
f66d84deec Adwaita: tooltip fixes
The "too dark" background was caused by box-shadow inherited by
window-frame.csd, so box-shadow: none and the right background
color on tooltip selector.
2014-09-05 16:17:00 +02:00
Lapo Calamandrei
7f4105bcaf Adwaita: tranlucent shadows inside entries
So evo background changing entry doesn't look broken.
2014-09-05 15:06:37 +02:00
Jesse van den Kieboom
3fa425bb9c scrolling: interpret smooth deltas as pixels on quartz
This is a temporary workaround for scrolling units being amplified
on quartz, due to the assumption that smooth scrolling deltas are
always in some abstract unit similar to the one from xi2.

A proper solution for the situation is described in bug #736121, but
since we are close to release, this patch solves the issue temporarily.

https://bugzilla.gnome.org/show_bug.cgi?id=736121
2014-09-05 14:02:11 +02:00
Cosimo Cecchi
aaf2498374 Adwaita: fix inline-toolbar backgrounds
This was lost in a recent cleanup.
2014-09-04 15:07:54 -07:00
Timm Bäder
0ed03363e4 Fontchooserbutton: baseline-align icon and label
https://bugzilla.gnome.org/show_bug.cgi?id=736056
2014-09-04 17:15:07 -04:00
Lapo Calamandrei
94da331c6a Adwaita: more translucent tooltips 2014-09-04 20:02:43 +02:00
Lapo Calamandrei
bbac2900e6 Adwaita: bottom edge hilight for selection mode buttons 2014-09-04 19:41:47 +02:00
Lapo Calamandrei
e5d34372c4 Adwaita: in app-notification padding
Adwaita now adds the `right` padding to the app notification, so it
shouldn't be set in the code via margins or whatever.
2014-09-04 19:18:13 +02:00
Lapo Calamandrei
fa415d58a2 Adwaita: flat colored buttons 2014-09-04 19:13:29 +02:00
Lapo Calamandrei
5420e48fbf Adwaita: don't color insensitive colored buttons.
Insensitive suggested or destructive action buttons make no sense,
so Adwaita doesn't color them.
2014-09-04 19:05:16 +02:00
Lapo Calamandrei
4bc437db15 Adwaita: set color on osd backdrop buttons 2014-09-04 19:00:10 +02:00
Carlos Garnacho
9629fd07e3 entry: Handle touch events on entry icons
Those used to work indirectly due to GtkEntry not setting GDK_TOUCH_MASK,
so pointer emulation would happen on those, but the event handlers on icons
and its icon-pressed/released signals have never been explicitly touch
aware, and this broke since the GDK_TOUCH_MASK can be set indirectly by
GtkGestures.

So make the icon event handler handle touch events, each icon can get hold
of one GdkEventSequence, reacting exclusively to it. This is still not
ported to GtkGesture due to GdkEvent exposure in these icon signals, as
users might expect GDK_2/3BUTTON_PRESS while GtkGesture ignores those.

Also, unset all icon pressed/sequence state on grab-notify, this used to
happen ad-hoc when initiating icon DnD, but that doesn't cut it for
user-defined reasons to initiate a grab (eg. popovers).

https://bugzilla.gnome.org/show_bug.cgi?id=736004
2014-09-04 16:43:16 +02:00
Lapo Calamandrei
0a9d60cdde Adwaita: big buttons surgey
- cover missing statusses in selection-mode and the like
- button drawing functions cleanup and extension
- remove inline toolbar (ugly) special case not needed anymore
- button selector structure simplification and rationalization
- add back shadow to window control buttons
2014-09-04 15:11:21 +02:00
Carlos Garnacho
bf8f824760 treeview: Run the row dragging gesture on the bubble phase
This is so signal handlers have an opportunity to undo its effect by
returning GDK_EVENT_STOP on ::button-press-event, just like they used
to do pre-gestures.

https://bugzilla.gnome.org/show_bug.cgi?id=735965
2014-09-04 14:59:08 +02:00
Carlos Garnacho
6f538950d4 dnd: Make the drag gesture obey the button mask specified
This was forgotten when making DnD use a GtkGesture in the handlers
attached to the widget in gtk_drag_source_set(). The gesture must obey
the specified button mask, and switch to denied state if the pressed
button isn't part of the given mask.

https://bugzilla.gnome.org/show_bug.cgi?id=735965
2014-09-04 14:59:08 +02:00
Matthias Clasen
768c0c21b5 GtkPlacesSidebar: Cancel async ops when finalized
This is the common practice for objects that start async operations.
https://bugzilla.gnome.org/show_bug.cgi?id=735953
2014-09-03 23:30:43 -04:00
Emmanuele Bassi
c68fc27719 places-sidebar: Use asynchronous API for querying bookmarks
Removes two FIXMEs, and ensures that the places sidebar does not block
while enumerating bookmarks or application shortcuts to remote volumes.

https://bugzilla.gnome.org/show_bug.cgi?id=735953
2014-09-03 23:30:43 -04:00
Matthias Clasen
6efbe745b1 Stop using the deprecated GtkTreeView:rules-hint
This was still used in the file chooser and the font chooser.
2014-09-03 23:30:43 -04:00
Matthias Clasen
bbc7cd2351 GtkEntryCompletion: Treat ::text-column specially
Using the setting for this property conflicts with the documentation
for gtk_entry_completion_set_text_column() which explicitly states
that setting the property directly behaves differently. Concretely,
this caused the file chooser entry completion popup to have two
columns (with identical content).

This partially reverts 331c28b369.
2014-09-03 22:46:38 -04:00
Matthias Clasen
1cc5cf3797 GtkLabel: better treatment for selection with ellipsis
This commit arranges things so that we treat an ellipsized
region like a single character for the purpose of selection
and cursor navigation.

https://bugzilla.gnome.org/show_bug.cgi?id=328449
2014-09-03 22:23:08 -04:00
Matthias Clasen
fc5f7cc138 GtkLabel: Make it possible to get the ellipsis range
This will be used in the next commit to expand the selection.
2014-09-03 22:23:08 -04:00
Matthias Clasen
1cddd14ab4 GtkLabel: better treatment for ellipsized links
When links are entirely hidden in an ellipsis, don't let
them be activated by clicking and skip them when moving
the focus around.

This commit depends on enhancements in pango 1.36.7 which
make it possible to find the ellipsed runs in a PangoLayout.
With older pango, things will work the same way as before.

https://bugzilla.gnome.org/show_bug.cgi?id=668258
2014-09-03 22:23:08 -04:00
Lapo Calamandrei
0ff5cf7daf Adwaita: fix path-bar buttons padding
The padding there previously made the pathbar 1px taller then
buttons, not good in general and specifically not good for
Nautilus.
2014-09-04 00:53:10 +02:00
Cosimo Cecchi
db372382e9 toolitem: set clip on allocation
So that widgets that are children of tool items can render their shadows
too.
2014-09-03 14:45:51 -07:00
Lapo Calamandrei
356e02fc78 Adwaita: more sass functions remixing 2014-09-03 20:40:43 +02:00
Lapo Calamandrei
4570806ad6 Adwaita: more usefull headerbar related functions 2014-09-03 19:41:50 +02:00
Lapo Calamandrei
aa85282bb6 Adwaita: change font-size: 82% to font-size: smaller 2014-09-03 17:01:43 +02:00
Lapo Calamandrei
34de8da7d4 Adwaita: .app-notification istead of .app-notification.frame 2014-09-03 16:02:27 +02:00
Lapo Calamandrei
f8ee954a10 Adwaita: change widget_edge() to _widget_edge()
For consistence with other "private" functions.
2014-09-03 14:27:07 +02:00
Lapo Calamandrei
58bef3a464 Adwaita: parametric bottom edge color for buttons 2014-09-03 14:22:33 +02:00
Lapo Calamandrei
6adaf4b74f Adwaita: parametric bottom edge color for entries
The entry mixin now allows to specify the color of the widget bottom
edge hilight, istead then just enable/disable it, so `$noegde: true`
now is `$egde: none` or `$edge: $somecolor`, not setting it draws
the edge with the default theme color.
2014-09-03 14:22:33 +02:00
Lapo Calamandrei
b4282be76b Adwaita: fix message dialog button linking logic 2014-09-02 23:32:50 +02:00
Lapo Calamandrei
9e8582e371 Adwaita: move %selected_items at the end of the file
To be able to use that all over the place avoiding duplication.
2014-09-02 23:28:21 +02:00
Lapo Calamandrei
d4250eecf7 Adwaita: special case button in selected list rows
Buttons on blue bg needs to have no shadow and, for the light
variant, darker borders.
2014-09-02 22:54:40 +02:00
Lapo Calamandrei
c1e831e595 Adwaita: parametric headerbar_fill highlight 2014-09-02 20:39:25 +02:00
Lapo Calamandrei
c90d8dafd8 Adwaita: turn $widget_edge into a function 2014-09-02 20:36:06 +02:00
Jasper St. Pierre
e6a0378289 gtkcssshadowvalue: Use cairo_surface_create_similar_image
Calling this on an Xlib surface allows us to keep this in SHM memory,
giving it a potential speedup so we don't have to copy it to SHM memory
for the Composite when we mask later.
2014-09-02 11:26:55 -07:00
Matthias Clasen
e742c0447e inspector: Add .ui.h files to git
Tools like damn-lies rely on being able to generate .pot files
from pristine checkouts, so everything that goes into the .pot
file has to be in git. This is not ideal, but we already do
the same for other .ui.h files in GTK+.
2014-09-02 09:53:51 -04:00
Matthias Clasen
29826d5489 Keep .ui.h files out of BUILT_SOURCES AND MAINTAINERCLEANFILES
Otherwise, git.mk will add them to .gitignore, and we want to
add them to source control for the benefit of tools like damn-lies
which rely on being able to generate a .pot file from a pristine
checkout.,
2014-09-02 09:53:51 -04:00
Lapo Calamandrei
fef85f72ee Adwaita: make entry and headerbar gradients sass functions 2014-09-02 15:21:42 +02:00
Andre Heinecke
382d68ff8e Use secrets service for cups auth_info
When a printer requires auth_info (e.g. a printer connected
    over the samba protocol) it is now possible to save the
    credentials necessary for printing if a secrets service
    is available over dbus.
    The auth_info is then stored / loaded from the default
    collection of that secrets service.
    If no such service is available the user is not shown
    the option to remember the password and the behavior
    remains the same as before.

    https://bugzilla.gnome.org/show_bug.cgi?id=674264
2014-09-01 22:39:51 +02:00
Carlos Garnacho
14b4e4d35a gtkdnd: Hardcode the DnD window onto the drag widget window on Wayland
This makes the drag widget use the same window surface that was passed
when starting the drag operation.

https://bugzilla.gnome.org/show_bug.cgi?id=697855
2014-09-01 19:50:12 +02:00
Carlos Garnacho
ee93db1659 window: Add private API to hardcode the main GdkWindow for a GtkWindow
This must be called while the window is not realized yet, and sets the
GdkWindow that will be used for the next GtkWindow's realize/unrealize
cycle. The GtkWindow takes ownership on the GdkWindow, and as such it
will be destroyed when the widget is unrealized.

https://bugzilla.gnome.org/show_bug.cgi?id=697855
2014-09-01 19:17:54 +02:00
Carlos Garnacho
f48b3cce02 wayland: Replace clipboard implementation
The wayland specific clipboard functions have been replaced by something
more similar to the hooking the win32 backend does, which allows for just
using the default GtkClipboard code in GTK+. As a consequence, the
wayland-specific GtkClipboard implementation is now gone.

https://bugzilla.gnome.org/show_bug.cgi?id=697855
2014-09-01 19:17:53 +02:00
Carlos Garnacho
bd410421d8 gtkselection: Ensure the X11 specific message length only applies to X11
Other backends are compilable together with the X11 one, so the message
lenght limit was applying to them all.

https://bugzilla.gnome.org/show_bug.cgi?id=697855
2014-09-01 19:17:53 +02:00
Lapo Calamandrei
7d1d9e26d7 Adwaita: make links on selected bg visible... 2014-09-01 19:10:50 +02:00
Lapo Calamandrei
31a26ef8a9 Adwaita: GtkFlowBox selected child styling 2014-09-01 17:43:14 +02:00
Matthias Clasen
0c417dfc30 inspector: Prevent looping when picking widgets
What was happening that the button press event that we use
to select a widget caused another clicked signal emission of
the inspect button, starting another pick action.
2014-09-01 11:39:08 -04:00
Lapo Calamandrei
87e2b37875 Adwaita: move the header-bar fill in a mixin. 2014-09-01 17:32:16 +02:00
Lapo Calamandrei
85593b2f2b Adwaita: set padding to 0 for tab buttons 2014-09-01 16:27:34 +02:00
Jasper St. Pierre
08f6dceef5 gtkcairoblur: Relicense under LGPL
Both Owen Taylor and I, the originators of this code, allow the code
herein be relicensed to the LGPL, which is what GTK+ ships with. This
prevents GTK+ from being GPL-only.
2014-08-31 19:50:37 -07:00
Jasper St. Pierre
f33eb7a373 cssshadowvalue: Fix whitespace 2014-08-31 19:50:37 -07:00
Lapo Calamandrei
db6f7296e6 Adwaita: special case checks/radios on selected bg
Add yet another set of checks and radios assets used in selected
treeview cells and selected list-rows, the standard dark variant assets
work well in those cases so no need for special casing there.
2014-08-30 14:33:20 +02:00
Matthias Clasen
a822abd308 GtkTreeView: Don't hardcode black for tree lines
Use the left border color for tree lines. This is similar to
our use of top border color for grid lines. As a side-effect,
tree lines now get recolored when they are in a selected row.

https://bugzilla.gnome.org/show_bug.cgi?id=415415
2014-08-30 02:12:41 -04:00
Matthias Clasen
8c5eb9a0d6 GtkTreeModelFilter: Documentation improvement
Clarify in the docs that some functions can only be called
once for a given filter model.

https://bugzilla.gnome.org/show_bug.cgi?id=346886
2014-08-30 01:59:05 -04:00
Matthias Clasen
1c1b51d52d Don't return from a void function
And don't return the value of void functions, either.
2014-08-30 00:53:35 -04:00
Matthias Clasen
e014b89310 Move gtkthemingengine to deprecated directory
This is the place for wholly-deprecated sources.
2014-08-29 16:35:37 -04:00
Matthias Clasen
bdf35e034a GtkAboutDialog: Add formatting examples to the docs
We were not very explicit about the expected format for links
and email addresses in the strings, so give some explicit examples.
2014-08-29 15:11:11 -04:00
Lapo Calamandrei
4d608ad722 Adwaita: no edge hilight for checks and radios in list-rows 2014-08-29 19:48:11 +02:00
Lapo Calamandrei
2de06993d5 Adwaita: titlebutton are flat image-buttons
Hence treat them like those, a bunch of special case styling
removed, which also doesn't override selection mode buttons
styling.
2014-08-29 16:52:21 +02:00
Lapo Calamandrei
c5893e5dc1 Adwaita: style GtkLabel.separator
Fixes gnome-document search popup titles.
2014-08-29 15:32:45 +02:00