Compare commits

...
Sign in to create a new pull request.
Author SHA1 Message Date
c0ea568364 fix alias check for out-of-tree builds 2026-08-03 15:13:45 +02:00
fc7bd3870d fix weekday name ordering 2026-08-03 12:07:46 +02:00
greenjeans
438b19a0d6 Update git.mk
Removed stale github link in comments
2026-07-05 21:04:41 +00:00
greenjeans
e363bff72c Update MAINTAINERS 2026-07-05 20:50:19 +00:00
greenjeans
cc6e67e99d Update README.md 2026-07-05 13:56:09 +00:00
greenjeans
4f5613207a Update README.md
Added Lateral Tech
2026-07-05 13:29:47 +00:00
greenjeans
4b739a2900 Update README.md
Added new links
2026-07-05 13:23:59 +00:00
greenjeans
dba798cc14 Update README.md
Added link to AUR package
2026-06-16 14:39:50 +00:00
greenjeans
0ca196eb01 Update README.md
Added link to Distrowatch EasyOS release news
2026-06-15 16:39:44 +00:00
greenjeans
9ab1378b32 Update ABOUT-NLS
Fixed another link.
2026-06-12 16:42:15 +00:00
greenjeans
4ffcb9ba06 Update ABOUT-NLS
The translation matrix in this file was very badly outdated, there is a new version, but the file itself is not in a format that would work well here, and is extremely large and complex. So I fixed the link to the newest version and added a link to the translation project's home page.
2026-06-12 16:39:08 +00:00
greenjeans
5aff3601fe Update README.in
Updated links and titles
2026-06-11 19:45:04 +00:00
greenjeans
d128c9efde Update README.commits
Updated info to reflect current gtk2-ng project
2026-06-11 19:12:45 +00:00
greenjeans
7c83c8ec9c Update HACKING 2026-06-11 18:23:30 +00:00
greenjeans
5194f8580e Update HACKING
Updated to reflect current gtk2-ng project and links
2026-06-11 18:19:56 +00:00
greenjeans
4bc15d8993 Update README.md
Updates to dev news
2026-06-10 01:48:05 +00:00
59bb0f4bc3 build: add gtkpixdatautils to MSVC gtk-update-icon-cache 2026-06-09 12:19:49 +02:00
8811f9398a gdk: move GdkAtom boxed type registration to common code 2026-06-09 12:19:39 +02:00
779ff372ec demo: add gtk2-ng icon 2026-06-09 11:53:08 +02:00
ebfa96e7b0 gtk: link GDK explicitly when generating introspection data 2026-06-09 11:35:21 +02:00
545cc8e109 gtk: move gtkpapersize G_OS_UNIX guard comment 2026-06-06 10:53:06 +02:00
greenjeans
b54e2e6150 Update README.md 2026-05-16 13:54:59 +00:00
18 changed files with 195 additions and 1313 deletions

1133
ABOUT-NLS

File diff suppressed because it is too large Load diff

89
HACKING
View file

