Commit Graph

34152 Commits

Author SHA1 Message Date
Matthias Clasen
aeddd3e48b 3.8.9 3.8.9 2014-01-27 15:18:10 -05:00
Ignacio Casal Quinteiro
4a42503509 win32: handle again gtk-font-name
This code is ugly but it seems to do the work
2014-01-27 09:45:28 +01:00
Ignacio Casal Quinteiro
87eae26934 win32: scale slider with marks was off by 2 pixels 2014-01-27 09:40:21 +01:00
Ignacio Casal Quinteiro
799d1f7adb win32: actually match the separator 2014-01-24 21:59:46 +01:00
Ignacio Casal Quinteiro
9fde11c4c1 win32: set color for scale marks 2014-01-24 21:55:00 +01:00
Ignacio Casal Quinteiro
5c25c0ad9a win32: add margin to scale trough 2014-01-24 21:54:56 +01:00
Ignacio Casal Quinteiro
40b3e69a09 win32: add more width to the slider to not cut it when using marks 2014-01-24 21:54:46 +01:00
Chun-wei Fan
dcec13444f gtk.vcxprojin: Fix Missing Semicolon 2013-12-30 12:33:22 +08:00
Benjamin Otte
5ea59fb1dd configure: Bump micro_version
This was apparently forgotten in commit f5fb6db1e
2013-12-13 16:59:09 +01:00
Carlos Garnacho
26fa630c65 x11: Handle XINotifyPassiveGrab/Ungrab in focus events
The focus handling code is shared between core and XI2 implementations,
so just handle the extra XI2 types for passive grabs. Those must be dealt
with in the same way than active grabs. Focus events with this crossing
mode could happen currently through the XIGrabFocusIn passive grab.

https://bugzilla.gnome.org/show_bug.cgi?id=719762
2013-12-04 21:45:34 -05:00
Carlos Garnacho
860d987001 x11: Handle all XI2 crossing mode values in switch
This fixes potential assertions if a GTK+ app gets to receive
a XINotifyPassiveGrab/Ungrab pointer crossing event, currently
triggerable by XIGrabEnter passive grabs.

http://bugzilla.gnome.org/show_bug.cgi?id=719762
2013-12-04 21:45:25 -05:00
Chun-wei Fan
27b5e17404 build/win32/vs*/README.txt: Re-word a bit
Use PATH rather than path to make things clearer
2013-11-29 10:10:34 +08:00
Chun-wei Fan
e071a0c117 Visual C++ Projects: Add rules to generate GTK DBus sources
Since commit c66f194d the gtkdbusgenerated.[c|h] are not included in the
dist tarball and thus have to be generated, which broke the Visual C++
builds.

This patch adds custom build rules for the Visual C++ projects so that
gtkdbusgenerated.[c|h] will be generated upon building the GTK+ DLL
sources, so that the build will be fixed.

This also tells people building GTK+ from the projects that they need
to have Python 2/3 installed and the Python interpretor needs to be in
their PATH before building GTK+ from the projects.
2013-11-29 10:10:13 +08:00
Matthias Clasen
f5fb6db1e3 Bump version 2013-11-26 21:06:00 -05:00
Matthias Clasen
09ed01e8a7 3.8.8 3.8.8 2013-11-26 20:47:50 -05:00
Marek Kasik
9feda1c92c printing: Fix memory leak when listing Avahi printers
Return values of g_variant_get_child_value() were not unreffed
correctly together with one value returned by g_variant_get().
Use g_variant_get_data() instead of copying each byte separately.

https://bugzilla.gnome.org/show_bug.cgi?id=712799
2013-11-26 14:23:44 +01:00
Carlos Garnacho
0f02cd2bcb x11: Unset GdkX11DeviceXI2 scroll valuators on device change
Scroll valuators were being just appended again and again, leading
to 1) a growing memory issue anytime a device changed 2) the first
scroll valuators to stay permanent on the application lifetime, as
the first stored valuators would always match.

