Commit graph

117 commits

Author SHA1 Message Date
Frederik Carlier
ba1c582024
Define WINBOOL on non-MinGW platforms (#52)
The Windows SDK declares BOOL as an int.  Objective C defines BOOl as a char.
Those two types clash.  MinGW's implementation of the Windows SDK uses the WINBOOL
type to avoid this clash.  When compiling natively on Windows, we need to manually
define WINBOOL.
MinGW will define _DEF_WINBOOL_ if it has defined WINBOOL so we can use the same trick
here.
See https://github.com/mingw-w64/mingw-w64/blob/master/mingw-w64-headers/include/ntdef.h#L355
2024-09-17 21:19:25 +02:00
Frederik Carlier
6e05e1e65e
Support building natively on Windows (#51)
When building for Windows using a native toolchain (i.e. not MinGW or MSYS), `<unistd.h>` is not available.  Include `<io.h>` instead and define `strcasecmp`.
2024-09-14 00:23:01 +02:00
rfm
be85eb8ae6 add postscript pasteboard type 2024-03-07 09:50:42 +00:00
rfm
085082a6cc Add URL/URI-list support (without insisting on trailing cr-lf) 2024-03-06 20:47:04 +00:00
rfm
0d60ea2935 add html clipboard support 2024-03-06 20:39:29 +00:00
rfm
4fea5f4dae Add pdf support 2024-03-06 19:04:12 +00:00
Riccardo Mottola
c787d26af2 PNG support in copy and paste; NSPasteboardTypePNG XG_MIME_PNG 2024-03-05 18:00:30 +01:00
rfm
707c5239e3 Improve debug loging showing method entry/exit informmation 2024-03-05 12:48:21 +00:00
rfm
b8933e4610 Add support for text/plain;charset=utf8 and improve debug logging for available types 2024-03-05 11:36:45 +00:00
rfm
145ee71f5c iimprove formatting 2024-03-04 21:36:05 +00:00
rfm
6a221b4dc7 Report all available types in debug 2024-03-04 21:21:45 +00:00
rfm
e66906ef38 Optimisation for reading large properties: avoid memory reallocation and copying data. 2024-03-01 19:29:01 +00:00
rfm
f6707b897a Merge branch 'master' of ssh://github.com/gnustep/libs-back 2024-03-01 18:54:34 +00:00
Riccardo Mottola
9c31a7e016 debug which types are found available 2024-02-29 22:41:14 +01:00
rfm
ae6529e24f Add some debug for target types sent to X 2024-02-27 10:23:22 +00:00
rfm
bfbe4d8b57 Clean up new Incremental class and add mechanism to cancel old operations. 2024-02-27 05:36:10 +00:00
rfm
daf081b888 Rewrite code providing X selection property value using INCR. 2024-02-26 21:24:11 +00:00
rfm
a0a45faaea Add a lot of debug and rewrite to support sending using the INCR protocol 2024-02-26 17:07:39 +00:00
rfm
0a32e7284e fix minor leak and avoid inefficient memory reallocation with long properties. 2024-02-25 10:20:43 +00:00
rfm
d8c05939b4 fix leaks in last update 2024-02-20 08:19:01 +00:00
rfm
e781a3ae03 reduce x library traffic and memory footprint during large transfers 2024-02-19 22:06:55 +00:00
rfm
85bad5ded7 added more logging 2024-02-19 21:17:27 +00:00
Riccardo Mottola
d0a2376e92 try to make logging a bit more verbose 2024-02-19 22:12:26 +01:00
Riccardo Mottola
ecfb42a893 Delete property on begin and at every Notify to start and continue transfer of INCR. 2022-02-22 00:09:00 +01:00
Riccardo Mottola
9a46ea9160 If the Library directory is not found, create one for the user. 2020-06-18 07:58:01 +00:00
Patrick Georgi
aebcc4b7fe Fix a bunch of typos
Taken from the Debian "gnustep-back" package sources, which attribute
these changes to:

Author: Eric Heintzmann <heintzmann.eric@free.fr>
Author: Yavor Doganov <yavor@gnu.org>
2020-05-29 08:21:55 +02:00
fredkiefer
f41d8b26fa Commit patch by Yavor Doganov to not build font_cacher when the xlib backend wont use it.
Deprecate art, xlib and xdps.
2018-02-25 18:53:42 +01:00
Fred Kiefer
8feb7e4701 * Tools/gpbs.m: Revert last change and correct the implementation
and usage of gpbs_log.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@37852 72102866-910b-0410-8b05-ffd578937521
2014-05-06 22:22:34 +00:00
Ivan Vučica
e4dd0c00e2 In gpbs, removed barely used, overly complex and almost certainly buggy logging code.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@37842 72102866-910b-0410-8b05-ffd578937521
2014-05-06 02:04:54 +00:00
Fred Kiefer
b624d4a9a9 * Tools/xpbs.m (-xProvideSelection:): Leave enough space for all
possible types.
* Source/x11/XGDragView.m: Simplify D&D window detection code.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@37457 72102866-910b-0410-8b05-ffd578937521
2013-12-13 12:58:09 +00:00
Richard Frith-MacDonald
2fc0d26b47 fix order of use of library and header directories
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@36837 72102866-910b-0410-8b05-ffd578937521
2013-07-04 16:44:28 +00:00
Gregory John Casamento
245f0a2a14 * Tools/win32pbs.m: (+ownerByOsPb:) compare against name
instead of pasteboard object to prevent condition where
	paste works only once as observed on Windows.
	(MainWindowProc) Add code to handle WM_RENDERALLFORMATS as documented
	on MSDN here: http://msdn.microsoft.com/en-us/library/windows/desktop/ms649029(v=vs.85).aspx



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@35933 72102866-910b-0410-8b05-ffd578937521
2013-01-05 06:02:33 +00:00
Richard Frith-MacDonald
1f64ded0ca simplificatons and more debug
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34751 72102866-910b-0410-8b05-ffd578937521
2012-02-14 18:29:51 +00:00
Richard Frith-MacDonald
4bbdea60da fix failure to call super description
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34748 72102866-910b-0410-8b05-ffd578937521
2012-02-08 21:55:43 +00:00
Richard Frith-MacDonald
d7d02b2124 add a little debug
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@34743 72102866-910b-0410-8b05-ffd578937521
2012-02-08 11:00:34 +00:00
Eric Wasylishen
ae35622d78 * Tools/xpbs.m: Add some more comments
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33709 72102866-910b-0410-8b05-ffd578937521
2011-08-07 21:49:43 +00:00
Eric Wasylishen
7b16c6e465 * configure.ac: Test for Xfixes
* configure: Regenerate
* config.h.in: Regenerate
* Tools/xpbs.m: If Xfixes is available, use it to receive notifications when the
owner of an X11 selection changes.

In the future we should invalidate the list of cached pasteboard types when this
happens, so, e.g. copying text from gnome-terminal, the general pasteboard will only
have the text type, but subsequently copying text from OpenOffice.org, the general
pasteboard will have plain text and RTF types (currently we don't do this, so
you can't paste RTF contents unless it is in the clipboard when gpbs starts.)

The above problem is also why DND from X to GNUstep doesn't work - the dragging
pasteboard types are never updated.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33708 72102866-910b-0410-8b05-ffd578937521
2011-08-07 21:38:42 +00:00
Eric Wasylishen
624f34ea4f * Tools/xpbs.m: Get copy and paste of rich text from OpenOffice.org
to Ink working.

- OOo uses the MIME type "text/richtext", so make that another alias for RTF
- Fix an obscure bug in measuring the size of the return buffer of
XGetWindowProperty. When an array of Atom's is returned xlib will claim
that they are 32-bit when in fact they may be 64-bit. This was causing
xpbs to miss half of the available types for a clipboard on 64-bit systems.
- Don't use 'True' for the delete paramater of XGetWindowProperty. I'm not sure
why we were deleting window properties before. gtk doesn't do that.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33695 72102866-910b-0410-8b05-ffd578937521
2011-08-05 00:13:25 +00:00
Fred Kiefer
a547222bf6 Add include needed for Cygwin.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@33544 72102866-910b-0410-8b05-ffd578937521
2011-07-14 06:53:52 +00:00
Fred Kiefer
0f82f1a833 Fixes warnings reported by clang.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32823 72102866-910b-0410-8b05-ffd578937521
2011-04-09 17:10:49 +00:00
Fred Kiefer
3057ab99b9 * Tools/xpbs.m (-pasteboard:provideDataForType:, -availableTypes)
(-xSelectionNotify:): Better handling of plain text data types.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32694 72102866-910b-0410-8b05-ffd578937521
2011-03-23 19:44:46 +00:00
Wolfgang Lux
2e9160fd9e Fix race condition where gpbs could time out waiting for a property
change notification from the X server, which is already present in the
X event queue.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@32457 72102866-910b-0410-8b05-ffd578937521
2011-03-05 14:40:22 +00:00
Fred Kiefer
82789ff26e Fixed problems found by sttic code analyser.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@31326 72102866-910b-0410-8b05-ffd578937521
2010-09-11 14:00:35 +00:00
Nicola Pero
959b852c71 Minor tidyups to back makefiles; removed references to GNUmakefile.local (totally obsolete) and minor fix for uninstalling
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29558 72102866-910b-0410-8b05-ffd578937521
2010-02-11 18:28:58 +00:00
Fred Kiefer
cb376955bc Add missing comma after name of selection atom.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@29270 72102866-910b-0410-8b05-ffd578937521
2010-01-12 21:28:01 +00:00
Nicola Pero
39076b64a9 Removed GNUSTEP_CORE_SOFTWARE=YES from makefiles and instead set PACKAGE_NAME=gnustep-back
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27349 72102866-910b-0410-8b05-ffd578937521
2008-12-19 13:05:05 +00:00
Nicola Pero
417a0e2cbf Set GNUSTEP_CORE_SOFTWARE to YES so that gnustep-back is installed by default in SYSTEM if gnustep-make has been configured with --disable-packages
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27335 72102866-910b-0410-8b05-ffd578937521
2008-12-18 18:51:49 +00:00
Richard Frith-MacDonald
cc3aa3610d remove some unnecessary code
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27321 72102866-910b-0410-8b05-ffd578937521
2008-12-17 09:11:22 +00:00
Richard Frith-MacDonald
aeddc7b908 Fix #24671
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27192 72102866-910b-0410-8b05-ffd578937521
2008-12-02 22:51:34 +00:00
Richard Frith-MacDonald
c1a929d9ad add keepalive
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@27110 72102866-910b-0410-8b05-ffd578937521
2008-11-21 09:47:34 +00:00