Commit Graph

2867 Commits

Author SHA1 Message Date
Tom Hacohen 99a7eff130 Evas bidi + font-engine + everything affected: Changed Evas_BiDi_Props to only include the direction of the text and reverse when needed. We don't need to do full processing at this stage, because we should have split to bidi runs before.
SVN revision: 56443
2011-01-30 10:35:17 +00:00
Tom Hacohen e4b4cf3344 Evas font-engine: suppress warnings when BiDi is disabled.
SVN revision: 56442
2011-01-30 10:35:10 +00:00
Tom Hacohen b1d9298e81 Evas bidi: Fixed the BiDi functions to accept paragraph props and not bidi props.
SVN revision: 56441
2011-01-30 10:35:04 +00:00
Tom Hacohen f6b1bcd0b6 Evas: Added harfbuzz detection (it's optional, just like fribidi).
SVN revision: 56440
2011-01-30 10:34:56 +00:00
Tom Hacohen 109886f436 Evas font-engine: Fixed an issue with last_up_to_pos failing sometimes when it shouldn't.
Fixed a documentation error.

SVN revision: 56439
2011-01-30 10:34:49 +00:00
Tom Hacohen ca2a3eb5a6 Evas font-engine: remove an usued variable in the font drawing functions.
SVN revision: 56438
2011-01-30 10:34:42 +00:00
Tom Hacohen 6dba792f46 Evas font-engine: Change EVAS_FONT_WALK_TEXT_* functions to advance pen_x at the end of the loop (so a break won't advance it, but a clean finish will) and removed the checking if a diacritic using and advancement hack (that only worked only with specific fonts anyway) so we'll be able to start working with Harfbuzz.
SVN revision: 56437
2011-01-30 10:34:36 +00:00
Tom Hacohen a089d061b8 Evas textblock: Fixed docs and naming of vars in the function header.
SVN revision: 56436
2011-01-30 10:34:29 +00:00
Tom Hacohen ce97927d9a Evas textblock: Fixed usage of width instead of advance which caused issues in some cases.
SVN revision: 56435
2011-01-30 10:34:23 +00:00
Tom Hacohen b6363c7657 Evas textblock: Use pen position for cursors, selections and etc as this is exactly what pen is for.
SVN revision: 56434
2011-01-30 10:34:18 +00:00
Tom Hacohen 35847d3c88 Evas textblock: Added evas_textblock_cursor_pen_geometry_get.
SVN revision: 56433
2011-01-30 10:34:13 +00:00
Tom Hacohen 952ba44f0b Evas font engine: Added evas_common_font_query_pen_coords.
SVN revision: 56432
2011-01-30 10:34:07 +00:00
Tom Hacohen 3d6ca9eca9 Evas font engine: The position of the NULL returned from coords should depend on query_advance, not query_size.
SVN revision: 56431
2011-01-30 10:33:57 +00:00
Tom Hacohen 8d56aef16a Evas textblock: Advancement within a line should be according to advance size, and not width.
SVN revision: 56430
2011-01-30 10:33:50 +00:00
Tom Hacohen 509e7bed98 Evas font-engine: handle invisible chars in font query.
SVN revision: 56429
2011-01-30 10:33:43 +00:00
Tom Hacohen 74b26fec2e Evas textblock: Removed the adjusting according to inset from textblock as it happens in font_draw/query.
SVN revision: 56428
2011-01-30 10:33:37 +00:00
Tom Hacohen 039fd390a7 Evas font engine: Fixed query_size and query advance.
SVN revision: 56427
2011-01-30 10:33:32 +00:00
Tom Hacohen 34d5f9141d Evas font engine: Merge text walking to a couple of macros, this is more consistent, and the code is smaller and easier to handle.
SVN revision: 56426
2011-01-30 10:33:24 +00:00
Tom Hacohen 30c9492e8b Evas textblock: Added advancement to items. This simplifies the code, fixes issues in selection and may be useful in the future with format items with different advancement and width.
SVN revision: 56425
2011-01-30 10:33:19 +00:00
Tom Hacohen d7c2187c1f Evas font engine: Added skipping of invisible chars to the font drawing function - this means we can't draw them until we add a specil "draw inivisble" mode.
SVN revision: 56424
2011-01-30 10:33:14 +00:00
Tom Hacohen b9c4dbb744 Evas textblock: Fixed geometry get for formats as well.
SVN revision: 56423
2011-01-30 10:33:06 +00:00
Tom Hacohen 82a7ee8ee0 Evas textblock: Added bidi properties to the shared info between format and text items because both are bidi-relevant.
SVN revision: 56422
2011-01-30 10:33:01 +00:00
Tom Hacohen 3c6c735b83 Evas textblock: Fixed a typo and explanation in a comment.
SVN revision: 56421
2011-01-30 10:32:55 +00:00
Tom Hacohen 4aaa8df5fe Evas textblock: Fixed a couple of cases where a geometry of a visible format item would have been returned although it shouldn't have.
SVN revision: 56420
2011-01-30 10:32:50 +00:00
Tom Hacohen 81616cec5d Evas textblock and font engine: Fixed cursor position to be at the end of the current item, and not the end of the line, this looks nicer in bidi strings.
Fixed querying char coords to return the current position of the NULL according to the text's alignment, not the paragraph's.

SVN revision: 56419
2011-01-30 10:32:45 +00:00
Tom Hacohen ab1a4f0a77 Evas textblock: Fixed selection drawing with multiline mixed ltr/rtl.
SVN revision: 56418
2011-01-30 10:32:39 +00:00
Tom Hacohen 82d4acc36a Evas textblock: Fixed a couple of issues with range_geometry_get (a seg if the textblock is empty and drawing glitches).
SVN revision: 56417
2011-01-30 10:32:33 +00:00
Tom Hacohen 06957098c6 Evas textblock: Fixed range geometry get in some cases involving rtl.
SVN revision: 56416
2011-01-30 10:32:27 +00:00
Tom Hacohen 9f36a734b2 Evas textblock: Made selection rtl friendly. There are still minor issues with rectangle positioning (1px off sometimes) but this is better than before.
SVN revision: 56415
2011-01-30 10:32:15 +00:00
Tom Hacohen 62840fe30b Evas textblock: Fixed evas_textblock_cursor_geometry_get with the cursor type: EVAS_TEXTBLOCK_CURSOR_BEFORE.
SVN revision: 56414
2011-01-30 10:32:09 +00:00
Tom Hacohen c6c3ab41e8 Evas textblock: Merged drawing backgrounds, strikethroughs and underlines into one shared format.
SVN revision: 56413
2011-01-30 10:32:03 +00:00
Tom Hacohen 664478cc55 Evas textblock: Since we now track text pos for format items as well as text items, we can (and did) merge _find_layout_item_line_match and _find_layout_format_item_line_match and obsolete the latter.
SVN revision: 56412
2011-01-30 10:31:58 +00:00
Tom Hacohen aa6849b76e Evas textblock: Shape per string and not per item. I.e shaping across wrapping will also work now.
SVN revision: 56411
2011-01-30 10:31:51 +00:00
Tom Hacohen 53123a7445 Evas textblock: Added a segfault fix in case (shouldn't happen) it isn't found.
SVN revision: 56410
2011-01-30 10:31:45 +00:00
Tom Hacohen 4dede084eb Evas textblock: Adjusted some local macros a bit so they'll enforce our wanted usage of ';'.
SVN revision: 56409
2011-01-30 10:31:40 +00:00
Tom Hacohen 9ffa06fbf6 Evas textblock: Adjusted text drawing a bit, a fix to the previous commit.
SVN revision: 56408
2011-01-30 10:31:33 +00:00
Tom Hacohen f1230b5f36 Evas textblock: Fixed text drawing (with all of it's features, including background, underlines and etc.). Also simplified it a bit.
SVN revision: 56407
2011-01-30 10:31:28 +00:00
Tom Hacohen 4dd2bd2a33 Evas textblock: created _find_layout_item_match that finds the wanted item and line for both texts and formats and with some special case handling.
Essentially combined code that was just copied around.

SVN revision: 56406
2011-01-30 10:31:22 +00:00
Tom Hacohen 52b44130d9 Evas textblock: format items and text items are now in the same list and share a lot of info.
SVN revision: 56405
2011-01-30 10:31:16 +00:00
Tom Hacohen a92826ae5e Evas textblock: Fixed mixed format and text item reordering.
SVN revision: 56404
2011-01-30 10:31:08 +00:00
Carsten Haitzler 7d8b4f6f68 can break pre render fn earlier if not visible.
SVN revision: 56366
2011-01-29 05:25:25 +00:00
Carsten Haitzler dd02ec770c use mempool for evas objects. hopefully less fragmenting and faster
alloc/frees.



SVN revision: 56365
2011-01-29 05:21:20 +00:00
Carsten Haitzler 725e7cd0d7 protect against people providing out-of-bounds u&v coords in map.
SVN revision: 56313
2011-01-27 02:59:49 +00:00
Carsten Haitzler d51568d537 notes for later.
SVN revision: 56305
2011-01-26 09:56:54 +00:00
Carsten Haitzler c472771a84 well neon asm was wrongly documented - and wrong before anyway. it's
disabled for now and uses memcpy. bizarre stuff occurs if i try use it
though.



SVN revision: 56304
2011-01-26 08:45:11 +00:00
Tom Hacohen 80b71b0a05 Evas textblock: fixed in issue with the return value of evas_textblock_cursor_char_next which wasn't always correct.
SVN revision: 56295
2011-01-25 02:56:14 +00:00
ChunEon Park 4208f2445b Fix invalid ref
Patch by: ChunEon Park <chuneon.park@samsung.com>




SVN revision: 56250
2011-01-21 01:01:44 +00:00
Carsten Haitzler ecd007c049 fix slow path in neon - memcpy is actually faster! :)
SVN revision: 56240
2011-01-20 09:33:07 +00:00
Carsten Haitzler 7957334611 fix over-render bug in map/mapbuf and with changed flags! that was
nasty to find!



SVN revision: 56220
2011-01-19 11:59:53 +00:00
Carsten Haitzler 6a5adabb1c prevent fpe (dv by 0)
SVN revision: 56191
2011-01-16 12:04:40 +00:00