=== 16Deza Table Cell Extras ===
Contributors:      juurokudezain
Tags:              table, block editor, formatting, background color, cell merge
Requires at least: 6.4
Tested up to:      7.0
Stable tag:        1.4.1
Requires PHP:      7.4
License:           GPLv2 or later
License URI:       https://www.gnu.org/licenses/gpl-2.0.html

Adds rich formatting options to Gutenberg table blocks — and optionally to any block.

== Description ==

Table Cell Extras extends the formatting of standard table blocks. It allows for extended inline decoration, td/th conversion of the first column, and customizable cell background colors. Additionally, extended inline formatting can optionally be enabled outside of table blocks.

**Features:**

* **First-column td/th conversion** — Converts first-column cells from `<td>` to `<th>`
* **Transpose table** — Swap rows and columns with just one click
* **Cell merge / split** — Merge adjacent cells (colspan/rowspan) or split merged cells back to individual cells
* **Cell border** — Set borders per row, per column, or per individual cell
* **Cell background color** — Set a background color per row, per column, or per cell
* **Cell alignment** — Adjust vertical alignment (Top / Middle / Bottom) and horizontal alignment (Left / Center / Right) per row, per column, or per cell
* **Cell minimum width** — Set a minimum cell width with a slider (3–20em)
* **Font size** — Adjust font size with a slider (0.75–2.0em)
* **Line height** — Adjust line height with a slider (0.75–2.0, unitless)
* **Row spacing** — Add top and/or bottom margin with a combined slider panel (0–2.0em)
* **Inline block** — Apply `display: inline-block` to selected text
* **Pseudo ordered/unordered list** — Convert selected lines to numbered or bullet-point style (span-based)
* **Horizontal rule** — Insert a horizontal divider at the cursor position

**Why "pseudo" lists?**
Gutenberg's RichText sanitizes block-level elements such as `<ul>`, `<ol>`, and `<li>` inside table cells. This plugin uses `<span>` elements with CSS to achieve the same visual result while remaining fully compatible with Gutenberg.

= Notes =

* This plugin does not register any custom blocks; it extends the existing core/table block.
* No external requests are made.
* Lightweight — a single JS file and a single CSS file.

== Installation ==

1. Upload the `16deza-table-cell-extras` folder to `/wp-content/plugins/`
2. Activate **16Deza Table Cell Extras** from the WordPress admin Plugins screen
3. Open any post or page, insert a Table block, click inside a cell, and use the inline toolbar

== Frequently Asked Questions ==

= Does this work with the classic editor? =
No. This plugin requires the Gutenberg block editor.

= Will it break my existing tables? =
No. It adds formatting tools to existing core/table blocks and does not modify their structure.

= The bullet/number list looks different from a real HTML list. =
Correct — by design. Real `<ul>`/`<ol>` elements are sanitized by Gutenberg inside table cells, so CSS-based pseudo-lists are used instead.

== Screenshots ==

1. Cell Merge, Background, Border
2. The first-column convert to th
3. Swap rows and columns with just one click
4. Extended Inline Formatting
5. Font size
6. Font size adjustable with a slider (0.75–2.0em)
7. Row spacing with combined top/bottom slider panel
8. Pseudo list conversion (bullet/numbered)

== Changelog ==

= 1.4.1 =
* Added: Cell horizontal alignment control (Left / Center / Right, per row / column / cell) — combined with vertical alignment into a single "Cell Alignment" inspector panel
* Added: Line height inline format with slider (0.75–2.0, unitless)
* Changed: "Text size" renamed to "Font size" to align with WordPress core Typography terminology
* Changed: Font size, line height, row spacing, and inline block now share a single unified `<span>` element — no nested spans when multiple properties are applied simultaneously
* Changed: Row spacing redesigned as a single toolbar button with a combined top / bottom slider panel (range 0–2.0em); backward-compatible with existing content
* Changed: Slider panels (Font size, Line height, Row spacing) now have a semi-transparent background so the underlying text remains visible while adjusting values
* Removed: Horizontal scroll feature — WordPress core already applies `overflow-x: auto` to `.wp-block-table`, making this feature redundant

= 1.4.0 =
* Added: Cell merge — merge adjacent cells horizontally (colspan) or vertically (rowspan) by specifying direction and count
* Added: Cell split — split a merged cell (colspan/rowspan) back into individual cells
* Fixed: Cell minimum width setting was not persisted after editor reload

= 1.3.2 =
* Added: Cell border control (per-row, per-column, or per-cell)
* Added: Cell minimum width control with a slider (3–20em)
* Added: Vertical alignment control (per-row, per-column, or per-cell)
* Added: Horizontal scrolling for narrow screens
* Added: Row/column transposition

= 1.3.1 =
* Fixed pseudo-list bullet position for multi-line text (was vertically centered across all lines; now anchored to top of first line).
* Merged editor-only CSS (`build/index.css`) into `assets/css/frontend.css` to reduce HTTP requests.

= 1.3.0 =
* Text size can be adjusted from 0.75em to 2.0em (using the slider panel).
* Added the ability to apply inline-block formatting to selected text.
* Added an option to enable inline formatting tools outside of table blocks.
* Added the ability to convert first-column cells from `<td>` to `<th>`.
* Added the ability to set background colors for individual cells, rows, or columns.

= 1.2.4 =
* Changed Text Domain to match plugin slug (16deza-table-cell-extras)
* Fixed translation file names

= 1.2.3 =
* PHP constant prefix: Changed from "TCX_" to "TCEX_" (4+ characters)

= 1.2.2 =
* Renamed plugin to "16Deza Table Cell Extras" for WordPress.org submission

= 1.2.1 =
* Updated internal code comment in build/index.js

= 1.2.0 =
* Added i18n support (JS strings wrapped with wp.i18n.__)
* Added readme.txt for WordPress.org submission
* Added languages/ folder with .pot, .po, .mo, .json translation files

= 1.1.2 =
* Row spacing: clicking an active button now reopens the slider for adjustment
* Row spacing: added Reset button to the slider panel

= 1.1.1 =
* Row spacing (top) and Row spacing (bottom) buttons with value slider
* Fixed Popover closing on slider interaction
* Added icons for row spacing buttons

= 1.1.0 =
* Row spacing split into Top / Bottom controls with RangeControl slider

= 1.0.8 =
* Changed hr element to span to avoid Gutenberg block validation warning

= 1.0.0 =
* Initial release

== Upgrade Notice ==

= 1.4.0 =
Adds cell merge/split and automatic rowspan/colspan adjustment. Also fixes a bug where the cell minimum width setting was not retained after editor reload.

= 1.2.4 =
Translation files corrected. Please update to ensure Japanese UI works properly.