https://bugzilla.gnome.org/show_bug.cgi?id=705203
2013-11-25 17:54:07 +01:00
Carlos Garnacho
a20e7634b6 x11: keep track of the screen pixel size by calculating the bounding box of monitors
This is so we always have the latest information given by XRandR (or other), and not
rely on Core protocol information that might not have been updated yet.

This is specially visible when a monitor is connected (less frequent) or disconnected
(much more frequent), callbacks on GdkScreen::monitors-changed that call
gdk_screen_get_width/height() could get the screen size previous to the monitor
rearrangement.

So in order to fix this, keep track of the latest monitors information, and calculate
the bounding box in order to know the screen size.

https://bugzilla.gnome.org/show_bug.cgi?id=715029
2013-11-25 17:44:16 +01:00
Matthias Clasen
e8b69526c2 3.8.7 3.8.7 2013-11-20 20:06:16 -05:00
Matthias Clasen
c66f194d05 Don't distribute gdbus-generated sources
These are supposed to be regenerated at build time,
to avoid dependencies on the dist-systems glib version.
2013-11-20 20:06:11 -05:00
Matthias Clasen
c55784626a treeview: fix dragging of columns in mutter
Don't recurse the mainloop in _gtk_tree_view_column_start_drag().
It doesn't serve any discernible purpose, and recursing the
mainloop from the flush-events phas of the frame clock breaks
frame synchronization with mutter.

https://bugzilla.gnome.org/show_bug.cgi?id=705176
2013-11-20 19:28:18 -05:00
Carlos Garcia Campos
29d6eec09a gtkprintbackendfile: Check the GtkPrintSettings passed to file_printer_get_options is not NULL before using it
https://bugzilla.gnome.org/show_bug.cgi?id=703784
2013-11-20 19:27:48 -05:00
Chenthill Palanisamy
a2420a40da Do not reset the waiting_for_printer on status change
* gtk/gtkprintunixdialog.c (printer_status_cb): Do not reset the
waiting_for_printer on status change as the default printer might
get added later.

https://bugzilla.gnome.org/show_bug.cgi?id=577642
2013-11-20 19:27:31 -05:00
Matthias Clasen
7e0434cfcd Make treeview cursor handling a bit more robust
Clearing the model in a GtkTreeSelection::changed handler was
crashing. While it is not a 100% kosher thing to do, lets be
more robust here.
2013-11-20 19:27:17 -05:00
Carlos Garnacho
d95b84c0ea combobox: Set GDK_SCROLL_MASK on the eventbox in appears-as-list mode
This is so the scroll wheel works in both modes, and there's no behavioral
change depending on a style property.

https://bugzilla.gnome.org/show_bug.cgi?id=702663
2013-11-20 13:26:06 +01:00
Carlos Garnacho
81b7c4e40b gdk: Ignore crossings generated by passive grabs when resetting scroll axes
Passive grabs may take pointer focus out of the application, even though
the pointer didn't leave the window, but those events still trigger resetting
of the scroll axes. This is most visible with compiz, and possibly other
reparenting WMs, where passive grabs happen on the WM-managed window that
is a parent of the application toplevel.

As it is not possible to have scrolling happening on the timespan a passive
grab takes action, it is entirely safe for GTK+ to assume none happened if
it gets a crossing event of that nature.

https://bugzilla.gnome.org/show_bug.cgi?id=699574#c33
2013-11-19 00:15:29 +01:00
Carlos Garnacho
198ad4df90 gdk: be more selective resetting scroll events
It's been reported in several applications that scrolling feels jerky
since commit cc7b3985b3.

Investigation reported that the combination of passive 4-7 button grabs
on the toplevel and the presence of native subwindows might trigger
too often crossing events from the child window to the toplevel and
back as scroll "buttons" trigger the passive grab. Those crossing events
would reset the scroll valuators rendering scrolling from jerky on
touchpads (where there's intermediate smooth events between the emulated
button ones) to ineffective on regular mouse wheels (where the crossing
event would reset the valuators right before the single smooth scroll
event we get is delivered)

