Drop old files left over from svn conversion
This commit is contained in:
5
debian/docs
vendored
5
debian/docs
vendored
@ -1,5 +0,0 @@
|
||||
build-tree/gtk+-2.8.7/NEWS
|
||||
build-tree/gtk+-2.8.7/README
|
||||
build-tree/gtk+-2.8.7/ChangeLog.pre-1-0
|
||||
build-tree/gtk+-2.8.7/ChangeLog.pre-1-2
|
||||
build-tree/gtk+-2.8.7/ChangeLog.pre-2-0
|
5
debian/docs.in
vendored
5
debian/docs.in
vendored
@ -1,5 +0,0 @@
|
||||
build-tree/gtk+-@VERSION@/NEWS
|
||||
build-tree/gtk+-@VERSION@/README
|
||||
build-tree/gtk+-@VERSION@/ChangeLog.pre-1-0
|
||||
build-tree/gtk+-@VERSION@/ChangeLog.pre-1-2
|
||||
build-tree/gtk+-@VERSION@/ChangeLog.pre-2-0
|
215
debian/gtk-faq.devhelp
vendored
215
debian/gtk-faq.devhelp
vendored
@ -1,215 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<book title="GTK+ FAQ"
|
||||
name="gtk-faq"
|
||||
link="book1.html">
|
||||
<chapters>
|
||||
<sub name="General Information" link="c20.html">
|
||||
<sub name="Note: This FAQ is undergoing conversion to GTK+ 2.x" link="c20.html#AEN22"/>
|
||||
<sub name="Before anything else: the greetings" link="x26.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
<sub name="Authors" link="x52.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
<sub name="What is GTK+?" link="x81.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
<sub name="What is the + in GTK+?" link="x90.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
<sub name="Does the G in GTK+, GDK and GLib stand for?" link="x98.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
<sub name="Where is the documentation for GTK+?" link="x104.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
<sub name="Is there a mailing list (or mailing list archive) for
|
||||
GTK+?" link="x132.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
<sub name="How to get help with GTK+" link="x137.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
<sub name="How to report bugs in GTK+" link="x141.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
<sub name="Is there a Windows version of GTK+?" link="x157.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
<sub name="What applications have been written with GTK+?" link="x165.html"/>
|
||||
<sub name="[GTK 2.x]" link="x165.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="How to find, configure, install, and troubleshoot GTK+" link="c192.html">
|
||||
<sub name="What do I need to compile GTK+?" link="c192.html#FAQ-COMPILE"/>
|
||||
<sub name="[GTK 2.x]" link="x306.html"/>
|
||||
<sub name="Where can I get GTK+?" link="x234.html"/>
|
||||
<sub name="[GTK 2.x]" link="x306.html"/>
|
||||
<sub name="How do I configure/compile GTK+?" link="x261.html"/>
|
||||
<sub name="[GTK 2.x]" link="x306.html"/>
|
||||
<sub name="When compiling GTK+ I get an error like:" link="x278.html"/>
|
||||
<sub name="make:
|
||||
file `Makefile' line 456: Syntax error" link="x278.html"/>
|
||||
<sub name="[GTK 2.x]" link="x306.html"/>
|
||||
<sub name="I've compiled and installed GTK+, but I can't get any
|
||||
programs to link with it!" link="x284.html"/>
|
||||
<sub name="[GTK 2.x]" link="x306.html"/>
|
||||
<sub name="When installing a GTK+ application, configure reports
|
||||
that it can't find GTK." link="x306.html"/>
|
||||
<sub name="[GTK 2.x]" link="x306.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Development of GTK+" link="c323.html">
|
||||
<sub name="Whats this CVS thing that everyone keeps talking about,
|
||||
and how do I access it?" link="c323.html#AEN325"/>
|
||||
<sub name="[GTK 2.x]" link="x381.html"/>
|
||||
<sub name="How can I contribute to GTK+?" link="x359.html"/>
|
||||
<sub name="[GTK 2.x]" link="x381.html"/>
|
||||
<sub name="How do I know if my patch got applied, and if not, why
|
||||
not?" link="x367.html"/>
|
||||
<sub name="[GTK 2.x]" link="x381.html"/>
|
||||
<sub name="What is the policy on incorporating new widgets into
|
||||
the library?" link="x373.html"/>
|
||||
<sub name="[GTK 2.x]" link="x381.html"/>
|
||||
<sub name="Is anyone working on bindings for languages other than
|
||||
C?" link="x381.html"/>
|
||||
<sub name="[GTK 2.x]" link="x381.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Development with GTK+: the begining" link="c387.html">
|
||||
<sub name="How do I get started?" link="c387.html#AEN389"/>
|
||||
<sub name="[GTK 2.x]" link="x462.html"/>
|
||||
<sub name="How do I use the Glade GUI builder with GTK+?" link="x395.html"/>
|
||||
<sub name="[GTK 2.x]" link="x462.html"/>
|
||||
<sub name="How do I write security sensitive/SUID/SGID programs with GTK+?
|
||||
Is GTK+ secure? What's this GTK_MODULES security hole I heard about?" link="x402.html"/>
|
||||
<sub name="[GTK 2.x]" link="x462.html"/>
|
||||
<sub name="I tried to compile a small" link="x409.html"/>
|
||||
<sub name="Hello World" link="x409.html"/>
|
||||
<sub name="of mine,
|
||||
but it failed. Any clue?" link="x409.html"/>
|
||||
<sub name="[GTK 2.x]" link="x462.html"/>
|
||||
<sub name="What about using the" link="x426.html"/>
|
||||
<sub name="make" link="x426.html"/>
|
||||
<sub name="utility?" link="x426.html"/>
|
||||
<sub name="[GTK 2.x]" link="x462.html"/>
|
||||
<sub name="I use the backquote stuff in my makefiles, but my make
|
||||
process failed." link="x434.html"/>
|
||||
<sub name="[GTK 2.x]" link="x462.html"/>
|
||||
<sub name="I want to add some configure stuff, how could I do
|
||||
this?" link="x440.html"/>
|
||||
<sub name="[GTK 2.x]" link="x462.html"/>
|
||||
<sub name="I try to debug my GTK+ application with gdb, but it
|
||||
hangs my X server when I hit some breakpoint. Any
|
||||
Idea?" link="x462.html"/>
|
||||
<sub name="[GTK 2.x]" link="x462.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Development with GTK+: general questions" link="c476.html">
|
||||
<sub name="What widgets are in GTK?" link="c476.html#AEN478"/>
|
||||
<sub name="Is GTK+ thread safe? How do I write multi-threaded GTK+
|
||||
applications?" link="x482.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="I'm doing some stuff with GTK+ in a separate thread, and
|
||||
properly locking with gdk_threads_enter/gdk_threads_leave()
|
||||
but the display doesn't update properly." link="x492.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="What's an easy way to run a function in the thread with
|
||||
the main loop?" link="x500.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="Why does this strange 'x io error' occur when I" link="x506.html"/>
|
||||
<sub name="fork()" link="x506.html"/>
|
||||
<sub name="in my GTK+ app?" link="x506.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="Why don't the contents of a button move when the button
|
||||
is pressed? Here's a patch to make it work that way..." link="x519.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="How do I identifiy a widgets top level window or other
|
||||
ancestor?" link="x527.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="How do I get the Window ID of a GtkWindow?" link="x540.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="How do I catch a double click event?" link="x545.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="By the way, what are the differences between signals
|
||||
and events?" link="x556.html"/>
|
||||
<sub name="Data I pass to the" link="x567.html"/>
|
||||
<sub name="delete_event" link="x567.html"/>
|
||||
<sub name="(or other event)
|
||||
handler gets corrupted." link="x567.html"/>
|
||||
<sub name="I have my signal connected to the the (whatever) event,
|
||||
but it seems I don't catch it. What's wrong?" link="x573.html"/>
|
||||
<sub name="I need to add a new signal to a GTK+ widget. Any
|
||||
idea?" link="x581.html"/>
|
||||
<sub name="Is it possible to get some text displayed which is
|
||||
truncated to fit inside its allocation?" link="x591.html"/>
|
||||
<sub name="How do I make my window modal? / How do I make a single
|
||||
window active?" link="x597.html"/>
|
||||
<sub name="Why doesn't my widget (e.g. progressbar)
|
||||
update?" link="x602.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="How do I attach data to some GTK+ object/widget?" link="x611.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="How do I remove the data I have attached to an
|
||||
object?" link="x624.html"/>
|
||||
<sub name="How do I reparent a widget?" link="x636.html"/>
|
||||
<sub name="How could I get any widgets position?" link="x643.html"/>
|
||||
<sub name="How do I set the size of a widget/window? How do I
|
||||
prevent the user resizing my window?" link="x663.html"/>
|
||||
<sub name="[GTK 2.x]" link="x663.html"/>
|
||||
<sub name="How do I add a popup menu to my GTK+ application?" link="x670.html"/>
|
||||
<sub name="How do I disable or enable a widget, such as a
|
||||
button?" link="x675.html"/>
|
||||
<sub name="Shouldn't the text argument in the gtk_clist_*
|
||||
functions be declared const?" link="x679.html"/>
|
||||
<sub name="How do I render pixels (image data) to the
|
||||
screen?" link="x685.html"/>
|
||||
<sub name="How do I create a pixmap without having my window being
|
||||
realized/shown?" link="x691.html"/>
|
||||
<sub name="How do I do drag-and-drop?" link="x697.html"/>
|
||||
<sub name="Why does GTK+/GLib leak memory?" link="x703.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Development with GTK+: widget specific questions" link="c708.html">
|
||||
<sub name="How do I find out about the selection of a GtkList?" link="c708.html#AEN710"/>
|
||||
<sub name="How do I stop the column headings of a GtkCList
|
||||
disappearing when the list is scrolled?" link="x747.html"/>
|
||||
<sub name="I don't want the user of my applications to enter text
|
||||
into a GtkCombo. Any idea?" link="x753.html"/>
|
||||
<sub name="How do I catch a combo box change?" link="x760.html"/>
|
||||
<sub name="How can I define a separation line in a menu?" link="x770.html"/>
|
||||
<sub name="How can I right justify a menu, such as Help?" link="x775.html"/>
|
||||
<sub name="How do I add some underlined accelerators to menu
|
||||
items?" link="x781.html"/>
|
||||
<sub name="How can I retrieve the text from a GtkMenuItem?" link="x789.html"/>
|
||||
<sub name="How do I right (or otherwise) justify a
|
||||
GtkLabel?" link="x799.html"/>
|
||||
<sub name="How do I set the background color of a GtkLabel
|
||||
widget?" link="x811.html"/>
|
||||
<sub name="How do I set the color and font of a GtkLabel using a
|
||||
Resource File?" link="x815.html"/>
|
||||
<sub name="How do I configure Tooltips in a Resource File?" link="x829.html"/>
|
||||
<sub name="I can't add more than (something like) 2000 chars in a
|
||||
GtkEntry. What's wrong?" link="x834.html"/>
|
||||
<sub name="How do I make a GtkEntry widget activate on pressing
|
||||
the Return key?" link="x839.html"/>
|
||||
<sub name="How do I validate/limit/filter the input to a GtkEntry?" link="x843.html"/>
|
||||
<sub name="[GTK 2.x]" link="x843.html"/>
|
||||
<sub name="How do I use horizontal scrollbars with a GtkText widget?" link="x848.html"/>
|
||||
<sub name="How do I change the font of a GtkText widget?" link="x851.html"/>
|
||||
<sub name="How do I set the cursor position in a GtkText
|
||||
object?" link="x857.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="About GDK" link="c867.html">
|
||||
<sub name="What is GDK?" link="c867.html#AEN869"/>
|
||||
<sub name="How do I use color allocation?" link="x872.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="About GLib" link="c876.html">
|
||||
<sub name="What is GLib?" link="c876.html#AEN878"/>
|
||||
<sub name="How can I use the doubly linked lists?" link="x895.html"/>
|
||||
<sub name="Memory does not seem to be released when I free the
|
||||
list nodes I've allocated" link="x902.html"/>
|
||||
<sub name="Why use g_print, g_malloc, g_strdup and fellow glib
|
||||
functions?" link="x909.html"/>
|
||||
<sub name="What's a GScanner and how do I use one?" link="x919.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="GTK+ FAQ Contributions, Maintainers and Copyright" link="c958.html">
|
||||
</sub>
|
||||
|
||||
</chapters>
|
||||
|
||||
</book>
|
284
debian/gtk-tutorial.devhelp
vendored
284
debian/gtk-tutorial.devhelp
vendored
@ -1,284 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<book title="GTK+ 2.0 Tutorial"
|
||||
name="gtk-tutorial"
|
||||
link="book1.html">
|
||||
<chapters>
|
||||
<sub name="Tutorial Availability" link="c17.html">
|
||||
</sub>
|
||||
|
||||
<sub name="Introduction" link="c24.html">
|
||||
</sub>
|
||||
|
||||
<sub name="Getting Started" link="c58.html">
|
||||
<sub name="Hello World in GTK" link="c58.html#SEC-HELLOWORLD"/>
|
||||
<sub name="Compiling Hello World" link="x130.html"/>
|
||||
<sub name="Theory of Signals and Callbacks" link="x178.html"/>
|
||||
<sub name="Events" link="x201.html"/>
|
||||
<sub name="Stepping Through Hello World" link="x300.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Moving On" link="c345.html">
|
||||
<sub name="Data Types" link="c345.html#SEC-DATATYPES"/>
|
||||
<sub name="More on Signal Handlers" link="x354.html"/>
|
||||
<sub name="An Upgraded Hello World" link="x364.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Packing Widgets" link="c374.html">
|
||||
<sub name="Theory of Packing Boxes" link="c374.html#SEC-THEORYOFPACKINGBOXES"/>
|
||||
<sub name="Details of Boxes" link="x383.html"/>
|
||||
<sub name="Packing Demonstration Program" link="x406.html"/>
|
||||
<sub name="Packing Using Tables" link="x409.html"/>
|
||||
<sub name="Table Packing Example" link="x461.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Widget Overview" link="c470.html">
|
||||
<sub name="Casting" link="c470.html#SEC-CASTING"/>
|
||||
<sub name="Widget Hierarchy" link="x498.html"/>
|
||||
<sub name="Widgets Without Windows" link="x502.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="The Button Widget" link="c510.html">
|
||||
<sub name="Normal Buttons" link="c510.html#SEC-NORMALBUTTONS"/>
|
||||
<sub name="Toggle Buttons" link="x539.html"/>
|
||||
<sub name="Check Buttons" link="x556.html"/>
|
||||
<sub name="Radio Buttons" link="x563.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Adjustments" link="c584.html">
|
||||
<sub name="Creating an Adjustment" link="c584.html#SEC-CREATINGANADJUSTMENT"/>
|
||||
<sub name="Using Adjustments the Easy Way" link="x608.html"/>
|
||||
<sub name="Adjustment Internals" link="x623.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Range Widgets" link="c654.html">
|
||||
<sub name="Scrollbar Widgets" link="c654.html#SEC-SCROLLBARWIDGETS"/>
|
||||
<sub name="Scale Widgets" link="x666.html">
|
||||
<sub name="Creating a Scale Widget" link="x666.html#AEN669"/>
|
||||
<sub name="Functions and Signals (well, functions, at least)" link="x666.html#AEN681"/>
|
||||
</sub>
|
||||
<sub name="Common Range Functions" link="x705.html">
|
||||
<sub name="Setting the Update Policy" link="x705.html#AEN709"/>
|
||||
<sub name="Getting and Setting Adjustments" link="x705.html#AEN734"/>
|
||||
</sub>
|
||||
<sub name="Key and Mouse bindings" link="x746.html"/>
|
||||
<sub name="Example" link="x764.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Miscellaneous Widgets" link="c774.html">
|
||||
<sub name="Labels" link="c774.html#SEC-LABELS"/>
|
||||
<sub name="Arrows" link="x814.html"/>
|
||||
<sub name="The Tooltips Object" link="x831.html"/>
|
||||
<sub name="Progress Bars" link="x850.html"/>
|
||||
<sub name="Dialogs" link="x882.html"/>
|
||||
<sub name="Rulers" link="x912.html"/>
|
||||
<sub name="Statusbars" link="x940.html"/>
|
||||
<sub name="Text Entries" link="x960.html"/>
|
||||
<sub name="Spin Buttons" link="x988.html"/>
|
||||
<sub name="Combo Box" link="x1084.html"/>
|
||||
<sub name="Calendar" link="x1121.html"/>
|
||||
<sub name="Color Selection" link="x1205.html"/>
|
||||
<sub name="File Selections" link="x1228.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Container Widgets" link="c1247.html">
|
||||
<sub name="The EventBox" link="c1247.html#SEC-EVENTBOX"/>
|
||||
<sub name="The Alignment widget" link="x1264.html"/>
|
||||
<sub name="Fixed Container" link="x1279.html"/>
|
||||
<sub name="Layout Container" link="x1300.html"/>
|
||||
<sub name="Frames" link="x1312.html"/>
|
||||
<sub name="Aspect Frames" link="x1338.html"/>
|
||||
<sub name="Paned Window Widgets" link="x1356.html"/>
|
||||
<sub name="Viewports" link="x1373.html"/>
|
||||
<sub name="Scrolled Windows" link="x1389.html"/>
|
||||
<sub name="Button Boxes" link="x1411.html"/>
|
||||
<sub name="Toolbar" link="x1423.html"/>
|
||||
<sub name="Notebooks" link="x1471.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Menu Widget" link="c1520.html">
|
||||
<sub name="Manual Menu Creation" link="c1520.html#SEC-MANUALMENUCREATION"/>
|
||||
<sub name="Manual Menu Example" link="x1598.html"/>
|
||||
<sub name="Using ItemFactory" link="x1607.html">
|
||||
<sub name="ItemFactory entries" link="x1607.html#SEC-ITEMFACTORYENTRIES"/>
|
||||
<sub name="Creating an ItemFactory" link="x1607.html#SEC-ITEMFACTORYCREATION"/>
|
||||
<sub name="Making use of the menu and its menu items" link="x1607.html#SEC-USINGMENUANDITEMS"/>
|
||||
</sub>
|
||||
<sub name="Item Factory Example" link="x1718.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Undocumented Widgets" link="c1722.html">
|
||||
<sub name="Accel Label" link="c1722.html#SEC-ACCELLABEL"/>
|
||||
<sub name="Option Menu" link="x1730.html"/>
|
||||
<sub name="Menu Items" link="x1733.html">
|
||||
<sub name="Check Menu Item" link="x1733.html#SEC-CHECKMENUITEM"/>
|
||||
<sub name="Radio Menu Item" link="x1733.html#SEC-RADIOMENUITEM"/>
|
||||
<sub name="Separator Menu Item" link="x1733.html#SEC-SEPARATORMENUITEM"/>
|
||||
<sub name="Tearoff Menu Item" link="x1733.html#SEC-TEAROFFMENUITEM"/>
|
||||
</sub>
|
||||
<sub name="Curves" link="x1748.html"/>
|
||||
<sub name="Drawing Area" link="x1751.html"/>
|
||||
<sub name="Font Selection Dialog" link="x1754.html"/>
|
||||
<sub name="Message Dialog" link="x1757.html"/>
|
||||
<sub name="Gamma Curve" link="x1760.html"/>
|
||||
<sub name="Image" link="x1763.html"/>
|
||||
<sub name="Plugs and Sockets" link="x1766.html"/>
|
||||
<sub name="Tree View" link="x1769.html"/>
|
||||
<sub name="Text View" link="x1772.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Setting Widget Attributes" link="c1775.html">
|
||||
</sub>
|
||||
|
||||
<sub name="Timeouts, IO and Idle Functions" link="c1780.html">
|
||||
<sub name="Timeouts" link="c1780.html#SEC-TIMEOUTS"/>
|
||||
<sub name="Monitoring IO" link="x1791.html"/>
|
||||
<sub name="Idle Functions" link="x1811.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Advanced Event and Signal Handling" link="c1818.html">
|
||||
<sub name="Signal Functions" link="c1818.html#SEC-SIGNALFUNCTIONS">
|
||||
<sub name="Connecting and Disconnecting Signal Handlers" link="c1818.html#AEN1822"/>
|
||||
<sub name="Blocking and Unblocking Signal Handlers" link="c1818.html#AEN1825"/>
|
||||
<sub name="Emitting and Stopping Signals" link="c1818.html#AEN1828"/>
|
||||
</sub>
|
||||
<sub name="Signal Emission and Propagation" link="x1831.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Managing Selections" link="c1855.html">
|
||||
<sub name="Overview" link="c1855.html#SEC-SELECTIONSOVERVIEW"/>
|
||||
<sub name="Retrieving the selection" link="x1871.html"/>
|
||||
<sub name="Supplying the selection" link="x1894.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Drag-and-drop (DND)" link="c1920.html">
|
||||
<sub name="Overview" link="c1920.html#SEC-DRAGANDDROPOVERVIEW"/>
|
||||
<sub name="Properties" link="x1942.html"/>
|
||||
<sub name="Functions" link="x1960.html">
|
||||
<sub name="Setting up the source widget" link="x1960.html#SEC-DNDSOURCEWIDGETS"/>
|
||||
<sub name="Signals on the source widget:" link="x1960.html#SEC-SIGNALSONSOURCEWIDGETS"/>
|
||||
<sub name="Setting up a destination widget:" link="x1960.html#SEC-DNDDESTWIDGETS"/>
|
||||
<sub name="Signals on the destination widget:" link="x1960.html#SEC-SIGNALSONDESTWIDGETS"/>
|
||||
</sub>
|
||||
</sub>
|
||||
|
||||
<sub name="GLib" link="c2044.html">
|
||||
<sub name="Definitions" link="c2044.html#SEC-DEFINITIONS"/>
|
||||
<sub name="Doubly Linked Lists" link="x2056.html"/>
|
||||
<sub name="Singly Linked Lists" link="x2076.html"/>
|
||||
<sub name="Memory Management" link="x2080.html"/>
|
||||
<sub name="Timers" link="x2097.html"/>
|
||||
<sub name="String Handling" link="x2101.html"/>
|
||||
<sub name="Utility and Error Functions" link="x2116.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="GTK's rc Files" link="c2137.html">
|
||||
<sub name="Functions For rc Files" link="c2137.html#SEC-FUNCTIONSFORRCFILES"/>
|
||||
<sub name="GTK's rc File Format" link="x2157.html"/>
|
||||
<sub name="Example rc file" link="x2198.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Writing Your Own Widgets" link="c2201.html">
|
||||
<sub name="Overview" link="c2201.html#SEC-WIDGETSOVERVIEW"/>
|
||||
<sub name="The Anatomy Of A Widget" link="x2210.html"/>
|
||||
<sub name="Creating a Composite widget" link="x2221.html">
|
||||
<sub name="Introduction" link="x2221.html#AEN2223"/>
|
||||
<sub name="Choosing a parent class" link="x2221.html#AEN2234"/>
|
||||
<sub name="The header file" link="x2221.html#AEN2237"/>
|
||||
<sub name="The" link="x2221.html#AEN2314"/>
|
||||
<sub name="_get_type()" link="x2221.html#AEN2249"/>
|
||||
<sub name="function" link="x2221.html#AEN2314"/>
|
||||
<sub name="The" link="x2221.html#AEN2314"/>
|
||||
<sub name="_class_init()" link="x2221.html#AEN2261"/>
|
||||
<sub name="function" link="x2221.html#AEN2314"/>
|
||||
<sub name="The" link="x2221.html#AEN2314"/>
|
||||
<sub name="_init()" link="x2221.html#AEN2314"/>
|
||||
<sub name="function" link="x2221.html#AEN2314"/>
|
||||
<sub name="And the rest..." link="x2221.html#AEN2319"/>
|
||||
</sub>
|
||||
<sub name="Creating a widget from scratch" link="x2331.html">
|
||||
<sub name="Introduction" link="x2331.html#AEN2333"/>
|
||||
<sub name="Displaying a widget on the screen" link="x2331.html#AEN2340"/>
|
||||
<sub name="The origins of the Dial Widget" link="x2331.html#AEN2373"/>
|
||||
<sub name="The Basics" link="x2331.html#AEN2377"/>
|
||||
<sub name="gtk_dial_realize()" link="x2331.html#AEN2389"/>
|
||||
<sub name="Size negotiation" link="x2331.html#AEN2398"/>
|
||||
<sub name="gtk_dial_expose()" link="x2331.html#AEN2406"/>
|
||||
<sub name="Event handling" link="x2331.html#AEN2412"/>
|
||||
<sub name="Possible Enhancements" link="x2331.html#AEN2428"/>
|
||||
</sub>
|
||||
<sub name="Learning More" link="x2440.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="Scribble, A Simple Example Drawing Program" link="c2443.html">
|
||||
<sub name="Overview" link="c2443.html#SEC-SCRIBBLEOVERVIEW"/>
|
||||
<sub name="Event Handling" link="x2452.html"/>
|
||||
<sub name="The DrawingArea Widget, And Drawing" link="x2491.html"/>
|
||||
<sub name="Adding XInput support" link="x2550.html">
|
||||
<sub name="Enabling extended device information" link="x2550.html#AEN2578"/>
|
||||
<sub name="Using extended device information" link="x2550.html#AEN2591"/>
|
||||
<sub name="Finding out more about a device" link="x2550.html#AEN2609"/>
|
||||
<sub name="Further sophistications" link="x2550.html#SEC-FURTHERSOPHISTICATIONS"/>
|
||||
</sub>
|
||||
</sub>
|
||||
|
||||
<sub name="Tips For Writing GTK Applications" link="c2636.html">
|
||||
</sub>
|
||||
|
||||
<sub name="Contributing" link="c2641.html">
|
||||
</sub>
|
||||
|
||||
<sub name="Credits" link="c2648.html">
|
||||
</sub>
|
||||
|
||||
<sub name="Tutorial Copyright and Permissions Notice" link="c2710.html">
|
||||
</sub>
|
||||
|
||||
<sub name="GTK Signals" link="a2719.html">
|
||||
<sub name="GtkObject" link="a2719.html#SEC-GTKOBJECT"/>
|
||||
<sub name="GtkWidget" link="x2725.html"/>
|
||||
<sub name="GtkData" link="x2728.html"/>
|
||||
<sub name="GtkContainer" link="x2731.html"/>
|
||||
<sub name="GtkCalendar" link="x2734.html"/>
|
||||
<sub name="GtkEditable" link="x2737.html"/>
|
||||
<sub name="GtkNotebook" link="x2740.html"/>
|
||||
<sub name="GtkList" link="x2743.html"/>
|
||||
<sub name="GtkMenuShell" link="x2746.html"/>
|
||||
<sub name="GtkToolbar" link="x2749.html"/>
|
||||
<sub name="GtkButton" link="x2752.html"/>
|
||||
<sub name="GtkItem" link="x2755.html"/>
|
||||
<sub name="GtkWindow" link="x2758.html"/>
|
||||
<sub name="GtkHandleBox" link="x2761.html"/>
|
||||
<sub name="GtkToggleButton" link="x2764.html"/>
|
||||
<sub name="GtkMenuItem" link="x2767.html"/>
|
||||
<sub name="GtkCheckMenuItem" link="x2770.html"/>
|
||||
<sub name="GtkInputDialog" link="x2773.html"/>
|
||||
<sub name="GtkColorSelection" link="x2776.html"/>
|
||||
<sub name="GtkStatusBar" link="x2779.html"/>
|
||||
<sub name="GtkCurve" link="x2782.html"/>
|
||||
<sub name="GtkAdjustment" link="x2785.html"/>
|
||||
</sub>
|
||||
|
||||
<sub name="GDK Event Types" link="a2788.html">
|
||||
</sub>
|
||||
|
||||
<sub name="Code Examples" link="a2922.html">
|
||||
<sub name="Tictactoe" link="a2922.html#SEC-TICTACTOE">
|
||||
<sub name="tictactoe.h" link="a2922.html#AEN2927"/>
|
||||
<sub name="tictactoe.c" link="a2922.html#AEN2930"/>
|
||||
<sub name="ttt_test.c" link="a2922.html#AEN2933"/>
|
||||
</sub>
|
||||
<sub name="GtkDial" link="x2936.html">
|
||||
<sub name="gtkdial.h" link="x2936.html#AEN2938"/>
|
||||
<sub name="gtkdial.c" link="x2936.html#AEN2941"/>
|
||||
<sub name="dial_test.c" link="x2936.html#AEN2944"/>
|
||||
</sub>
|
||||
<sub name="Scribble" link="x2947.html">
|
||||
<sub name="scribble-simple.c" link="x2947.html#AEN2949"/>
|
||||
<sub name="scribble-xinput.c" link="x2947.html#AEN2952"/>
|
||||
</sub>
|
||||
</sub>
|
||||
|
||||
</chapters>
|
||||
|
||||
</book>
|
1
debian/gtk2-engines-pixbuf.files
vendored
1
debian/gtk2-engines-pixbuf.files
vendored
@ -1 +0,0 @@
|
||||
usr/lib/gtk-2.0/*/engines/*.so
|
2
debian/gtk2.0-examples.dirs
vendored
2
debian/gtk2.0-examples.dirs
vendored
@ -1,2 +0,0 @@
|
||||
usr/bin
|
||||
usr/share
|
1
debian/gtk2.0-examples.examples.in
vendored
1
debian/gtk2.0-examples.examples.in
vendored
@ -1 +0,0 @@
|
||||
build-tree/gtk+-@VERSION@/examples/*
|
3
debian/gtk2.0-examples.files
vendored
3
debian/gtk2.0-examples.files
vendored
@ -1,3 +0,0 @@
|
||||
usr/bin/gtk-demo
|
||||
usr/share/*/demo/*
|
||||
|
19
debian/libgtk2.0-0.postinst
vendored
19
debian/libgtk2.0-0.postinst
vendored
@ -1,19 +0,0 @@
|
||||
#! /bin/sh
|
||||
set -e
|
||||
|
||||
if [ -d /usr/share/doc/libgtk2.0-0 -a ! -L /usr/share/doc/libgtk2.0-0 ]; then
|
||||
if rmdir /usr/share/doc/libgtk2.0-0; then
|
||||
ln -sf libgtk2.0-common /usr/share/doc/libgtk2.0-0
|
||||
else
|
||||
echo "Warning: could not remove /usr/share/doc/libgtk2.0-0."
|
||||
fi
|
||||
fi
|
||||
|
||||
case "$1" in
|
||||
configure)
|
||||
/usr/lib/libgtk2.0-0/update-gtk-immodules
|
||||
/usr/lib/libgtk2.0-0/update-gdkpixbuf-loaders
|
||||
;;
|
||||
esac
|
||||
|
||||
#DEBHELPER#
|
10
debian/libgtk2.0-0.postrm
vendored
10
debian/libgtk2.0-0.postrm
vendored
@ -1,10 +0,0 @@
|
||||
#! /bin/sh
|
||||
set -e
|
||||
|
||||
case "$1" in
|
||||
purge)
|
||||
rm -rf /etc/gtk-2.0
|
||||
;;
|
||||
esac
|
||||
|
||||
#DEBHELPER#
|
3
debian/libgtk2.0-bin.dirs
vendored
3
debian/libgtk2.0-bin.dirs
vendored
@ -1,3 +0,0 @@
|
||||
usr/bin
|
||||
usr/sbin
|
||||
etc/gtk-2.0
|
4
debian/libgtk2.0-bin.files
vendored
4
debian/libgtk2.0-bin.files
vendored
@ -1,4 +0,0 @@
|
||||
usr/share/man/man1/gtk-query-immodules-2.0.1*
|
||||
usr/share/man/man1/gdk-pixbuf-query-loaders.1*
|
||||
etc/gtk-2.0/*
|
||||
usr/share/man/man1/gtk-update-icon-cache.1*
|
49
debian/libgtk2.0-bin.postinst
vendored
49
debian/libgtk2.0-bin.postinst
vendored
@ -1,49 +0,0 @@
|
||||
#! /bin/sh
|
||||
# postinst script for gtk+
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postinst> `configure' <most-recently-configured-version>
|
||||
# * <old-postinst> `abort-upgrade' <new version>
|
||||
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||
# <new-version>
|
||||
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||
# <failed-install-package> <version> `removing'
|
||||
# <conflicting-package> <version>
|
||||
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
#
|
||||
# quoting from the policy:
|
||||
# Any necessary prompting should almost always be confined to the
|
||||
# post-installation script, and should be protected with a conditional
|
||||
# so that unnecessary prompting doesn't happen if a package's
|
||||
# installation fails and the `postinst' is called with `abort-upgrade',
|
||||
# `abort-remove' or `abort-deconfigure'.
|
||||
|
||||
case "$1" in
|
||||
configure)
|
||||
/usr/sbin/update-gtk-immodules
|
||||
/usr/sbin/update-gdkpixbuf-loaders
|
||||
;;
|
||||
|
||||
abort-upgrade|abort-remove|abort-deconfigure)
|
||||
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postinst called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
||||
|
||||
|
41
debian/libgtk2.0-bin.postrm
vendored
41
debian/libgtk2.0-bin.postrm
vendored
@ -1,41 +0,0 @@
|
||||
#! /bin/sh
|
||||
# postrm script for gtk+
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postrm> `remove'
|
||||
# * <postrm> `purge'
|
||||
# * <old-postrm> `upgrade' <new-version>
|
||||
# * <new-postrm> `failed-upgrade' <old-version>
|
||||
# * <new-postrm> `abort-install'
|
||||
# * <new-postrm> `abort-install' <old-version>
|
||||
# * <new-postrm> `abort-upgrade' <old-version>
|
||||
# * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version>
|
||||
# for details, see http://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
purge)
|
||||
rm -rf /etc/gtk-2.0
|
||||
;;
|
||||
remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
|
||||
|
||||
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postrm called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
2
debian/libgtk2.0-common.dirs
vendored
2
debian/libgtk2.0-common.dirs
vendored
@ -1,2 +0,0 @@
|
||||
usr/share/locale
|
||||
usr/share/themes
|
2
debian/libgtk2.0-common.files
vendored
2
debian/libgtk2.0-common.files
vendored
@ -1,2 +0,0 @@
|
||||
/usr/share/locale/*
|
||||
/usr/share/themes/*
|
8
debian/libgtk2.0-common.preinst
vendored
8
debian/libgtk2.0-common.preinst
vendored
@ -1,8 +0,0 @@
|
||||
#! /bin/sh
|
||||
set -e
|
||||
|
||||
if [ -L /usr/share/doc/libgtk2.0-common ]; then
|
||||
rm -f /usr/share/doc/libgtk2.0-common
|
||||
fi
|
||||
|
||||
#DEBHELPER#
|
5
debian/libgtk2.0-dev.dirs
vendored
5
debian/libgtk2.0-dev.dirs
vendored
@ -1,5 +0,0 @@
|
||||
usr/bin
|
||||
usr/include
|
||||
usr/lib
|
||||
usr/lib/pkgconfig
|
||||
usr/share/aclocal
|
10
debian/libgtk2.0-dev.files
vendored
10
debian/libgtk2.0-dev.files
vendored
@ -1,10 +0,0 @@
|
||||
usr/bin/gdk-pixbuf-csource
|
||||
usr/include/*
|
||||
usr/lib/lib*.{so,la,a}
|
||||
usr/lib/pkgconfig/*.pc
|
||||
usr/lib/*/*/engines/*{la,a}
|
||||
usr/lib/*/*/loaders/*{la,a}
|
||||
usr/lib/*/*/immodules/*{la,a}
|
||||
usr/lib/*/include/*.h
|
||||
usr/share/aclocal/*
|
||||
usr/share/man/man1/gdk-pixbuf-csource.1*
|
2
debian/libgtk2.0-doc.dirs
vendored
2
debian/libgtk2.0-doc.dirs
vendored
@ -1,2 +0,0 @@
|
||||
usr/share/doc/libgtk2.0-doc
|
||||
usr/share/gtk-doc
|
12
debian/libgtk2.0-doc.doc-base.gdk-pixbuf
vendored
12
debian/libgtk2.0-doc.doc-base.gdk-pixbuf
vendored
@ -1,12 +0,0 @@
|
||||
Document: gdk-pixbuf
|
||||
Title: GDK-pixbuf Reference Manual
|
||||
Author: Federico Mena Quintero
|
||||
Abstract: The GDK-pixbuf library is used to manipulate images and
|
||||
other image-like objects, similar to the imlib library. GDK and
|
||||
GTK+ use it for image storage and manipulation. This document
|
||||
covers programming using this library.
|
||||
Section: Programming/C
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/libgtk2.0-doc/gdk-pixbuf/index.html
|
||||
Files: /usr/share/doc/libgtk2.0-doc/gdk-pixbuf/*.html
|
11
debian/libgtk2.0-doc.doc-base.gtk
vendored
11
debian/libgtk2.0-doc.doc-base.gtk
vendored
@ -1,11 +0,0 @@
|
||||
Document: gtk
|
||||
Title: GTK+ Reference Manual
|
||||
Author: Damon Chaplin et al.
|
||||
Abstract: The GTK+ library provides a graphical user interface for
|
||||
C programs, and is used in projects such as GIMP, Gnome, and Mozilla.
|
||||
This document covers programming using the GTK+ library.
|
||||
Section: Apps/Programming
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/libgtk2.0-doc/gtk/index.html
|
||||
Files: /usr/share/doc/libgtk2.0-doc/gtk/*.html
|
18
debian/libgtk2.0-doc.doc-base.gtk-tutorial
vendored
18
debian/libgtk2.0-doc.doc-base.gtk-tutorial
vendored
@ -1,18 +0,0 @@
|
||||
Document: gtk2-tutorial
|
||||
Title: GTK+2.0 Tutorial
|
||||
Author: Tony Gale and Ian Main
|
||||
Abstract: GTK (GIMP Toolkit) is a library for creating graphical user
|
||||
interfaces. It is licensed using the LGPL license, so you can develop
|
||||
open software, free software, or even commercial non-free software
|
||||
using GTK without having to spend anything for licenses or royalties.
|
||||
.
|
||||
This tutorial is an attempt to document as much as possible of GTK,
|
||||
but it is by no means complete. This tutorial assumes a good
|
||||
understanding of C, and how to create C programs. It would be a great
|
||||
benefit for the reader to have previous X programming experience, but
|
||||
it shouldn't be necessary.
|
||||
Section: Apps/Programming
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/libgtk2.0-doc/gtk-tutorial/book1.html
|
||||
Files: /usr/share/doc/libgtk2.0-doc/gtk-tutorial/*.html
|
1
debian/libgtk2.0-doc.files
vendored
1
debian/libgtk2.0-doc.files
vendored
@ -1 +0,0 @@
|
||||
usr/share/doc/libgtk2.0-doc/*
|
@ -1,17 +0,0 @@
|
||||
diff -ruN gtk+-2.2.0.orig/modules/input/Makefile.am gtk+-2.2.0/modules/input/Makefile.am
|
||||
--- gtk+-2.2.0.orig/modules/input/Makefile.am 2003-01-06 23:40:37.000000000 +0900
|
||||
+++ gtk+-2.2.0/modules/input/Makefile.am 2003-01-06 23:46:35.000000000 +0900
|
||||
@@ -118,7 +118,12 @@
|
||||
im-viqr.la
|
||||
|
||||
gtk.immodules: Makefile.am $(module_LTLIBRARIES)
|
||||
- $(top_builddir)/gtk/gtk-query-immodules-2.0 $(module_LTLIBRARIES) > gtk.immodules
|
||||
+ @if $(RUN_QUERY_IMMODULES_TEST) ; then \
|
||||
+ $(top_builddir)/gtk/gtk-query-immodules-2.0 $(module_LTLIBRARIES) > gtk.immodules ; \
|
||||
+ else \
|
||||
+ touch $@ ; \
|
||||
+ fi
|
||||
+
|
||||
|
||||
CLEANFILES = gtk.immodules
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff -Nur gtk+-2.8.13.orig/gtk/gtkicontheme.c gtk+-2.8.13/gtk/gtkicontheme.c
|
||||
--- gtk+-2.8.13.orig/gtk/gtkicontheme.c 2006-02-13 03:33:31.000000000 +0100
|
||||
+++ gtk+-2.8.13/gtk/gtkicontheme.c 2006-02-26 00:09:20.000000000 +0100
|
||||
@@ -421,6 +421,8 @@
|
||||
"gtk-fallback-icon-theme", &fallback_theme, NULL);
|
||||
}
|
||||
|
||||
+ if (!fallback_theme)
|
||||
+ fallback_theme = g_strdup ("gnome");
|
||||
if (!theme)
|
||||
theme = g_strdup (DEFAULT_THEME_NAME);
|
||||
|
19
debian/patches/005_xpmico.patch
vendored
19
debian/patches/005_xpmico.patch
vendored
@ -1,19 +0,0 @@
|
||||
Index: gtk+2.0-2.11.2/gdk-pixbuf/io-ico.c
|
||||
===================================================================
|
||||
--- gtk+2.0-2.11.2.orig/gdk-pixbuf/io-ico.c 2007-06-06 13:43:15.000000000 +0200
|
||||
+++ gtk+2.0-2.11.2/gdk-pixbuf/io-ico.c 2007-06-13 11:07:11.000000000 +0200
|
||||
@@ -208,6 +208,14 @@
|
||||
|
||||
State->HeaderSize = 6 + IconCount*16;
|
||||
|
||||
+ if (State->HeaderSize < 0) {
|
||||
+ g_set_error (error,
|
||||
+ GDK_PIXBUF_ERROR,
|
||||
+ GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
|
||||
+ _("Invalid header in icon"));
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
if (State->HeaderSize>State->BytesInHeaderBuf) {
|
||||
guchar *tmp=g_try_realloc(State->HeaderBuf,State->HeaderSize);
|
||||
if (!tmp) {
|
15681
debian/patches/006_gtk+-2.8.17-directfb.patch
vendored
15681
debian/patches/006_gtk+-2.8.17-directfb.patch
vendored
File diff suppressed because it is too large
Load Diff
@ -1,36 +0,0 @@
|
||||
From 0fff51eab6427ca4d0ab679c1d994a2a36898a7d Mon Sep 17 00:00:00 2001
|
||||
From: Matthias Clasen <mclasen@redhat.com>
|
||||
Date: Sat, 20 Mar 2010 03:20:38 +0000
|
||||
Subject: Avoid spurious notifications from GtkEntry
|
||||
|
||||
Using gtk_entry_set_buffer() in dispose() causes problematic
|
||||
notifications, so just get rid of the buffer manually. See bug 613241.
|
||||
(cherry picked from commit 5f29a679f8a31b6548f34179d65a39de9ec63535)
|
||||
---
|
||||
diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
|
||||
index 4344449..0dafcf7 100644
|
||||
--- a/gtk/gtkentry.c
|
||||
+++ b/gtk/gtkentry.c
|
||||
@@ -2425,12 +2425,19 @@ static void
|
||||
gtk_entry_dispose (GObject *object)
|
||||
{
|
||||
GtkEntry *entry = GTK_ENTRY (object);
|
||||
+ GtkEntryPrivate *priv = GTK_ENTRY_GET_PRIVATE (entry);
|
||||
|
||||
gtk_entry_set_icon_from_pixbuf (entry, GTK_ENTRY_ICON_PRIMARY, NULL);
|
||||
gtk_entry_set_icon_tooltip_markup (entry, GTK_ENTRY_ICON_PRIMARY, NULL);
|
||||
gtk_entry_set_icon_from_pixbuf (entry, GTK_ENTRY_ICON_SECONDARY, NULL);
|
||||
gtk_entry_set_icon_tooltip_markup (entry, GTK_ENTRY_ICON_SECONDARY, NULL);
|
||||
- gtk_entry_set_buffer (entry, NULL);
|
||||
+
|
||||
+ if (priv->buffer)
|
||||
+ {
|
||||
+ buffer_disconnect_signals (entry);
|
||||
+ g_object_unref (priv->buffer);
|
||||
+ priv->buffer = NULL;
|
||||
+ }
|
||||
|
||||
G_OBJECT_CLASS (gtk_entry_parent_class)->dispose (object);
|
||||
}
|
||||
--
|
||||
cgit v0.8.3.1
|
36
debian/patches/006_proper-directfb-modules.patch
vendored
36
debian/patches/006_proper-directfb-modules.patch
vendored
@ -1,36 +0,0 @@
|
||||
GNOME #447118; related to Debian #381081
|
||||
|
||||
Index: gtk+-2.12.1/configure.in
|
||||
===================================================================
|
||||
--- gtk+-2.12.1.orig/configure.in 2007-11-18 00:52:41.125989789 +0100
|
||||
+++ gtk+-2.12.1/configure.in 2007-11-18 00:53:48.389822936 +0100
|
||||
@@ -1404,8 +1404,18 @@ if test "x$gdktarget" = "xdirectfb"; the
|
||||
|
||||
if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb && $PKG_CONFIG --exists cairo-directfb ; then
|
||||
AC_MSG_RESULT(found)
|
||||
- GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags cairo-directfb` $GDK_EXTRA_CFLAGS"
|
||||
- GDK_EXTRA_LIBS="`$PKG_CONFIG --libs cairo-directfb` $GDK_EXTRA_LIBS"
|
||||
+ # prepend cairo-directfb so that cairo-directfb's CFLAGS appear before
|
||||
+ # cairo's if both are available (cairo is required by pango); this is
|
||||
+ # enough to build gdk/
|
||||
+ GDK_PACKAGES="cairo-directfb directfb $GDK_PACKAGES"
|
||||
+ # you'd think this isn't needed, but as soon as cairo-directfb or
|
||||
+ # directfb requires a "rpath" and you want to build binaries (for
|
||||
+ # example gtk-query-immodules), you need the CFLAGS and LDFLAGS
|
||||
+ # everywhere; this trick abuses the fact that GTK_DEP_LIBS and
|
||||
+ # GTK_DEP_CFLAGS include the GDK_EXTRA_LIBS and _FLAGS to pull the
|
||||
+ # necessary rpath flags
|
||||
+ GDK_EXTRA_CFLAGS="`$PKG_CONFIG --cflags cairo-directfb directfb`"
|
||||
+ GDK_EXTRA_LIBS="`$PKG_CONFIG --libs cairo-directfb directfb` $GDK_EXTRA_LIBS"
|
||||
else
|
||||
AC_MSG_ERROR([
|
||||
*** DirectFB $DIRECTFB_REQUIRED_VERSION or newer and the cairo backend
|
||||
@@ -1457,7 +1467,7 @@ fi
|
||||
CFLAGS="$saved_cflags"
|
||||
LDFLAGS="$saved_ldflags"
|
||||
|
||||
-GDK_PACKAGES="$PANGO_PACKAGES"
|
||||
+GDK_PACKAGES="$GDK_PACKAGES $PANGO_PACKAGES"
|
||||
if test "x$gdktarget" = "xx11"; then
|
||||
GDK_PRIVATE_PACKAGES="$X_PACKAGES"
|
||||
fi
|
@ -1,14 +0,0 @@
|
||||
Debian #381081; GNOME #447118
|
||||
|
||||
Index: gtk+2.0-2.10.10/gdk/directfb/gdkdrawable-directfb.c
|
||||
===================================================================
|
||||
--- gtk+2.0-2.10.10.orig/gdk/directfb/gdkdrawable-directfb.c 2007-03-12 15:06:54.000000000 +0100
|
||||
+++ gtk+2.0-2.10.10/gdk/directfb/gdkdrawable-directfb.c 2007-03-13 14:10:23.000000000 +0100
|
||||
@@ -45,6 +45,7 @@
|
||||
#include "gdkregion-generic.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
+#include <cairo.h>
|
||||
#include "cairo-directfb.h"
|
||||
|
||||
#define WARN_UNIMPLEMENTED(func)\
|
@ -1,14 +0,0 @@
|
||||
GNOME #447163; Debian 381082
|
||||
|
||||
Index: gtk+2.0-2.11.3/gdk/directfb/gdkgc-directfb.c
|
||||
===================================================================
|
||||
--- gtk+2.0-2.11.3.orig/gdk/directfb/gdkgc-directfb.c 2007-06-15 20:08:17.000000000 +0200
|
||||
+++ gtk+2.0-2.11.3/gdk/directfb/gdkgc-directfb.c 2007-06-16 14:25:00.000000000 +0200
|
||||
@@ -33,6 +33,7 @@
|
||||
#undef GDK_DISABLE_DEPRECATED
|
||||
|
||||
#include <config.h>
|
||||
+#undef GDK_DISABLE_DEPRECATED
|
||||
#include "gdk.h"
|
||||
|
||||
#include <string.h>
|
@ -1,74 +0,0 @@
|
||||
--- gtk+-2.8.20-dfb/gdk/directfb/gdkdrawable-directfb.c.orig 2006-09-10 17:07:48.000000000 +0200
|
||||
+++ gtk+-2.8.20-dfb/gdk/directfb/gdkdrawable-directfb.c 2006-09-10 17:16:32.000000000 +0200
|
||||
@@ -428,7 +428,7 @@
|
||||
for (i = 0; i < clip->numRects; i++)
|
||||
{
|
||||
DFBRegion reg = { clip->rects[i].x1, clip->rects[i].y1,
|
||||
- clip->rects[i].x2, clip->rects[i].y2 };
|
||||
+ clip->rects[i].x2 - 1, clip->rects[i].y2 - 1 };
|
||||
|
||||
impl->surface->SetClip (impl->surface, ®);
|
||||
impl->surface->TileBlit (impl->surface, surface, NULL, x, y);
|
||||
@@ -457,7 +457,7 @@
|
||||
else
|
||||
{
|
||||
|
||||
- DFBRegion region = { x, y, x + width+1, y + height+1 };
|
||||
+ DFBRegion region = { x, y, x + width, y + height };
|
||||
impl->surface->SetClip (impl->surface, ®ion);
|
||||
|
||||
/* DirectFB does not draw rectangles the X way. Using DirectFB,
|
||||
@@ -518,7 +518,7 @@
|
||||
for (i = 0; i < clip->numRects; i++)
|
||||
{
|
||||
DFBRegion reg = { clip->rects[i].x1, clip->rects[i].y1,
|
||||
- clip->rects[i].x2 , clip->rects[i].y2 };
|
||||
+ clip->rects[i].x2 - 1, clip->rects[i].y2 - 1 };
|
||||
|
||||
impl->surface->SetClip (impl->surface, ®);
|
||||
impl->surface->FillTriangle (impl->surface,
|
||||
@@ -624,7 +624,7 @@
|
||||
for (i = 0; i < clip->numRects; i++)
|
||||
{
|
||||
DFBRegion reg = { clip->rects[i].x1, clip->rects[i].y1,
|
||||
- clip->rects[i].x2 , clip->rects[i].y2 };
|
||||
+ clip->rects[i].x2 - 1, clip->rects[i].y2 - 1 };
|
||||
|
||||
impl->surface->SetClip (impl->surface, ®);
|
||||
impl->surface->Blit (impl->surface, src_impl->surface, &rect,
|
||||
@@ -708,7 +708,7 @@
|
||||
for (i = 0; i < clip->numRects; i++)
|
||||
{
|
||||
DFBRegion reg = { clip->rects[i].x1, clip->rects[i].y1,
|
||||
- clip->rects[i].x2, clip->rects[i].y2 };
|
||||
+ clip->rects[i].x2 - 1, clip->rects[i].y2 - 1 };
|
||||
|
||||
impl->surface->SetClip (impl->surface, ®);
|
||||
|
||||
@@ -819,7 +819,7 @@
|
||||
for (i = 0; i < clip->numRects; i++)
|
||||
{
|
||||
DFBRegion reg = { clip->rects[i].x1, clip->rects[i].y1,
|
||||
- clip->rects[i].x2, clip->rects[i].y2 };
|
||||
+ clip->rects[i].x2 - 1, clip->rects[i].y2 - 1 };
|
||||
|
||||
impl->surface->SetClip (impl->surface, ®);
|
||||
impl->surface->DrawLines (impl->surface, lines, npoints - 1);
|
||||
@@ -871,7 +871,7 @@
|
||||
for (i = 0; i < clip->numRects; i++)
|
||||
{
|
||||
DFBRegion reg = { clip->rects[i].x1, clip->rects[i].y1,
|
||||
- clip->rects[i].x2 , clip->rects[i].y2 };
|
||||
+ clip->rects[i].x2 - 1 , clip->rects[i].y2 - 1 };
|
||||
|
||||
impl->surface->SetClip (impl->surface, ®);
|
||||
impl->surface->Blit (impl->surface,
|
||||
@@ -1037,7 +1037,7 @@
|
||||
GdkRegion *region)
|
||||
{
|
||||
DFBRegion reg = { region->extents.x1, region->extents.y1,
|
||||
- region->extents.x2 , region->extents.y2 };
|
||||
+ region->extents.x2 - 1 , region->extents.y2 - 1 };
|
||||
|
||||
_gdk_directfb_update (impl, ®);
|
||||
}
|
13
debian/patches/010_gdkpixbuf_-lm.patch
vendored
13
debian/patches/010_gdkpixbuf_-lm.patch
vendored
@ -1,13 +0,0 @@
|
||||
Index: b/configure.in
|
||||
===================================================================
|
||||
--- a/configure.in 2010-04-10 14:52:08.109945409 +0200
|
||||
+++ b/configure.in 2010-04-10 14:52:09.177943468 +0200
|
||||
@@ -1806,7 +1806,7 @@
|
||||
CAIRO_PREFIX="`pkg-config --variable=prefix cairo`"
|
||||
|
||||
if test $enable_explicit_deps != yes ; then
|
||||
- GDK_PIXBUF_EXTRA_LIBS=
|
||||
+ GDK_PIXBUF_EXTRA_LIBS="$MATH_LIB"
|
||||
fi
|
||||
|
||||
AC_SUBST(GDK_PIXBUF_PACKAGES)
|
@ -1,14 +0,0 @@
|
||||
diff -Nurp gtk+-2.8.6/gdk-pixbuf/io-xpm.c gtk+-2.8.6.new/gdk-pixbuf/io-xpm.c
|
||||
--- gtk+-2.8.6/gdk-pixbuf/io-xpm.c 2005-03-08 03:59:45.000000000 +0000
|
||||
+++ gtk+-2.8.6.new/gdk-pixbuf/io-xpm.c 2005-11-16 09:40:45.000000000 +0000
|
||||
@@ -500,7 +500,9 @@ pixbuf_create_from_xpm (const gchar * (*
|
||||
_("XPM has invalid number of chars per pixel"));
|
||||
return NULL;
|
||||
}
|
||||
- if (n_col <= 0 || n_col >= G_MAXINT / (cpp + 1)) {
|
||||
+ if (n_col <= 0 ||
|
||||
+ n_col >= G_MAXINT / (cpp + 1) ||
|
||||
+ n_col >= G_MAXINT / sizeof (XPMColor)) {
|
||||
g_set_error (error,
|
||||
GDK_PIXBUF_ERROR,
|
||||
GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
|
@ -1,13 +0,0 @@
|
||||
diff -Nurp gtk+-2.8.6/gdk-pixbuf/io-xpm.c gtk+-2.8.6.new/gdk-pixbuf/io-xpm.c
|
||||
--- gtk+-2.8.6/gdk-pixbuf/io-xpm.c 2005-11-16 09:52:14.000000000 +0000
|
||||
+++ gtk+-2.8.6.new/gdk-pixbuf/io-xpm.c 2005-11-16 09:58:23.000000000 +0000
|
||||
@@ -405,7 +405,8 @@ file_buffer (enum buf_op op, gpointer ha
|
||||
/* Fall through to the xpm_read_string. */
|
||||
|
||||
case op_body:
|
||||
- xpm_read_string (h->infile, &h->buffer, &h->buffer_size);
|
||||
+ if(!xpm_read_string (h->infile, &h->buffer, &h->buffer_size))
|
||||
+ return NULL;
|
||||
return h->buffer;
|
||||
|
||||
default:
|
2681
debian/patches/020_dfb-window-destroy-leak.patch
vendored
2681
debian/patches/020_dfb-window-destroy-leak.patch
vendored
File diff suppressed because it is too large
Load Diff
133
debian/patches/020_immodules-files-d.patch
vendored
133
debian/patches/020_immodules-files-d.patch
vendored
@ -1,133 +0,0 @@
|
||||
Index: b/gtk/gtkimmodule.c
|
||||
===================================================================
|
||||
--- a/gtk/gtkimmodule.c 2010-04-10 14:52:04.229942828 +0200
|
||||
+++ b/gtk/gtkimmodule.c 2010-04-10 14:52:09.765946296 +0200
|
||||
@@ -70,6 +70,9 @@
|
||||
#define GTK_IM_MODULE(im_module) (G_TYPE_CHECK_INSTANCE_CAST ((im_module), GTK_TYPE_IM_MODULE, GtkIMModule))
|
||||
#define GTK_IS_IM_MODULE(im_module) (G_TYPE_CHECK_INSTANCE_TYPE ((im_module), GTK_TYPE_IM_MODULE))
|
||||
|
||||
+#define IMMODULEFILEEXT ".immodules"
|
||||
+#define IMMODULEFILEEXT_LEN ((int) strlen (IMMODULEFILEEXT))
|
||||
+
|
||||
struct _GtkIMModule
|
||||
{
|
||||
GTypeModule parent_instance;
|
||||
@@ -310,19 +313,15 @@
|
||||
}
|
||||
|
||||
static void
|
||||
-gtk_im_module_initialize (void)
|
||||
+process_module_file (const gchar *filename, FILE *file)
|
||||
{
|
||||
GString *line_buf = g_string_new (NULL);
|
||||
GString *tmp_buf = g_string_new (NULL);
|
||||
- gchar *filename = gtk_rc_get_im_module_file();
|
||||
- FILE *file;
|
||||
gboolean have_error = FALSE;
|
||||
|
||||
GtkIMModule *module = NULL;
|
||||
GSList *infos = NULL;
|
||||
|
||||
- contexts_hash = g_hash_table_new (g_str_hash, g_str_equal);
|
||||
-
|
||||
#define do_builtin(m) \
|
||||
{ \
|
||||
const GtkIMContextInfo **contexts; \
|
||||
@@ -380,18 +379,6 @@
|
||||
|
||||
#undef do_builtin
|
||||
|
||||
- file = g_fopen (filename, "r");
|
||||
- if (!file)
|
||||
- {
|
||||
- /* In case someone wants only the default input method,
|
||||
- * we allow no file at all.
|
||||
- */
|
||||
- g_string_free (line_buf, TRUE);
|
||||
- g_string_free (tmp_buf, TRUE);
|
||||
- g_free (filename);
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
while (!have_error && pango_read_line (file, line_buf))
|
||||
{
|
||||
const char *p;
|
||||
@@ -489,10 +476,76 @@
|
||||
else if (module)
|
||||
add_module (module, infos);
|
||||
|
||||
- fclose (file);
|
||||
g_string_free (line_buf, TRUE);
|
||||
g_string_free (tmp_buf, TRUE);
|
||||
- g_free (filename);
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
+gtk_im_module_initialize (void)
|
||||
+{
|
||||
+ gchar *im_module_file_str = gtk_rc_get_im_module_file();
|
||||
+ gchar *im_module_files_d_str = g_build_filename (GTK_LIBDIR,
|
||||
+ "gtk-2.0",
|
||||
+ GTK_BINARY_VERSION,
|
||||
+ "immodule-files.d",
|
||||
+ NULL);
|
||||
+ FILE *file;
|
||||
+ gchar *list_str;
|
||||
+ char **files;
|
||||
+ int n;
|
||||
+
|
||||
+ list_str = g_strjoin (G_SEARCHPATH_SEPARATOR_S,
|
||||
+ im_module_files_d_str,
|
||||
+ im_module_file_str,
|
||||
+ NULL);
|
||||
+
|
||||
+ files = pango_split_file_list (list_str);
|
||||
+
|
||||
+ contexts_hash = g_hash_table_new (g_str_hash, g_str_equal);
|
||||
+
|
||||
+ n = 0;
|
||||
+ while (files[n])
|
||||
+ n++;
|
||||
+
|
||||
+ while (n-- > 0)
|
||||
+ {
|
||||
+ GDir *dir = g_dir_open (files[n], 0, NULL);
|
||||
+ if (dir)
|
||||
+ {
|
||||
+ const char *dent;
|
||||
+
|
||||
+ while ((dent = g_dir_read_name (dir)))
|
||||
+ {
|
||||
+ int len = strlen (dent);
|
||||
+ if (len > IMMODULEFILEEXT_LEN && strcmp (dent + len - IMMODULEFILEEXT_LEN, IMMODULEFILEEXT) == 0)
|
||||
+ {
|
||||
+ gchar *pathname = g_build_filename (files[n], dent, NULL);
|
||||
+ file = g_fopen (pathname, "r");
|
||||
+ if (file)
|
||||
+ {
|
||||
+ process_module_file(pathname, file);
|
||||
+ fclose(file);
|
||||
+ }
|
||||
+ g_free (pathname);
|
||||
+ }
|
||||
+ }
|
||||
+ g_dir_close (dir);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ file = g_fopen (files[n], "r");
|
||||
+ if (file)
|
||||
+ {
|
||||
+ process_module_file(files[n], file);
|
||||
+ fclose (file);
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ g_strfreev (files);
|
||||
+ g_free (list_str);
|
||||
+ g_free (im_module_files_d_str);
|
||||
+ g_free (im_module_file_str);
|
||||
}
|
||||
|
||||
static gint
|
392
debian/patches/021_loader-files-d.patch
vendored
392
debian/patches/021_loader-files-d.patch
vendored
@ -1,392 +0,0 @@
|
||||
Index: b/gdk-pixbuf/Makefile.am
|
||||
===================================================================
|
||||
--- a/gdk-pixbuf/Makefile.am 2010-04-10 14:52:04.113943135 +0200
|
||||
+++ b/gdk-pixbuf/Makefile.am 2010-04-10 14:52:10.065944562 +0200
|
||||
@@ -65,6 +65,7 @@
|
||||
libgdk_pixbuf-2.0.la
|
||||
|
||||
loaderdir = $(libdir)/gtk-2.0/$(GTK_BINARY_VERSION)/loaders
|
||||
+loaderfilesdir = $(libdir)/gtk-2.0/$(GTK_BINARY_VERSION)/loader-files.d
|
||||
|
||||
module_libs = libgdk_pixbuf-$(GTK_API_VERSION).la $(GDK_PIXBUF_DEP_LIBS)
|
||||
|
||||
@@ -532,7 +533,7 @@
|
||||
$(GDK_PIXBUF_DEP_CFLAGS) \
|
||||
-DGDK_PIXBUF_ENABLE_BACKEND
|
||||
|
||||
-AM_CPPFLAGS = "-DPIXBUF_LIBDIR=\"$(loaderdir)\"" "-DBUILT_MODULES_DIR=\"$(srcdir)/.libs\""
|
||||
+AM_CPPFLAGS = "-DPIXBUF_LIBDIR=\"$(loaderdir)\"" "-DPIXBUF_FILES_LIBDIR=\"$(loaderfilesdir)\"" "-DBUILT_MODULES_DIR=\"$(srcdir)/.libs\""
|
||||
LDADDS = libgdk_pixbuf-$(GTK_API_VERSION).la $(GDK_PIXBUF_DEP_LIBS)
|
||||
|
||||
noinst_PROGRAMS = test-gdk-pixbuf
|
||||
Index: b/gdk-pixbuf/gdk-pixbuf-io.c
|
||||
===================================================================
|
||||
--- a/gdk-pixbuf/gdk-pixbuf-io.c 2010-04-10 14:52:04.137946193 +0200
|
||||
+++ b/gdk-pixbuf/gdk-pixbuf-io.c 2010-04-10 14:52:10.065944562 +0200
|
||||
@@ -51,6 +51,9 @@
|
||||
#define SNIFF_BUFFER_SIZE 4096
|
||||
#define LOAD_BUFFER_SIZE 65536
|
||||
|
||||
+#define LOADERFILEEXT ".loaders"
|
||||
+#define LOADERFILEEXT_LEN ((int) strlen (LOADERFILEEXT))
|
||||
+
|
||||
#ifndef GDK_PIXBUF_USE_GIO_MIME
|
||||
static gint
|
||||
format_check (GdkPixbufModule *module, guchar *buffer, int size)
|
||||
@@ -317,118 +320,93 @@
|
||||
gdk_pixbuf_load_module_unlocked (GdkPixbufModule *image_module,
|
||||
GError **error);
|
||||
|
||||
+/* FIXME this is a static copy of a public pango function which should really
|
||||
+ * livein glib */
|
||||
+static char *
|
||||
+_ugly_copy_of_pango_trim_string (const char *str)
|
||||
+{
|
||||
+ int len;
|
||||
+
|
||||
+ g_return_val_if_fail (str != NULL, NULL);
|
||||
+
|
||||
+ while (*str && g_ascii_isspace (*str))
|
||||
+ str++;
|
||||
+
|
||||
+ len = strlen (str);
|
||||
+ while (len > 0 && g_ascii_isspace (str[len-1]))
|
||||
+ len--;
|
||||
+
|
||||
+ return g_strndup (str, len);
|
||||
+}
|
||||
+
|
||||
+/* FIXME this is a static copy of a public pango function which should really
|
||||
+ * livein glib */
|
||||
+char **
|
||||
+_ugly_copy_of_pango_split_file_list (const char *str)
|
||||
+{
|
||||
+ int i = 0;
|
||||
+ int j;
|
||||
+ char **files;
|
||||
+
|
||||
+ files = g_strsplit (str, G_SEARCHPATH_SEPARATOR_S, -1);
|
||||
+
|
||||
+ while (files[i])
|
||||
+ {
|
||||
+ char *file = _ugly_copy_of_pango_trim_string (files[i]);
|
||||
+
|
||||
+ /* If the resulting file is empty, skip it */
|
||||
+ if (file[0] == '\0')
|
||||
+ {
|
||||
+ g_free(file);
|
||||
+ g_free (files[i]);
|
||||
+
|
||||
+ for (j = i + 1; files[j]; j++)
|
||||
+ files[j - 1] = files[j];
|
||||
+
|
||||
+ files[j - 1] = NULL;
|
||||
+
|
||||
+ continue;
|
||||
+ }
|
||||
+#ifndef G_OS_WIN32
|
||||
+ /* '~' is a quite normal and common character in file names on
|
||||
+ * Windows, especially in the 8.3 versions of long file names, which
|
||||
+ * still occur now and then. Also, few Windows user are aware of the
|
||||
+ * Unix shell convention that '~' stands for the home directory,
|
||||
+ * even if they happen to have a home directory.
|
||||
+ */
|
||||
+ if (file[0] == '~' && file[1] == G_DIR_SEPARATOR)
|
||||
+ {
|
||||
+ char *tmp = g_strconcat (g_get_home_dir(), file + 1, NULL);
|
||||
+ g_free (file);
|
||||
+ file = tmp;
|
||||
+ }
|
||||
+ else if (file[0] == '~' && file[1] == '\0')
|
||||
+ {
|
||||
+ g_free (file);
|
||||
+ file = g_strdup (g_get_home_dir());
|
||||
+ }
|
||||
+#endif
|
||||
+ g_free (files[i]);
|
||||
+ files[i] = file;
|
||||
+
|
||||
+ i++;
|
||||
+ }
|
||||
+
|
||||
+ return files;
|
||||
+}
|
||||
+
|
||||
static void
|
||||
-gdk_pixbuf_io_init (void)
|
||||
+process_module_file (const gchar *filename, GIOChannel *channel)
|
||||
{
|
||||
#ifdef USE_GMODULE
|
||||
- GIOChannel *channel;
|
||||
gchar *line_buf;
|
||||
gsize term;
|
||||
GString *tmp_buf = g_string_new (NULL);
|
||||
gboolean have_error = FALSE;
|
||||
GdkPixbufModule *module = NULL;
|
||||
- gchar *filename = gdk_pixbuf_get_module_file ();
|
||||
int flags;
|
||||
int n_patterns = 0;
|
||||
GdkPixbufModulePattern *pattern;
|
||||
- GError *error = NULL;
|
||||
-#endif
|
||||
- GdkPixbufModule *builtin_module ;
|
||||
-
|
||||
- /* initialize on separate line to avoid compiler warnings in the
|
||||
- * common case of no compiled-in modules.
|
||||
- */
|
||||
- builtin_module = NULL;
|
||||
-
|
||||
-#define load_one_builtin_module(format) \
|
||||
- builtin_module = g_new0 (GdkPixbufModule, 1); \
|
||||
- builtin_module->module_name = #format; \
|
||||
- if (gdk_pixbuf_load_module_unlocked (builtin_module, NULL)) \
|
||||
- file_formats = g_slist_prepend (file_formats, builtin_module);\
|
||||
- else \
|
||||
- g_free (builtin_module)
|
||||
-
|
||||
-#ifdef INCLUDE_ani
|
||||
- load_one_builtin_module (ani);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_png
|
||||
- load_one_builtin_module (png);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_bmp
|
||||
- load_one_builtin_module (bmp);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_wbmp
|
||||
- load_one_builtin_module (wbmp);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_gif
|
||||
- load_one_builtin_module (gif);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_ico
|
||||
- load_one_builtin_module (ico);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_jpeg
|
||||
- load_one_builtin_module (jpeg);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_pnm
|
||||
- load_one_builtin_module (pnm);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_ras
|
||||
- load_one_builtin_module (ras);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_tiff
|
||||
- load_one_builtin_module (tiff);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_xpm
|
||||
- load_one_builtin_module (xpm);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_xbm
|
||||
- load_one_builtin_module (xbm);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_tga
|
||||
- load_one_builtin_module (tga);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_pcx
|
||||
- load_one_builtin_module (pcx);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_icns
|
||||
- load_one_builtin_module (icns);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_jasper
|
||||
- load_one_builtin_module (jasper);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_qtif
|
||||
- load_one_builtin_module (qtif);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_gdiplus
|
||||
- /* We don't bother having the GDI+ loaders individually selectable
|
||||
- * for building in or not.
|
||||
- */
|
||||
- load_one_builtin_module (ico);
|
||||
- load_one_builtin_module (wmf);
|
||||
- load_one_builtin_module (emf);
|
||||
- load_one_builtin_module (bmp);
|
||||
- load_one_builtin_module (gif);
|
||||
- load_one_builtin_module (jpeg);
|
||||
- load_one_builtin_module (tiff);
|
||||
-#endif
|
||||
-#ifdef INCLUDE_gdip_png
|
||||
- /* Except the gdip-png loader which normally isn't built at all even */
|
||||
- load_one_builtin_module (png);
|
||||
-#endif
|
||||
-
|
||||
-#undef load_one_builtin_module
|
||||
-
|
||||
-#ifdef USE_GMODULE
|
||||
- channel = g_io_channel_new_file (filename, "r", &error);
|
||||
- if (!channel) {
|
||||
- /* Don't bother warning if we have some built-in loaders */
|
||||
- if (file_formats == NULL)
|
||||
- g_warning ("Cannot open pixbuf loader module file '%s': %s",
|
||||
- filename, error->message);
|
||||
- g_string_free (tmp_buf, TRUE);
|
||||
- g_free (filename);
|
||||
- return;
|
||||
- }
|
||||
|
||||
while (!have_error && g_io_channel_read_line (channel, &line_buf, NULL, &term, NULL) == G_IO_STATUS_NORMAL) {
|
||||
const char *p;
|
||||
@@ -566,8 +544,159 @@
|
||||
g_free (line_buf);
|
||||
}
|
||||
g_string_free (tmp_buf, TRUE);
|
||||
- g_io_channel_unref (channel);
|
||||
- g_free (filename);
|
||||
+#endif /* USE_GMODULE */
|
||||
+}
|
||||
+
|
||||
+
|
||||
+static void
|
||||
+gdk_pixbuf_io_init (void)
|
||||
+{
|
||||
+#ifdef USE_GMODULE
|
||||
+ GIOChannel *channel;
|
||||
+ gchar *gdkpixbuf_module_file_str = gdk_pixbuf_get_module_file ();
|
||||
+ gchar *list_str;
|
||||
+ char **files;
|
||||
+ GError *error = NULL;
|
||||
+ int n;
|
||||
+#endif
|
||||
+ GdkPixbufModule *builtin_module = NULL;
|
||||
+
|
||||
+#define load_one_builtin_module(format) \
|
||||
+ builtin_module = g_new0 (GdkPixbufModule, 1); \
|
||||
+ builtin_module->module_name = #format; \
|
||||
+ if (gdk_pixbuf_load_module_unlocked (builtin_module, NULL)) \
|
||||
+ file_formats = g_slist_prepend (file_formats, builtin_module);\
|
||||
+ else \
|
||||
+ g_free (builtin_module)
|
||||
+
|
||||
+#ifdef INCLUDE_ani
|
||||
+ load_one_builtin_module (ani);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_png
|
||||
+ load_one_builtin_module (png);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_bmp
|
||||
+ load_one_builtin_module (bmp);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_wbmp
|
||||
+ load_one_builtin_module (wbmp);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_gif
|
||||
+ load_one_builtin_module (gif);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_ico
|
||||
+ load_one_builtin_module (ico);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_jpeg
|
||||
+ load_one_builtin_module (jpeg);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_pnm
|
||||
+ load_one_builtin_module (pnm);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_ras
|
||||
+ load_one_builtin_module (ras);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_tiff
|
||||
+ load_one_builtin_module (tiff);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_xpm
|
||||
+ load_one_builtin_module (xpm);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_xbm
|
||||
+ load_one_builtin_module (xbm);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_tga
|
||||
+ load_one_builtin_module (tga);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_pcx
|
||||
+ load_one_builtin_module (pcx);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_icns
|
||||
+ load_one_builtin_module (icns);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_jasper
|
||||
+ load_one_builtin_module (jasper);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_qtif
|
||||
+ load_one_builtin_module (qtif);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_gdiplus
|
||||
+ /* We don't bother having the GDI+ loaders individually selectable
|
||||
+ * for building in or not.
|
||||
+ */
|
||||
+ load_one_builtin_module (ico);
|
||||
+ load_one_builtin_module (wmf);
|
||||
+ load_one_builtin_module (emf);
|
||||
+ load_one_builtin_module (bmp);
|
||||
+ load_one_builtin_module (gif);
|
||||
+ load_one_builtin_module (jpeg);
|
||||
+ load_one_builtin_module (tiff);
|
||||
+#endif
|
||||
+#ifdef INCLUDE_gdip_png
|
||||
+ /* Except the gdip-png loader which normally isn't built at all even */
|
||||
+ load_one_builtin_module (png);
|
||||
+#endif
|
||||
+
|
||||
+#undef load_one_builtin_module
|
||||
+
|
||||
+#ifdef USE_GMODULE
|
||||
+ list_str = g_strjoin (G_SEARCHPATH_SEPARATOR_S,
|
||||
+ gdkpixbuf_module_file_str,
|
||||
+ PIXBUF_FILES_LIBDIR,
|
||||
+ NULL);
|
||||
+
|
||||
+ files = _ugly_copy_of_pango_split_file_list (list_str);
|
||||
+
|
||||
+ n = 0;
|
||||
+ while (files[n])
|
||||
+ n++;
|
||||
+
|
||||
+ while (n-- > 0) {
|
||||
+ GDir *dir = g_dir_open (files[n], 0, NULL);
|
||||
+ if (dir) {
|
||||
+ const char *dent;
|
||||
+
|
||||
+ while ((dent = g_dir_read_name (dir))) {
|
||||
+ int len = strlen (dent);
|
||||
+ if (len > LOADERFILEEXT_LEN && strcmp (dent + len - LOADERFILEEXT_LEN, LOADERFILEEXT) == 0) {
|
||||
+ gchar *pathname = g_build_filename (files[n], dent, NULL);
|
||||
+ channel = g_io_channel_new_file (pathname, "r", &error);
|
||||
+ if (!channel) {
|
||||
+ /* we don't care about issuing a warning
|
||||
+ * g_warning ("Cannot open pixbuf loader module file '%s': %s",
|
||||
+ * pathname,
|
||||
+ * error->message);
|
||||
+ */
|
||||
+ g_error_free (error);
|
||||
+ error = NULL;
|
||||
+ } else {
|
||||
+ process_module_file (pathname, channel);
|
||||
+ g_io_channel_unref (channel);
|
||||
+ }
|
||||
+ g_free (pathname);
|
||||
+ }
|
||||
+ }
|
||||
+ g_dir_close (dir);
|
||||
+ } else {
|
||||
+ channel = g_io_channel_new_file (files[n], "r", &error);
|
||||
+ if (!channel) {
|
||||
+ /* we don't care about issuing a warning
|
||||
+ * g_warning ("Cannot open pixbuf loader module file '%s': %s",
|
||||
+ * files[n],
|
||||
+ * error->message);
|
||||
+ */
|
||||
+ g_error_free (error);
|
||||
+ error = NULL;
|
||||
+ } else {
|
||||
+ process_module_file (files[n], channel);
|
||||
+ g_io_channel_unref (channel);
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ g_strfreev (files);
|
||||
+ g_free (list_str);
|
||||
+ g_free (gdkpixbuf_module_file_str);
|
||||
#endif
|
||||
}
|
||||
|
@ -1,108 +0,0 @@
|
||||
Index: b/gtk/gtkimmodule.c
|
||||
===================================================================
|
||||
--- a/gtk/gtkimmodule.c 2010-04-10 14:52:09.765946296 +0200
|
||||
+++ b/gtk/gtkimmodule.c 2010-04-10 14:52:10.681942580 +0200
|
||||
@@ -29,6 +29,7 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
+#include <unistd.h>
|
||||
|
||||
#include <glib/gstdio.h>
|
||||
#include <gmodule.h>
|
||||
@@ -489,10 +490,32 @@
|
||||
GTK_BINARY_VERSION,
|
||||
"immodule-files.d",
|
||||
NULL);
|
||||
+
|
||||
+#if defined(__linux__) && defined (__i386__)
|
||||
+ gchar *compat_im_module_files_d_str = g_build_filename ("/usr/lib32/gtk-2.0",
|
||||
+ GTK_BINARY_VERSION,
|
||||
+ "immodule-files.d",
|
||||
+ NULL);
|
||||
+#elif defined(__linux__) && ( defined (__x86_64__) || defined(__ia64__) )
|
||||
+ gchar *compat_im_module_files_d_str = g_build_filename ("/usr/lib64/gtk-2.0",
|
||||
+ GTK_BINARY_VERSION,
|
||||
+ "immodule-files.d",
|
||||
+ NULL);
|
||||
+#endif
|
||||
FILE *file;
|
||||
gchar *list_str;
|
||||
char **files;
|
||||
int n;
|
||||
+#if defined(__linux__) && ( defined(__i386__) || defined (__x86_64__) || defined(__ia64__) )
|
||||
+ /* prefer compat_im_module_files_d_str over im_module_files_d_str on the
|
||||
+ * above arches if it's usable */
|
||||
+ if (! g_access(compat_im_module_files_d_str, R_OK|X_OK))
|
||||
+ list_str = g_strjoin (G_SEARCHPATH_SEPARATOR_S,
|
||||
+ compat_im_module_files_d_str,
|
||||
+ im_module_file_str,
|
||||
+ NULL);
|
||||
+ else /* continued below */
|
||||
+#endif
|
||||
|
||||
list_str = g_strjoin (G_SEARCHPATH_SEPARATOR_S,
|
||||
im_module_files_d_str,
|
||||
@@ -544,6 +567,9 @@
|
||||
|
||||
g_strfreev (files);
|
||||
g_free (list_str);
|
||||
+#if defined(__linux__) && ( defined(__i386__) || defined (__x86_64__) || defined(__ia64__) )
|
||||
+ g_free (compat_im_module_files_d_str);
|
||||
+#endif
|
||||
g_free (im_module_files_d_str);
|
||||
g_free (im_module_file_str);
|
||||
}
|
||||
Index: b/gdk-pixbuf/gdk-pixbuf-io.c
|
||||
===================================================================
|
||||
--- a/gdk-pixbuf/gdk-pixbuf-io.c 2010-04-10 14:52:10.065944562 +0200
|
||||
+++ b/gdk-pixbuf/gdk-pixbuf-io.c 2010-04-10 14:52:10.685945884 +0200
|
||||
@@ -554,6 +554,18 @@
|
||||
#ifdef USE_GMODULE
|
||||
GIOChannel *channel;
|
||||
gchar *gdkpixbuf_module_file_str = gdk_pixbuf_get_module_file ();
|
||||
+
|
||||
+#if defined(__linux__) && defined (__i386__)
|
||||
+ gchar *compat_gdkpixbuf_module_files_d_str = g_build_filename ("/usr/lib32/gtk-2.0",
|
||||
+ GTK_BINARY_VERSION,
|
||||
+ "loader-files.d",
|
||||
+ NULL);
|
||||
+#elif defined(__linux__) && ( defined (__x86_64__) || defined(__ia64__) )
|
||||
+ gchar *compat_gdkpixbuf_module_files_d_str = g_build_filename ("/usr/lib64/gtk-2.0",
|
||||
+ GTK_BINARY_VERSION,
|
||||
+ "loader-files.d",
|
||||
+ NULL);
|
||||
+#endif
|
||||
gchar *list_str;
|
||||
char **files;
|
||||
GError *error = NULL;
|
||||
@@ -640,6 +652,18 @@
|
||||
#undef load_one_builtin_module
|
||||
|
||||
#ifdef USE_GMODULE
|
||||
+
|
||||
+#if defined(__linux__) && ( defined(__i386__) || defined (__x86_64__) || defined(__ia64__) )
|
||||
+ /* prefer compat_gdkpixbuf_module_files_d_str over PIXBUF_FILES_LIBDIR
|
||||
+ * on the above arches if it's usable */
|
||||
+ if (! g_access(compat_gdkpixbuf_module_files_d_str, R_OK|X_OK))
|
||||
+ list_str = g_strjoin (G_SEARCHPATH_SEPARATOR_S,
|
||||
+ gdkpixbuf_module_file_str,
|
||||
+ compat_gdkpixbuf_module_files_d_str,
|
||||
+ NULL);
|
||||
+ else /* continued below */
|
||||
+#endif
|
||||
+
|
||||
list_str = g_strjoin (G_SEARCHPATH_SEPARATOR_S,
|
||||
gdkpixbuf_module_file_str,
|
||||
PIXBUF_FILES_LIBDIR,
|
||||
@@ -695,6 +719,10 @@
|
||||
}
|
||||
|
||||
g_strfreev (files);
|
||||
+#if defined(__linux__) && ( defined(__i386__) || defined (__x86_64__) || defined(__ia64__) )
|
||||
+
|
||||
+ g_free (compat_gdkpixbuf_module_files_d_str);
|
||||
+#endif
|
||||
g_free (list_str);
|
||||
g_free (gdkpixbuf_module_file_str);
|
||||
#endif
|
39
debian/patches/025_dfb-window-destroy-leak.patch
vendored
39
debian/patches/025_dfb-window-destroy-leak.patch
vendored
@ -1,39 +0,0 @@
|
||||
Index: gtk+2.0-2.10.11/gdk/directfb/gdkwindow-directfb.c
|
||||
===================================================================
|
||||
--- gtk+2.0-2.10.11.orig/gdk/directfb/gdkwindow-directfb.c 2007-04-13 10:46:56.000000000 +0200
|
||||
+++ gtk+2.0-2.10.11/gdk/directfb/gdkwindow-directfb.c 2007-04-13 10:46:59.000000000 +0200
|
||||
@@ -23,6 +23,16 @@
|
||||
* file for a list of people on the GTK+ Team.
|
||||
*/
|
||||
|
||||
+ if (impl->drawable.surface) {
|
||||
+ GdkDrawableImplDirectFB *dimpl = GDK_DRAWABLE_IMPL_DIRECTFB (private->impl);
|
||||
+ if(dimpl->cairo_surface) {
|
||||
+ cairo_surface_destroy(dimpl->cairo_surface);
|
||||
+ dimpl->cairo_surface= NULL;
|
||||
+ }
|
||||
+ impl->drawable.surface->Release (impl->drawable.surface);
|
||||
+ impl->drawable.surface = NULL;
|
||||
+ }
|
||||
+
|
||||
/*
|
||||
* GTK+ DirectFB backend
|
||||
* Copyright (C) 2001-2002 convergence integrated media GmbH
|
||||
@@ -612,16 +622,8 @@
|
||||
impl->window->SetOpacity (impl->window,0);
|
||||
impl->window->Close(impl->window);
|
||||
impl->window->Release(impl->window);
|
||||
+ impl->window = NULL;
|
||||
}
|
||||
-
|
||||
-#if 0 /* let the finalizer kill it */
|
||||
- if (!recursing && !foreign_destroy)
|
||||
- {
|
||||
- if (impl->window)
|
||||
- impl->window->Destroy (impl->window);
|
||||
- impl->window = NULL;
|
||||
- }
|
||||
-#endif
|
||||
}
|
||||
|
||||
/* This function is called when the window is really gone.
|
@ -1,74 +0,0 @@
|
||||
diff -urN gtk+-2.8.20.orig/gdk-pixbuf/gdk-pixbuf-loader.c gtk+-2.8.20/gdk-pixbuf/gdk-pixbuf-loader.c
|
||||
--- gtk+-2.8.20.orig/gdk-pixbuf/gdk-pixbuf-loader.c 2006-03-22 21:35:26.000000000 +0100
|
||||
+++ gtk+-2.8.20/gdk-pixbuf/gdk-pixbuf-loader.c 2007-01-25 12:15:17.000000000 +0100
|
||||
@@ -491,7 +491,7 @@
|
||||
|
||||
eaten = gdk_pixbuf_loader_eat_header_write (loader, buf, count, error);
|
||||
if (eaten <= 0)
|
||||
- return FALSE;
|
||||
+ goto fail;
|
||||
|
||||
count -= eaten;
|
||||
buf += eaten;
|
||||
@@ -499,27 +499,32 @@
|
||||
|
||||
if (count > 0 && priv->image_module->load_increment)
|
||||
{
|
||||
- gboolean retval;
|
||||
- retval = priv->image_module->load_increment (priv->context, buf, count,
|
||||
- error);
|
||||
- if (!retval && error && *error == NULL)
|
||||
- {
|
||||
- /* Fix up busted image loader */
|
||||
- g_warning ("Bug! loader '%s' didn't set an error on failure",
|
||||
- priv->image_module->module_name);
|
||||
- g_set_error (error,
|
||||
- GDK_PIXBUF_ERROR,
|
||||
- GDK_PIXBUF_ERROR_FAILED,
|
||||
- _("Internal error: Image loader module '%s'"
|
||||
- " failed to begin loading an image, but didn't"
|
||||
- " give a reason for the failure"),
|
||||
- priv->image_module->module_name);
|
||||
- }
|
||||
-
|
||||
- return retval;
|
||||
+ if (!priv->image_module->load_increment (priv->context, buf, count,
|
||||
+ error))
|
||||
+ goto fail;
|
||||
+
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
+
|
||||
+ fail:
|
||||
+ if (error && *error == NULL)
|
||||
+ {
|
||||
+ /* Fix up busted image loader */
|
||||
+ g_warning ("Bug! loader '%s' didn't set an error on failure",
|
||||
+ priv->image_module->module_name);
|
||||
+ g_set_error (error,
|
||||
+ GDK_PIXBUF_ERROR,
|
||||
+ GDK_PIXBUF_ERROR_FAILED,
|
||||
+ _("Internal error: Image loader module '%s'"
|
||||
+ " failed to begin loading an image, but didn't"
|
||||
+ " give a reason for the failure"),
|
||||
+ priv->image_module->module_name);
|
||||
+ }
|
||||
+
|
||||
+ gdk_pixbuf_loader_close (loader, NULL);
|
||||
+
|
||||
+ return FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -737,8 +742,8 @@
|
||||
|
||||
priv = loader->priv;
|
||||
|
||||
- /* we expect it's not closed */
|
||||
- g_return_val_if_fail (priv->closed == FALSE, TRUE);
|
||||
+ if (priv->closed)
|
||||
+ return TRUE;
|
||||
|
||||
/* We have less the LOADER_HEADER_SIZE bytes in the image.
|
||||
* Flush it, and keep going.
|
@ -1,33 +0,0 @@
|
||||
--- a/gtk/gtkentry.c 2008-04-01 11:10:41.000000000 +0200
|
||||
+++ b/gtk/gtkentry.c 2008-04-01 11:11:08.000000000 +0200
|
||||
@@ -537,7 +537,7 @@
|
||||
g_param_spec_unichar ("invisible-char",
|
||||
P_("Invisible character"),
|
||||
P_("The character to use when masking entry contents (in \"password mode\")"),
|
||||
- '*',
|
||||
+ (gunichar) 0x25CF,
|
||||
GTK_PARAM_READWRITE));
|
||||
|
||||
g_object_class_install_property (gobject_class,
|
||||
@@ -1103,7 +1103,7 @@
|
||||
|
||||
entry->editable = TRUE;
|
||||
entry->visible = TRUE;
|
||||
- entry->invisible_char = '*';
|
||||
+ entry->invisible_char = (gunichar) 0x25CF;
|
||||
entry->dnd_position = -1;
|
||||
entry->width_chars = -1;
|
||||
entry->is_cell_renderer = FALSE;
|
||||
@@ -4552,9 +4552,9 @@
|
||||
* gtk_entry_set_visibility() has been called to set text visibility
|
||||
* to %FALSE. i.e. this is the character used in "password mode" to
|
||||
* show the user how many characters have been typed. The default
|
||||
- * invisible char is an asterisk ('*'). If you set the invisible char
|
||||
- * to 0, then the user will get no feedback at all; there will be
|
||||
- * no text on the screen as they type.
|
||||
+ * invisible char is a black circle (Unicode character 25CF). If
|
||||
+ * you set the invisible char to 0, then the user will get no
|
||||
+ * feedback at all; there will be no text on the screen as they type.
|
||||
**/
|
||||
void
|
||||
gtk_entry_set_invisible_char (GtkEntry *entry,
|
34
debian/patches/030_gtkscake_redraw.patch
vendored
34
debian/patches/030_gtkscake_redraw.patch
vendored
@ -1,34 +0,0 @@
|
||||
From 84f88bbb1d2e12b1c582e87fa098b823e91bbf33 Mon Sep 17 00:00:00 2001
|
||||
From: Jan Arne Petersen <jap@gnome.org>
|
||||
Date: Tue, 18 May 2010 06:46:42 +0000
|
||||
Subject: GtkRange: Redraw if GtkRange is a GtkScale and value is drawn.
|
||||
|
||||
* gtk/gtkrange.c: (gtk_range_adjustment_value_change):
|
||||
Queue the draw also if the range is a scale and the value is drawn,
|
||||
fixing bug #533946 (Markus Brinkmann), when two HScales use one
|
||||
adjustment.
|
||||
---
|
||||
diff --git a/gtk/gtkrange.c b/gtk/gtkrange.c
|
||||
index 552eac7..a4fcee4 100644
|
||||
--- a/gtk/gtkrange.c
|
||||
+++ b/gtk/gtkrange.c
|
||||
@@ -35,6 +35,7 @@
|
||||
#include "gtkmarshalers.h"
|
||||
#include "gtkorientable.h"
|
||||
#include "gtkrange.h"
|
||||
+#include "gtkscale.h"
|
||||
#include "gtkscrollbar.h"
|
||||
#include "gtkprivate.h"
|
||||
#include "gtkintl.h"
|
||||
@@ -2618,7 +2619,8 @@ gtk_range_adjustment_value_changed (GtkAdjustment *adjustment,
|
||||
gtk_range_calc_layout (range, range->adjustment->value);
|
||||
|
||||
/* now check whether the layout changed */
|
||||
- if (layout_changed (range->layout, &layout))
|
||||
+ if (layout_changed (range->layout, &layout) ||
|
||||
+ (GTK_IS_SCALE (range) && GTK_SCALE (range)->draw_value))
|
||||
{
|
||||
gtk_widget_queue_draw (GTK_WIDGET (range));
|
||||
/* setup a timer to ensure the range isn't lagging too much behind the scroll position */
|
||||
--
|
||||
cgit v0.8.3.1
|
448
debian/patches/031_cursor-blinking-timeout.patch
vendored
448
debian/patches/031_cursor-blinking-timeout.patch
vendored
@ -1,448 +0,0 @@
|
||||
From upstream SVN r16366 (trunk)
|
||||
===================================================================
|
||||
|
||||
Stop cursor blinking after a configurable timeout.
|
||||
(#353670, #352442, Arjan van de Ven, Manu Cornet)
|
||||
|
||||
* gtk/gtksettings.c (gtk_settings_class_init): Add a
|
||||
gtk-cursor-blink-timeout setting, which specifies the number
|
||||
of seconds that the cursor should blink after a user interaction.
|
||||
The default value is G_MAXINT to preserve the current behaviour.
|
||||
|
||||
* gtk/gtkentry.c (blink_cb): Stop blinking after blink-timeout
|
||||
seconds.
|
||||
|
||||
* gtk/gtkentry.c (gtk_entry_completion_key_press)
|
||||
(gtk_entry_button_press, gtk_entry_focus_in): Reset the
|
||||
blink timer.
|
||||
|
||||
* gtk/gtktextview.c (blink_cb): Stop blinking after blink-timeout
|
||||
seconds.
|
||||
|
||||
* gtk/gtktextview.c (gtk_text_view_key_press_event)
|
||||
(gtk_text_view_button_press_event, gtk_text_view_focus_in_event):
|
||||
Reset the blink timer.
|
||||
|
||||
Index: gtk+2.0-2.10.10/gtk/gtkentry.c
|
||||
===================================================================
|
||||
--- gtk+2.0-2.10.10.orig/gtk/gtkentry.c 2007-03-13 14:10:39.000000000 +0100
|
||||
+++ gtk+2.0-2.10.10/gtk/gtkentry.c 2007-03-13 14:10:42.000000000 +0100
|
||||
@@ -82,6 +82,7 @@
|
||||
{
|
||||
gfloat xalign;
|
||||
gint insert_pos;
|
||||
+ guint blink_time; /* time in msec the cursor has blinked since last user event */
|
||||
guint real_changed : 1;
|
||||
guint change_count : 8;
|
||||
};
|
||||
@@ -334,6 +335,7 @@
|
||||
GtkStateType previous_state);
|
||||
static void gtk_entry_check_cursor_blink (GtkEntry *entry);
|
||||
static void gtk_entry_pend_cursor_blink (GtkEntry *entry);
|
||||
+static void gtk_entry_reset_blink_time (GtkEntry *entry);
|
||||
static void get_text_area_size (GtkEntry *entry,
|
||||
gint *x,
|
||||
gint *y,
|
||||
@@ -1654,6 +1656,8 @@
|
||||
(entry->button && event->button != entry->button))
|
||||
return FALSE;
|
||||
|
||||
+ gtk_entry_reset_blink_time (entry);
|
||||
+
|
||||
entry->button = event->button;
|
||||
|
||||
if (!GTK_WIDGET_HAS_FOCUS (widget))
|
||||
@@ -1744,7 +1748,7 @@
|
||||
entry->drag_start_y = event->y;
|
||||
}
|
||||
else
|
||||
- gtk_editable_set_position (editable, tmp_pos);
|
||||
+ gtk_editable_set_position (editable, tmp_pos);
|
||||
break;
|
||||
|
||||
case GDK_2BUTTON_PRESS:
|
||||
@@ -2006,6 +2010,7 @@
|
||||
{
|
||||
GtkEntry *entry = GTK_ENTRY (widget);
|
||||
|
||||
+ gtk_entry_reset_blink_time (entry);
|
||||
gtk_entry_pend_cursor_blink (entry);
|
||||
|
||||
if (entry->editable)
|
||||
@@ -2078,6 +2083,7 @@
|
||||
"direction_changed",
|
||||
G_CALLBACK (gtk_entry_keymap_direction_changed), entry);
|
||||
|
||||
+ gtk_entry_reset_blink_time (entry);
|
||||
gtk_entry_check_cursor_blink (entry);
|
||||
|
||||
return FALSE;
|
||||
@@ -5281,9 +5287,10 @@
|
||||
* - the widget has focus
|
||||
*/
|
||||
|
||||
-#define CURSOR_ON_MULTIPLIER 0.66
|
||||
-#define CURSOR_OFF_MULTIPLIER 0.34
|
||||
-#define CURSOR_PEND_MULTIPLIER 1.0
|
||||
+#define CURSOR_ON_MULTIPLIER 2
|
||||
+#define CURSOR_OFF_MULTIPLIER 1
|
||||
+#define CURSOR_PEND_MULTIPLIER 3
|
||||
+#define CURSOR_DIVIDER 3
|
||||
|
||||
static gboolean
|
||||
cursor_blinks (GtkEntry *entry)
|
||||
@@ -5315,6 +5322,17 @@
|
||||
return time;
|
||||
}
|
||||
|
||||
+static gint
|
||||
+get_cursor_blink_timeout (GtkEntry *entry)
|
||||
+{
|
||||
+ GtkSettings *settings = gtk_widget_get_settings (GTK_WIDGET (entry));
|
||||
+ gint timeout;
|
||||
+
|
||||
+ g_object_get (settings, "gtk-cursor-blink-timeout", &timeout, NULL);
|
||||
+
|
||||
+ return timeout;
|
||||
+}
|
||||
+
|
||||
static void
|
||||
show_cursor (GtkEntry *entry)
|
||||
{
|
||||
@@ -5346,11 +5364,14 @@
|
||||
blink_cb (gpointer data)
|
||||
{
|
||||
GtkEntry *entry;
|
||||
+ GtkEntryPrivate *priv;
|
||||
+ gint blink_timeout;
|
||||
|
||||
GDK_THREADS_ENTER ();
|
||||
|
||||
entry = GTK_ENTRY (data);
|
||||
-
|
||||
+ priv = GTK_ENTRY_GET_PRIVATE (entry);
|
||||
+
|
||||
if (!GTK_WIDGET_HAS_FOCUS (entry))
|
||||
{
|
||||
g_warning ("GtkEntry - did not receive focus-out-event. If you\n"
|
||||
@@ -5363,18 +5384,27 @@
|
||||
}
|
||||
|
||||
g_assert (entry->selection_bound == entry->current_pos);
|
||||
-
|
||||
- if (entry->cursor_visible)
|
||||
+
|
||||
+ blink_timeout = get_cursor_blink_timeout (entry);
|
||||
+ if (priv->blink_time > 1000 * blink_timeout &&
|
||||
+ blink_timeout < G_MAXINT/1000)
|
||||
+ {
|
||||
+ /* we've blinked enough without the user doing anything, stop blinking */
|
||||
+ show_cursor (entry);
|
||||
+ entry->blink_timeout = 0;
|
||||
+ }
|
||||
+ else if (entry->cursor_visible)
|
||||
{
|
||||
hide_cursor (entry);
|
||||
- entry->blink_timeout = g_timeout_add (get_cursor_time (entry) * CURSOR_OFF_MULTIPLIER,
|
||||
+ entry->blink_timeout = g_timeout_add (get_cursor_time (entry) * CURSOR_OFF_MULTIPLIER / CURSOR_DIVIDER,
|
||||
blink_cb,
|
||||
entry);
|
||||
}
|
||||
else
|
||||
{
|
||||
show_cursor (entry);
|
||||
- entry->blink_timeout = g_timeout_add (get_cursor_time (entry) * CURSOR_ON_MULTIPLIER,
|
||||
+ priv->blink_time += get_cursor_time (entry);
|
||||
+ entry->blink_timeout = g_timeout_add (get_cursor_time (entry) * CURSOR_ON_MULTIPLIER / CURSOR_DIVIDER,
|
||||
blink_cb,
|
||||
entry);
|
||||
}
|
||||
@@ -5388,14 +5418,18 @@
|
||||
static void
|
||||
gtk_entry_check_cursor_blink (GtkEntry *entry)
|
||||
{
|
||||
+ GtkEntryPrivate *priv;
|
||||
+
|
||||
+ priv = GTK_ENTRY_GET_PRIVATE (entry);
|
||||
+
|
||||
if (cursor_blinks (entry))
|
||||
{
|
||||
if (!entry->blink_timeout)
|
||||
{
|
||||
- entry->blink_timeout = g_timeout_add (get_cursor_time (entry) * CURSOR_ON_MULTIPLIER,
|
||||
+ show_cursor (entry);
|
||||
+ entry->blink_timeout = g_timeout_add (get_cursor_time (entry) * CURSOR_ON_MULTIPLIER / CURSOR_DIVIDER,
|
||||
blink_cb,
|
||||
entry);
|
||||
- show_cursor (entry);
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -5419,13 +5453,24 @@
|
||||
if (entry->blink_timeout != 0)
|
||||
g_source_remove (entry->blink_timeout);
|
||||
|
||||
- entry->blink_timeout = g_timeout_add (get_cursor_time (entry) * CURSOR_PEND_MULTIPLIER,
|
||||
+ entry->blink_timeout = g_timeout_add (get_cursor_time (entry) * CURSOR_PEND_MULTIPLIER / CURSOR_DIVIDER,
|
||||
blink_cb,
|
||||
entry);
|
||||
show_cursor (entry);
|
||||
}
|
||||
}
|
||||
|
||||
+static void
|
||||
+gtk_entry_reset_blink_time (GtkEntry *entry)
|
||||
+{
|
||||
+ GtkEntryPrivate *priv;
|
||||
+
|
||||
+ priv = GTK_ENTRY_GET_PRIVATE (entry);
|
||||
+
|
||||
+ priv->blink_time = 0;
|
||||
+}
|
||||
+
|
||||
+
|
||||
/* completion */
|
||||
static gint
|
||||
gtk_entry_completion_timeout (gpointer data)
|
||||
Index: gtk+2.0-2.10.10/gtk/gtksettings.c
|
||||
===================================================================
|
||||
--- gtk+2.0-2.10.10.orig/gtk/gtksettings.c 2007-03-12 14:50:58.000000000 +0100
|
||||
+++ gtk+2.0-2.10.10/gtk/gtksettings.c 2007-03-13 14:10:42.000000000 +0100
|
||||
@@ -64,6 +64,7 @@
|
||||
PROP_DOUBLE_CLICK_DISTANCE,
|
||||
PROP_CURSOR_BLINK,
|
||||
PROP_CURSOR_BLINK_TIME,
|
||||
+ PROP_CURSOR_BLINK_TIMEOUT,
|
||||
PROP_SPLIT_CURSOR,
|
||||
PROP_THEME_NAME,
|
||||
PROP_ICON_THEME_NAME,
|
||||
@@ -201,6 +202,15 @@
|
||||
GTK_PARAM_READWRITE),
|
||||
NULL);
|
||||
g_assert (result == PROP_DOUBLE_CLICK_DISTANCE);
|
||||
+
|
||||
+ /**
|
||||
+ * GtkSettings:gtk-cursor-blink:
|
||||
+ *
|
||||
+ * Whether the cursor should blink.
|
||||
+ *
|
||||
+ * Also see the gtk-cursor-blink-timeout setting, which allows
|
||||
+ * more flexible control over cursor blinking.
|
||||
+ */
|
||||
result = settings_install_property_parser (class,
|
||||
g_param_spec_boolean ("gtk-cursor-blink",
|
||||
P_("Cursor Blink"),
|
||||
@@ -212,11 +222,31 @@
|
||||
result = settings_install_property_parser (class,
|
||||
g_param_spec_int ("gtk-cursor-blink-time",
|
||||
P_("Cursor Blink Time"),
|
||||
- P_("Length of the cursor blink cycle, in milleseconds"),
|
||||
+ P_("Length of the cursor blink cycle, in milliseconds"),
|
||||
100, G_MAXINT, 1200,
|
||||
GTK_PARAM_READWRITE),
|
||||
NULL);
|
||||
g_assert (result == PROP_CURSOR_BLINK_TIME);
|
||||
+
|
||||
+ /**
|
||||
+ * GtkSettings:gtk-cursor-blink-timeout:
|
||||
+ *
|
||||
+ * Time after which the cursor stops blinking, in seconds.
|
||||
+ * The timer is reset after each user interaction.
|
||||
+ *
|
||||
+ * Setting this to zero has the same effect as setting
|
||||
+ * gtk-cursor-blinks to %FALSE.
|
||||
+ *
|
||||
+ * Since: 2.12
|
||||
+ */
|
||||
+ result = settings_install_property_parser (class,
|
||||
+ g_param_spec_int ("gtk-cursor-blink-timeout",
|
||||
+ P_("Cursor Blink Timeout"),
|
||||
+ P_("Time after which the cursor stops blinking, in seconds"),
|
||||
+ 1, G_MAXINT, G_MAXINT,
|
||||
+ GTK_PARAM_READWRITE),
|
||||
+ NULL);
|
||||
+ g_assert (result == PROP_CURSOR_BLINK_TIMEOUT);
|
||||
result = settings_install_property_parser (class,
|
||||
g_param_spec_boolean ("gtk-split-cursor",
|
||||
P_("Split Cursor"),
|
||||
Index: gtk+2.0-2.10.10/gtk/gtktextview.c
|
||||
===================================================================
|
||||
--- gtk+2.0-2.10.10.orig/gtk/gtktextview.c 2007-03-12 14:50:26.000000000 +0100
|
||||
+++ gtk+2.0-2.10.10/gtk/gtktextview.c 2007-03-13 14:10:42.000000000 +0100
|
||||
@@ -99,6 +99,16 @@
|
||||
|
||||
#define SPACE_FOR_CURSOR 1
|
||||
|
||||
+typedef struct _GtkTextViewPrivate GtkTextViewPrivate;
|
||||
+
|
||||
+#define GTK_TEXT_VIEW_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), GTK_TYPE_TEXT_VIEW, GtkTextViewPrivate))
|
||||
+
|
||||
+struct _GtkTextViewPrivate
|
||||
+{
|
||||
+ guint blink_time; /* time in msec the cursor has blinked since last user event */
|
||||
+};
|
||||
+
|
||||
+
|
||||
struct _GtkTextPendingScroll
|
||||
{
|
||||
GtkTextMark *mark;
|
||||
@@ -290,6 +300,7 @@
|
||||
static void gtk_text_view_check_cursor_blink (GtkTextView *text_view);
|
||||
static void gtk_text_view_pend_cursor_blink (GtkTextView *text_view);
|
||||
static void gtk_text_view_stop_cursor_blink (GtkTextView *text_view);
|
||||
+static void gtk_text_view_reset_blink_time (GtkTextView *text_view);
|
||||
|
||||
static void gtk_text_view_value_changed (GtkAdjustment *adj,
|
||||
GtkTextView *view);
|
||||
@@ -1007,6 +1018,8 @@
|
||||
gtk_binding_entry_add_signal (binding_set, GDK_KP_Tab, GDK_SHIFT_MASK | GDK_CONTROL_MASK,
|
||||
"move_focus", 1,
|
||||
GTK_TYPE_DIRECTION_TYPE, GTK_DIR_TAB_BACKWARD);
|
||||
+
|
||||
+ g_type_class_add_private (gobject_class, sizeof (GtkTextViewPrivate));
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -3920,6 +3933,7 @@
|
||||
if (obscure)
|
||||
gtk_text_view_obscure_mouse_cursor (text_view);
|
||||
|
||||
+ gtk_text_view_reset_blink_time (text_view);
|
||||
gtk_text_view_pend_cursor_blink (text_view);
|
||||
|
||||
return retval;
|
||||
@@ -3963,6 +3977,8 @@
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
+ gtk_text_view_reset_blink_time (text_view);
|
||||
+
|
||||
#if 0
|
||||
/* debug hack */
|
||||
if (event->button == 3 && (event->state & GDK_CONTROL_MASK) != 0)
|
||||
@@ -4104,7 +4120,9 @@
|
||||
gtk_widget_queue_draw (widget);
|
||||
|
||||
DV(g_print (G_STRLOC": focus_in_event\n"));
|
||||
-
|
||||
+
|
||||
+ gtk_text_view_reset_blink_time (text_view);
|
||||
+
|
||||
if (text_view->cursor_visible && text_view->layout)
|
||||
{
|
||||
gtk_text_layout_set_cursor_visible (text_view->layout, TRUE);
|
||||
@@ -4437,9 +4455,10 @@
|
||||
g_slist_free (copy);
|
||||
}
|
||||
|
||||
-#define CURSOR_ON_MULTIPLIER 0.66
|
||||
-#define CURSOR_OFF_MULTIPLIER 0.34
|
||||
-#define CURSOR_PEND_MULTIPLIER 1.0
|
||||
+#define CURSOR_ON_MULTIPLIER 2
|
||||
+#define CURSOR_OFF_MULTIPLIER 1
|
||||
+#define CURSOR_PEND_MULTIPLIER 3
|
||||
+#define CURSOR_DIVIDER 3
|
||||
|
||||
static gboolean
|
||||
cursor_blinks (GtkTextView *text_view)
|
||||
@@ -4484,6 +4503,18 @@
|
||||
return time;
|
||||
}
|
||||
|
||||
+static gint
|
||||
+get_cursor_blink_timeout (GtkTextView *text_view)
|
||||
+{
|
||||
+ GtkSettings *settings = gtk_widget_get_settings (GTK_WIDGET (text_view));
|
||||
+ gint time;
|
||||
+
|
||||
+ g_object_get (settings, "gtk-cursor-blink-timeout", &time, NULL);
|
||||
+
|
||||
+ return time;
|
||||
+}
|
||||
+
|
||||
+
|
||||
/*
|
||||
* Blink!
|
||||
*/
|
||||
@@ -4492,12 +4523,15 @@
|
||||
blink_cb (gpointer data)
|
||||
{
|
||||
GtkTextView *text_view;
|
||||
+ GtkTextViewPrivate *priv;
|
||||
gboolean visible;
|
||||
+ gint blink_timeout;
|
||||
|
||||
GDK_THREADS_ENTER ();
|
||||
|
||||
text_view = GTK_TEXT_VIEW (data);
|
||||
-
|
||||
+ priv = GTK_TEXT_VIEW_GET_PRIVATE (text_view);
|
||||
+
|
||||
if (!GTK_WIDGET_HAS_FOCUS (text_view))
|
||||
{
|
||||
g_warning ("GtkTextView - did not receive focus-out-event. If you\n"
|
||||
@@ -4514,14 +4548,25 @@
|
||||
|
||||
visible = gtk_text_layout_get_cursor_visible (text_view->layout);
|
||||
|
||||
- if (visible)
|
||||
- text_view->blink_timeout = g_timeout_add (get_cursor_time (text_view) * CURSOR_OFF_MULTIPLIER,
|
||||
- blink_cb,
|
||||
- text_view);
|
||||
- else
|
||||
- text_view->blink_timeout = g_timeout_add (get_cursor_time (text_view) * CURSOR_ON_MULTIPLIER,
|
||||
+ blink_timeout = get_cursor_blink_timeout (text_view);
|
||||
+ if (priv->blink_time > 1000 * blink_timeout &&
|
||||
+ blink_timeout < G_MAXINT/1000)
|
||||
+ {
|
||||
+ /* we've blinked enough without the user doing anything, stop blinking */
|
||||
+ visible = 0;
|
||||
+ text_view->blink_timeout = 0;
|
||||
+ }
|
||||
+ else if (visible)
|
||||
+ text_view->blink_timeout = g_timeout_add (get_cursor_time (text_view) * CURSOR_OFF_MULTIPLIER / CURSOR_DIVIDER,
|
||||
blink_cb,
|
||||
text_view);
|
||||
+ else
|
||||
+ {
|
||||
+ text_view->blink_timeout = g_timeout_add (get_cursor_time (text_view) * CURSOR_ON_MULTIPLIER / CURSOR_DIVIDER,
|
||||
+ blink_cb,
|
||||
+ text_view);
|
||||
+ priv->blink_time += get_cursor_time (text_view);
|
||||
+ }
|
||||
|
||||
/* Block changed_handler while changing the layout's cursor visibility
|
||||
* because it would expose the whole paragraph. Instead, we expose
|
||||
@@ -4567,7 +4612,7 @@
|
||||
{
|
||||
gtk_text_layout_set_cursor_visible (text_view->layout, TRUE);
|
||||
|
||||
- text_view->blink_timeout = g_timeout_add (get_cursor_time (text_view) * CURSOR_OFF_MULTIPLIER,
|
||||
+ text_view->blink_timeout = g_timeout_add (get_cursor_time (text_view) * CURSOR_OFF_MULTIPLIER / CURSOR_DIVIDER,
|
||||
blink_cb,
|
||||
text_view);
|
||||
}
|
||||
@@ -4596,12 +4641,22 @@
|
||||
gtk_text_view_stop_cursor_blink (text_view);
|
||||
gtk_text_layout_set_cursor_visible (text_view->layout, TRUE);
|
||||
|
||||
- text_view->blink_timeout = g_timeout_add (get_cursor_time (text_view) * CURSOR_PEND_MULTIPLIER,
|
||||
+ text_view->blink_timeout = g_timeout_add (get_cursor_time (text_view) * CURSOR_PEND_MULTIPLIER / CURSOR_DIVIDER,
|
||||
blink_cb,
|
||||
text_view);
|
||||
}
|
||||
}
|
||||
|
||||
+static void
|
||||
+gtk_text_view_reset_blink_time (GtkTextView *text_view)
|
||||
+{
|
||||
+ GtkTextViewPrivate *priv;
|
||||
+
|
||||
+ priv = GTK_TEXT_VIEW_GET_PRIVATE (text_view);
|
||||
+
|
||||
+ priv->blink_time = 0;
|
||||
+}
|
||||
+
|
||||
|
||||
/*
|
||||
* Key binding handlers
|
50
debian/patches/031_directfb_dead-keys.patch
vendored
50
debian/patches/031_directfb_dead-keys.patch
vendored
@ -1,50 +0,0 @@
|
||||
Debian #394871
|
||||
GNOME #543710
|
||||
|
||||
Index: gtk+-2.12.11/gdk/directfb/gdkkeys-directfb.c
|
||||
===================================================================
|
||||
--- gtk+-2.12.11.orig/gdk/directfb/gdkkeys-directfb.c 2008-07-19 12:21:35.189826919 +0200
|
||||
+++ gtk+-2.12.11/gdk/directfb/gdkkeys-directfb.c 2008-07-19 12:22:17.381822899 +0200
|
||||
@@ -1629,28 +1629,7 @@ gdk_directfb_translate_key (DFBInputDevi
|
||||
break;
|
||||
|
||||
case DIKT_DEAD:
|
||||
- switch (key_symbol)
|
||||
- {
|
||||
- case DIKS_DEAD_ABOVEDOT: keyval = GDK_dead_abovedot; break;
|
||||
- case DIKS_DEAD_ABOVERING: keyval = GDK_dead_abovering; break;
|
||||
- case DIKS_DEAD_ACUTE: keyval = GDK_dead_acute; break;
|
||||
- case DIKS_DEAD_BREVE: keyval = GDK_dead_breve; break;
|
||||
- case DIKS_DEAD_CARON: keyval = GDK_dead_caron; break;
|
||||
- case DIKS_DEAD_CEDILLA: keyval = GDK_dead_cedilla; break;
|
||||
- case DIKS_DEAD_CIRCUMFLEX: keyval = GDK_dead_circumflex; break;
|
||||
- case DIKS_DEAD_DIAERESIS: keyval = GDK_dead_diaeresis; break;
|
||||
- case DIKS_DEAD_DOUBLEACUTE: keyval = GDK_dead_doubleacute; break;
|
||||
- case DIKS_DEAD_GRAVE: keyval = GDK_dead_grave; break;
|
||||
- case DIKS_DEAD_IOTA: keyval = GDK_dead_iota; break;
|
||||
- case DIKS_DEAD_MACRON: keyval = GDK_dead_macron; break;
|
||||
- case DIKS_DEAD_OGONEK: keyval = GDK_dead_ogonek; break;
|
||||
- case DIKS_DEAD_SEMIVOICED_SOUND:
|
||||
- keyval = GDK_dead_semivoiced_sound; break;
|
||||
- case DIKS_DEAD_TILDE: keyval = GDK_dead_tilde; break;
|
||||
- case DIKS_DEAD_VOICED_SOUND: keyval = GDK_dead_voiced_sound; break;
|
||||
- default:
|
||||
- break;
|
||||
- }
|
||||
+ /* dead keys are handled directly by directfb */
|
||||
break;
|
||||
|
||||
case DIKT_CUSTOM:
|
||||
Index: gtk+-2.12.11/configure.in
|
||||
===================================================================
|
||||
--- gtk+-2.12.11.orig/configure.in 2008-07-19 12:22:22.874320130 +0200
|
||||
+++ gtk+-2.12.11/configure.in 2008-07-19 12:22:27.902614857 +0200
|
||||
@@ -1399,7 +1399,7 @@ AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
|
||||
AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
|
||||
|
||||
if test "x$gdktarget" = "xdirectfb"; then
|
||||
- DIRECTFB_REQUIRED_VERSION=0.9.24
|
||||
+ DIRECTFB_REQUIRED_VERSION=0.9.26
|
||||
AC_MSG_CHECKING(for DirectFB)
|
||||
|
||||
if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb && $PKG_CONFIG --exists cairo-directfb ; then
|
29
debian/patches/031_papersize_usletter.patch
vendored
29
debian/patches/031_papersize_usletter.patch
vendored
@ -1,29 +0,0 @@
|
||||
From 6e4d98c0c714038617195683be60810dbd349ac6 Mon Sep 17 00:00:00 2001
|
||||
From: Marek Kasik <mkasik@redhat.com>
|
||||
Date: Fri, 21 May 2010 10:14:04 +0000
|
||||
Subject: Update list of US Letter locales
|
||||
|
||||
Sync paper size fallbacks with the latest 1.8.1 CLDR table (#618000).
|
||||
---
|
||||
diff --git a/gtk/gtkpapersize.c b/gtk/gtkpapersize.c
|
||||
index 7188cef..894dca0 100644
|
||||
--- a/gtk/gtkpapersize.c
|
||||
+++ b/gtk/gtkpapersize.c
|
||||
@@ -669,10 +669,11 @@ gtk_paper_size_get_default (void)
|
||||
if (!locale)
|
||||
return GTK_PAPER_NAME_A4;
|
||||
|
||||
- if (g_str_has_prefix (locale, "en_CA") ||
|
||||
- g_str_has_prefix (locale, "en_US") ||
|
||||
- g_str_has_prefix (locale, "es_PR") ||
|
||||
- g_str_has_prefix (locale, "es_US"))
|
||||
+ /* CLDR 1.8.1
|
||||
+ * http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/territory_language_information.html
|
||||
+ */
|
||||
+ if (g_regex_match_simple("[^_.@]{2,3}_(BZ|CA|CL|CO|CR|GT|MX|NI|PA|PH|PR|SV|US|VE)",
|
||||
+ locale, G_REGEX_ANCHORED, G_REGEX_MATCH_ANCHORED))
|
||||
paper_size = GTK_PAPER_NAME_LETTER;
|
||||
else
|
||||
paper_size = GTK_PAPER_NAME_A4;
|
||||
--
|
||||
cgit v0.8.3.1
|
951
debian/patches/032_gdkwindowimpl_directfb.patch
vendored
951
debian/patches/032_gdkwindowimpl_directfb.patch
vendored
@ -1,951 +0,0 @@
|
||||
Patch from Sven Neumann to fix DirectFB support for GTK+ 2.14.
|
||||
Based on the original Ubuntu patch for 2.12.
|
||||
|
||||
GNOME #554407
|
||||
Upstream svn r22358,r22381,r22383,r22385
|
||||
|
||||
Index: gtk+-2.14.7/gdk/directfb/gdkdisplay-directfb.c
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/gdk/directfb/gdkdisplay-directfb.c 2009-03-02 13:00:06.844957878 +0100
|
||||
+++ gtk+-2.14.7/gdk/directfb/gdkdisplay-directfb.c 2009-03-02 13:00:20.703932134 +0100
|
||||
@@ -36,14 +36,13 @@
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
-
|
||||
-extern void _gdk_visual_init (void);
|
||||
-extern void _gdk_events_init (void);
|
||||
-extern void _gdk_input_init (void);
|
||||
-extern void _gdk_dnd_init (void);
|
||||
-extern void _gdk_windowing_window_init (void);
|
||||
-extern void _gdk_windowing_image_init (void);
|
||||
-extern void _gdk_directfb_keyboard_init (void);
|
||||
+extern void _gdk_visual_init (void);
|
||||
+extern void _gdk_events_init (void);
|
||||
+extern void _gdk_input_init (void);
|
||||
+extern void _gdk_dnd_init (void);
|
||||
+extern void _gdk_windowing_window_init (void);
|
||||
+extern void _gdk_windowing_image_init (void);
|
||||
+extern void _gdk_directfb_keyboard_init (void);
|
||||
|
||||
static gboolean gdk_directfb_argb_font = FALSE;
|
||||
static gint gdk_directfb_glyph_surface_cache = 8;
|
||||
@@ -130,11 +129,10 @@
|
||||
_gdk_screen = g_object_new (GDK_TYPE_SCREEN, NULL);
|
||||
|
||||
_gdk_visual_init ();
|
||||
+ _gdk_windowing_window_init ();
|
||||
|
||||
gdk_screen_set_default_colormap (_gdk_screen,
|
||||
- gdk_screen_get_system_colormap (_gdk_screen));
|
||||
- _gdk_windowing_window_init ();
|
||||
- _gdk_windowing_image_init ();
|
||||
+ gdk_screen_get_system_colormap (_gdk_screen)); _gdk_windowing_image_init ();
|
||||
|
||||
_gdk_input_init ();
|
||||
_gdk_dnd_init ();
|
||||
Index: gtk+-2.14.7/gdk/directfb/gdkgeometry-directfb.c
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/gdk/directfb/gdkgeometry-directfb.c 2009-03-02 12:58:18.511935665 +0100
|
||||
+++ gtk+-2.14.7/gdk/directfb/gdkgeometry-directfb.c 2009-03-02 12:59:12.960971087 +0100
|
||||
@@ -41,9 +41,9 @@
|
||||
|
||||
|
||||
void
|
||||
-_gdk_windowing_window_get_offsets (GdkWindow *window,
|
||||
- gint *x_offset,
|
||||
- gint *y_offset)
|
||||
+_gdk_directfb_window_get_offsets (GdkWindow *window,
|
||||
+ gint *x_offset,
|
||||
+ gint *y_offset)
|
||||
{
|
||||
if (x_offset)
|
||||
*x_offset = 0;
|
||||
@@ -69,9 +69,9 @@
|
||||
* brings in from offscreen areas are invalidated.
|
||||
**/
|
||||
void
|
||||
-gdk_window_scroll (GdkWindow *window,
|
||||
- gint dx,
|
||||
- gint dy)
|
||||
+_gdk_directfb_window_scroll (GdkWindow *window,
|
||||
+ gint dx,
|
||||
+ gint dy)
|
||||
{
|
||||
GdkWindowObject *private;
|
||||
GdkDrawableImplDirectFB *impl;
|
||||
@@ -161,10 +161,10 @@
|
||||
* Since: 2.8
|
||||
**/
|
||||
void
|
||||
-gdk_window_move_region (GdkWindow *window,
|
||||
- const GdkRegion *region,
|
||||
- gint dx,
|
||||
- gint dy)
|
||||
+_gdk_directfb_window_move_region (GdkWindow *window,
|
||||
+ const GdkRegion *region,
|
||||
+ gint dx,
|
||||
+ gint dy)
|
||||
{
|
||||
GdkWindowObject *private;
|
||||
GdkDrawableImplDirectFB *impl;
|
||||
Index: gtk+-2.14.7/gdk/directfb/gdkprivate-directfb.h
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/gdk/directfb/gdkprivate-directfb.h 2009-03-02 12:58:31.315949652 +0100
|
||||
+++ gtk+-2.14.7/gdk/directfb/gdkprivate-directfb.h 2009-03-02 12:59:12.964957976 +0100
|
||||
@@ -172,6 +172,17 @@
|
||||
void gdk_directfb_window_id_table_remove (DFBWindowID dfb_id);
|
||||
GdkWindow * gdk_directfb_window_id_table_lookup (DFBWindowID dfb_id);
|
||||
|
||||
+void _gdk_directfb_window_get_offsets (GdkWindow *window,
|
||||
+ gint *x_offset,
|
||||
+ gint *y_offset);
|
||||
+void _gdk_directfb_window_scroll (GdkWindow *window,
|
||||
+ gint dx,
|
||||
+ gint dy);
|
||||
+void _gdk_directfb_window_move_region (GdkWindow *window,
|
||||
+ const GdkRegion *region,
|
||||
+ gint dx,
|
||||
+ gint dy);
|
||||
+
|
||||
|
||||
typedef struct
|
||||
{
|
||||
Index: gtk+-2.14.7/gdk/directfb/gdkwindow-directfb.c
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/gdk/directfb/gdkwindow-directfb.c 2009-03-02 12:58:31.287942741 +0100
|
||||
+++ gtk+-2.14.7/gdk/directfb/gdkwindow-directfb.c 2009-03-02 13:00:47.307933131 +0100
|
||||
@@ -33,6 +33,7 @@
|
||||
|
||||
#include "config.h"
|
||||
#include "gdk.h"
|
||||
+#include "gdkwindowimpl.h"
|
||||
#include "gdkwindow.h"
|
||||
|
||||
#include "gdkdirectfb.h"
|
||||
@@ -67,6 +68,9 @@
|
||||
static void gdk_window_impl_directfb_class_init (GdkWindowImplDirectFBClass *klass);
|
||||
static void gdk_window_impl_directfb_finalize (GObject *object);
|
||||
|
||||
+static void gdk_window_impl_iface_init (GdkWindowImplIface *iface);
|
||||
+
|
||||
+
|
||||
typedef struct
|
||||
{
|
||||
GdkWindowChildChanged changed;
|
||||
@@ -98,9 +102,8 @@
|
||||
tmp_list = old_update_windows;
|
||||
while (tmp_list)
|
||||
{
|
||||
- GdkWindowObject *private = GDK_WINDOW_OBJECT( tmp_list->data );
|
||||
- GdkWindowImplDirectFB *wimpl = GDK_WINDOW_IMPL_DIRECTFB( private->impl );
|
||||
-
|
||||
+ GdkWindowObject *private = GDK_WINDOW_OBJECT( tmp_list->data );
|
||||
+
|
||||
if (private->update_freeze_count)
|
||||
{
|
||||
D_DEBUG_AT( GDKDFB_Updates, " -> %p frozen [%4d,%4d-%4dx%4d] (%d boxes)\n",
|
||||
@@ -115,7 +118,7 @@
|
||||
wimpl->flips.num_regions );
|
||||
gdk_window_process_updates(tmp_list->data,TRUE);
|
||||
}
|
||||
-
|
||||
+
|
||||
g_object_unref (tmp_list->data);
|
||||
tmp_list = tmp_list->next;
|
||||
}
|
||||
@@ -186,11 +189,8 @@
|
||||
static GdkWindow *gdk_directfb_focused_window = NULL;
|
||||
static gpointer parent_class = NULL;
|
||||
GdkWindow * _gdk_parent_root = NULL;
|
||||
-static void
|
||||
-gdk_window_impl_directfb_paintable_init (GdkPaintableIface *iface);
|
||||
-
|
||||
-
|
||||
|
||||
+static void gdk_window_impl_directfb_paintable_init (GdkPaintableIface *iface);
|
||||
|
||||
|
||||
GType
|
||||
@@ -213,20 +213,30 @@
|
||||
(GInstanceInitFunc) gdk_window_impl_directfb_init,
|
||||
};
|
||||
|
||||
- static const GInterfaceInfo paintable_info =
|
||||
- {
|
||||
- (GInterfaceInitFunc) gdk_window_impl_directfb_paintable_init,
|
||||
- NULL,
|
||||
- NULL
|
||||
- };
|
||||
+ static const GInterfaceInfo paintable_info =
|
||||
+ {
|
||||
+ (GInterfaceInitFunc) gdk_window_impl_directfb_paintable_init,
|
||||
+ NULL,
|
||||
+ NULL
|
||||
+ };
|
||||
+
|
||||
+ static const GInterfaceInfo window_impl_info =
|
||||
+ {
|
||||
+ (GInterfaceInitFunc) gdk_window_impl_iface_init,
|
||||
+ NULL,
|
||||
+ NULL
|
||||
+ };
|
||||
|
||||
object_type = g_type_register_static (GDK_TYPE_DRAWABLE_IMPL_DIRECTFB,
|
||||
"GdkWindowImplDirectFB",
|
||||
&object_info, 0);
|
||||
- g_type_add_interface_static (object_type,
|
||||
- GDK_TYPE_PAINTABLE,
|
||||
- &paintable_info);
|
||||
-
|
||||
+ g_type_add_interface_static (object_type,
|
||||
+ GDK_TYPE_PAINTABLE,
|
||||
+ &paintable_info);
|
||||
+
|
||||
+ g_type_add_interface_static (object_type,
|
||||
+ GDK_TYPE_WINDOW_IMPL,
|
||||
+ &window_impl_info);
|
||||
}
|
||||
|
||||
return object_type;
|
||||
@@ -401,11 +411,11 @@
|
||||
|
||||
g_assert (_gdk_parent_root == NULL);
|
||||
|
||||
- _gdk_display->layer->GetConfiguration(
|
||||
- _gdk_display->layer, &dlc );
|
||||
+ _gdk_display->layer->GetConfiguration (_gdk_display->layer, &dlc);
|
||||
|
||||
_gdk_parent_root = g_object_new (GDK_TYPE_WINDOW, NULL);
|
||||
private = GDK_WINDOW_OBJECT (_gdk_parent_root);
|
||||
+ private->impl = g_object_new (_gdk_window_impl_get_type (), NULL);
|
||||
impl = GDK_WINDOW_IMPL_DIRECTFB (private->impl);
|
||||
|
||||
private->window_type = GDK_WINDOW_ROOT;
|
||||
@@ -475,6 +485,7 @@
|
||||
|
||||
window = g_object_new (GDK_TYPE_WINDOW, NULL);
|
||||
private = GDK_WINDOW_OBJECT (window);
|
||||
+ private->impl = g_object_new (_gdk_window_impl_get_type (), NULL);
|
||||
|
||||
parent_private = GDK_WINDOW_OBJECT (parent);
|
||||
parent_impl = GDK_WINDOW_IMPL_DIRECTFB (parent_private->impl);
|
||||
@@ -647,8 +658,8 @@
|
||||
|
||||
GdkWindow *
|
||||
_gdk_window_new (GdkWindow *parent,
|
||||
- GdkWindowAttr *attributes,
|
||||
- gint attributes_mask)
|
||||
+ GdkWindowAttr *attributes,
|
||||
+ gint attributes_mask)
|
||||
{
|
||||
g_return_val_if_fail (attributes != NULL, NULL);
|
||||
|
||||
@@ -1230,28 +1241,19 @@
|
||||
}
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_show_unraised (GdkWindow *window)
|
||||
-{
|
||||
- g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
-
|
||||
- D_DEBUG_AT( GDKDFB_Window, "%s( %p )\n", __FUNCTION__, window );
|
||||
-
|
||||
- show_window_internal (window, FALSE);
|
||||
-}
|
||||
-
|
||||
-void
|
||||
-gdk_window_show (GdkWindow *window)
|
||||
+static void
|
||||
+gdk_directfb_window_show (GdkWindow *window,
|
||||
+ gboolean raise)
|
||||
{
|
||||
g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
|
||||
D_DEBUG_AT( GDKDFB_Window, "%s( %p )\n", __FUNCTION__, window );
|
||||
|
||||
- show_window_internal (window, TRUE);
|
||||
+ show_window_internal (window, raise);
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_hide (GdkWindow *window)
|
||||
+static void
|
||||
+gdk_directfb_window_hide (GdkWindow *window)
|
||||
{
|
||||
GdkWindowObject *private;
|
||||
GdkWindowImplDirectFB *impl;
|
||||
@@ -1276,11 +1278,11 @@
|
||||
|
||||
if (!private->input_only && private->parent)
|
||||
{
|
||||
- _gdk_windowing_window_clear_area (GDK_WINDOW (private->parent),
|
||||
- private->x,
|
||||
- private->y,
|
||||
- impl->drawable.width,
|
||||
- impl->drawable.height);
|
||||
+ gdk_window_clear_area (GDK_WINDOW (private->parent),
|
||||
+ private->x,
|
||||
+ private->y,
|
||||
+ impl->drawable.width,
|
||||
+ impl->drawable.height);
|
||||
}
|
||||
|
||||
event_win = gdk_directfb_other_event_window (window, GDK_UNMAP);
|
||||
@@ -1299,8 +1301,8 @@
|
||||
}
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_withdraw (GdkWindow *window)
|
||||
+static void
|
||||
+gdk_directfb_window_withdraw (GdkWindow *window)
|
||||
{
|
||||
g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
|
||||
@@ -1309,80 +1311,6 @@
|
||||
}
|
||||
|
||||
void
|
||||
-gdk_window_move (GdkWindow *window,
|
||||
- gint x,
|
||||
- gint y)
|
||||
-{
|
||||
- GdkWindowObject *private;
|
||||
- GdkWindowImplDirectFB *impl;
|
||||
-
|
||||
- g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
-
|
||||
- private = GDK_WINDOW_OBJECT (window);
|
||||
- impl = GDK_WINDOW_IMPL_DIRECTFB (private->impl);
|
||||
-
|
||||
- if (impl->window)
|
||||
- {
|
||||
- private->x = x;
|
||||
- private->y = y;
|
||||
- impl->window->MoveTo (impl->window, x, y);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- gint width=impl->drawable.width;
|
||||
- gint height=impl->drawable.height;
|
||||
- GdkRectangle old =
|
||||
- { private->x, private->y,width,height };
|
||||
-
|
||||
- _gdk_directfb_move_resize_child (window, x, y, width, height);
|
||||
- _gdk_directfb_calc_abs (window);
|
||||
-
|
||||
- if (GDK_WINDOW_IS_MAPPED (private))
|
||||
- {
|
||||
- GdkWindow *mousewin;
|
||||
- GdkRectangle new = { x, y, width, height };
|
||||
-
|
||||
- gdk_rectangle_union (&new, &old, &new);
|
||||
- gdk_window_invalidate_rect (GDK_WINDOW (private->parent), &new,TRUE);
|
||||
-
|
||||
- /* The window the pointer is in might have changed */
|
||||
- mousewin = gdk_window_at_pointer (NULL, NULL);
|
||||
- gdk_directfb_window_send_crossing_events (NULL, mousewin,
|
||||
- GDK_CROSSING_NORMAL);
|
||||
- }
|
||||
- }
|
||||
-}
|
||||
-
|
||||
-void
|
||||
-gdk_window_resize (GdkWindow *window,
|
||||
- gint width,
|
||||
- gint height)
|
||||
-{
|
||||
- GdkWindowObject *private;
|
||||
- gint x, y;
|
||||
-
|
||||
- g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
-
|
||||
- private = GDK_WINDOW_OBJECT (window);
|
||||
-
|
||||
- x = private->x;
|
||||
- y = private->y;
|
||||
-
|
||||
- if (private->parent && (private->parent->window_type != GDK_WINDOW_CHILD))
|
||||
- {
|
||||
- GdkWindowChildHandlerData *data;
|
||||
-
|
||||
- data = g_object_get_data (G_OBJECT (private->parent),
|
||||
- "gdk-window-child-handler");
|
||||
-
|
||||
- if (data)
|
||||
- (*data->get_pos) (window, &x, &y, data->user_data);
|
||||
- }
|
||||
-
|
||||
- gdk_window_move_resize (window, x, y, width, height);
|
||||
-}
|
||||
-
|
||||
-void
|
||||
_gdk_directfb_move_resize_child (GdkWindow *window,
|
||||
gint x,
|
||||
gint y,
|
||||
@@ -1407,15 +1335,17 @@
|
||||
|
||||
if (!private->input_only)
|
||||
{
|
||||
- if (impl->drawable.surface) {
|
||||
- GdkDrawableImplDirectFB *dimpl = GDK_DRAWABLE_IMPL_DIRECTFB (private->impl);
|
||||
- if(dimpl->cairo_surface) {
|
||||
- cairo_surface_destroy(dimpl->cairo_surface);
|
||||
- dimpl->cairo_surface= NULL;
|
||||
- }
|
||||
- impl->drawable.surface->Release (impl->drawable.surface);
|
||||
- impl->drawable.surface = NULL;
|
||||
- }
|
||||
+ if (impl->drawable.surface)
|
||||
+ {
|
||||
+ if (impl->drawable.cairo_surface)
|
||||
+ {
|
||||
+ cairo_surface_destroy (impl->drawable.cairo_surface);
|
||||
+ impl->drawable.cairo_surface = NULL;
|
||||
+ }
|
||||
+
|
||||
+ impl->drawable.surface->Release (impl->drawable.surface);
|
||||
+ impl->drawable.surface = NULL;
|
||||
+ }
|
||||
|
||||
parent_impl = GDK_WINDOW_IMPL_DIRECTFB (GDK_WINDOW_OBJECT (private->parent)->impl);
|
||||
|
||||
@@ -1432,19 +1362,66 @@
|
||||
for (list = private->children; list; list = list->next)
|
||||
{
|
||||
private = GDK_WINDOW_OBJECT (list->data);
|
||||
- impl = GDK_WINDOW_IMPL_DIRECTFB (private->impl);
|
||||
+ impl = GDK_WINDOW_IMPL_DIRECTFB (private->impl);
|
||||
+
|
||||
_gdk_directfb_move_resize_child (list->data,
|
||||
private->x, private->y,
|
||||
impl->drawable.width, impl->drawable.height);
|
||||
}
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_move_resize (GdkWindow *window,
|
||||
- gint x,
|
||||
- gint y,
|
||||
- gint width,
|
||||
- gint height)
|
||||
+static void
|
||||
+gdk_directfb_window_move (GdkWindow *window,
|
||||
+ gint x,
|
||||
+ gint y)
|
||||
+{
|
||||
+ GdkWindowObject *private;
|
||||
+ GdkWindowImplDirectFB *impl;
|
||||
+
|
||||
+ g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
+
|
||||
+ private = GDK_WINDOW_OBJECT (window);
|
||||
+ impl = GDK_WINDOW_IMPL_DIRECTFB (private->impl);
|
||||
+
|
||||
+ if (impl->window)
|
||||
+ {
|
||||
+ private->x = x;
|
||||
+ private->y = y;
|
||||
+ impl->window->MoveTo (impl->window, x, y);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ gint width=impl->drawable.width;
|
||||
+ gint height=impl->drawable.height;
|
||||
+ GdkRectangle old =
|
||||
+ { private->x, private->y,width,height };
|
||||
+
|
||||
+ _gdk_directfb_move_resize_child (window, x, y, width, height);
|
||||
+ _gdk_directfb_calc_abs (window);
|
||||
+
|
||||
+ if (GDK_WINDOW_IS_MAPPED (private))
|
||||
+ {
|
||||
+ GdkWindow *mousewin;
|
||||
+ GdkRectangle new = { x, y, width, height };
|
||||
+
|
||||
+ gdk_rectangle_union (&new, &old, &new);
|
||||
+ gdk_window_invalidate_rect (GDK_WINDOW (private->parent), &new,TRUE);
|
||||
+
|
||||
+ /* The window the pointer is in might have changed */
|
||||
+ mousewin = gdk_window_at_pointer (NULL, NULL);
|
||||
+ gdk_directfb_window_send_crossing_events (NULL, mousewin,
|
||||
+ GDK_CROSSING_NORMAL);
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
+gdk_directfb_window_move_resize (GdkWindow *window,
|
||||
+ gboolean with_move,
|
||||
+ gint x,
|
||||
+ gint y,
|
||||
+ gint width,
|
||||
+ gint height)
|
||||
{
|
||||
GdkWindowObject *private;
|
||||
GdkWindowImplDirectFB *impl;
|
||||
@@ -1454,8 +1431,14 @@
|
||||
private = GDK_WINDOW_OBJECT (window);
|
||||
impl = GDK_WINDOW_IMPL_DIRECTFB (private->impl);
|
||||
|
||||
+ if (with_move && (width < 0 && height < 0))
|
||||
+ {
|
||||
+ gdk_directfb_window_move (window, x, y);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
if (width < 1)
|
||||
- width = 1;
|
||||
+ width = 1;
|
||||
if (height < 1)
|
||||
height = 1;
|
||||
|
||||
@@ -1478,26 +1461,39 @@
|
||||
|
||||
if (impl->drawable.width == width && impl->drawable.height == height)
|
||||
{
|
||||
- gdk_window_move (window, x, y);
|
||||
+ if (with_move)
|
||||
+ gdk_directfb_window_move (window, x, y);
|
||||
}
|
||||
else if (impl->window)
|
||||
{
|
||||
- private->x = x;
|
||||
- private->y = y;
|
||||
- impl->window->MoveTo (impl->window, x, y);
|
||||
+ private->x = x;
|
||||
+ private->y = y;
|
||||
+ impl->drawable.width = width;
|
||||
+ impl->drawable.height = height;
|
||||
+
|
||||
+ if (with_move)
|
||||
+ impl->window->MoveTo (impl->window, x, y);
|
||||
impl->window->Resize (impl->window, width, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
- GdkRectangle old =
|
||||
- { private->x, private->y, impl->drawable.width, impl->drawable.height };
|
||||
- _gdk_directfb_move_resize_child (window, x, y, width, height);
|
||||
+ GdkRectangle old = { private->x, private->y,
|
||||
+ impl->drawable.width, impl->drawable.height };
|
||||
+ GdkRectangle new = { x, y, width, height };
|
||||
+
|
||||
+ if (! with_move)
|
||||
+ {
|
||||
+ new.x = private->x;
|
||||
+ new.y = private->y;
|
||||
+ }
|
||||
+
|
||||
+ _gdk_directfb_move_resize_child (window,
|
||||
+ new.x, new.y, new.width, new.height);
|
||||
_gdk_directfb_calc_abs (window);
|
||||
|
||||
if (GDK_WINDOW_IS_MAPPED (private))
|
||||
{
|
||||
- GdkWindow *mousewin;
|
||||
- GdkRectangle new = { x, y, width, height };
|
||||
+ GdkWindow *mousewin;
|
||||
|
||||
gdk_rectangle_union (&new, &old, &new);
|
||||
gdk_window_invalidate_rect (GDK_WINDOW (private->parent), &new,TRUE);
|
||||
@@ -1510,11 +1506,11 @@
|
||||
}
|
||||
}
|
||||
|
||||
-void
|
||||
-_gdk_window_reparent (GdkWindow *window,
|
||||
- GdkWindow *new_parent,
|
||||
- gint x,
|
||||
- gint y)
|
||||
+static gboolean
|
||||
+gdk_directfb_window_reparent (GdkWindow *window,
|
||||
+ GdkWindow *new_parent,
|
||||
+ gint x,
|
||||
+ gint y)
|
||||
{
|
||||
GdkWindowObject *window_private;
|
||||
GdkWindowObject *parent_private;
|
||||
@@ -1523,10 +1519,10 @@
|
||||
GdkWindowImplDirectFB *parent_impl;
|
||||
GdkVisual *visual;
|
||||
|
||||
- g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
+ g_return_val_if_fail (GDK_IS_WINDOW (window), FALSE);
|
||||
|
||||
if (GDK_WINDOW_DESTROYED (window))
|
||||
- return;
|
||||
+ return FALSE;
|
||||
|
||||
if (!new_parent)
|
||||
new_parent = _gdk_parent_root;
|
||||
@@ -1539,7 +1535,7 @@
|
||||
|
||||
/* already parented */
|
||||
if( window_private->parent == (GdkWindowObject *)new_parent )
|
||||
- return;
|
||||
+ return FALSE;
|
||||
|
||||
window_private->parent = (GdkWindowObject *) new_parent;
|
||||
|
||||
@@ -1593,7 +1589,7 @@
|
||||
{
|
||||
g_assert(0);
|
||||
_gdk_window_destroy (window, FALSE);
|
||||
- return;
|
||||
+ return FALSE;
|
||||
}
|
||||
/* we hold a reference count on ourselves */
|
||||
g_object_ref (window);
|
||||
@@ -1609,14 +1605,17 @@
|
||||
&rect,
|
||||
&impl->drawable.surface);
|
||||
}
|
||||
+
|
||||
+ return TRUE;
|
||||
}
|
||||
|
||||
-void
|
||||
-_gdk_windowing_window_clear_area (GdkWindow *window,
|
||||
- gint x,
|
||||
- gint y,
|
||||
- gint width,
|
||||
- gint height)
|
||||
+static void
|
||||
+gdk_directfb_window_clear_area (GdkWindow *window,
|
||||
+ gint x,
|
||||
+ gint y,
|
||||
+ gint width,
|
||||
+ gint height,
|
||||
+ gboolean send_expose)
|
||||
{
|
||||
GdkWindowObject *private;
|
||||
GdkDrawableImplDirectFB *impl;
|
||||
@@ -1700,51 +1699,8 @@
|
||||
g_object_unref (gc);
|
||||
}
|
||||
|
||||
-void
|
||||
-_gdk_windowing_window_clear_area_e (GdkWindow *window,
|
||||
- gint x,
|
||||
- gint y,
|
||||
- gint width,
|
||||
- gint height)
|
||||
-{
|
||||
- GdkRectangle rect;
|
||||
- GdkWindowObject *private;
|
||||
- GdkWindowImplDirectFB *impl;
|
||||
-
|
||||
- D_DEBUG_AT( GDKDFB_Window, "%s( %p, %4d,%4d-%4dx%4d )\n", __FUNCTION__, window, x, y, width, height );
|
||||
-
|
||||
- g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
-
|
||||
- private = GDK_WINDOW_OBJECT (window);
|
||||
- impl = GDK_WINDOW_IMPL_DIRECTFB (private->impl);
|
||||
-
|
||||
- /**
|
||||
- Follow XClearArea definition for zero height width
|
||||
- **/
|
||||
- if( width == 0 )
|
||||
- width = impl->drawable.width-x;
|
||||
- if( height == 0 )
|
||||
- height = impl->drawable.height-y;
|
||||
-
|
||||
- rect.x = x;
|
||||
- rect.y = y;
|
||||
- rect.width = width;
|
||||
- rect.height = height;
|
||||
-
|
||||
- g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
-
|
||||
- if (GDK_WINDOW_DESTROYED (window)) {
|
||||
- D_DEBUG_AT( GDKDFB_Window, " -> DESTROYED!\n" );
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- _gdk_windowing_window_clear_area (window, x, y, width, height);
|
||||
-
|
||||
- gdk_window_invalidate_rect (window, &rect, TRUE);
|
||||
-}
|
||||
-
|
||||
-void
|
||||
-gdk_window_raise (GdkWindow *window)
|
||||
+static void
|
||||
+gdk_window_directfb_raise (GdkWindow *window)
|
||||
{
|
||||
GdkWindowImplDirectFB *impl;
|
||||
|
||||
@@ -1774,8 +1730,8 @@
|
||||
}
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_lower (GdkWindow *window)
|
||||
+static void
|
||||
+gdk_window_directfb_lower (GdkWindow *window)
|
||||
{
|
||||
GdkWindowImplDirectFB *impl;
|
||||
|
||||
@@ -1875,9 +1831,9 @@
|
||||
* Since: 2.12
|
||||
*
|
||||
**/
|
||||
-void
|
||||
+void
|
||||
gdk_window_set_startup_id (GdkWindow *window,
|
||||
- const gchar *startup_id)
|
||||
+ const gchar *startup_id)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -1907,9 +1863,9 @@
|
||||
root->children = g_list_insert (root->children, window, i);
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_set_background (GdkWindow *window,
|
||||
- const GdkColor *color)
|
||||
+static void
|
||||
+gdk_directfb_window_set_background (GdkWindow *window,
|
||||
+ const GdkColor *color)
|
||||
{
|
||||
GdkWindowObject *private;
|
||||
|
||||
@@ -1930,10 +1886,10 @@
|
||||
private->bg_pixmap = NULL;
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_set_back_pixmap (GdkWindow *window,
|
||||
- GdkPixmap *pixmap,
|
||||
- gint parent_relative)
|
||||
+static void
|
||||
+gdk_directfb_window_set_back_pixmap (GdkWindow *window,
|
||||
+ GdkPixmap *pixmap,
|
||||
+ gboolean parent_relative)
|
||||
{
|
||||
GdkWindowObject *private;
|
||||
GdkPixmap *old_pixmap;
|
||||
@@ -1972,9 +1928,9 @@
|
||||
}
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_set_cursor (GdkWindow *window,
|
||||
- GdkCursor *cursor)
|
||||
+static void
|
||||
+gdk_directfb_window_set_cursor (GdkWindow *window,
|
||||
+ GdkCursor *cursor)
|
||||
{
|
||||
GdkWindowImplDirectFB *impl;
|
||||
GdkCursor *old_cursor;
|
||||
@@ -2011,13 +1967,13 @@
|
||||
gdk_cursor_unref (old_cursor);
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_get_geometry (GdkWindow *window,
|
||||
- gint *x,
|
||||
- gint *y,
|
||||
- gint *width,
|
||||
- gint *height,
|
||||
- gint *depth)
|
||||
+static void
|
||||
+gdk_directfb_window_get_geometry (GdkWindow *window,
|
||||
+ gint *x,
|
||||
+ gint *y,
|
||||
+ gint *width,
|
||||
+ gint *height,
|
||||
+ gint *depth)
|
||||
{
|
||||
GdkWindowObject *private;
|
||||
GdkDrawableImplDirectFB *impl;
|
||||
@@ -2078,10 +2034,10 @@
|
||||
}
|
||||
}
|
||||
|
||||
-gboolean
|
||||
-gdk_window_get_origin (GdkWindow *window,
|
||||
- gint *x,
|
||||
- gint *y)
|
||||
+static gboolean
|
||||
+gdk_directfb_window_get_origin (GdkWindow *window,
|
||||
+ gint *x,
|
||||
+ gint *y)
|
||||
{
|
||||
g_return_val_if_fail (GDK_IS_WINDOW (window), FALSE);
|
||||
|
||||
@@ -2215,8 +2171,8 @@
|
||||
|
||||
}
|
||||
|
||||
-GdkEventMask
|
||||
-gdk_window_get_events (GdkWindow *window)
|
||||
+static GdkEventMask
|
||||
+gdk_directfb_window_get_events (GdkWindow *window)
|
||||
{
|
||||
g_return_val_if_fail (GDK_IS_WINDOW (window), 0);
|
||||
|
||||
@@ -2226,9 +2182,9 @@
|
||||
return GDK_WINDOW_OBJECT (window)->event_mask;
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_set_events (GdkWindow *window,
|
||||
- GdkEventMask event_mask)
|
||||
+static void
|
||||
+gdk_directfb_window_set_events (GdkWindow *window,
|
||||
+ GdkEventMask event_mask)
|
||||
{
|
||||
g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
|
||||
@@ -2240,27 +2196,27 @@
|
||||
GDK_WINDOW_OBJECT (window)->event_mask = event_mask;
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_shape_combine_mask (GdkWindow *window,
|
||||
- GdkBitmap *mask,
|
||||
- gint x,
|
||||
- gint y)
|
||||
+static void
|
||||
+gdk_directfb_window_shape_combine_mask (GdkWindow *window,
|
||||
+ GdkBitmap *mask,
|
||||
+ gint x,
|
||||
+ gint y)
|
||||
{
|
||||
}
|
||||
|
||||
void
|
||||
gdk_window_input_shape_combine_mask (GdkWindow *window,
|
||||
- GdkBitmap *mask,
|
||||
- gint x,
|
||||
- gint y)
|
||||
+ GdkBitmap *mask,
|
||||
+ gint x,
|
||||
+ gint y)
|
||||
{
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_shape_combine_region (GdkWindow *window,
|
||||
- const GdkRegion *shape_region,
|
||||
- gint offset_x,
|
||||
- gint offset_y)
|
||||
+static void
|
||||
+gdk_directfb_window_shape_combine_region (GdkWindow *window,
|
||||
+ const GdkRegion *shape_region,
|
||||
+ gint offset_x,
|
||||
+ gint offset_y)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2584,13 +2540,13 @@
|
||||
g_message("unimplemented %s", __FUNCTION__);
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_set_child_shapes (GdkWindow *window)
|
||||
+static void
|
||||
+gdk_directfb_window_set_child_shapes (GdkWindow *window)
|
||||
{
|
||||
}
|
||||
|
||||
-void
|
||||
-gdk_window_merge_child_shapes (GdkWindow *window)
|
||||
+static void
|
||||
+gdk_directfb_window_merge_child_shapes (GdkWindow *window)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2604,9 +2560,9 @@
|
||||
{
|
||||
}
|
||||
|
||||
-gboolean
|
||||
-gdk_window_set_static_gravities (GdkWindow *window,
|
||||
- gboolean use_static)
|
||||
+static gboolean
|
||||
+gdk_directfb_window_set_static_gravities (GdkWindow *window,
|
||||
+ gboolean use_static)
|
||||
{
|
||||
g_return_val_if_fail (GDK_IS_WINDOW (window), FALSE);
|
||||
|
||||
@@ -2708,6 +2664,7 @@
|
||||
|
||||
window = g_object_new (GDK_TYPE_WINDOW, NULL);
|
||||
private = GDK_WINDOW_OBJECT (window);
|
||||
+ private->impl = g_object_new (_gdk_window_impl_get_type (), NULL);
|
||||
parent_private = GDK_WINDOW_OBJECT (parent);
|
||||
parent_impl = GDK_WINDOW_IMPL_DIRECTFB (parent_private->impl);
|
||||
private->parent = parent_private;
|
||||
@@ -2787,6 +2744,7 @@
|
||||
/* we hold a reference count on ourselves */
|
||||
g_object_ref (window);
|
||||
private = GDK_WINDOW_OBJECT (window);
|
||||
+ private->impl = g_object_new (_gdk_window_impl_get_type (), NULL);
|
||||
private->parent = parent_private;
|
||||
private->window_type = GDK_WINDOW_TOPLEVEL;
|
||||
impl = GDK_WINDOW_IMPL_DIRECTFB (private->impl);
|
||||
@@ -3153,11 +3111,11 @@
|
||||
|
||||
D_DEBUG_AT( GDKDFB_Window, " -> [%2d] %4d,%4d-%4dx%4d\n", i, GDKDFB_RECTANGLE_VALS_FROM_BOX( box ) );
|
||||
|
||||
- _gdk_windowing_window_clear_area (GDK_WINDOW(wimpl->gdkWindow),
|
||||
- box->x1,
|
||||
- box->y1,
|
||||
- box->x2 - box->x1,
|
||||
- box->y2 - box->y1);
|
||||
+ gdk_window_clear_area (GDK_WINDOW(wimpl->gdkWindow),
|
||||
+ box->x1,
|
||||
+ box->y1,
|
||||
+ box->x2 - box->x1,
|
||||
+ box->y2 - box->y1);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3259,7 +3217,7 @@
|
||||
{
|
||||
GdkDisplay *display;
|
||||
guint8 cardinal;
|
||||
-
|
||||
+
|
||||
g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
|
||||
if (GDK_WINDOW_DESTROYED (window))
|
||||
@@ -3281,6 +3239,33 @@
|
||||
{
|
||||
}
|
||||
|
||||
+static void
|
||||
+gdk_window_impl_iface_init (GdkWindowImplIface *iface)
|
||||
+{
|
||||
+ iface->show = gdk_directfb_window_show;
|
||||
+ iface->hide = gdk_directfb_window_hide;
|
||||
+ iface->withdraw = gdk_directfb_window_withdraw;
|
||||
+ iface->raise = gdk_window_directfb_raise;
|
||||
+ iface->lower = gdk_window_directfb_lower;
|
||||
+ iface->move_resize = gdk_directfb_window_move_resize;
|
||||
+ iface->move_region = _gdk_directfb_window_move_region;
|
||||
+ iface->scroll = _gdk_directfb_window_scroll;
|
||||
+ iface->clear_area = gdk_directfb_window_clear_area;
|
||||
+ iface->set_background = gdk_directfb_window_set_background;
|
||||
+ iface->set_back_pixmap = gdk_directfb_window_set_back_pixmap;
|
||||
+ iface->get_events = gdk_directfb_window_get_events;
|
||||
+ iface->set_events = gdk_directfb_window_set_events;
|
||||
+ iface->reparent = gdk_directfb_window_reparent;
|
||||
+ iface->set_cursor = gdk_directfb_window_set_cursor;
|
||||
+ iface->get_geometry = gdk_directfb_window_get_geometry;
|
||||
+ iface->get_origin = gdk_directfb_window_get_origin;
|
||||
+ iface->get_offsets = _gdk_directfb_window_get_offsets;
|
||||
+ iface->shape_combine_mask = gdk_directfb_window_shape_combine_mask;
|
||||
+ iface->shape_combine_region = gdk_directfb_window_shape_combine_region;
|
||||
+ iface->set_child_shapes = gdk_directfb_window_set_child_shapes;
|
||||
+ iface->merge_child_shapes = gdk_directfb_window_merge_child_shapes;
|
||||
+ iface->set_static_gravities = gdk_directfb_window_set_static_gravities;
|
||||
+}
|
||||
|
||||
#define __GDK_WINDOW_X11_C__
|
||||
#include "gdkaliasdef.c"
|
26
debian/patches/032_offscreenwindow_dnd.patch
vendored
26
debian/patches/032_offscreenwindow_dnd.patch
vendored
@ -1,26 +0,0 @@
|
||||
From 4cf1f2c55c8d27052e43da932a5d5444bf1ed1f6 Mon Sep 17 00:00:00 2001
|
||||
From: Cody Russell <bratsche@gnome.org>
|
||||
Date: Tue, 01 Jun 2010 15:32:18 +0000
|
||||
Subject: Bug 608218 - GtkOffscreenWindow causes bad window with GtkEntry
|
||||
|
||||
We now exit early from gdk_window_register_dnd() to avoid crashing if the
|
||||
window type is GDK_WINDOW_OFFSCREEN and does not support dnd operations.
|
||||
This makes it possible to use any dnd-enabled widgets, such as GtkEntry,
|
||||
within a GtkOffscreenWindow.
|
||||
---
|
||||
diff --git a/gdk/x11/gdkdnd-x11.c b/gdk/x11/gdkdnd-x11.c
|
||||
index 4b7fd85..c0ad26d 100644
|
||||
--- a/gdk/x11/gdkdnd-x11.c
|
||||
+++ b/gdk/x11/gdkdnd-x11.c
|
||||
@@ -3879,6 +3879,9 @@ gdk_window_register_dnd (GdkWindow *window)
|
||||
|
||||
g_return_if_fail (window != NULL);
|
||||
|
||||
+ if (gdk_window_get_window_type (window) == GDK_WINDOW_OFFSCREEN)
|
||||
+ return;
|
||||
+
|
||||
base_precache_atoms (display);
|
||||
|
||||
if (g_object_get_data (G_OBJECT (window), "gdk-dnd-registered") != NULL)
|
||||
--
|
||||
cgit v0.8.3.1
|
72
debian/patches/033_directfb_client-message.patch
vendored
72
debian/patches/033_directfb_client-message.patch
vendored
@ -1,72 +0,0 @@
|
||||
GNOME #560671
|
||||
Upstream svn r22364
|
||||
|
||||
Index: gtk+-2.14.7/gdk/directfb/gdkevents-directfb.c
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/gdk/directfb/gdkevents-directfb.c 2009-02-21 14:35:01.226582685 +0100
|
||||
+++ gtk+-2.14.7/gdk/directfb/gdkevents-directfb.c 2009-02-21 14:35:44.242582415 +0100
|
||||
@@ -162,24 +162,22 @@ dfb_events_process_window_event (DFBWind
|
||||
|
||||
static gboolean
|
||||
gdk_event_send_client_message_by_window (GdkEvent *event,
|
||||
- GdkWindow *window)
|
||||
+ GdkWindow *window)
|
||||
{
|
||||
- GdkEvent *new_event;
|
||||
+ DFBUserEvent evt;
|
||||
|
||||
g_return_val_if_fail(event != NULL, FALSE);
|
||||
g_return_val_if_fail(GDK_IS_WINDOW(window), FALSE);
|
||||
|
||||
- new_event = gdk_directfb_event_make (window, GDK_CLIENT_EVENT);
|
||||
- new_event->client.message_type = event->client.message_type;
|
||||
- new_event->client.data_format = event->client.data_format;
|
||||
- memcpy(&new_event->client.data,
|
||||
- &event->client.data,
|
||||
- sizeof(event->client.data));
|
||||
+ evt.clazz = DFEC_USER;
|
||||
+ evt.type = GPOINTER_TO_UINT (GDK_ATOM_TO_POINTER (event->client.message_type));
|
||||
+ evt.data = (void *) event->client.data.l[0];
|
||||
+
|
||||
+ _gdk_display->buffer->PostEvent(_gdk_display->buffer, DFB_EVENT (&evt));
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
-
|
||||
static void
|
||||
dfb_events_dispatch (void)
|
||||
{
|
||||
@@ -230,6 +228,32 @@ dfb_events_io_func (GIOChannel *channe
|
||||
else
|
||||
dfb_events_process_window_event (&event->window);
|
||||
break;
|
||||
+
|
||||
+ case DFEC_USER:
|
||||
+ {
|
||||
+ GList *list;
|
||||
+
|
||||
+ GDK_NOTE (EVENTS, g_print (" client_message"));
|
||||
+
|
||||
+ for (list = client_filters; list; list = list->next)
|
||||
+ {
|
||||
+ GdkClientFilter *filter = list->data;
|
||||
+ DFBUserEvent *user_event = (DFBUserEvent *) event;
|
||||
+ GdkAtom type;
|
||||
+
|
||||
+ type = GDK_POINTER_TO_ATOM (GUINT_TO_POINTER (user_event->type));
|
||||
+
|
||||
+ if (filter->type == type)
|
||||
+ {
|
||||
+ if (filter->function (user_event,
|
||||
+ NULL,
|
||||
+ filter->data) != GDK_FILTER_CONTINUE)
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ break;
|
||||
+
|
||||
default:
|
||||
break;
|
||||
}
|
26
debian/patches/033_filechooser_sort.patch
vendored
26
debian/patches/033_filechooser_sort.patch
vendored
@ -1,26 +0,0 @@
|
||||
From ac3797dfc1a0290cedfb35a883af1d171ab22be0 Mon Sep 17 00:00:00 2001
|
||||
From: Benjamin Otte <otte@redhat.com>
|
||||
Date: Wed, 16 Jun 2010 10:41:40 +0000
|
||||
Subject: Can't select file on file browser after changing sort order
|
||||
|
||||
The row values are 1-indexed not 0-indexed, this has to be taken into
|
||||
account when producing the new_order array.
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=621414
|
||||
(cherry picked from commit a8e3ce6bb486a4c89799a77abe153d647fea1a69)
|
||||
---
|
||||
diff --git a/gtk/gtkfilesystemmodel.c b/gtk/gtkfilesystemmodel.c
|
||||
index 738b061..7c9e1dc 100644
|
||||
--- a/gtk/gtkfilesystemmodel.c
|
||||
+++ b/gtk/gtkfilesystemmodel.c
|
||||
@@ -739,7 +739,7 @@ gtk_file_system_model_sort (GtkFileSystemModel *model)
|
||||
continue;
|
||||
}
|
||||
|
||||
- new_order[r] = node->row;
|
||||
+ new_order[r] = node->row - 1;
|
||||
r++;
|
||||
node->row = r;
|
||||
}
|
||||
--
|
||||
cgit v0.8.3.1
|
259
debian/patches/033_treeview_resizing.patch
vendored
259
debian/patches/033_treeview_resizing.patch
vendored
@ -1,259 +0,0 @@
|
||||
GNOME #316087.
|
||||
Debian #471073, #491611.
|
||||
|
||||
Index: gtk+-2.12.11/gtk/gtktreeview.c
|
||||
===================================================================
|
||||
--- gtk+-2.12.11.orig/gtk/gtktreeview.c 2008-07-01 15:42:39.000000000 +0200
|
||||
+++ gtk+-2.12.11/gtk/gtktreeview.c 2008-07-21 15:10:24.382008186 +0200
|
||||
@@ -1364,6 +1364,8 @@
|
||||
tree_view->priv->tree_lines_enabled = FALSE;
|
||||
|
||||
tree_view->priv->tooltip_column = -1;
|
||||
+
|
||||
+ tree_view->priv->post_validation_flag = FALSE;
|
||||
}
|
||||
|
||||
|
||||
@@ -1998,6 +2000,7 @@
|
||||
|
||||
tree_view->priv->prev_width = tree_view->priv->width;
|
||||
tree_view->priv->width = 0;
|
||||
+
|
||||
/* keep this in sync with size_allocate below */
|
||||
for (list = tree_view->priv->columns, i = 0; list; list = list->next, i++)
|
||||
{
|
||||
@@ -2164,18 +2167,20 @@
|
||||
|
||||
/* GtkWidget::size_allocate helper */
|
||||
static void
|
||||
-gtk_tree_view_size_allocate_columns (GtkWidget *widget)
|
||||
+gtk_tree_view_size_allocate_columns (GtkWidget *widget,
|
||||
+ gboolean *width_changed)
|
||||
{
|
||||
GtkTreeView *tree_view;
|
||||
GList *list, *first_column, *last_column;
|
||||
GtkTreeViewColumn *column;
|
||||
GtkAllocation allocation;
|
||||
gint width = 0;
|
||||
- gint extra, extra_per_column;
|
||||
+ gint extra, extra_per_column, extra_for_last;
|
||||
gint full_requested_width = 0;
|
||||
gint number_of_expand_columns = 0;
|
||||
gboolean column_changed = FALSE;
|
||||
gboolean rtl;
|
||||
+ gboolean update_expand;
|
||||
|
||||
tree_view = GTK_TREE_VIEW (widget);
|
||||
|
||||
@@ -2210,12 +2215,42 @@
|
||||
number_of_expand_columns++;
|
||||
}
|
||||
|
||||
- extra = MAX (widget->allocation.width - full_requested_width, 0);
|
||||
+ /* Only update the expand value if the width of the widget has changed,
|
||||
+ * or the number of expand columns has changed, or if there are no expand
|
||||
+ * columns, or if we didn't have an size-allocation yet after the
|
||||
+ * last validated node.
|
||||
+ */
|
||||
+ update_expand = (width_changed && *width_changed == TRUE)
|
||||
+ || number_of_expand_columns != tree_view->priv->last_number_of_expand_columns
|
||||
+ || number_of_expand_columns == 0
|
||||
+ || tree_view->priv->post_validation_flag == TRUE;
|
||||
+
|
||||
+ tree_view->priv->post_validation_flag = FALSE;
|
||||
+
|
||||
+ if (!update_expand)
|
||||
+ {
|
||||
+ extra = tree_view->priv->last_extra_space;
|
||||
+ extra_for_last = MAX (widget->allocation.width - full_requested_width - extra, 0);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ extra = MAX (widget->allocation.width - full_requested_width, 0);
|
||||
+ extra_for_last = 0;
|
||||
+
|
||||
+ tree_view->priv->last_extra_space = extra;
|
||||
+ }
|
||||
+
|
||||
if (number_of_expand_columns > 0)
|
||||
extra_per_column = extra/number_of_expand_columns;
|
||||
else
|
||||
extra_per_column = 0;
|
||||
|
||||
+ if (update_expand)
|
||||
+ {
|
||||
+ tree_view->priv->last_extra_space_per_column = extra_per_column;
|
||||
+ tree_view->priv->last_number_of_expand_columns = number_of_expand_columns;
|
||||
+ }
|
||||
+
|
||||
for (list = (rtl ? last_column : first_column);
|
||||
list != (rtl ? first_column->prev : last_column->next);
|
||||
list = (rtl ? list->prev : list->next))
|
||||
@@ -2271,6 +2306,12 @@
|
||||
column->width += extra;
|
||||
}
|
||||
|
||||
+ /* In addition to expand, the last column can get even more
|
||||
+ * extra space so all available space is filled up.
|
||||
+ */
|
||||
+ if (extra_for_last > 0 && list == last_column)
|
||||
+ column->width += extra_for_last;
|
||||
+
|
||||
g_object_notify (G_OBJECT (column), "width");
|
||||
|
||||
allocation.width = column->width;
|
||||
@@ -2288,6 +2329,15 @@
|
||||
TREE_VIEW_DRAG_WIDTH, allocation.height);
|
||||
}
|
||||
|
||||
+ /* We change the width here. The user has been dragging columns,
|
||||
+ * and we do need more width than allocated to properly display.
|
||||
+ * The scrolled window should handle this, if the application
|
||||
+ * doesn't have one, the tree view can't fit.
|
||||
+ */
|
||||
+ tree_view->priv->width = width;
|
||||
+ if (width_changed)
|
||||
+ *width_changed = TRUE;
|
||||
+
|
||||
if (column_changed)
|
||||
gtk_widget_queue_draw (GTK_WIDGET (tree_view));
|
||||
}
|
||||
@@ -2328,6 +2378,7 @@
|
||||
gtk_widget_size_allocate (child->widget, &allocation);
|
||||
}
|
||||
|
||||
+ gtk_tree_view_size_allocate_columns (widget, &width_changed);
|
||||
|
||||
tree_view->priv->hadjustment->page_size = allocation->width;
|
||||
tree_view->priv->hadjustment->page_increment = allocation->width * 0.9;
|
||||
@@ -2336,28 +2387,30 @@
|
||||
tree_view->priv->hadjustment->upper = MAX (tree_view->priv->hadjustment->page_size, tree_view->priv->width);
|
||||
|
||||
if (gtk_widget_get_direction(widget) == GTK_TEXT_DIR_RTL)
|
||||
- {
|
||||
+ {
|
||||
if (allocation->width < tree_view->priv->width)
|
||||
- {
|
||||
- if (tree_view->priv->init_hadjust_value)
|
||||
- {
|
||||
- tree_view->priv->hadjustment->value = MAX (tree_view->priv->width - allocation->width, 0);
|
||||
- tree_view->priv->init_hadjust_value = FALSE;
|
||||
- }
|
||||
- else if(allocation->width != old_width)
|
||||
- tree_view->priv->hadjustment->value = CLAMP(tree_view->priv->hadjustment->value - allocation->width + old_width, 0, tree_view->priv->width - allocation->width);
|
||||
- else
|
||||
- tree_view->priv->hadjustment->value = CLAMP(tree_view->priv->width - (tree_view->priv->prev_width - tree_view->priv->hadjustment->value), 0, tree_view->priv->width - allocation->width);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- tree_view->priv->hadjustment->value = 0;
|
||||
- tree_view->priv->init_hadjust_value = TRUE;
|
||||
- }
|
||||
- }
|
||||
+ {
|
||||
+ if (tree_view->priv->init_hadjust_value)
|
||||
+ {
|
||||
+ tree_view->priv->hadjustment->value = MAX (tree_view->priv->width - allocation->width, 0);
|
||||
+ tree_view->priv->init_hadjust_value = FALSE;
|
||||
+ }
|
||||
+ else if (allocation->width != old_width)
|
||||
+ {
|
||||
+ tree_view->priv->hadjustment->value = CLAMP (tree_view->priv->hadjustment->value - allocation->width + old_width, 0, tree_view->priv->width - allocation->width);
|
||||
+ }
|
||||
+ else
|
||||
+ tree_view->priv->hadjustment->value = CLAMP (tree_view->priv->width - (tree_view->priv->prev_width - tree_view->priv->hadjustment->value), 0, tree_view->priv->width - allocation->width);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ tree_view->priv->hadjustment->value = 0;
|
||||
+ tree_view->priv->init_hadjust_value = TRUE;
|
||||
+ }
|
||||
+ }
|
||||
else
|
||||
- if (tree_view->priv->hadjustment->value + allocation->width > tree_view->priv->width)
|
||||
- tree_view->priv->hadjustment->value = MAX (tree_view->priv->width - allocation->width, 0);
|
||||
+ if (tree_view->priv->hadjustment->value + allocation->width > tree_view->priv->width)
|
||||
+ tree_view->priv->hadjustment->value = MAX (tree_view->priv->width - allocation->width, 0);
|
||||
|
||||
gtk_adjustment_changed (tree_view->priv->hadjustment);
|
||||
|
||||
@@ -2397,8 +2450,6 @@
|
||||
allocation->height - TREE_VIEW_HEADER_HEIGHT (tree_view));
|
||||
}
|
||||
|
||||
- gtk_tree_view_size_allocate_columns (widget);
|
||||
-
|
||||
if (tree_view->priv->tree == NULL)
|
||||
invalidate_empty_focus (tree_view);
|
||||
|
||||
@@ -2842,7 +2893,7 @@
|
||||
|
||||
gtk_grab_add (widget);
|
||||
GTK_TREE_VIEW_SET_FLAG (tree_view, GTK_TREE_VIEW_IN_COLUMN_RESIZE);
|
||||
- column->resized_width = column->width;
|
||||
+ column->resized_width = column->width - tree_view->priv->last_extra_space_per_column;
|
||||
|
||||
/* block attached dnd signal handler */
|
||||
drag_data = g_object_get_data (G_OBJECT (widget), "gtk-site-data");
|
||||
@@ -3554,6 +3605,8 @@
|
||||
{
|
||||
column->use_resized_width = TRUE;
|
||||
column->resized_width = new_width;
|
||||
+ if (column->expand)
|
||||
+ column->resized_width -= tree_view->priv->last_extra_space_per_column;
|
||||
gtk_widget_queue_resize (widget);
|
||||
}
|
||||
|
||||
@@ -5661,6 +5714,7 @@
|
||||
_gtk_rbtree_node_set_height (tree, node, height);
|
||||
}
|
||||
_gtk_rbtree_node_mark_valid (tree, node);
|
||||
+ tree_view->priv->post_validation_flag = TRUE;
|
||||
|
||||
return retval;
|
||||
}
|
||||
@@ -11516,7 +11570,7 @@
|
||||
if (GTK_WIDGET_REALIZED (tree_view))
|
||||
{
|
||||
gtk_widget_queue_resize (GTK_WIDGET (tree_view));
|
||||
- gtk_tree_view_size_allocate_columns (GTK_WIDGET (tree_view));
|
||||
+ gtk_tree_view_size_allocate_columns (GTK_WIDGET (tree_view), NULL);
|
||||
}
|
||||
|
||||
g_signal_emit (tree_view, tree_view_signals[COLUMNS_CHANGED], 0);
|
||||
Index: gtk+-2.12.11/gtk/gtktreeviewcolumn.c
|
||||
===================================================================
|
||||
--- gtk+-2.12.11.orig/gtk/gtktreeviewcolumn.c 2008-07-01 15:42:39.000000000 +0200
|
||||
+++ gtk+-2.12.11/gtk/gtktreeviewcolumn.c 2008-07-21 14:58:07.660991687 +0200
|
||||
@@ -2141,6 +2141,7 @@
|
||||
tree_column->tree_view != NULL &&
|
||||
GTK_WIDGET_REALIZED (tree_column->tree_view))
|
||||
{
|
||||
+ tree_column->use_resized_width = FALSE;
|
||||
gtk_widget_queue_resize (tree_column->tree_view);
|
||||
}
|
||||
|
||||
Index: gtk+-2.12.11/gtk/gtktreeprivate.h
|
||||
===================================================================
|
||||
--- gtk+-2.12.11.orig/gtk/gtktreeprivate.h 2008-07-01 15:42:40.000000000 +0200
|
||||
+++ gtk+-2.12.11/gtk/gtktreeprivate.h 2008-07-21 14:58:07.660991687 +0200
|
||||
@@ -236,6 +236,8 @@
|
||||
|
||||
guint in_grab : 1;
|
||||
|
||||
+ guint post_validation_flag : 1;
|
||||
+
|
||||
|
||||
/* Auto expand/collapse timeout in hover mode */
|
||||
guint auto_expand_timeout;
|
||||
@@ -268,6 +270,10 @@
|
||||
GdkGC *tree_line_gc;
|
||||
|
||||
gint tooltip_column;
|
||||
+
|
||||
+ gint last_extra_space;
|
||||
+ gint last_extra_space_per_column;
|
||||
+ gint last_number_of_expand_columns;
|
||||
};
|
||||
|
||||
#ifdef __GNUC__
|
117
debian/patches/034_directfb_memleak.patch
vendored
117
debian/patches/034_directfb_memleak.patch
vendored
@ -1,117 +0,0 @@
|
||||
GNOME #533456
|
||||
Upstream svn r22369
|
||||
|
||||
Index: gtk+-2.14.7/configure.in
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/configure.in 2009-02-21 14:48:32.835086281 +0100
|
||||
+++ gtk+-2.14.7/configure.in 2009-02-21 14:54:42.690587468 +0100
|
||||
@@ -1620,7 +1620,7 @@ AC_SUBST(GDK_PIXBUF_XLIB_DEP_LIBS)
|
||||
AC_SUBST(GDK_PIXBUF_XLIB_DEP_CFLAGS)
|
||||
|
||||
if test "x$gdktarget" = "xdirectfb"; then
|
||||
- DIRECTFB_REQUIRED_VERSION=0.9.26
|
||||
+ DIRECTFB_REQUIRED_VERSION=1.0.0
|
||||
AC_MSG_CHECKING(for DirectFB)
|
||||
|
||||
if $PKG_CONFIG --atleast-version $DIRECTFB_REQUIRED_VERSION directfb && $PKG_CONFIG --exists cairo-directfb ; then
|
||||
Index: gtk+-2.14.7/gdk/directfb/gdkcursor-directfb.c
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/gdk/directfb/gdkcursor-directfb.c 2009-02-21 14:48:30.306588314 +0100
|
||||
+++ gtk+-2.14.7/gdk/directfb/gdkcursor-directfb.c 2009-02-21 14:54:42.690587468 +0100
|
||||
@@ -41,10 +41,6 @@
|
||||
|
||||
#include <directfb_version.h>
|
||||
|
||||
-#if DIRECTFB_MAJOR_VERSION < 1
|
||||
-#define u32 __u32
|
||||
-#define u8 __u8
|
||||
-#endif
|
||||
|
||||
static struct {
|
||||
const guchar *bits;
|
||||
Index: gtk+-2.14.7/gdk/directfb/gdkdirectfb.h
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/gdk/directfb/gdkdirectfb.h 2009-02-21 14:48:30.374585434 +0100
|
||||
+++ gtk+-2.14.7/gdk/directfb/gdkdirectfb.h 2009-02-21 14:54:42.690587468 +0100
|
||||
@@ -80,10 +80,8 @@ GdkVisual * gdk_directfb_visual_by_forma
|
||||
IDirectFBWindow *gdk_directfb_window_lookup(GdkWindow *window);
|
||||
IDirectFBSurface *gdk_directfb_surface_lookup(GdkWindow *window);
|
||||
|
||||
-#if (DIRECTFB_MAJOR_VERSION >= 1)
|
||||
GdkWindow *gdk_directfb_create_child_window(GdkWindow *parent,
|
||||
- IDirectFBSurface *subsurface);
|
||||
-#endif
|
||||
+ IDirectFBSurface *subsurface);
|
||||
|
||||
|
||||
G_END_DECLS
|
||||
Index: gtk+-2.14.7/gdk/directfb/gdkevents-directfb.c
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/gdk/directfb/gdkevents-directfb.c 2009-02-21 14:54:41.887087234 +0100
|
||||
+++ gtk+-2.14.7/gdk/directfb/gdkevents-directfb.c 2009-02-21 14:54:42.690587468 +0100
|
||||
@@ -419,7 +419,6 @@ gdk_directfb_event_windows_add (GdkWindo
|
||||
impl->window->CreateEventBuffer (impl->window, &EventBuffer);
|
||||
}
|
||||
|
||||
-#if (DIRECTFB_MAJOR_VERSION >= 1)
|
||||
void
|
||||
gdk_directfb_event_windows_remove (GdkWindow *window)
|
||||
{
|
||||
@@ -436,7 +435,6 @@ gdk_directfb_event_windows_remove (GdkWi
|
||||
impl->window->DetachEventBuffer (impl->window, EventBuffer);
|
||||
/* FIXME: should we warn if (! EventBuffer) ? */
|
||||
}
|
||||
-#endif
|
||||
|
||||
GdkWindow *
|
||||
gdk_directfb_child_at (GdkWindow *window,
|
||||
Index: gtk+-2.14.7/gdk/directfb/gdkprivate-directfb.h
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/gdk/directfb/gdkprivate-directfb.h 2009-02-21 14:48:30.330588850 +0100
|
||||
+++ gtk+-2.14.7/gdk/directfb/gdkprivate-directfb.h 2009-02-21 14:54:42.690587468 +0100
|
||||
@@ -239,10 +239,8 @@ GdkImage* _gdk_directfb_copy_to_image (G
|
||||
gint width,
|
||||
gint height);
|
||||
|
||||
-void gdk_directfb_event_windows_add (GdkWindow *window);
|
||||
-#if (DIRECTFB_MAJOR_VERSION >= 1)
|
||||
+void gdk_directfb_event_windows_add (GdkWindow *window);
|
||||
void gdk_directfb_event_windows_remove (GdkWindow *window);
|
||||
-#endif
|
||||
|
||||
GdkGrabStatus gdk_directfb_keyboard_grab (GdkDisplay *display,
|
||||
GdkWindow *window,
|
||||
Index: gtk+-2.14.7/gdk/directfb/gdkwindow-directfb.c
|
||||
===================================================================
|
||||
--- gtk+-2.14.7.orig/gdk/directfb/gdkwindow-directfb.c 2009-02-21 14:54:17.138584001 +0100
|
||||
+++ gtk+-2.14.7/gdk/directfb/gdkwindow-directfb.c 2009-02-21 14:54:42.694585602 +0100
|
||||
@@ -698,9 +698,8 @@ _gdk_windowing_window_destroy (GdkWindow
|
||||
impl = GDK_WINDOW_IMPL_DIRECTFB (private->impl);
|
||||
|
||||
_gdk_selection_window_destroyed (window);
|
||||
-#if (DIRECTFB_MAJOR_VERSION >= 1)
|
||||
gdk_directfb_event_windows_remove (window);
|
||||
-#endif
|
||||
+
|
||||
if (window == _gdk_directfb_pointer_grab_window)
|
||||
gdk_pointer_ungrab (GDK_CURRENT_TIME);
|
||||
if (window == _gdk_directfb_keyboard_grab_window)
|
||||
@@ -2651,9 +2650,8 @@ gdk_window_get_frame_extents (GdkWindow
|
||||
* Given a directfb window and a subsurface of that window
|
||||
* create a gdkwindow child wrapper
|
||||
*/
|
||||
-#if (DIRECTFB_MAJOR_VERSION >= 1)
|
||||
GdkWindow *gdk_directfb_create_child_window(GdkWindow *parent,
|
||||
- IDirectFBSurface *subsurface)
|
||||
+ IDirectFBSurface *subsurface)
|
||||
{
|
||||
GdkWindow *window;
|
||||
GdkWindowObject *private;
|
||||
@@ -2698,7 +2696,6 @@ GdkWindow *gdk_directfb_create_child_win
|
||||
return window;
|
||||
|
||||
}
|
||||
-#endif
|
||||
|
||||
/*
|
||||
* The wrapping is not perfect since directfb does not give full access
|
25
debian/patches/034_grab_broken.patch
vendored
25
debian/patches/034_grab_broken.patch
vendored
@ -1,25 +0,0 @@
|
||||
From 765f8344cd33c29f808a32c4b994c9ca562fe745 Mon Sep 17 00:00:00 2001
|
||||
From: Tor Lillqvist <tml@iki.fi>
|
||||
Date: Tue, 22 Jun 2010 18:30:13 +0000
|
||||
Subject: Generate correct grab broken event for WM_KILLFOCUS
|
||||
|
||||
WM_KILLFOCUS means that a keyboard grab (not a pointer grab), if any,
|
||||
has been broken. I don't think this bug has matterd much as gtk
|
||||
generates a grab-broken-event signal for both keybord and pointer
|
||||
grabs being broken anyway.
|
||||
---
|
||||
diff --git a/gdk/win32/gdkevents-win32.c b/gdk/win32/gdkevents-win32.c
|
||||
index 3773e4d..23dcd24 100644
|
||||
--- a/gdk/win32/gdkevents-win32.c
|
||||
+++ b/gdk/win32/gdkevents-win32.c
|
||||
@@ -2539,7 +2539,7 @@ gdk_event_translate (MSG *msg,
|
||||
if (_gdk_display->keyboard_grab.window != NULL &&
|
||||
!GDK_WINDOW_DESTROYED (_gdk_display->keyboard_grab.window))
|
||||
{
|
||||
- generate_grab_broken_event (_gdk_display->keyboard_grab.window, FALSE, NULL);
|
||||
+ generate_grab_broken_event (_gdk_display->keyboard_grab.window, TRUE, NULL);
|
||||
}
|
||||
|
||||
/* fallthrough */
|
||||
--
|
||||
cgit v0.8.3.1
|
28
debian/patches/035_filechooser_crash.patch
vendored
28
debian/patches/035_filechooser_crash.patch
vendored
@ -1,28 +0,0 @@
|
||||
From 7868c0b58855b61717454bb85f62caf720b8f623 Mon Sep 17 00:00:00 2001
|
||||
From: Sergey Orlov <wasp82@bk.ru>
|
||||
Date: Tue, 24 Aug 2010 18:17:15 +0000
|
||||
Subject: bgo#614006 - GtkFileSystemModel - Make sure to generate node IDs are valid for new files
|
||||
|
||||
When a file was inserted during the period that the editable row was
|
||||
active, the node IDs would not get updated correctly.
|
||||
|
||||
Signed-off-by: Federico Mena Quintero <federico@novell.com>
|
||||
---
|
||||
diff --git a/gtk/gtkfilesystemmodel.c b/gtk/gtkfilesystemmodel.c
|
||||
index 7c9e1dc..933420c 100644
|
||||
--- a/gtk/gtkfilesystemmodel.c
|
||||
+++ b/gtk/gtkfilesystemmodel.c
|
||||
@@ -1778,7 +1778,10 @@ _gtk_file_system_model_update_file (GtkFileSystemModel *model,
|
||||
|
||||
id = node_get_for_file (model, file);
|
||||
if (id == 0)
|
||||
- add_file (model, file, info);
|
||||
+ {
|
||||
+ add_file (model, file, info);
|
||||
+ id = node_get_for_file (model, file);
|
||||
+ }
|
||||
|
||||
node = get_node (model, id);
|
||||
|
||||
--
|
||||
cgit v0.8.3.1
|
97
debian/patches/040_ia32-libs.patch
vendored
97
debian/patches/040_ia32-libs.patch
vendored
@ -1,97 +0,0 @@
|
||||
diff -urN gtk+-2.8.20.orig/gdk-pixbuf/gdk-pixbuf-io.c gtk+-2.8.20/gdk-pixbuf/gdk-pixbuf-io.c
|
||||
--- gtk+-2.8.20.orig/gdk-pixbuf/gdk-pixbuf-io.c 2007-03-04 21:57:07.000000000 +0100
|
||||
+++ gtk+-2.8.20/gdk-pixbuf/gdk-pixbuf-io.c 2007-03-04 21:56:18.000000000 +0100
|
||||
@@ -276,8 +276,20 @@
|
||||
gchar *result = g_strdup (g_getenv ("GDK_PIXBUF_MODULE_FILE"));
|
||||
|
||||
if (!result)
|
||||
- result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gdk-pixbuf.loaders", NULL);
|
||||
-
|
||||
+ {
|
||||
+#if defined(__linux__) && ( defined(__i386__) || defined (__x86_64__) || defined(__ia64__) )
|
||||
+# if defined (__i386__)
|
||||
+ result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gdk-pixbuf.loaders.32", NULL);
|
||||
+# else
|
||||
+ result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gdk-pixbuf.loaders.64", NULL);
|
||||
+#endif
|
||||
+ /* Prefer compat gdk-pixbuf.loaders file if it's usable. */
|
||||
+ if (g_file_test(result, G_FILE_TEST_EXISTS))
|
||||
+ return result;
|
||||
+ g_free (result);
|
||||
+#endif
|
||||
+ result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gdk-pixbuf.loaders", NULL);
|
||||
+ }
|
||||
return result;
|
||||
}
|
||||
|
||||
diff -urN gtk+-2.8.20.orig/gtk/gtkrc.c gtk+-2.8.20/gtk/gtkrc.c
|
||||
--- gtk+-2.8.20.orig/gtk/gtkrc.c 2007-03-04 21:57:07.000000000 +0100
|
||||
+++ gtk+-2.8.20/gtk/gtkrc.c 2007-03-04 22:01:15.000000000 +0100
|
||||
@@ -364,7 +364,20 @@
|
||||
if (im_module_file)
|
||||
result = g_strdup (im_module_file);
|
||||
else
|
||||
- result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gtk.immodules", NULL);
|
||||
+ {
|
||||
+#if defined(__linux__) && ( defined(__i386__) || defined (__x86_64__) || defined(__ia64__) )
|
||||
+# if defined (__i386__)
|
||||
+ result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gtk.immodules.32", NULL);
|
||||
+# else
|
||||
+ result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gtk.immodules.64", NULL);
|
||||
+# endif
|
||||
+ /* Prefer compat gtk.immodules file if it's usable. */
|
||||
+ if (g_file_test(result, G_FILE_TEST_EXISTS))
|
||||
+ return result;
|
||||
+ g_free (result);
|
||||
+#endif
|
||||
+ result = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gtk.immodules", NULL);
|
||||
+ }
|
||||
}
|
||||
|
||||
return result;
|
||||
@@ -433,7 +446,21 @@
|
||||
else
|
||||
{
|
||||
const gchar *home;
|
||||
- str = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gtkrc", NULL);
|
||||
+#if defined(__linux__) && ( defined(__i386__) || defined (__x86_64__) || defined(__ia64__) )
|
||||
+# if defined (__i386__)
|
||||
+ str = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gtkrc.32", NULL);
|
||||
+# else
|
||||
+ str = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gtkrc.64", NULL);
|
||||
+# endif
|
||||
+ /* Prefer compat gtkrc if it's usable. */
|
||||
+ if (!g_file_test(str, G_FILE_TEST_EXISTS))
|
||||
+ {
|
||||
+ g_free (str), /* continue in next line */
|
||||
+#endif
|
||||
+ str = g_build_filename (GTK_SYSCONFDIR, "gtk-2.0", "gtkrc", NULL);
|
||||
+#if defined(__linux__) && ( defined(__i386__) || defined (__x86_64__) || defined(__ia64__) )
|
||||
+ }
|
||||
+#endif
|
||||
|
||||
gtk_rc_add_default_file (str);
|
||||
g_free (str);
|
||||
@@ -441,7 +468,21 @@
|
||||
home = g_get_home_dir ();
|
||||
if (home)
|
||||
{
|
||||
- str = g_build_filename (home, ".gtkrc-2.0", NULL);
|
||||
+#if defined(__linux__) && ( defined(__i386__) || defined (__x86_64__) || defined(__ia64__) )
|
||||
+# if defined (__i386__)
|
||||
+ str = g_build_filename (home, ".gtkrc-2.0.32", NULL);
|
||||
+# else
|
||||
+ str = g_build_filename (home, ".gtkrc-2.0.64", NULL);
|
||||
+# endif
|
||||
+ /* Prefer compat .gtkrc-2.0 if it's usable. */
|
||||
+ if (!g_file_test(str, G_FILE_TEST_EXISTS))
|
||||
+ {
|
||||
+ g_free (str), /* continue in next line */
|
||||
+#endif
|
||||
+ str = g_build_filename (home, ".gtkrc-2.0", NULL);
|
||||
+#if defined(__linux__) && ( defined(__i386__) || defined (__x86_64__) || defined(__ia64__) )
|
||||
+ }
|
||||
+#endif
|
||||
gtk_rc_add_default_file (str);
|
||||
g_free (str);
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
diff -Nur gtk+-2.6.10.orig/gdk/x11/gdkproperty-x11.c gtk+-2.6.10/gdk/x11/gdkproperty-x11.c
|
||||
--- gtk+-2.6.10.orig/gdk/x11/gdkproperty-x11.c 2005-11-16 17:33:16.000000000 +0100
|
||||
+++ gtk+-2.6.10/gdk/x11/gdkproperty-x11.c 2005-11-16 17:37:15.000000000 +0100
|
||||
@@ -530,11 +530,8 @@
|
||||
*/
|
||||
get_length = length + 3;
|
||||
if (get_length > G_MAXLONG)
|
||||
- {
|
||||
- g_warning ("gdk_property_get(): length value has wrapped in calculation "
|
||||
- "(did you pass G_MAXLONG?)");
|
||||
get_length = G_MAXLONG;
|
||||
- }
|
||||
+
|
||||
/* To fail, either the user passed 0 or G_MAXULONG */
|
||||
get_length = get_length / 4;
|
||||
if (get_length == 0)
|
32
debian/patches/071_jasper_link_fix.patch
vendored
32
debian/patches/071_jasper_link_fix.patch
vendored
@ -1,32 +0,0 @@
|
||||
diff -urN gtk+-2.14.4.old/configure gtk+-2.14.4/configure
|
||||
--- gtk+-2.14.4.old/configure 2008-11-04 17:41:20.000000000 -0200
|
||||
+++ gtk+-2.14.4/configure 2008-11-04 17:45:07.000000000 -0200
|
||||
@@ -29356,8 +29356,11 @@
|
||||
if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
|
||||
STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
|
||||
fi
|
||||
+ if echo "$included_loaders" | egrep '(^|,)jasper($|,)' > /dev/null; then
|
||||
+ STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJASPER"
|
||||
+ fi
|
||||
else
|
||||
- STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
|
||||
+ STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG $LIBJASPER"
|
||||
fi
|
||||
|
||||
# Checks to see whether we should include mediaLib
|
||||
diff -urN gtk+-2.14.4.old/configure.in gtk+-2.14.4/configure.in
|
||||
--- gtk+-2.14.4.old/configure.in 2008-10-17 01:06:38.000000000 -0300
|
||||
+++ gtk+-2.14.4/configure.in 2008-11-04 17:44:57.000000000 -0200
|
||||
@@ -1163,8 +1163,11 @@
|
||||
if echo "$included_loaders" | egrep '(^|,)png($|,)' > /dev/null; then
|
||||
STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
|
||||
fi
|
||||
+ if echo "$included_loaders" | egrep '(^|,)jasper($|,)' > /dev/null; then
|
||||
+ STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBJASPER"
|
||||
+ fi
|
||||
else
|
||||
- STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
|
||||
+ STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG $LIBJASPER"
|
||||
fi
|
||||
|
||||
# Checks to see whether we should include mediaLib
|
@ -1,20 +0,0 @@
|
||||
Index: gtk+2.0-2.14.0/gdk/directfb/gdktestutils-directfb.c
|
||||
===================================================================
|
||||
--- gtk+2.0-2.14.0.orig/gdk/directfb/gdktestutils-directfb.c 2008-09-04 06:36:10.000000000 +0200
|
||||
+++ gtk+2.0-2.14.0/gdk/directfb/gdktestutils-directfb.c 2008-09-05 00:36:44.000000000 +0200
|
||||
@@ -175,7 +175,6 @@
|
||||
|
||||
evt.clazz = DFEC_WINDOW;
|
||||
evt.type = (key_pressrelease == GDK_KEY_PRESS) ? DWET_KEYDOWN : DWET_KEYUP;
|
||||
- evt.flags = DWEF_NONE;
|
||||
evt.window_id = impl->dfb_id;
|
||||
evt.x = MAX(x, 0);
|
||||
evt.y = MAX(y, 0);
|
||||
@@ -241,7 +240,6 @@
|
||||
|
||||
evt.clazz = DFEC_WINDOW;
|
||||
evt.type = (button_pressrelease == GDK_BUTTON_PRESS) ? DWET_BUTTONDOWN : DWET_BUTTONUP;
|
||||
- evt.flags = DWEF_NONE;
|
||||
evt.window_id = impl->dfb_id;
|
||||
evt.x = MAX(x, 0);
|
||||
evt.y = MAX(y, 0);
|
19
debian/patches/092_fix_printtest_include.patch
vendored
19
debian/patches/092_fix_printtest_include.patch
vendored
@ -1,19 +0,0 @@
|
||||
Index: gtk+2.0-2.14.3/modules/printbackends/test/gtkprintbackendtest.c
|
||||
===================================================================
|
||||
--- gtk+2.0-2.14.3.orig/modules/printbackends/test/gtkprintbackendtest.c 2008-09-24 21:07:22.000000000 -0300
|
||||
+++ gtk+2.0-2.14.3/modules/printbackends/test/gtkprintbackendtest.c 2008-09-24 21:07:28.000000000 -0300
|
||||
@@ -35,12 +35,12 @@
|
||||
|
||||
#include <glib/gi18n-lib.h>
|
||||
|
||||
-#include "gtkprintoperation.h"
|
||||
+#include <gtk/gtk.h>
|
||||
|
||||
#include "gtkprintbackend.h"
|
||||
#include "gtkprintbackendtest.h"
|
||||
|
||||
-#include "gtkprinter.h"
|
||||
+#include <gtk/gtkunixprint.h>
|
||||
#include "gtkprinter-private.h"
|
||||
|
||||
typedef struct _GtkPrintBackendTestClass GtkPrintBackendTestClass;
|
353
debian/patches/095_gtk-im-module-setting.patch
vendored
353
debian/patches/095_gtk-im-module-setting.patch
vendored
@ -1,353 +0,0 @@
|
||||
GNOME 502446; Adds XSETTINGS support for immodule
|
||||
|
||||
--- a/gdk/x11/gdksettings.c 2008-04-01 11:12:11.000000000 +0200
|
||||
+++ b/gdk/x11/gdksettings.c 2008-04-01 11:41:10.000000000 +0200
|
||||
@@ -65,7 +65,8 @@
|
||||
"Xft/RGBA\0" "gtk-xft-rgba\0"
|
||||
"Xft/DPI\0" "gtk-xft-dpi\0"
|
||||
"Net/FallbackIconTheme\0" "gtk-fallback-icon-theme\0"
|
||||
- "Gtk/TouchscreenMode\0" "gtk-touchscreen-mode\0";
|
||||
+ "Gtk/TouchscreenMode\0" "gtk-touchscreen-mode\0"
|
||||
+ "Gtk/IMModule\0" "gtk-im-module\0";
|
||||
|
||||
static const struct
|
||||
{
|
||||
@@ -107,5 +108,6 @@
|
||||
{ 1197, 1206 },
|
||||
{ 1219, 1227 },
|
||||
{ 1239, 1261 },
|
||||
- { 1285, 1305 }
|
||||
+ { 1285, 1305 },
|
||||
+ { 1326, 1339 }
|
||||
};
|
||||
--- a/gtk/gtkimmulticontext.c 2008-04-01 11:12:11.000000000 +0200
|
||||
+++ b/gtk/gtkimmulticontext.c 2008-04-01 11:12:18.000000000 +0200
|
||||
@@ -85,6 +85,7 @@
|
||||
gint n_chars,
|
||||
GtkIMMulticontext *multicontext);
|
||||
|
||||
+static const gchar *user_context_id = NULL;
|
||||
static const gchar *global_context_id = NULL;
|
||||
|
||||
G_DEFINE_TYPE (GtkIMMulticontext, gtk_im_multicontext, GTK_TYPE_IM_CONTEXT)
|
||||
@@ -141,6 +142,7 @@
|
||||
GtkIMMulticontext *multicontext = GTK_IM_MULTICONTEXT (object);
|
||||
|
||||
gtk_im_multicontext_set_slave (multicontext, NULL, TRUE);
|
||||
+ g_free (multicontext->context_id);
|
||||
|
||||
G_OBJECT_CLASS (gtk_im_multicontext_parent_class)->finalize (object);
|
||||
}
|
||||
@@ -224,35 +226,68 @@
|
||||
{
|
||||
GtkIMContext *slave;
|
||||
|
||||
- if (!global_context_id)
|
||||
- {
|
||||
- gchar *locale = _gtk_get_lc_ctype ();
|
||||
- global_context_id = _gtk_im_module_get_default_context_id (locale);
|
||||
- g_free (locale);
|
||||
- }
|
||||
-
|
||||
+ if (!global_context_id)
|
||||
+ {
|
||||
+ if (user_context_id)
|
||||
+ global_context_id = user_context_id;
|
||||
+ else
|
||||
+ global_context_id = _gtk_im_module_get_default_context_id (multicontext->priv->client_window);
|
||||
+ }
|
||||
slave = _gtk_im_module_create (global_context_id);
|
||||
gtk_im_multicontext_set_slave (multicontext, slave, FALSE);
|
||||
g_object_unref (slave);
|
||||
|
||||
- multicontext->context_id = global_context_id;
|
||||
+ multicontext->context_id = g_strdup (global_context_id);
|
||||
}
|
||||
|
||||
return multicontext->slave;
|
||||
}
|
||||
|
||||
static void
|
||||
+im_module_setting_changed (GtkSettings *settings,
|
||||
+ gpointer data)
|
||||
+{
|
||||
+ global_context_id = NULL;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+static void
|
||||
gtk_im_multicontext_set_client_window (GtkIMContext *context,
|
||||
GdkWindow *window)
|
||||
{
|
||||
GtkIMMulticontext *multicontext = GTK_IM_MULTICONTEXT (context);
|
||||
-
|
||||
- GtkIMContext *slave = gtk_im_multicontext_get_slave (multicontext);
|
||||
+ GtkIMContext *slave;
|
||||
+ GdkScreen *screen;
|
||||
+ GtkSettings *settings;
|
||||
+ gboolean connected;
|
||||
|
||||
multicontext->priv->client_window = window;
|
||||
-
|
||||
+
|
||||
+ slave = gtk_im_multicontext_get_slave (multicontext);
|
||||
+
|
||||
if (slave)
|
||||
gtk_im_context_set_client_window (slave, window);
|
||||
+
|
||||
+ if (window == NULL)
|
||||
+ return;
|
||||
+
|
||||
+ screen = gdk_drawable_get_screen (GDK_DRAWABLE (window));
|
||||
+ if (screen)
|
||||
+ settings = gtk_settings_get_for_screen (screen);
|
||||
+ else
|
||||
+ settings = gtk_settings_get_default ();
|
||||
+
|
||||
+ connected = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (settings),
|
||||
+ "gtk-im-module-connected"));
|
||||
+ if (!connected)
|
||||
+ {
|
||||
+ g_signal_connect (settings, "notify::gtk-im-module",
|
||||
+ G_CALLBACK (im_module_setting_changed), NULL);
|
||||
+ g_object_set_data (G_OBJECT (settings), "gtk-im-module-connected",
|
||||
+ GINT_TO_POINTER (TRUE));
|
||||
+
|
||||
+ global_context_id = NULL;
|
||||
+ }
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -298,7 +333,8 @@
|
||||
* using before, get rid of the old slave and create a new one
|
||||
* for the new global context type.
|
||||
*/
|
||||
- if (!multicontext->context_id ||
|
||||
+ if (multicontext->context_id == NULL ||
|
||||
+ global_context_id == NULL ||
|
||||
strcmp (global_context_id, multicontext->context_id) != 0)
|
||||
gtk_im_multicontext_set_slave (multicontext, NULL, FALSE);
|
||||
|
||||
@@ -459,7 +495,8 @@
|
||||
|
||||
gtk_im_context_reset (GTK_IM_CONTEXT (context));
|
||||
|
||||
- global_context_id = id;
|
||||
+ user_context_id = id;
|
||||
+ global_context_id = NULL;
|
||||
gtk_im_multicontext_set_slave (context, NULL, FALSE);
|
||||
}
|
||||
}
|
||||
@@ -500,12 +537,22 @@
|
||||
const GtkIMContextInfo **contexts;
|
||||
guint n_contexts, i;
|
||||
GSList *group = NULL;
|
||||
+ GtkWidget *menuitem;
|
||||
|
||||
+ menuitem = gtk_radio_menu_item_new_with_label (group, Q_("input method menu|System"));
|
||||
+ if (!user_context_id)
|
||||
+ gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (menuitem), TRUE);
|
||||
+ group = gtk_radio_menu_item_get_group (GTK_RADIO_MENU_ITEM (menuitem));
|
||||
+ g_object_set_data (G_OBJECT (menuitem), I_("gtk-context-id"), NULL);
|
||||
+ g_signal_connect (menuitem, "activate", G_CALLBACK (activate_cb), context);
|
||||
+
|
||||
+ gtk_widget_show (menuitem);
|
||||
+ gtk_menu_shell_append (menushell, menuitem);
|
||||
+
|
||||
_gtk_im_module_list (&contexts, &n_contexts);
|
||||
|
||||
- for (i=0; i < n_contexts; i++)
|
||||
+ for (i = 0; i < n_contexts; i++)
|
||||
{
|
||||
- GtkWidget *menuitem;
|
||||
const gchar *translated_name;
|
||||
#ifdef ENABLE_NLS
|
||||
if (contexts[i]->domain && contexts[i]->domain[0])
|
||||
@@ -562,11 +609,9 @@
|
||||
menuitem = gtk_radio_menu_item_new_with_label (group,
|
||||
translated_name);
|
||||
|
||||
- if ((global_context_id == NULL && group == NULL) ||
|
||||
- (global_context_id &&
|
||||
- strcmp (contexts[i]->context_id, global_context_id) == 0))
|
||||
- gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (menuitem),
|
||||
- TRUE);
|
||||
+ if ((user_context_id &&
|
||||
+ strcmp (contexts[i]->context_id, user_context_id) == 0))
|
||||
+ gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (menuitem), TRUE);
|
||||
|
||||
group = gtk_radio_menu_item_get_group (GTK_RADIO_MENU_ITEM (menuitem));
|
||||
|
||||
--- a/gtk/gtkimmulticontext.h 2008-04-01 11:12:11.000000000 +0200
|
||||
+++ b/gtk/gtkimmulticontext.h 2008-04-01 11:12:18.000000000 +0200
|
||||
@@ -45,7 +45,7 @@
|
||||
|
||||
GtkIMMulticontextPrivate *priv;
|
||||
|
||||
- const gchar *context_id;
|
||||
+ gchar *context_id;
|
||||
};
|
||||
|
||||
struct _GtkIMMulticontextClass
|
||||
--- a/gtk/gtksettings.c 2008-04-01 11:12:11.000000000 +0200
|
||||
+++ b/gtk/gtksettings.c 2008-04-01 11:12:18.000000000 +0200
|
||||
@@ -106,7 +106,8 @@
|
||||
PROP_PRINT_PREVIEW_COMMAND,
|
||||
PROP_ENABLE_MNEMONICS,
|
||||
PROP_ENABLE_ACCELS,
|
||||
- PROP_RECENT_FILES_LIMIT
|
||||
+ PROP_RECENT_FILES_LIMIT,
|
||||
+ PROP_IM_MODULE
|
||||
};
|
||||
|
||||
|
||||
@@ -805,6 +806,20 @@
|
||||
GTK_PARAM_READWRITE),
|
||||
NULL);
|
||||
g_assert (result == PROP_RECENT_FILES_LIMIT);
|
||||
+
|
||||
+ /**
|
||||
+ * GtkSettings:gtk-im-module:
|
||||
+ *
|
||||
+ * Which IM module should be used by default.
|
||||
+ */
|
||||
+ result = settings_install_property_parser (class,
|
||||
+ g_param_spec_string ("gtk-im-module",
|
||||
+ P_("Default IM module"),
|
||||
+ P_("Which IM module should be used by default"),
|
||||
+ NULL,
|
||||
+ GTK_PARAM_READWRITE),
|
||||
+ NULL);
|
||||
+ g_assert (result == PROP_IM_MODULE);
|
||||
}
|
||||
|
||||
static void
|
||||
--- a/gtk/gtkimmodule.c 2008-04-01 11:12:11.000000000 +0200
|
||||
+++ b/gtk/gtkimmodule.c 2008-04-01 11:12:18.000000000 +0200
|
||||
@@ -37,6 +37,8 @@
|
||||
#include <pango/pango-utils.h>
|
||||
#include "gtkimmodule.h"
|
||||
#include "gtkimcontextsimple.h"
|
||||
+#include "gtksettings.h"
|
||||
+#include "gtkmain.h"
|
||||
#include "gtkrc.h"
|
||||
#include "gtkintl.h"
|
||||
#include "gtkalias.h"
|
||||
@@ -471,7 +473,7 @@
|
||||
#endif
|
||||
GtkIMContextInfo simple_context_info = {
|
||||
SIMPLE_ID,
|
||||
- N_("Default"),
|
||||
+ N_("Simple"),
|
||||
GETTEXT_PACKAGE,
|
||||
#ifdef GTK_LOCALEDIR
|
||||
GTK_LOCALEDIR,
|
||||
@@ -599,17 +601,15 @@
|
||||
|
||||
/**
|
||||
* _gtk_im_module_get_default_context_id:
|
||||
- * @locale: a locale id in the form 'en_US'
|
||||
+ * @client_window: a window
|
||||
*
|
||||
- * Return the context_id of the best IM context type
|
||||
- * for the given locale ID.
|
||||
+ * Return the context_id of the best IM context type
|
||||
+ * for the given window.
|
||||
*
|
||||
* Return value: the context ID (will never be %NULL)
|
||||
- * the value is newly allocated and must be freed
|
||||
- * with g_free().
|
||||
**/
|
||||
const gchar *
|
||||
-_gtk_im_module_get_default_context_id (const gchar *locale)
|
||||
+_gtk_im_module_get_default_context_id (GdkWindow *client_window)
|
||||
{
|
||||
GSList *tmp_list;
|
||||
const gchar *context_id = NULL;
|
||||
@@ -617,6 +617,8 @@
|
||||
gint i;
|
||||
gchar *tmp_locale, *tmp;
|
||||
const gchar *envvar;
|
||||
+ GdkScreen *screen;
|
||||
+ GtkSettings *settings;
|
||||
|
||||
if (!contexts_hash)
|
||||
gtk_im_module_initialize ();
|
||||
@@ -624,12 +626,41 @@
|
||||
envvar = g_getenv ("GTK_IM_MODULE");
|
||||
if (envvar &&
|
||||
(strcmp (envvar, SIMPLE_ID) == 0 ||
|
||||
- g_hash_table_lookup (contexts_hash, envvar)))
|
||||
- return g_strdup (envvar);
|
||||
+ g_hash_table_lookup (contexts_hash, envvar)))
|
||||
+ return envvar;
|
||||
+
|
||||
+ /* Check if the certain immodule is set in XSETTINGS.
|
||||
+ */
|
||||
+ if (client_window != NULL && GDK_IS_DRAWABLE (client_window))
|
||||
+ {
|
||||
+ screen = gdk_drawable_get_screen (GDK_DRAWABLE (client_window));
|
||||
+ if (screen)
|
||||
+ settings = gtk_settings_get_for_screen (screen);
|
||||
+ else
|
||||
+ settings = gtk_settings_get_default ();
|
||||
+
|
||||
+ g_object_get (G_OBJECT (settings), "gtk-im-module", &tmp, NULL);
|
||||
+ if (tmp)
|
||||
+ {
|
||||
+ if (strcmp (tmp, SIMPLE_ID) == 0)
|
||||
+ context_id = SIMPLE_ID;
|
||||
+ else
|
||||
+ {
|
||||
+ GtkIMModule *module;
|
||||
+ module = g_hash_table_lookup (contexts_hash, tmp);
|
||||
+ if (module)
|
||||
+ context_id = module->contexts[0]->context_id;
|
||||
+ }
|
||||
+ g_free (tmp);
|
||||
+
|
||||
+ if (context_id)
|
||||
+ return context_id;
|
||||
+ }
|
||||
+ }
|
||||
|
||||
/* Strip the locale code down to the essentials
|
||||
*/
|
||||
- tmp_locale = g_strdup (locale);
|
||||
+ tmp_locale = _gtk_get_lc_ctype ();
|
||||
tmp = strchr (tmp_locale, '.');
|
||||
if (tmp)
|
||||
*tmp = '\0';
|
||||
@@ -642,7 +673,7 @@
|
||||
{
|
||||
GtkIMModule *module = tmp_list->data;
|
||||
|
||||
- for (i=0; i<module->n_contexts; i++)
|
||||
+ for (i = 0; i < module->n_contexts; i++)
|
||||
{
|
||||
const gchar *p = module->contexts[i]->default_locales;
|
||||
while (p)
|
||||
@@ -665,5 +696,5 @@
|
||||
|
||||
g_free (tmp_locale);
|
||||
|
||||
- return g_strdup (context_id ? context_id : SIMPLE_ID);
|
||||
+ return context_id ? context_id : SIMPLE_ID;
|
||||
}
|
||||
--- a/gtk/gtkimmodule.h 2008-04-01 11:12:11.000000000 +0200
|
||||
+++ b/gtk/gtkimmodule.h 2008-04-01 11:12:18.000000000 +0200
|
||||
@@ -38,10 +38,10 @@
|
||||
|
||||
/* Functions for use within GTK+
|
||||
*/
|
||||
-void _gtk_im_module_list (const GtkIMContextInfo ***contexts,
|
||||
- guint *n_contexts);
|
||||
-GtkIMContext *_gtk_im_module_create (const gchar *context_id);
|
||||
-const gchar * _gtk_im_module_get_default_context_id (const gchar *lang);
|
||||
+void _gtk_im_module_list (const GtkIMContextInfo ***contexts,
|
||||
+ guint *n_contexts);
|
||||
+GtkIMContext * _gtk_im_module_create (const gchar *context_id);
|
||||
+const gchar * _gtk_im_module_get_default_context_id (GdkWindow *client_window);
|
||||
|
||||
/* The following entry points are exported by each input method module
|
||||
*/
|
11
debian/scripts/Makefile
vendored
11
debian/scripts/Makefile
vendored
@ -1,11 +0,0 @@
|
||||
#!/usr/bin/make -f
|
||||
all: sh.vars mk.vars
|
||||
|
||||
clean:
|
||||
rm -f sh.vars mk.vars
|
||||
|
||||
mk.vars: vars.build vars
|
||||
$(SHELL) vars.build vars make > $@
|
||||
sh.vars: vars.build vars
|
||||
$(SHELL) vars.build vars shell > $@
|
||||
|
22
debian/scripts/archmap
vendored
22
debian/scripts/archmap
vendored
@ -1,22 +0,0 @@
|
||||
#!/bin/sh
|
||||
# i486 i386 i486 i586 pentium pentiumpro
|
||||
if [ $(basename $0) = archmap ];then
|
||||
if [ -z $1 ];then
|
||||
arch=$(dpkg --print-gnu-build-architecture)
|
||||
else
|
||||
arch=$1
|
||||
fi
|
||||
else
|
||||
if [ -z $arch ];then
|
||||
arch=$(dpkg --print-gnu-build-architecture)
|
||||
fi
|
||||
fi
|
||||
set -- $(egrep ".* $arch( .*|$)" debian/scripts/archmap)
|
||||
if [ -z $2 ];then
|
||||
arch=$arch
|
||||
else
|
||||
arch=$2
|
||||
fi
|
||||
if [ $(basename $0) = archmap ];then
|
||||
echo $arch
|
||||
fi
|
56
debian/scripts/getglibcversion
vendored
56
debian/scripts/getglibcversion
vendored
@ -1,56 +0,0 @@
|
||||
#!/bin/sh
|
||||
# GNU C library version detection shell script.
|
||||
# Copyright 1999 Branden Robinson.
|
||||
# Licensed under the GNU General Public License, version 2. See the file
|
||||
# /usr/share/common-licenses/GPL or <http://www.gnu.org/copyleft/gpl.txt>.
|
||||
|
||||
# This script probably makes about a billion too many assumptions, but it's
|
||||
# better than hardcoding the glibc version on a per-architecture basis.
|
||||
|
||||
set -e
|
||||
|
||||
usage () {
|
||||
echo "Usage: getglibcversion [option]"
|
||||
echo " Where [option] may be one of:"
|
||||
echo " --major return major version only"
|
||||
echo " --minor return minor version only"
|
||||
echo " --point return ittybitty version only"
|
||||
echo "With no option, returns major.minor.ittybitty .";
|
||||
}
|
||||
|
||||
case $# in
|
||||
0) ;;
|
||||
1) case $1 in
|
||||
--help) usage
|
||||
exit 0 ;;
|
||||
--major) RETURN=1 ;;
|
||||
--minor) RETURN=2 ;;
|
||||
--point) RETURN=3 ;;
|
||||
*) exec 1>&2
|
||||
usage
|
||||
exit 1 ;;
|
||||
esac ;;
|
||||
*) exec 1>&2
|
||||
usage
|
||||
exit 1 ;;
|
||||
esac
|
||||
|
||||
LIBCLIST=$(cd /lib && ls libc-*.so)
|
||||
|
||||
case $(echo $LIBCLIST | wc -l | awk '{print $1}') in
|
||||
0) echo "No GNU C library found! Aborting." >&2
|
||||
exit 1 ;;
|
||||
1) ;;
|
||||
*) echo "Multiple versions of GNU C library found! Aborting." >&2
|
||||
exit 1 ;;
|
||||
esac
|
||||
|
||||
LIBCVERSION=$(echo $LIBCLIST | sed 's/libc-//;s/\.so//')
|
||||
|
||||
if [ -z $RETURN ]; then
|
||||
echo $LIBCVERSION
|
||||
else
|
||||
echo $LIBCVERSION | cut -d. -f$RETURN
|
||||
fi
|
||||
|
||||
exit 0
|
198
debian/scripts/lib
vendored
198
debian/scripts/lib
vendored
@ -1,198 +0,0 @@
|
||||
#!/bin/sh
|
||||
if [ $(basename $0) = lib ];then
|
||||
make -C debian/scripts sh.vars
|
||||
. debian/scripts/sh.vars
|
||||
fi
|
||||
fetchmsg() {
|
||||
local msg
|
||||
msg=$1;shift
|
||||
eval echo $(sed -ne "s/^$(BASENAME):$msg://p" debian/scripts/messages)
|
||||
}
|
||||
START() {
|
||||
echo -n "$(fetchmsg START "$@") "
|
||||
}
|
||||
OK() {
|
||||
fetchmsg OK "$@"
|
||||
}
|
||||
FAILED() {
|
||||
fetchmsg FAILED "$@"
|
||||
}
|
||||
ALREADY_DONE() {
|
||||
fetchmsg ALREADY_DONE "$@"
|
||||
}
|
||||
|
||||
BASENAME() {
|
||||
local base
|
||||
if [ "$cmd" ];then
|
||||
base=$cmd
|
||||
else
|
||||
base=${0##*/}
|
||||
fi
|
||||
if [ x$base = x ];then
|
||||
echo "Danger, Will Robinson, Danger!" 1>&2
|
||||
echo "Bash is very confused." 1>&2
|
||||
exit 1
|
||||
fi
|
||||
if [ x$base = xlib ];then
|
||||
echo "You can't call this directly." 1>&2
|
||||
echo "This is a library that should be sourced." 1>&2
|
||||
exit 1
|
||||
fi
|
||||
echo $base
|
||||
}
|
||||
file2cat() {
|
||||
$(decompress_prog $1) $1
|
||||
}
|
||||
debug() {
|
||||
echo "$@"
|
||||
eval "$@"
|
||||
}
|
||||
decompress_prog() {
|
||||
local which
|
||||
which="cat"
|
||||
[ $1 != ${1%.tgz} -o $1 != ${1%.gz} -o $1 != ${1%.Z} ] && which="gunzip -c"
|
||||
[ $1 != ${1%.bz2} ] && which="bunzip2 -c"
|
||||
[ $1 != ${1%.bz} ] && which="bunzip -c"
|
||||
echo $which
|
||||
}
|
||||
compress_ext() {
|
||||
local which
|
||||
which=""
|
||||
[ $1 != ${1%.gz} ] && which=gz
|
||||
[ $1 != ${1%.Z} ] && which=Z
|
||||
[ $1 != ${1%.bz2} ] && which=bz2
|
||||
[ $1 != ${1%.bz} ] && which=bz
|
||||
echo $which
|
||||
}
|
||||
filetype_detect() {
|
||||
local which f
|
||||
which=""
|
||||
f=$(echo "$1" | sed 's|:::.*||')
|
||||
[ $f != ${f%.jar} ] && which=jarfile
|
||||
[ $f != ${f%.zip} ] && which=zipfile
|
||||
[ $f != ${f%.tgz} ] && which=tarball
|
||||
[ $f != ${f%.tar.$(compress_ext $f)} ] && which=tarball
|
||||
[ $f != ${f%.tar} ] && which=tarball
|
||||
[ $f != ${f%.diff.$(compress_ext $f)} -o $1 != ${1%.patch.$(compress_ext $1)} ] && which=patch
|
||||
[ $f != ${f%.diff} -o $1 != ${1%.patch} ] && which=patch
|
||||
[ $f != ${f%.dsc} ] && which=dsc
|
||||
echo $which
|
||||
}
|
||||
extract_tar() {
|
||||
local which file dir curd
|
||||
dir="$1"
|
||||
shift
|
||||
curd=$(pwd)
|
||||
while [ $# -gt 0 ];do
|
||||
file="$1"
|
||||
[ "$file" = "${1#/}" ] && file="$curd/$file"
|
||||
case "$(filetype_detect $file)" in
|
||||
"jarfile") (cd $dir;fastjar -xf $file);;
|
||||
"zipfile") (cd $dir;miniunzip -x $file);;
|
||||
"tarball") $(decompress_prog $file) $file | (cd $dir;tar xv);;
|
||||
*) echo "unsupported tarball";;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
}
|
||||
|
||||
do.patching() {
|
||||
filetmpl=\$d/\$f
|
||||
reversesort=""
|
||||
reversepatch=""
|
||||
|
||||
case "$cmd" in
|
||||
source.patch)
|
||||
mkdir -p $SOURCE_DIR/$TAR_DIR
|
||||
patch_dirs="$SRC_PATCH_DIR $SRC_ADD_PATCH_DIR"
|
||||
stampfiletmpl=\$STAMP_DIR/\$d/\$f
|
||||
logtmpl=\$STAMP_DIR/log/\$d/\$f
|
||||
dirprep="\$STAMP_DIR/log/\$d \$STAMP_DIR/\$d"
|
||||
patchapplydirtmpl=\$SOURCE_DIR/\$TAR_DIR
|
||||
;;
|
||||
patch.apply)
|
||||
mkdir -p $SOURCE_DIR/$TAR_DIR $STAMP_DIR/patches
|
||||
patch_dirs="$PATCH_DIR $ADD_PATCH_DIR"
|
||||
stampfiletmpl=\$STAMP_DIR/patches/\$f
|
||||
logtmpl=\$STAMP_DIR/log/\$d/\$f
|
||||
dirprep=\$STAMP_DIR/log/\$d
|
||||
patchapplydirtmpl=\$SOURCE_DIR/\$TAR_DIR
|
||||
;;
|
||||
fix.source.patch)
|
||||
if [ "$DBS_UNIFIED" -o ! -e debian/fixpatch ];then
|
||||
exit
|
||||
fi
|
||||
mkdir -p $STAMP_DIR/fixpatch
|
||||
patch_dirs=debian/fixpatch
|
||||
stampfiletmpl="$STAMP_DIR/fixpatch/\$(basename \$f)"
|
||||
logtmpl=\$STAMP_DIR/log/fixpatch/\$f
|
||||
dirprep=\$STAMP_DIR/log/fixpatch
|
||||
patchapplydirtmpl=upstream
|
||||
;;
|
||||
unfix.source.patch)
|
||||
if [ "$DBS_UNIFIED" -o ! -e debian/fixpatch ];then
|
||||
exit
|
||||
fi
|
||||
mkdir -p $STAMP_DIR/fixpatch
|
||||
patch_dirs=debian/fixpatch
|
||||
stampfiletmpl="$STAMP_DIR/fixpatch/\$(basename \$f)"
|
||||
logtmpl=\$STAMP_DIR/log/fixpatch/\$f
|
||||
dirprep=\$STAMP_DIR/log/fixpatch
|
||||
patchapplydirtmpl=upstream
|
||||
reversesort=-r
|
||||
reversepatch=-R
|
||||
;;
|
||||
esac
|
||||
for d in $patch_dirs;do
|
||||
if [ ! -d $d ];then
|
||||
continue
|
||||
fi
|
||||
eval mkdir -p $dirprep
|
||||
for f in `(cd $d;find -type f ! -name 'chk-*' 2>/dev/null )|sort $reversesort`;do
|
||||
eval stampfile=$stampfiletmpl
|
||||
eval log=$logtmpl
|
||||
eval file=$filetmpl
|
||||
eval patchapplydir=$patchapplydirtmpl
|
||||
if [ ! -e $stampfile ];then
|
||||
START $file
|
||||
if file2cat $file | (cd $patchapplydir;patch -p1 $reversepatch) > $log;then
|
||||
OK $file
|
||||
touch $stampfile
|
||||
else
|
||||
FAILED $file
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
ALREADY_DONE $file
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
}
|
||||
#
|
||||
# External api functions.
|
||||
#
|
||||
|
||||
source.clean() {
|
||||
if [ "$DBS_UNIFIED" ];then
|
||||
exit
|
||||
fi
|
||||
rm -rf $SOURCE_DIR $STAMP_DIR/upstream $STAMP_DIR/patches
|
||||
rm -f $STAMP_DIR/{source.{clean,build,make}}
|
||||
return
|
||||
if [ x$SOURCE_DIR = x ];then
|
||||
files=`find -type f -maxdepth 1 -mindepth 1`
|
||||
dirs=`find -type d -maxdepth 1 -mindepth 1 ! -name 'debian' ! -name 'upstream'`
|
||||
echo files=\"$files\"
|
||||
echo dirs=\"$dirs\"
|
||||
fi
|
||||
|
||||
}
|
||||
source.patch() { cmd=source.patch; do.patching; }
|
||||
fix.source.patch() { cmd=fix.source.patch; do.patching; }
|
||||
unfix.source.patch() { cmd=unfix.source.patch; do.patching; }
|
||||
patch.apply() { cmd=patch.apply; do.patching; }
|
||||
|
||||
if [ $(basename $0) = lib ];then
|
||||
$1
|
||||
fi
|
29
debian/scripts/messages
vendored
29
debian/scripts/messages
vendored
@ -1,29 +0,0 @@
|
||||
fix.source.patch:START:"Fixing upstream patch $1"
|
||||
fix.source.patch:OK:"successful."
|
||||
fix.source.patch:FAILED:"failed!"
|
||||
fix.source.patch:ALREADY_DONE:"upstream patch fixup $1 already applied!"
|
||||
|
||||
unfix.source.patch:START:"Unfixing upstream patch $1
|
||||
unfix.source.patch:OK:"successful."
|
||||
unfix.source.patch:FAILED:"failed!
|
||||
unfix.source.patch:ALREADY_DONE:"upstream patch fixup $1 already reversed!"
|
||||
|
||||
patch.unapply:START:"Reversing patch $1"
|
||||
patch.unapply:OK:"successful."
|
||||
patch.unapply:FAILED:"failed!"
|
||||
patch.unapply:ALREADY_DONE:"Patch $1 not applied!"
|
||||
|
||||
patch.apply:START:"Applying patch $1"
|
||||
patch.apply:OK:"successful."
|
||||
patch.apply:FAILED:"failed!"
|
||||
patch.apply:ALREADY_DONE:"Patch $1 already applied!"
|
||||
|
||||
source.patch:START:"Applying upstream patch $1"
|
||||
source.patch:OK:"successful."
|
||||
source.patch:FAILED:"failed!"
|
||||
source.patch:ALREADY_DONE:"upstream patch $1 already applied!"
|
||||
|
||||
source.unpack:START:"Extracting upstream tarball $1"
|
||||
source.unpack:OK:"successful."
|
||||
source.unpack:FAILED:"failed!"
|
||||
source.unpack:ALREADY_DONE:"upstream tarball $1 already extracted!"
|
32
debian/scripts/source.unpack
vendored
32
debian/scripts/source.unpack
vendored
@ -1,32 +0,0 @@
|
||||
#!/bin/sh
|
||||
make -C debian/scripts sh.vars
|
||||
. debian/scripts/sh.vars
|
||||
. debian/scripts/lib
|
||||
|
||||
mkdir -p $STAMP_DIR/upstream/tarballs/ $SOURCE_DIR
|
||||
if [ ! -z "$SRC_TAR_DIR" -a -d "$SRC_TAR_DIR" ];then
|
||||
files=$(find $SRC_TAR_DIR -type f|sort)
|
||||
else
|
||||
VER=$(dpkg-parsechangelog 2>&1|egrep ^Version|cut -d " " -f 2|cut -d "-" -f 1)
|
||||
SRC=$(dpkg-parsechangelog 2>&1|egrep ^Source|cut -d " " -f 2-)
|
||||
files=../${SRC}_${VER}.orig.tar.gz
|
||||
fi
|
||||
for f in $files;do
|
||||
stampfile=$STAMP_DIR/upstream/tarballs/`basename $f`
|
||||
if [ ! -e $stampfile ];then
|
||||
START $f
|
||||
if extract_tar ${SOURCE_DIR:-.} $f > $stampfile.log;then
|
||||
if [ x$SOURCE_DIR = x ];then
|
||||
mkdir -p $STAMP_DIR/upstream/files/tarballs
|
||||
cp $stampfile.log $STAMP_DIR/upstream/files/tarballs/`basename $f`.list
|
||||
fi
|
||||
OK $f
|
||||
touch $stampfile
|
||||
else
|
||||
FAILED $f
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
ALREADY_DONE $f
|
||||
fi
|
||||
done
|
31
debian/scripts/vars
vendored
31
debian/scripts/vars
vendored
@ -1,31 +0,0 @@
|
||||
# This file is NOT a shell script.
|
||||
#
|
||||
# This file gets included by both debian/rules (make) AND the scripts in
|
||||
# debian/scripts (bash)
|
||||
#
|
||||
|
||||
# Where to cd to to unpack all the tarballs.
|
||||
SOURCE_DIR=build-tree
|
||||
# For a single pkg, this is the directory that is embedded in the tarball.
|
||||
# For multiple pkgs, this is null.
|
||||
TAR_DIR=gtk+-2.8.20
|
||||
# Where to place all the stamp files. This directory can be removed, and
|
||||
# all the targets will then be rerun.
|
||||
STAMP_DIR=debian/stampdir
|
||||
# When sys-build.mk is used to build the source, this is the target(s) to
|
||||
# run.
|
||||
BUILD_TARGET=
|
||||
# When cleaning the source, during diff generation, if this is set, this
|
||||
# target will be called in debian/rules. This allows for pkgs that have
|
||||
# complicated cleaning rules.
|
||||
CLEAN_TARGET_EXTERNAL=
|
||||
# Whether to die if the source cleaning fails.
|
||||
CLEAN_IGNORE=yes
|
||||
# The clean target to run. Defaults to clean.
|
||||
CLEAN_TARGET=distclean
|
||||
# Files to exclude from the diff.
|
||||
DIFF_EXCLUDE="Makefile.in configure"
|
||||
# Where the patches are located(duh!).
|
||||
PATCH_DIR=debian/patches
|
||||
SRC_PATCH_DIR=upstream/patches
|
||||
SRC_TAR_DIR=upstream/tarballs
|
17
debian/scripts/vars.build
vendored
17
debian/scripts/vars.build
vendored
@ -1,17 +0,0 @@
|
||||
#!/usr/bin/make -f
|
||||
|
||||
sed_cmd=''
|
||||
cat $1 | while read REPLY; do
|
||||
case "$REPLY" in
|
||||
\#*|"") continue;;
|
||||
*)
|
||||
var=$(echo $REPLY|sed 's/\([^=]*\)=.*/\1/')
|
||||
eval $REPLY
|
||||
if [ $2 = "make" ]; then
|
||||
eval echo "$var=\$$var"
|
||||
else
|
||||
eval echo "$var=\\\"\$$var\\\""
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
1
debian/sources
vendored
1
debian/sources
vendored
@ -1 +0,0 @@
|
||||
upstream tar ../gtk+-2.8.20.tar.gz
|
167
debian/sys-build.mk
vendored
167
debian/sys-build.mk
vendored
@ -1,167 +0,0 @@
|
||||
#!/usr/bin/make -f
|
||||
# Separate tarball/patch build system by Adam Heath <doogie@debian.org>
|
||||
|
||||
# The magic targets that you need to concern yourself with are:
|
||||
#
|
||||
# source.build: Unpacks upstream tarballs, optionally applies patches
|
||||
# to fix the upstream patches, then applies upstream
|
||||
# patches.
|
||||
# source.make: Applies debian patches.
|
||||
# source.clean: Cleans the build directory, then unfixes the upstream
|
||||
# patches.
|
||||
# source.compile: Will compile the source for you. Please check
|
||||
# debian/scripts/vars.
|
||||
# source.cmd: When calling this target, if you define a variable
|
||||
# SOURCE_CMD, it will run that command in the build
|
||||
# tree.
|
||||
# make-diff: Generates debian.diff in the current directory which
|
||||
# contains all edits that are currently in the build
|
||||
# tree.
|
||||
#
|
||||
# Nothing in this file should require any editting. Please look at
|
||||
# debian/scripts/vars for things to change for the local environment.
|
||||
#
|
||||
# debian/rules target command
|
||||
# ----------------------------------------------------------------
|
||||
# clean: $(MAKE) -f debian/sys-build.mk source.clean
|
||||
# build: $(MAKE) -f debian/sys-build.mk source.compile
|
||||
# for simple systems.
|
||||
# build: $(MAKE) -f debian/sys-build.mk source.make
|
||||
# and, in the rules file, you can
|
||||
# build the targets you want.
|
||||
SHELL=/bin/bash
|
||||
ifndef NOISY
|
||||
.SILENT:
|
||||
endif
|
||||
|
||||
include debian/scripts/vars
|
||||
# remove quotes
|
||||
DIFF_EXCLUDE:=$(patsubst %,-x %,$(shell echo $(DIFF_EXCLUDE)))
|
||||
|
||||
ifdef TAR_DIR
|
||||
BUILD_TREE=$(SOURCE_DIR)/$(TAR_DIR)
|
||||
else
|
||||
BUILD_TREE=$(SOURCE_DIR)
|
||||
endif
|
||||
|
||||
SOURCE_CMD=:
|
||||
|
||||
ifdef CLEAN_IGNORE
|
||||
CLEAN_CMD=-
|
||||
CLEAN_SH=
|
||||
else
|
||||
CLEAN_CMD=
|
||||
CLEAN_SH=
|
||||
endif
|
||||
ifndef CLEAN_TARGET
|
||||
CLEAN_TARGET=clean
|
||||
endif
|
||||
|
||||
foo:
|
||||
echo $(DIFF_EXCLUDE)
|
||||
|
||||
make-diff:
|
||||
mv $(BUILD_TREE) bak
|
||||
$(MAKE) -f debian/sys-build.mk source.clean
|
||||
$(MAKE) -f debian/sys-build.mk source.make
|
||||
mv $(BUILD_TREE) $(BUILD_TREE).orig
|
||||
mv bak $(BUILD_TREE)
|
||||
|
||||
ifdef TAR_DIR
|
||||
ifdef CLEAN_TARGET_EXTERNAL
|
||||
$(CLEAN_CMD)$(MAKE) -f debian/rules $(CLEAN_TARGET_EXTERNAL)
|
||||
else
|
||||
$(CLEAN_CMD)$(MAKE) -C $(BUILD_TREE) $(CLEAN_TARGET)
|
||||
endif
|
||||
-(cd $(SOURCE_DIR);diff -ruN $(TAR_DIR).orig $(TAR_DIR) $(DIFF_EXCLUDE)) > debian.diff
|
||||
else
|
||||
ifdef CLEAN_TARGET_EXTERNAL
|
||||
$(CLEAN_CMD)$(MAKE) -f debian/rules $(CLEAN_TARGET_EXTERNAL)
|
||||
else
|
||||
$(CLEAN_CMD)for a in $(BUILD_TREE)/*;do $(MAKE) -C $$a $(CLEAN_TARGET);done
|
||||
endif
|
||||
-(diff -ruN $(BUILD_TREE).orig $(BUILD_TREE) $(DIFF_EXCLUDE)) > debian.diff
|
||||
if [ ! -s debian.diff ];then\
|
||||
rm debian.diff;\
|
||||
fi
|
||||
endif
|
||||
rm -rf $(BUILD_TREE).orig
|
||||
|
||||
patchapply: $(STAMP_DIR)/patchapply
|
||||
$(STAMP_DIR)/patchapply: $(STAMP_DIR)/source.build $(STAMP_DIR)
|
||||
$(SHELL) debian/scripts/lib patch.apply
|
||||
touch $@
|
||||
rm -f $(STAMP_DIR)/patchunapply
|
||||
|
||||
patchunapply: $(STAMP_DIR)/patchunapply
|
||||
$(STAMP_DIR)/patchunapply: $(STAMP_DIR)/source.build $(STAMP_DIR)
|
||||
$(SHELL) debian/scripts/lib patch.unapply
|
||||
touch $@
|
||||
rm -f $(STAMP_DIR)/patchapply
|
||||
|
||||
.export: SOURCE_TREE
|
||||
|
||||
#
|
||||
# The rules that really do the work all start with $(STAMPDIR)
|
||||
# This little trick allows us to use stamp files to keep us from
|
||||
# having to rerun long targets over and over. It also puts
|
||||
# all stamp files in one place, for easy cleaning.
|
||||
#
|
||||
# If a stampdir rule depends on something else, be sure it is
|
||||
# another stampdir rule. Depending on base rule won't work.
|
||||
#
|
||||
|
||||
source.build: $(STAMP_DIR)/source.build
|
||||
STAMP_DIR_TARGETS+= $(STAMP_DIR)/source.build
|
||||
$(STAMP_DIR)/source.build: $(STAMP_DIR)/source.unpack $(STAMP_DIR)/source.patch $(STAMP_DIR)
|
||||
touch $@
|
||||
|
||||
source.make: $(STAMP_DIR)/source.make
|
||||
STAMP_DIR_TARGETS+= $(STAMP_DIR)/source.make
|
||||
$(STAMP_DIR)/source.make: $(STAMP_DIR)/source.build $(STAMP_DIR)/patchapply $(STAMP_DIR)
|
||||
touch $@
|
||||
|
||||
source.unpack: $(STAMP_DIR)/source.unpack
|
||||
STAMP_DIR_TARGETS+= $(STAMP_DIR)/source.unpack
|
||||
$(STAMP_DIR)/source.unpack: $(STAMP_DIR)
|
||||
$(SHELL) debian/scripts/source.unpack
|
||||
touch $@
|
||||
|
||||
source.patch: $(STAMP_DIR)/source.patch
|
||||
STAMP_DIR_TARGETS+= $(STAMP_DIR)/source.patch
|
||||
$(STAMP_DIR)/source.patch: $(STAMP_DIR)/source.unpack $(STAMP_DIR)/fix.source.patch $(STAMP_DIR)
|
||||
$(SHELL) debian/scripts/lib source.patch
|
||||
touch $@
|
||||
|
||||
fix.source.patch: $(STAMP_DIR)/fix.source.patch
|
||||
STAMP_DIR_TARGETS+= $(STAMP_DIR)/fix.source.patch
|
||||
$(STAMP_DIR)/fix.source.patch: $(STAMP_DIR)
|
||||
$(SHELL) debian/scripts/lib fix.source.patch
|
||||
touch $@
|
||||
|
||||
unfix.source.patch: $(STAMP_DIR)/unfix.source.patch
|
||||
STAMP_DIR_TARGETS+= $(STAMP_DIR)/unfix.source.patch
|
||||
$(STAMP_DIR)/unfix.source.patch: $(STAMP_DIR)
|
||||
$(SHELL) debian/scripts/lib unfix.source.patch
|
||||
touch $@
|
||||
|
||||
source.compile: $(STAMP_DIR)/source.compile
|
||||
STAMP_DIR_TARGETS+= $(STAMP_DIR)/source.compile
|
||||
$(STAMP_DIR)/source.compile: $(STAMP_DIR)/source.make $(STAMP_DIR)
|
||||
$(MAKE) -C $(BUILD_TREE) $(BUILD_TARGET)
|
||||
touch $@
|
||||
|
||||
source.command:
|
||||
(cd $(BUILD_TREE); $(SOURCE_CMD))
|
||||
|
||||
DIR_TARGETS+=$(STAMP_DIR)
|
||||
$(STAMP_DIR_TARGETS): $(STAMP_DIR)
|
||||
|
||||
$(DIR_TARGETS)/:
|
||||
mkdir -p $@
|
||||
|
||||
source.clean: unfix.source.patch
|
||||
$(SHELL) debian/scripts/lib source.clean
|
||||
rm -f $(STAMP_DIR_TARGETS)
|
||||
rm -rf $(STAMP_DIR)
|
||||
$(MAKE) -C debian/scripts clean
|
40
debian/update-gdkpixbuf-loaders
vendored
40
debian/update-gdkpixbuf-loaders
vendored
@ -1,40 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
TMPFILE=`mktemp /tmp/gtk+-2.8.7.XXXXXXXXXX`
|
||||
defaultver=2.8.0
|
||||
|
||||
if [ "x$1" != "x" ]; then
|
||||
VERSION=`echo $1 | sed -e 's/-[A-Za-z0-9\.]*$//' -e 's/+[A-Za-z0-9\.]*$//'`
|
||||
else
|
||||
VERSION=$defaultver
|
||||
fi
|
||||
VERSION=2.4.0
|
||||
apiver=2.0
|
||||
shortver=`echo $VERSION | sed -e 's/\.[0-9]*$//'`
|
||||
|
||||
if ! test -d /usr/lib/gtk-$apiver/$VERSION/loaders; then
|
||||
echo "You don't have gdk-pixbuf loaders directory for version $VERSION."
|
||||
echo "Use default version instead."
|
||||
VERSION=$defaultver
|
||||
shortver=`echo $VERSION | sed -e 's/\.[0-9]*$//'`
|
||||
fi
|
||||
|
||||
echo -n "Updating the gdk-pixbuf loaders list for GTK+-$VERSION..."
|
||||
/usr/lib/libgtk2.0-0/gdk-pixbuf-query-loaders > $TMPFILE
|
||||
if [ "x`cat $TMPFILE | grep -v '^#'`" = "x" ]; then
|
||||
echo "the gdk-pixbuf loaders was not found."
|
||||
else
|
||||
echo "done."
|
||||
fi
|
||||
if ! test -d /etc/gtk-$apiver; then
|
||||
echo -n "Creating /etc/gtk-$apiver..."
|
||||
mkdir /etc/gtk-$apiver
|
||||
echo "done."
|
||||
fi
|
||||
cp $TMPFILE /etc/gtk-$apiver/gdk-pixbuf.loaders
|
||||
chmod 644 /etc/gtk-$apiver/gdk-pixbuf.loaders
|
||||
|
||||
rm -f $TMPFILE
|
||||
|
31
debian/update-gdkpixbuf-loaders.8
vendored
31
debian/update-gdkpixbuf-loaders.8
vendored
@ -1,31 +0,0 @@
|
||||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH UPDATE-GDKPIXBUF-LOADERS 8 "6 January 2003"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.SH NAME
|
||||
update-gdkpixbuf-loaders \- Update wrapper script for the Gdkpixbuf loaders list
|
||||
.SH SYNOPSIS
|
||||
.B update-gdkpixbuf-loaders
|
||||
.I package\| version
|
||||
.SH DESCRIPTION
|
||||
\fIupdate-gdkpixbuf-loaders\fP is a wrapper script for updating /etc/gtk-2.0/gdk-pixbuf.loaders using \fIgdk-pixbuf-query-loaders\fP.
|
||||
.br
|
||||
\fIupdate-gdkpixbuf-loaders\fP get a argument and /etc/gtk-2.0/gdk-pixbuf.loaders for that version will be generated by \fIgdk-pixbuf-query-loaders\fP.
|
||||
.SH SEE ALSO
|
||||
.BR gdk-pixbuf-query-loaders (1)
|
||||
.SH AUTHOR
|
||||
This manual page was written by Akira TAGOH <tagoh@debian.org>,
|
||||
for the Debian GNU/Linux system.
|
28
debian/update-gdkpixbuf-loaders.in
vendored
28
debian/update-gdkpixbuf-loaders.in
vendored
@ -1,28 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# this script is a no-op since 2.10.3-2
|
||||
exit 0
|
||||
|
||||
set -e
|
||||
|
||||
VERSION="@VERSION@"
|
||||
APIVER="@APIVER@"
|
||||
SHARED_PKG="@SHARED_PKG@"
|
||||
TMPFILE=$(mktemp -t "gtk+$APIVER-$VERSION.XXXXXXXXXX")
|
||||
|
||||
echo -n "Updating the gdk-pixbuf loaders list for Gtk+ $VERSION..."
|
||||
"/@LIBDIR@/$SHARED_PKG/gdk-pixbuf-query-loaders" > $TMPFILE
|
||||
if [ "x`cat "$TMPFILE" | grep -v '^#'`" = "x" ]; then
|
||||
echo "no gdk-pixbuf loader found."
|
||||
else
|
||||
echo "done."
|
||||
fi
|
||||
if ! test -d "/etc/gtk-$APIVER"; then
|
||||
echo -n "Creating /etc/gtk-$APIVER..."
|
||||
mkdir "/etc/gtk-$APIVER"
|
||||
echo "done."
|
||||
fi
|
||||
cp "$TMPFILE" "/etc/gtk-$APIVER/gdk-pixbuf.loaders"
|
||||
chmod 644 "/etc/gtk-$APIVER/gdk-pixbuf.loaders"
|
||||
|
||||
rm -f "$TMPFILE"
|
37
debian/update-gtk-immodules
vendored
37
debian/update-gtk-immodules
vendored
@ -1,37 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
TMPFILE=`mktemp /tmp/gtk+-2.8.7.XXXXXXXXXX`
|
||||
apiver=2.0
|
||||
defaultver=2.8.0
|
||||
|
||||
if [ "x$1" != "x" ]; then
|
||||
VERSION=`echo $1 | sed -e 's/-[A-Za-z0-9\.]*$//' -e 's/+[A-Za-z0-9\.]*$//'`
|
||||
else
|
||||
VERSION=$defaultver
|
||||
fi
|
||||
VERSION=2.4.0
|
||||
if ! test -d /usr/lib/gtk-$apiver/$VERSION/immodules; then
|
||||
echo "You don't have immodules directory for version $VERSION."
|
||||
echo "Use default version instead."
|
||||
VERSION=$defaultver
|
||||
fi
|
||||
|
||||
echo -n "Updating the IM modules list for GTK+-$VERSION..."
|
||||
/usr/lib/libgtk2.0-0/gtk-query-immodules-$apiver `find /usr/lib/gtk-$apiver/2.4.0/immodules -name '*.so'` > $TMPFILE
|
||||
if [ "x`cat $TMPFILE | grep -v '^#'`" = "x" ]; then
|
||||
echo "the GTK+ IM modules was not found."
|
||||
else
|
||||
echo "done."
|
||||
fi
|
||||
if ! test -d /etc/gtk-$apiver; then
|
||||
echo -n "Creating /etc/gtk-$apiver..."
|
||||
mkdir /etc/gtk-$apiver
|
||||
echo "done."
|
||||
fi
|
||||
cp $TMPFILE /etc/gtk-$apiver/gtk.immodules
|
||||
chmod 644 /etc/gtk-$apiver/gtk.immodules
|
||||
|
||||
rm -f $TMPFILE
|
||||
|
31
debian/update-gtk-immodules.8
vendored
31
debian/update-gtk-immodules.8
vendored
@ -1,31 +0,0 @@
|
||||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH UPDATE-GTK-IMMODULES 8 "13 March 2002"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.SH NAME
|
||||
update-gtk-immodules \- Update wrapper script for the GTK+ IM modules list
|
||||
.SH SYNOPSIS
|
||||
.B update-gtk-immodules
|
||||
.I package\| version
|
||||
.SH DESCRIPTION
|
||||
\fIupdate-gtk-immodules\fP is a wrapper script for updating /etc/gtk-2.0/gtk.immodules using \fIgtk-query-immodules-2.0\fP.
|
||||
.br
|
||||
\fIupdate-gtk-immodules\fP get a argument and /etc/gtk-2.0/gtk.immodules for that version will be generated by \fIgtk-query-immodules-2.0\fP.
|
||||
.SH SEE ALSO
|
||||
.BR gtk-query-immodules-2.0 (1)
|
||||
.SH AUTHOR
|
||||
This manual page was written by Akira TAGOH <tagoh@debian.org>,
|
||||
for the Debian GNU/Linux system.
|
36
debian/update-gtk-immodules.fr.8
vendored
36
debian/update-gtk-immodules.fr.8
vendored
@ -1,36 +0,0 @@
|
||||
.\" Hey, EMACS: -*- nroff -*-
|
||||
.\" First parameter, NAME, should be all caps
|
||||
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
|
||||
.\" other parameters are allowed: see man(7), man(1)
|
||||
.TH UPDATE-GTK-IMMODULES 8 "13 mars 2002"
|
||||
.\" Please adjust this date whenever revising the manpage.
|
||||
.\"
|
||||
.\" Some roff macros, for reference:
|
||||
.\" .nh disable hyphenation
|
||||
.\" .hy enable hyphenation
|
||||
.\" .ad l left justify
|
||||
.\" .ad b justify to both left and right margins
|
||||
.\" .nf disable filling
|
||||
.\" .fi enable filling
|
||||
.\" .br insert line break
|
||||
.\" .sp <n> insert n+1 empty lines
|
||||
.\" for manpage-specific macros, see man(7)
|
||||
.SH NOM
|
||||
update-gtk-immodules \- Script de mise <20> jour de la liste des modules
|
||||
GTK+ IM
|
||||
.SH SYNOPSIS
|
||||
.B update-gtk-immodules
|
||||
.I paquet\| version
|
||||
.SH DESCRIPTION
|
||||
\fIupdate-gtk-immodules\fP est un script d'analyse pour la mise <20> jour de
|
||||
/etc/gtk-2.0/gtk.immodules en utilisant \fIgtk-query-immodules-2.0\fP.
|
||||
.br
|
||||
\fIupdate-gtk-immodules\fP re<72>oit un argument et /etc/gtk-2.0/gtk.immodules sera
|
||||
g<EFBFBD>n<EFBFBD>r<EFBFBD> pour cette version par \fIgtk-query-immodules-2.0\fP.
|
||||
.SH VOIR AUSSI
|
||||
.BR gtk-query-immodules-2.0 (1)
|
||||
.SH AUTEUR
|
||||
Cette page de manuel a <20>t<EFBFBD> <20>crite par Akira TAGOH <tagoh@debian.org>,
|
||||
pour le syst<73>me Debian GNU/Linux.
|
||||
.SH TRADUCTION
|
||||
Julien Louis <leonptitlouis@ifrance.com>
|
31
debian/update-gtk-immodules.in
vendored
31
debian/update-gtk-immodules.in
vendored
@ -1,31 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# this script is a no-op since 2.10.3-2
|
||||
exit 0
|
||||
|
||||
set -e
|
||||
|
||||
VERSION="@VERSION@"
|
||||
GTK_BINARY_VERSION="@GTK_BINARY_VERSION@"
|
||||
APIVER="@APIVER@"
|
||||
SHARED_PKG="@SHARED_PKG@"
|
||||
TMPFILE=$(mktemp -t "gtk+$APIVER-$VERSION.XXXXXXXXXX")
|
||||
|
||||
echo -n "Updating the IM modules list for Gtk+ $VERSION..."
|
||||
"/@LIBDIR@/$SHARED_PKG/gtk-query-immodules-$APIVER" \
|
||||
$(find "/@LIBDIR@/gtk-$APIVER/$GTK_BINARY_VERSION/immodules" -name '*.so') \
|
||||
> "$TMPFILE"
|
||||
if [ "x`cat "$TMPFILE" | grep -v '^#'`" = "x" ]; then
|
||||
echo "no Gtk+ IM modules found."
|
||||
else
|
||||
echo "done."
|
||||
fi
|
||||
if ! test -d "/etc/gtk-$APIVER"; then
|
||||
echo -n "Creating /etc/gtk-$APIVER..."
|
||||
mkdir "/etc/gtk-$APIVER"
|
||||
echo "done."
|
||||
fi
|
||||
cp "$TMPFILE" "/etc/gtk-$APIVER/gtk.immodules"
|
||||
chmod 644 "/etc/gtk-$APIVER/gtk.immodules"
|
||||
|
||||
rm -f "$TMPFILE"
|
Reference in New Issue
Block a user