@ -1,64 +1,45 @@
If you want to hack on the GTK+ project, you'll need to have
the following packages installed:
**Hacking gtk2-ng**
- GNU autoconf 2.54
- GNU automake 1.7
- GNU libtool 1.4
- indent (GNU indent 1.9.1 is known good)
- GNU gettext 10.40
Note:
When this document was first created back in the day, "hacking" meant to
modify code to do new and interesting things, not quite the same as the
more sinister meaning it has taken on today. It is in the spirit of the
original meaning that this newly revised document has been updated.
These should be available by ftp from ftp.gnu.org or any of the
fine GNU mirrors. Beta software can be found at alpha.gnu.org.
Full list of Daemonratte's projects:
https://git.devuan.org/Daemonratte
Up-to-date instructions about developing GNOME applications and libraries
can be found here:
We welcome all contributions to the project! And the best way to make that
happen is to first clone the main gtk2-ng repo at :
https://git.devuan.org/Daemonratte/gtk2-ng
http://developer.gnome.org
To make a pull request or report a bug, you'll need to register an account
at: https://git.devuan.org
Information about using git with GNOME can be found here:
Got some ideas or a feature request? You can also make an account at:
https://devuanusers.com and join in the discussions here:
https://devuanusers.com/forum-gtk2-revival-project--12
http://live.gnome.org/Git
Cloning the git repo to your local computer is a great way to experiment
and test results, you'll need to be familiar with git commands and first
need to install the build dependencies:
In order to get GIT gtk+ installed on your system, you need to have
the most recent GIT versions of glib, pango, and atk installed as well.
The installation process of these libraries is similar to that of gtk+, but
needs to be fulfilled prior to installation of gtk+.
# yad build-essential git libcups2-dev gettext autopoint
# autoconf automake libtool pkg-config gtk-doc-tools gobject-introspection
# libglib2.0-dev libpango1.0-dev libatk1.0-dev libcairo2-dev libgdk-pixbuf-2.0-dev
# libfontconfig1-dev libfreetype-dev libharfbuzz-dev libfribidi-dev libpng-dev
# libx11-dev libxext-dev libxrender-dev libxrandr-dev libxcursor-dev
# libxinerama-dev libxi-dev libxfixes-dev libxcomposite-dev libxdamage-dev
If at all possible, please use GIT to get the latest development version of
gtk+ and glib. You can do the following to get glib and gtk+ from GIT:
There are build scripts (Linux) to help automate the process and do local testing
side-by-side against current versions of gtk2, you can find them here:
https://git.devuan.org/greenjeans/gtk2-ng-test-scripts
$ git clone git://git.gnome.org/glib
$ git clone git://git.gnome.org/pango
$ git clone git://git.gnome.org/atk
$ git clone git://git.gnome.org/gtk+
And if you just want to do some simple testing there's an easy way to do
that without having to do a lot of building/installing, a special test-iso
with the above scripts already installed to automate everything, that you
can run in a live-session or a VM, or also install if you have a partition
to spare:
https://sourceforge.net/projects/vuu-do/files/Vuu-do-5.03/5.03-gtk2ng-testing/
Note: if you plan to push changes to back to the master repository and
have a gnome account, you want to use the following instead:
$ git clone ssh://<username>@git.gnome.org/git/gtk+
To compile the GIT version of gtk+ on your system, you will need to take
several steps to setup the tree for compilation. You can do all these
steps at once by running:
gtk+$ ./autogen.sh
Basically this does the following for you:
gtk+$ aclocal; automake; autoconf
The above commands create the `configure' script. Now you
run the `configure' script in `gtk+/' to create all Makefiles.
More information about that in `INSTALL'.
Before running `autogen.sh' or `configure', make sure you have libtool
in your path.
Note that autogen.sh runs configure for you. If you wish to pass
options like `--prefix=/usr' to `configure' you can give those options
to `autogen.sh' and they will be passed on to `configure'.
For information about submitting patches and pushing changes
to GIT, see the `README' and `README.commits' files. In particular,
don't, under any circumstances, push anything to GIT before
reading and understanding `README.commmits'.
~greenjeans June 2026

View file

@ -1,12 +1,13 @@
Matthias Clasen
E-mail: mclasen@redhat.com
Userid: matthiasc
Daemonratte - lead developer
https://git.devuan.org/Daemonratte
Tim Janik
E-mail: timj@gtk.org
Userid: timj
greenjeans - collaborator
https://git.devuan.org/greenjeans
Note that a lot of people are contributing to GTK+, and some parts of it
are technically maintained by other people. The people listed above are
meant as contacts for administrative questions such as cvs accounts. Other
questions are best directed to the mailing list gtk-devel-list@gnome.org.
Note that a LOT of people are contributing to gtk2-ng, and some parts of it
like the .deb packages are being maintained by other people. The people listed
above are meant as contacts for administrative questions. The best way to get
involved is by registering an account at : https://git.devuan.org/ for any
feature requests or issues. You can also register an account on the Devuan
users forum : https://devuanusers.com/index.php and post or message/email
any one of us.

View file

@ -1,72 +1,35 @@
GTK+ is part of the GNOME git repository. At the current time, any
person with write access to the GNOME repository, can make changes to
GTK+. This is a good thing, in that it encourages many people to work
on GTK+, and progress can be made quickly. However, GTK+ is a fairly
large and complicated package that many other things depend on, so to
avoid unnecessary breakage, and to take advantage of the knowledge
about GTK+ that has been built up over the years, we'd like to ask
people committing to GTK+ to follow a few rules:
The gtk2-ng project is part of Daemonratte's git repository. At the current
time, only the project owner and collaborators are allowed to make commits,
gtk2-ng is a fairly large and complicated package that many other things
depend on, so to avoid unnecessary breakage, but to take advantage of the
knowledge about GTK that has been built up over the years, we'd like to ask
people to feel free to submit pull requests after modding and testing. It
will all get reviewed though sometimes that may take some time!
0) Ask first. If your changes are major, or could possibly break existing
code, you should always ask. If your change is minor and you've
been working on GTK+ for a while it probably isn't necessary
to ask. But when in doubt, ask. Even if your change is correct,
somebody may know a better way to do things.
If you are making changes to GTK+, you should be subscribed
to gtk-devel-list@gnome.org. (Subscription address:
gtk-devel-list-request@gnome.org.) This is a good place to ask
about intended changes.
#gtk+ on GIMPNet (irc.gimp.org, irc.us.gimp.org, irc.eu.gimp.org, ...)
is also a good place to find GTK+ developers to discuss changes with,
however, email to gtk-devel-list is the most certain and preferred
method.
1) Ask _first_.
2) With git, we no longer maintain a ChangeLog file, but you are expected
to produce a meaningful commit message. Changes without a sufficient
commit message will be reverted. See below for the expected format
of commit messages.
If you would like to submit pull requests, you will need to have an account
at: https://git.devuan.org
It's also a good idea to sign up at the devuanusers.com forum and join the
discussion here: https://devuanusers.com/forum-gtk2-revival-project--12
Notes:
* When developing larger features or complicated bug fixes, it is
advisable to work in a branch in your own cloned GTK+ repository.
advisable to work in a branch in your own cloned gtk2-ng repository.
You may even consider making your repository publically available
so that others can easily test and review your changes.
* The expected format for git commit messages is as follows:
=== begin example commit ===
Short explanation of the commit
Title: Short explanation of the commit, i.e "Update foo.c"
Optional extended description: Longer explanation about what's changed,
whether any external or private interfaces changed, what bugs were fixed
(with bug tracker reference if applicable) and so on. Be concise but complete,
i.e. "Added new spin-buttons, deleted some trailing whitespace, fixed bug #8"
~greenjeans June 2026
Longer explanation explaining exactly what's changed, whether any
external or private interfaces changed, what bugs were fixed (with bug
tracker reference if applicable) and so forth. Be concise but not too brief.
=== end example commit ===
- Always add a brief description of the commit to the _first_ line of
the commit and terminate by two newlines (it will work without the
second newline, but that is not nice for the interfaces).
- First line (the brief description) must only be one sentence and
should start with a capital letter unless it starts with a lowercase
symbol or identifier. Don't use a trailing period either. Don't exceed
72 characters.
- The main description (the body) is normal prose and should use normal
punctuation and capital letters where appropriate. Normally, for patches
sent to a mailing list it's copied from there.
- When committing code on behalf of others use the --author option, e.g.
git commit -a --author "Joe Coder <joe@coder.org>" and --signoff.
Owen Taylor
13 Aug 1998
17 Apr 2001
Matthias Clasen
31 Mar 2009

View file

@ -1,25 +1,20 @@
General Information
===================
This is GTK+ version @GTK_VERSION@. GTK+ is a multi-platform toolkit for
creating graphical user interfaces. Offering a complete set of widgets,
GTK+ is suitable for projects ranging from small one-off projects to
complete application suites.
This is gtk2-ng, a multi-platform toolkit for creating graphical user interfaces.
Offering a complete set of widgets, gtk2-ng is suitable for projects ranging from
small one-off projects to complete application suites.
GTK+ is free software and part of the GNU Project. However, the
licensing terms for GTK+, the GNU LGPL, allow it to be used by all
This is free software and part of the gtk2 revival project. However, the
licensing terms for gtk2-ng, the GNU LGPL, allow it to be used by all
developers, including those developing proprietary software, without any
license fees or royalties.
The official ftp site is:
ftp://ftp.gtk.org/pub/gtk
The official source code site is:
https://git.devuan.org/Daemonratte/gtk2-ng
The official web site is:
http://www.gtk.org/
Information about mailing lists can be found at
http://www.gtk.org/mailinglists.html
https://devuanusers.com/index.php
Installation
============
@ -420,9 +415,9 @@ Release notes for 2.6
How to report bugs
==================
Bugs should be reported to the GNOME bug tracking system.
(http://bugzilla.gnome.org, product gtk+.) You will need to create an
account for yourself.
Bugs should be reported to the gtk2-ng bug tracking system.
(https://git.devuan.org/Daemonratte/gtk2-ng)
You will need to create an account for yourself.
In the bug report please include:
@ -454,8 +449,8 @@ In the bug report please include:
Patches
=======
Patches should also be submitted to bugzilla.gnome.org. If the patch
fixes an existing bug, add the patch as an attachment to that bug
Patches should also be submitted to https://git.devuan.org/Daemonratte/gtk2-ng.
If the patch fixes an existing bug, add the patch as an attachment to that bug
report.
Otherwise, enter a new bug report that describes the patch, and attach

View file

@ -4,13 +4,18 @@
This fork focuses on modern compatibility while preserving stability, performance, ABI compatibility, and original behavior as much as possible. X11-first, no forced Wayland migration.
Backed by the **devuanusers.com** community.
Backed by the **devuanusers.com** community and **The Lateral Tech Foundation**.
## Recent Development News
- Build scripts to automate local testing - https://git.devuan.org/greenjeans/gtk2-ng-test-scripts
- Testing iso (Daedalus) - https://sourceforge.net/projects/vuu-do/files/Vuu-do-5.03/5.03-gtk2ng-testing/
- Deb packages (Excalibur) - https://git.devuan.org/SteveM/DTK_debs
- Deb packages (Daedalus, Excalibur) - https://git.devuan.org/SteveM/gtk2-ng_debs
- Win32 build scripts - https://git.devuan.org/lmemsm/bldgtk
- Successfully built for EasyOS and KLV-Airedale - https://forum.puppylinux.com/viewtopic.php?p=171842#p171842
- EasyOS 7.4 released featuring gtk2-ng - https://distrowatch.com/?newsid=12874
- Available in the AUR for Archlinux - https://aur.archlinux.org/packages/gtk2-ng-git
- The Lateral Tech Foundation formed - https://lateraltechfoundation.com/
## Highlights
@ -29,7 +34,7 @@ Backed by the **devuanusers.com** community.
- Preserved GTK2 theming, theme engines, input modules and print backends
- Preserved legacy configuration and module lookup behaviour
- Continued focus on performance, low overhead and responsiveness
- Community-driven maintenance backed by devuanusers.com
- Community-driven maintenance backed by devuanusers.com and lateraltechfoundation.com
## Roadmap

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

View file

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="260" height="270" version="1.1">
<defs>
<linearGradient id="L0">
<stop style="stop-color:#fe798e"/>
<stop style="stop-color:#9c2219" offset="1"/>
</linearGradient>
<linearGradient id="L1">
<stop style="stop-color:#bff872"/>
<stop style="stop-color:#7de567" offset="1"/>
</linearGradient>
<linearGradient id="L2">
<stop style="stop-color:#92cbe2"/>
<stop style="stop-color:#7f95fe" offset="1"/>
</linearGradient>
<linearGradient xlink:href="#L2" id="L3" gradientUnits="userSpaceOnUse" gradientTransform="translate(92.2254,-.313709)" x1="-143" y1="207.36218" x2="-129.5" y2="108.86218"/>
<linearGradient xlink:href="#L1" id="L4" gradientUnits="userSpaceOnUse" gradientTransform="translate(92.2254,-.313709)" x1="-133.5" y1="221.86218" x2="-50" y2="279.36218"/>
<linearGradient xlink:href="#L0" id="L5" gradientUnits="userSpaceOnUse" gradientTransform="translate(92.2254,-.313709)" x1="-157.5" y1="222.86218" x2="-247.5" y2="276.86218"/>
</defs>
<g transform="translate(178.992551,-88.576718)">
<path style="fill:url(#L3)" d="M-58.11348,213.41831L -162.26826,151.37974L -37.01785,100.04846L 68.1307,158.15264L -58.11348,213.41831z "/>
<path style="fill:url(#L4)" d="M-51.56037,213.5916L 72.03976,159.30293L 54.30386,283.51375L -62.14067,350.24024L -51.56037,213.5916z "/>
<path style="fill:url(#L5)" d="M-59.56037,347.18826L -164.06037,282.96566L -163.61166,159.3255L -55.18554,215.49255L -59.56037,347.18826z "/>
<path style="fill:#000" d="M-66.27108,352.00632C -69.30467,350.22909 -85.32501,339.74485 -101.87184,328.708C -141.06516,302.56578 -152.91684,294.99749 -161.22644,290.80508C -172.47362,285.13057 -171.42166,291.71277 -171.76785,224.84661C -172.09132,162.36876 -172.8819,151.51349 -166.98072,153.09872C -171.59657,148.70486 -149.89048,141.93362 -115.91158,126.8062C -82.71848,112.02862 -46.04303,97.12968 -37.99045,95.151731C -35.80415,94.614711 -30.58575,96.813551 -10.91381,106.56083C 32.31874,127.98218 67.99593,147.7319 72.54924,152.76325C 73.58759,153.91062 75.03553,154.84937 75.76688,154.84937C 77.84679,154.84937 78.37332,158.95768 77.25844,166.48751C 76.69538,170.29042 72.64193,195.0632 68.25078,221.53813C 63.85962,248.01307 59.96508,272.38204 59.59625,275.69141C 58.29011,287.41076 58.65986,286.97385 40.74281,297.9691C 31.80145,303.4562 9.14236,316.66419 -9.61071,327.3202C -28.36378,337.97622 -47.03613,348.65729 -51.10479,351.05592C -55.17346,353.45455 -59.00931,355.3767 -59.62892,355.32736C -60.24852,355.27802 -63.23749,353.78356 -66.27108,352.00632z M-61.87106,326.08404C -61.53987,317.12117 -60.90739,291.51119 -60.46556,269.17296C -59.4846,219.57813 -59.22374,221.12454 -69.76193,214.06246C -82.68227,205.404 -96.65592,197.35576 -120.42436,184.88302C -133.38604,178.08124 -147.58846,170.35597 -151.98528,167.71576C -157.4594,164.42865 -160.30462,163.24026 -161.01083,163.94598C -162.29568,165.22992 -162.39159,217.12625 -161.17615,253.40053L -160.31016,279.24588L -153.15345,283.38712C -146.97571,286.96188 -111.07469,311.08894 -76.29946,335.03636C -70.50807,339.02452 -65.02796,342.30839 -64.12144,342.33386C -62.68203,342.3743 -62.39695,340.31581 -61.87106,326.08404z M-123.45447,281.63953L -121.92862,231.56652L -140.98255,221.52843L -138.49408,200.85313L -78.16426,229.52961L -79.29283,248.93423L -101.23414,239.89866C -104.02169,251.08704 -104.55187,273.56224 -106.14867,290.70437L -123.45447,281.63953z M-9.61071,316.77116C 34.17351,291.73098 48.95974,282.50651 49.5137,279.88608C 49.76822,278.68213 50.70639,272.73304 51.59851,266.66586C 52.49065,260.59869 56.34489,236.69937 60.1635,213.55627C 66.55191,174.8386 67.87919,164.87776 66.64985,164.87776C 65.35309,164.87776 41.87183,175.43096 11.95031,189.46143C -6.52698,198.1256 -27.06009,207.7061 -33.67883,210.75142C -40.29756,213.79674 -46.27431,216.80609 -46.96048,217.43886C -49.01471,219.33318 -53.67591,334.1607 -51.88774,338.82058C -51.3077,340.33214 -50.58188,340.15475 -45.46483,337.25078C -42.2919,335.45011 -26.15754,326.23429 -9.61071,316.77116z M-31.52427,299.57413C -31.87775,272.99487 -33.95338,246.76003 -28.00983,218.92136L -15.53109,218.69485L -14.46997,256.84948L 28.82336,204.1205L 49.21858,198.81459L 11.17117,250.94644L 46.4177,267.81063L 31.8401,277.19567L -4.08659,261.22054L -17.12774,267.67154L -17.55651,293.33323L -31.52427,299.57413z M-44.98935,205.62376C -42.07793,204.31693 -20.74221,194.22819 2.42335,183.20435C 25.58892,172.18051 47.47586,161.89162 51.06101,160.34015C 60.54302,156.23684 60.93348,155.67356 56.37503,152.674C 49.35425,148.05414 13.69688,129.08139 -11.32169,116.65357L -36.09795,104.34612L -44.41536,107.15536C -56.14763,111.11798 -89.54973,125.04344 -118.35237,137.97996C -148.44864,151.49752 -152.51519,153.54112 -152.51519,155.14816C -152.51519,155.84547 -145.85885,160.0994 -137.72332,164.60135C -111.60287,179.05557 -54.81147,207.96913 -52.51064,207.98472C -51.28536,207.99302 -47.90078,206.93059 -44.98935,205.62376z M-60.75547,189.54567C -75.28072,185.96717 -91.81229,177.57594 -96.0911,171.6097C -99.47879,166.88602 -102.37326,159.22994 -102.37326,154.99297C -102.37326,149.88393 -99.16092,142.63741 -94.96571,138.28271C -89.64934,132.76424 -82.2461,130.42562 -63.03287,128.19542C -43.93665,125.97879 -27.42575,126.6637 -17.57474,130.08117C -8.29082,133.30188 -4.52834,135.30727 -2.61559,138.05436C 2.38083,145.2301 5.93328,151.2196 5.93328,152.46787C 5.93328,154.32106 1.29355,156.06801 -2.01293,155.45979C -3.4339,155.1984 -6.26937,154.71168 -8.31397,154.3782C -11.32445,153.88717 -12.45855,153.01191 -14.27723,149.776C -16.85292,145.19318 -23.60657,140.51818 -30.15247,138.78687C -40.15132,136.14228 -67.5992,138.35316 -76.05306,142.48406C -80.82949,144.81802 -83.39709,149.93235 -84.08312,158.47883C -84.55072,164.304 -84.36299,165.20843 -82.20604,167.52215C -79.28527,170.65521 -71.09215,174.87312 -62.00697,177.92089C -56.94497,179.61901 -54.0594,180.03115 -50.5755,179.55363C -42.46315,178.44171 -41.49161,176.3237 -46.32188,170.28055C -50.48755,165.06888 -51.4992,162.24318 -50.12122,159.66839C -49.15472,157.86249 -48.34815,157.66756 -43.78911,158.13809C -37.32875,158.80486 -23.72903,163.98325 -20.5194,166.99854C -17.69425,169.65263 -17.2471,175.88082 -19.70523,178.33895C -22.5073,181.14102 -34.94771,188.0685 -39.80016,189.52887C -45.45811,191.23166 -53.88454,191.23841 -60.75547,189.54567z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.5 KiB

View file

@ -0,0 +1,20 @@
gtk2-ng.svg is based on File:GTK.svg from Wikimedia Commons.
Source:
https://commons.wikimedia.org/wiki/File:GTK.svg
Original source:
Conversion of Image:GTK.png to SVG using Inkscape.
Author:
Jose Hevia, vectorised by DTR at English Wikipedia.
Commons cleanup by Tene~commonswiki.
License:
Creative Commons Attribution-ShareAlike 3.0 Unported or
GNU Free Documentation License 1.2 or later.
This copy is included under the Creative Commons Attribution-ShareAlike
3.0 Unported license.
No endorsement by the original authors or Wikimedia Commons is implied.

View file

@ -817,6 +817,31 @@ gdk_threads_add_timeout_seconds (guint interval,
}
static gpointer
gdk_atom_copy (gpointer atom)
{
return atom;
}
static void
gdk_atom_free (gpointer atom)
{
/* GdkAtom values are interned and must not be freed. */
}
GType
gdk_atom_get_type (void)
{
static GType our_type = 0;
if (our_type == 0)
our_type = g_boxed_type_register_static (g_intern_static_string ("GdkAtom"),
(GBoxedCopyFunc) gdk_atom_copy,
(GBoxedFreeFunc) gdk_atom_free);
return our_type;
}
const char *
gdk_get_program_class (void)
{

View file

@ -185,8 +185,13 @@ gdk_utf8_to_compound_text
#endif
#if IN_HEADER(__GDK_PROPERTY_H__)
#if IN_FILE(__GDK_PROPERTY_X11_C__)
#if IN_FILE(__GDK_C__)
gdk_atom_get_type G_GNUC_CONST
#endif
#endif
#if IN_HEADER(__GDK_PROPERTY_H__)
#if IN_FILE(__GDK_PROPERTY_X11_C__)
gdk_atom_intern
gdk_atom_intern_static_string
gdk_atom_name

View file

@ -393,31 +393,6 @@ intern_atom (const gchar *atom_name,
return result;
}
static gpointer
gdk_atom_copy (gpointer atom)
{
return atom;
}
static void
gdk_atom_free (gpointer atom)
{
/* GdkAtom values are interned and must not be freed. */
}
GType
gdk_atom_get_type (void)
{
static GType our_type = 0;
if (our_type == 0)
our_type = g_boxed_type_register_static (g_intern_static_string ("GdkAtom"),
(GBoxedCopyFunc) gdk_atom_copy,
(GBoxedFreeFunc) gdk_atom_free);
return our_type;
}
GdkAtom
gdk_atom_intern (const gchar *atom_name,
gboolean only_if_exists)

2
git.mk
View file

@ -8,8 +8,6 @@
# is permitted in any medium without royalty provided the copyright
# notice and this notice are preserved.
#
# The canonical source for this file is https://github.com/behdad/git.mk.
#
# To use in your project, import this file in your git repo's toplevel,
# then do "make -f git.mk". This modifies all Makefile.am files in
# your project to -include git.mk. Remember to add that line to new

View file

@ -1081,7 +1081,7 @@ Gtk_2_0_gir_CFLAGS = \
$(INCLUDES) \
-DGTK_DISABLE_DEPRECATED \
-DGTK_TEXT_USE_INTERNAL_UNSUPPORTED_API
Gtk_2_0_gir_LIBS = $(gtktargetlib)
Gtk_2_0_gir_LIBS = $(gtktargetlib) $(top_builddir)/gdk/$(gdktargetlib)
Gtk_2_0_gir_FILES = \
$(filter-out gtkprivate.h gtkpixdatautils.h gtktextlayout.h gtkmarshal.h, \
$(introspection_files))

View file

@ -5,7 +5,14 @@ if test "x$gtk_all_c_sources" = x; then
exit 1
fi
grep 'IN_FILE' ${srcdir-.}/gtk.symbols | sed 's/.*(//;s/).*//' | grep __ | sort -u > expected-files
{ cd ${srcdir-.}; grep '^ *# *define __' $gtk_all_c_sources; } | sed 's/.*define //;s/ *$//' | sort > actual-files
srcdir=${srcdir-.}
grep 'IN_FILE' "$srcdir/gtk.symbols" | sed 's/^[^(]*(//;s/).*//;s/__GTK_MARSHAL_MARSHAL_C__/__gtk_marshal_MARSHAL_C__/' | grep __ | sort -u > expected-files
{
for file in $gtk_all_c_sources; do
test -f "$file" || file="$srcdir/$file"
grep '^ *# *define __' "$file"
done
} | sed 's/.*define //;s/ *$//;s/__GTK_MARSHAL_MARSHAL_C__/__gtk_marshal_MARSHAL_C__/' | sort > actual-files
diff expected-files actual-files && rm -f expected-files actual-files

View file

@ -710,7 +710,7 @@ gtk_calendar_init (GtkCalendar *calendar)
for (i=0; i<7; i++)
{
#ifndef G_OS_WIN32
tmp_dt = g_date_time_new_utc (2001, 1, i + 1, 12, 0, 0.0);
tmp_dt = g_date_time_new_utc (2001, 1, i + 7, 12, 0, 0.0);
if (tmp_dt)
{
tmp_str = g_date_time_format (tmp_dt, "%a");

View file

@ -454,7 +454,8 @@ gtk_paper_size_get_paper_sizes (gboolean include_custom)
{
GList *list = NULL;
guint i;
#ifdef G_OS_UNIX /* _gtk_load_custom_papers() only on Unix so far */
#ifdef G_OS_UNIX
/* _gtk_load_custom_papers() only on Unix so far */
if (include_custom)
{
GList *page_setups, *l;

View file

@ -652,8 +652,8 @@ gtk-win32-$(GTK_VER)s.lib : $(gtk_OBJECTS)
gtk-query-immodules-$(GTK_VER).exe : queryimmodules.obj
$(CC) $(CFLAGS) -Fe$@ queryimmodules.obj $(GTK_LIBS) $(GLIB_LIBS) $(PANGO_LIBS) $(LDFLAGS)
gtk-update-icon-cache.exe : updateiconcache.obj
$(CC) $(CFLAGS) -Fe$@ updateiconcache.obj $(GDK_PIXBUF_LIBS) $(GLIB_LIBS) $(INTL_LIBS) $(PANGO_LIBS) $(LDFLAGS)
gtk-update-icon-cache.exe : updateiconcache.obj gtkpixdatautils.obj
$(CC) $(CFLAGS) -Fe$@ updateiconcache.obj gtkpixdatautils.obj $(GDK_PIXBUF_LIBS) $(GLIB_LIBS) $(INTL_LIBS) $(PANGO_LIBS) $(LDFLAGS)
gtk-x11-$(GTK_VER).dll : $(gtk_OBJECTS) gtk.def
$(CC) $(CFLAGS) -LD -Fm -Fegtk-x11-$(GTK_VER).dll $(gtk_OBJECTS) ../gdk/gdk-x11-$(GTK_VER).lib $(GDK_PIXBUF_LIBS) $(PANGO_LIBS) $(INTL_LIBS) $(GLIB_LIBS) gdi32.lib user32.lib advapi32.lib $(LDFLAGS) /def:gtk.def