Pietro Gagliardi
91bfceaf71
And FINALLY cleaned up all the AAT nonsense. Much saner now.
2017-05-30 14:00:58 -04:00
Pietro Gagliardi
1733c28b52
Added consts to the OpenType implementations.
2017-05-30 09:52:38 -04:00
Pietro Gagliardi
dd54469677
Set up a future system for OS X like we have on GTK+ and moved everything we already have to it. You'll notice we also set up a loader for what we're going to use this for: using OpenType attributes directly on OS X.
2017-05-19 16:40:52 -04:00
Pietro Gagliardi
39cec570d9
And implemented the new features stuff on the GTK+ side.
2017-05-17 23:37:16 -04:00
Pietro Gagliardi
ff4ab7110c
Filled in GTK+ opentype.c. This is gonna suck as much as it does now...
2017-05-17 22:56:55 -04:00
Pietro Gagliardi
676dfb87f2
Started the uiOpenTypeFeatures implementationss, filling in holes in the API.
2017-05-11 10:27:34 -04:00
Pietro Gagliardi
70940e5c06
More TODOs.
2017-02-24 21:43:37 -05:00
Pietro Gagliardi
3d5fbc0880
Checked empty strings on Pango.
2017-02-24 21:42:40 -05:00
Pietro Gagliardi
f6e9da916a
Fixed Unix cursor positioning.
2017-02-24 14:25:16 -05:00
Pietro Gagliardi
0df8346bff
Also removed uiAttributeLangauge for compatibility reasons too. Let's settle all the TODOs now.
2017-02-24 12:12:03 -05:00
Pietro Gagliardi
be56ec3626
Removed the vertical forms attribute. This is a compatiblity nightmare.
2017-02-24 01:23:47 -05:00
Pietro Gagliardi
c111239b0d
More TODOs.
2017-02-20 22:25:49 -05:00
Pietro Gagliardi
75c2c80534
And adding the background attributes. We're done with the Pango one! Now for the Windows one... yay.
2017-02-20 22:24:02 -05:00
Pietro Gagliardi
4ba4e4ba23
More attribute implementation.
2017-02-20 20:41:14 -05:00
Pietro Gagliardi
4a1642cea2
Fixed improper breaks in Unix attribute handling.
2017-02-20 19:51:00 -05:00
Pietro Gagliardi
d4b38cd3b7
And switched attributes on on GTK+. We have a problem with attributes that span bytes.
2017-02-20 19:28:19 -05:00
Pietro Gagliardi
d7a44a5168
Added uiAttribute handling code to the GTK+ backend. Not finished yet; not used yet.
2017-02-20 17:11:52 -05:00
Pietro Gagliardi
ea473a3411
Ugh of course I screwed up the malloc() test. Fixed a crash on GTK+ since I guess OS X malloc() autofills to 0?
2017-02-20 15:14:53 -05:00
Pietro Gagliardi
210c4507ca
Implemented uiDrawTextLayoutParams and alignment on GTK+.
2017-02-11 21:25:41 -05:00
Pietro Gagliardi
1a8f7ad405
Reimplemented uiFontButton on GTK+.
2017-02-11 14:45:58 -05:00
Pietro Gagliardi
b5b0fae052
And implemented uiDrawCaret() on GTK+.
2017-02-10 16:53:08 -05:00
Pietro Gagliardi
b52600d9cd
Preparation for adding uiDrawCaret().
2017-02-10 16:16:43 -05:00
Pietro Gagliardi
0e5be32299
And cleaned up the GTK+ code.
2017-02-10 15:49:36 -05:00
Pietro Gagliardi
d53bc88f50
And filled in the new functions on GTK+. Not quite right yet...
2017-02-08 21:19:49 -05:00
Pietro Gagliardi
01b6a16af6
And handled caret behavior on GTK+.
2017-02-07 19:14:51 -05:00
Pietro Gagliardi
3d8bf01972
And implemented the hit-testing functions on GTK+.
2017-02-06 10:30:26 -05:00
Pietro Gagliardi
c539362c15
Implemented the Pango hit test functions. Now to test.
2017-02-06 10:11:45 -05:00
Pietro Gagliardi
d8316790a0
More notes.
2017-01-21 10:21:39 -05:00
Pietro Gagliardi
87b7d5b4b7
Decided to remove uiDrawTextLayoutByteIndexToGraphemeRect(); the Range one later on handles it. Now we can do the hit testing functions!
2017-01-20 19:34:16 -05:00
Pietro Gagliardi
6ccf436206
Implemented Pango text metrics and expanded the drawtext basic page to draw metrics. Works on both Pango and OS X; DirectWrite comes next.
2017-01-20 16:36:44 -05:00
Pietro Gagliardi
5444f76bd3
Started implementing the new text layout stuff on GTK+. The drawtext example works.
2017-01-17 21:06:45 -05:00
Pietro Gagliardi
3218ba2a43
And migrated the Unix grapheme code for the new attributed string system.
2016-12-03 18:54:19 -05:00
Pietro Gagliardi
dd339699cd
Oops, I forgot to remove the uiImage code from the GTK+ port when splitting uiTable into a branch. Fixed the build for now. Fixes #238 .
2016-11-30 09:21:37 -05:00
Pietro Gagliardi
e3dec183aa
Started the process of splitting the table code into a separate branch.
2016-11-27 17:34:40 -05:00
Pietro Gagliardi
211b11b80f
Fixed a threading issue in uiQueueMain() on GTK+.
2016-10-31 13:38:38 -04:00
Pietro Gagliardi
22caa5e502
Implemented the window drag stuff on GTK+. It works!
2016-10-25 00:34:12 -04:00
Pietro Gagliardi
fc243aed00
Cleaned up debugging code and added the main loop bugfix to the README.
2016-10-24 17:47:23 -04:00
Pietro Gagliardi
0c209a8277
Whoops, bugged that last one bad (yet it worked fine in X11 for some reason????). Fixed.
2016-10-24 15:44:02 -04:00
Pietro Gagliardi
3f1540b84a
And got rid of message pumping in unix/window.c. Woo! Gotta clean it up a bit first though...
2016-10-24 14:39:10 -04:00
Pietro Gagliardi
e17e69f2ad
Let's experiment with making uiWindowSetSize() not require an event loop.
2016-10-23 22:02:07 -04:00
Pietro Gagliardi
57fbf78ef3
More removal.
2016-10-22 19:31:57 -04:00
Pietro Gagliardi
f46edd097b
uiDrawTextWeightUtraBold.
2016-10-21 16:35:46 -04:00
Pietro Gagliardi
3286c9b572
Merge branch 'master' of github.com:andlabs/libui
2016-08-10 22:08:45 -04:00
Neel Chauhan
7324683ba2
Fix "cannot find -ldl" linking error with FreeBSD
2016-08-10 20:37:42 -04:00
Pietro Gagliardi
e20ce4e188
Some TODO resolution.
2016-06-29 19:20:43 -04:00
Pietro Gagliardi
9164e521e2
Changed the button cell renderer on GTK+ to actually work on 3.20. Thanks to baedert in irc.gimp.net/#gtk+ for suggestions. This actually has slightly fewer bugs!
2016-06-29 17:25:05 -04:00
Pietro Gagliardi
4fabbd18cf
Split future symbols into a new file and added one we need to fix our button cell renderer on 3.20.
2016-06-29 15:33:30 -04:00
Pietro Gagliardi
6b0028d084
Added uiTable value setting and events on GTK+.
2016-06-28 22:36:56 -04:00
Pietro Gagliardi
f484f568f6
Finished up and plugged in cellrendererbutton.
2016-06-28 13:09:44 -04:00
Pietro Gagliardi
575f4f3053
Added a button cell renderer. No events yet. Now to test.
2016-06-28 12:00:35 -04:00
Pietro Gagliardi
8b04f2062a
More GTK+ uiTable work.
2016-06-27 19:12:08 -04:00
Pietro Gagliardi
cf3182f4d2
Put images on uiTables. We're going to have to swizzle on OS X after all :(
2016-06-27 16:11:15 -04:00
Pietro Gagliardi
af0dbd3a0e
Fixed a bunch of bugs in GTK+ table.c.
2016-06-27 12:24:14 -04:00
Pietro Gagliardi
40e943eb43
Fixed compile issues. Now to fix other issues. Yay!
2016-06-27 12:01:36 -04:00
Pietro Gagliardi
99a3462eb4
Added GTK+ images. Will hook it up to tables later.
2016-06-27 11:38:11 -04:00
Pietro Gagliardi
f7e5c7dd25
Finished the initial implemenetation of uiTable on GTK+.
2016-06-27 09:30:22 -04:00
Pietro Gagliardi
f354d48bfd
Started the GTK+ implementation of uiTable.
2016-06-26 23:17:34 -04:00
Pietro Gagliardi
2d4f6eb2b8
Stop uiProgressBar pulsing on destroy on GTK+. Fixes #163 .
2016-06-21 12:39:53 -04:00
Pietro Gagliardi
10480db895
Call gtk_widget_destroy() instead of g_object_unref() when destroying uiWindows. Fixes #165 .
2016-06-21 12:15:38 -04:00
Pietro Gagliardi
9656a81c77
Added uiNewVerticalSeparator().
2016-06-17 11:02:17 -04:00
Pietro Gagliardi
fca6edd5a2
More TODOs.
2016-06-17 09:24:15 -04:00
Pietro Gagliardi
ae14542c9a
Improved uiMainSteps().
2016-06-17 09:22:31 -04:00
Pietro Gagliardi
cc4c5f7bd5
Tried to see if we can fix up uiMainSteps() to not need parameters after all. Now to actually apply it.
2016-06-17 09:16:30 -04:00
Pietro Gagliardi
99545e8775
Fixed up the progressbar changes.
2016-06-16 17:43:04 -04:00
Pietro Gagliardi
798061f7f6
Merge pull request #144 from ProtonMail/progress-bar
...
Improves progress bar
2016-06-16 16:44:42 -04:00
Pietro Gagliardi
c001c164f1
Implemented uiMainSteps() on GTK+.
2016-06-16 13:59:35 -04:00
Pietro Gagliardi
256a452fbd
Implemented borderless windows on GTK+.
2016-06-16 11:34:19 -04:00
Pietro Gagliardi
132d925b70
Implemented the fullscreen stuff on GTK+.
2016-06-16 10:03:35 -04:00
Pietro Gagliardi
88bb697bbd
Implemented the new uiWindow stuff on GTK+.
2016-06-16 00:45:23 -04:00
Pietro Gagliardi
48c13c738a
Fixed the GTK+ window code.
2016-06-15 20:45:10 -04:00
emersion
983a53d3c3
Replaces uiProgressBar(Set)Indeterminate() by value=-1
2016-06-15 23:17:23 +02:00
Pietro Gagliardi
f98318fb3a
Started implementing the new uiWindows stuff on GTK+.
2016-06-15 16:45:49 -04:00
emersion
560cca5bc9
Adds uiProgressBar(Set)Indeterminate for unix
2016-06-15 21:51:08 +02:00
emersion
e07a7b3d05
Adds uiProgressBarValue() in unix
2016-06-15 18:51:12 +02:00
Pietro Gagliardi
ac1a515820
Merge pull request #141 from ProtonMail/ui-form-delete
...
Adds uiFormDelete()
2016-06-15 12:00:38 -04:00
emersion
52bd3b2c35
Adds uiFormDelete()
2016-06-14 22:41:37 +02:00
Pietro Gagliardi
6e5cf97623
Tied uiForm label visibility on GTK+ to the visibility of the control. This is the only visibility change needed on GTK+, fortunately.
2016-06-14 11:31:10 -04:00
Pietro Gagliardi
75a8ee9bf9
Removed intmax_t from everything else EXCEPT the Windows code. Now it's time for THAT...
2016-06-13 21:37:50 -04:00
Pietro Gagliardi
864c6c2511
Finished stripping ui.h of intmax.
2016-06-13 21:20:20 -04:00
Pietro Gagliardi
155299cdb9
More intmax_t removal.
2016-06-13 21:11:59 -04:00
Pietro Gagliardi
440635447d
More intmax_t removal.
2016-06-13 21:05:40 -04:00
Pietro Gagliardi
8d48d42201
More intmax_t elminiation.
2016-06-13 20:55:50 -04:00
Pietro Gagliardi
b26354d1e7
Started replacement of intmax_t and uintmax_t with int.
2016-06-13 20:46:11 -04:00
Pietro Gagliardi
41ec54cb47
Started a new controlgallery. Fixed some glitches in OS X uiForm.
2016-06-12 19:08:08 -04:00
Pietro Gagliardi
4b149ddfef
Implemented uiGrid on GTK+.
2016-06-09 18:57:58 -04:00
Pietro Gagliardi
4b2858b53a
Implemented uiForm on GTK+.
2016-06-08 18:19:41 -04:00
Pietro Gagliardi
3e1258cc62
Implemented the new radio button stuff on OS X.
2016-06-06 20:12:17 -04:00
Pietro Gagliardi
5accda32e5
Added new uiRadioButtons functions and implemented them on GTK+. More TODOs.
2016-06-06 18:56:58 -04:00
Pietro Gagliardi
3d5d1408c7
Implemented uiPasswordEntry and uiSearchEntry on GTK+.
2016-06-05 20:54:16 -04:00
Pietro Gagliardi
5c01a8dec3
Re-added the Unix stuff.
2016-06-03 21:14:55 -04:00
Pietro Gagliardi
1903115bbd
Pushed all the build files elsewhere. I'm rewriting the CMakeLists files from scratch.
2016-06-03 00:29:31 -04:00
Pietro Gagliardi
e4a66b786e
Fixed static builds, added GTK+ builds, and cleaned out things in general for cmake.
2016-06-01 20:21:10 -04:00
Pietro Gagliardi
f2e8dab465
Merge pull request #69 from pcwalton/static
...
Add support for static linking.
2016-05-29 04:50:48 -04:00
Pietro Gagliardi
6e94671782
More TODO resolution and LONGTERM relegation.
2016-05-28 21:17:54 -04:00
Patrick Walton
5f1e8fa601
Add support for static linking.
...
Use `make STATIC=1` to build a static library.
Some language ecosystems, like those of Rust, have a convention of
static linking in order to make binaries easier to distribute. In those
environments, this feature helps libui fit in more easily.
In order to prevent internal symbols from linking, we first create an
intermediate object file with `ld -r` and strip private symbols from it
before using `ar` to create the library.
2016-05-28 14:46:02 -07:00
Pietro Gagliardi
0d6dac5c5a
Migrated from GTK+ 3.4 to 3.10 and from OS X 10.7 to 10.8.
2016-05-28 13:06:16 -04:00
mogucpp
01e126f9cc
fix header name
2016-05-26 09:17:34 +08:00
Pietro Gagliardi
5272e749c0
Fixed grapheme stuff on GTK+.
2016-05-25 15:07:32 -04:00
Pietro Gagliardi
ac652f0690
Did most of the work for grapheme cluster boundary based text layout characters on GTK+.
2016-05-25 01:52:53 -04:00
Pietro Gagliardi
ff1971d8d6
More longterming.
2016-05-24 23:13:44 -04:00