So, only reset scroll valuators when the pointer enters the toplevel
(we only care about this when the pointer is on the window after it's
been possibly scrolling somewhere else), and it doesn't come from an
inferior.

The situations where this happened varied though, the native subwindow
could be one created explicitly by the application, or created indirectly
through gdk_window_ensure_native(). The latter was mainly the case for
evolution (through gtk_selection_set_owner()) and any GtkScrolledWindow
under the oxygen-gtk3 theme (through gdk_window_set_composited())

https://bugzilla.gnome.org/show_bug.cgi?id=699574
2013-11-19 00:15:18 +01:00
Matthias Clasen
cf962321e8 GtkAboutDialog: Fix a corner case of link highlighting
GtkAboutDialog highlights emails written as <...> and
urls written as http://... . gnome-terminal manages to
put <http://...> into its license text, which sadly
confuses the parser into running evolution on http://...

Fix things up far enough that <http://...> is now
recognized as url, and only the part inside the <> is
underlined (for email addresses, we include the <> in
the underline).
2013-11-15 17:06:15 -05:00
Sebastien Bacher
4b880d50f1 Clean incorrect "_" use in the french translation
https://bugzilla.gnome.org/show_bug.cgi?id=712213
2013-11-13 16:34:12 +01:00
Lars Uebernickel
37675d8227 GtkModelMenu: don't leak submenus
gtk_container_remove_child() is not enough to break the reference cycle
between the removed menu item and the submenu that is attached to it.
Use gtk_widget_destroy() instead.

https://bugzilla.gnome.org/show_bug.cgi?id=710754
2013-10-25 10:03:00 -04:00
Bastien Nocera
d4c049059f GtkScrolledWindow: Disconnect from frame clock properly
The tick callback IDs from GtkWidget aren't timeouts, so
use the correct function to disconnect from them.

Spotted by Benjamin Otte <otte@redhat.com>

https://bugzilla.gnome.org/show_bug.cgi?id=710666
2013-10-23 15:24:37 +02:00
Bastien Nocera
2ca82e6ddf GtkWidget: Avoid lingering clock frame updates
For some widgets, like GtkTreeView, which setup a clock frame
update during realize, it was possible to call
gdk_frame_clock_begin_updating() twice, but only ever disconnecting
from it once. This happens because the realized flag is set at an
unpredictable time by the GtkWidget's realize implementation.

Keep the signal handler ID from us connecting to the "update" signal
to avoid connecting to it twice.

This fixes high wake-up count from any application using GtkTreeView,
even idle ones.

https://bugzilla.gnome.org/show_bug.cgi?id=710666
2013-10-23 15:24:32 +02:00
Matthias Clasen
2898b2bbd8 Bump version 2013-10-16 21:32:05 -04:00
Matthias Clasen
a411d6b199 3.8.6 3.8.6 2013-10-16 20:34:12 -04:00
Olivier Brunel
4c691ac8f8 tooltip: Fix possible wrong placement
When showing a tooltip on the edge of a monitor, the tooltip could be wrongly
placed and be shown going from one monitor to the next.

This happened because the current_window wasn't set visible, and when it wasn't
the returned allocated size would be 1, hence wrong calculations.

Signed-off-by: Olivier Brunel <jjk@jjacky.com>

https://bugzilla.gnome.org/show_bug.cgi?id=698730
2013-10-16 19:54:20 -04:00
Yosef Or Boczko
16be72eb13 Fix a warning
The PangoWrapMode enum has identical layout to GtkWrapMode,
but using the two interchangably causes (justified) compiler
warnings.

https://bugzilla.gnome.org/show_bug.cgi?id=709697
2013-10-16 19:54:06 -04:00
Matthias Clasen
4c796df901 Set an error when loading a GtkIconInfo fails
Failure to do so leads to assertion failures.
https://bugzilla.gnome.org/show_bug.cgi?id=710073
2013-10-16 19:53:33 -04:00
Matthias Clasen
fc4263535b Fix a crash in icon handling
The load_error was freed in two places.
Fix based on a patch in
https://bugzilla.gnome.org/show_bug.cgi?id=709967
2013-10-16 19:52:41 -04:00
Matthias Clasen
13a56fb3a2 Bump version 2013-10-10 20:16:12 -04:00
Matthias Clasen
5135522de6 3.8.5 3.8.5 2013-10-10 19:55:43 -04:00
Timothy Arceri
caadbdf630 Remove unused function
https://bugzilla.gnome.org/show_bug.cgi?id=586107
Signed-off-by: Timothy Arceri <t_arceri@yahoo.com.au>
2013-10-10 17:58:52 -04:00
Timothy Arceri
f6f23149a2 Remove a bunch of unused variables.
https://bugzilla.gnome.org/show_bug.cgi?id=586107
Signed-off-by: Timothy Arceri <t_arceri@yahoo.com.au>
2013-10-10 17:58:37 -04:00
Timothy Arceri
0bddd31389 Dont set enum to NULL fixes build issues on Solaris 10
https://bugzilla.gnome.org/show_bug.cgi?id=586107
Signed-off-by: Timothy Arceri <t_arceri@yahoo.com.au>
2013-10-10 17:58:31 -04:00
Timothy Arceri
4de2154368 Reorder message in configure.ac to display result on the same line
https://bugzilla.gnome.org/show_bug.cgi?id=341146

Signed-off-by: Timothy Arceri <t_arceri@yahoo.com.au>
2013-10-10 17:58:18 -04:00
William Jon McCann
84a651caf1 Fix typo in gtk-win32-base.css 2013-10-10 17:57:59 -04:00
Cosimo Cecchi
80aca3be77 entrycompletion: set the GtkWindow as attached to the GtkEntry
This way themes can easily select that window to apply custom styles.

https://bugzilla.gnome.org/show_bug.cgi?id=708414
2013-10-10 17:56:50 -04:00
Cosimo Cecchi
ce69a803a7 icontheme: use g_file_load_contents() for symbolic icons
When loading a symbolic icon, g_file_get_contents() is currently used
with the icon pathname, to load its SVG data. This won't work when the
icon is not a local file, for instance when a symbolic icon is loaded
from a GFileIcon with a GResource path.
Fortunately GtkIconInfo already holds a GFile, so we can just use
g_file_load_contents() to load the data instead.

https://bugzilla.gnome.org/show_bug.cgi?id=709056
2013-10-10 17:56:41 -04:00
Ryan Lortie
5e556d778a GtkTreeViewColumn: start padding at 0
If we start with a padding of -1 then it can leak out of the size
allocation request for the column when the treeview is empty.  The
GtkTreeView will then collect these -1 values and add them together,
returning -n where 'n' is the number of columns.

This is usually not a problem because treeviews tend to be used with a
scrollbar and the width of the scrollbar will be added to this number
bringing it into positive territory again.  On Ubuntu, with overlay
scrollbars, this is not the case, however.

https://bugzilla.gnome.org/show_bug.cgi?id=703062
2013-10-10 17:55:28 -04:00
Philip Chimento
5b2e44fd44 Don't activate GtkExpander if mouse dragged away
Previously, when you clicked and held the button down on a
GtkExpander's label or disclosure triangle, then moved the mouse
away and released the button, the expander would still activate.
This brings the behavior in line with the more generally expected
behavior, as exhibited by GtkButton for example.

https://bugzilla.gnome.org/show_bug.cgi?id=706345
2013-10-10 17:53:43 -04:00
Matthias Clasen
124e43d078 Clarify GtkH/VBox documentation
Make it clearer that GtkBox still has uses.

https://bugzilla.gnome.org/show_bug.cgi?id=706269
2013-10-10 17:53:28 -04:00