├── .github
└── workflows
│ └── continuous-build.yml
├── .gitignore
├── .idea
├── .gitignore
├── .name
├── AndroidProjectSystem.xml
├── compiler.xml
├── deploymentTargetSelector.xml
├── inspectionProfiles
│ └── Project_Default.xml
├── kotlinc.xml
├── misc.xml
└── runConfigurations.xml
├── LICENSE
├── README.md
├── art
├── screenshot_arbitrary_shapes.png
├── screenshot_default_shapes.png
├── screenshot_shapes.png
└── screenshot_styles_and_justification.png
├── combo-breaker-demo
├── .gitignore
├── build.gradle
├── proguard-rules.pro
└── src
│ └── main
│ ├── AndroidManifest.xml
│ ├── java
│ └── dev
│ │ └── romainguy
│ │ └── text
│ │ └── combobreaker
│ │ └── demo
│ │ ├── ComboBreakerActivity.kt
│ │ └── ui
│ │ └── theme
│ │ ├── Color.kt
│ │ ├── Shape.kt
│ │ ├── Theme.kt
│ │ └── Type.kt
│ └── res
│ ├── drawable-v24
│ └── ic_launcher_foreground.xml
│ ├── drawable-xxhdpi
│ ├── badge.png
│ ├── hearts.png
│ ├── landscape.jpg
│ ├── letter_t.png
│ └── microphone.png
│ ├── drawable
│ ├── baseline_line_style_24.xml
│ └── ic_launcher_background.xml
│ ├── mipmap-anydpi-v26
│ ├── ic_launcher.xml
│ └── ic_launcher_round.xml
│ └── values
│ ├── strings.xml
│ └── themes.xml
├── combo-breaker-material3
├── .gitignore
├── build.gradle
├── gradle.properties
└── src
│ └── main
│ ├── AndroidManifest.xml
│ └── java
│ └── dev
│ └── romainguy
│ └── text
│ └── combobreaker
│ └── material3
│ └── TextFlow.kt
├── combo-breaker
├── .gitignore
├── build.gradle
├── gradle.properties
└── src
│ └── main
│ ├── AndroidManifest.xml
│ └── java
│ └── dev
│ └── romainguy
│ └── text
│ └── combobreaker
│ ├── BasicTextFlow.kt
│ ├── Clipping.kt
│ ├── FlowShape.kt
│ ├── FlowSlots.kt
│ ├── Geometry.kt
│ ├── IntervalTree.kt
│ ├── Locale.kt
│ ├── MeasuredText.kt
│ ├── TextLayout.kt
│ ├── TextPaint.kt
│ └── Utilities.kt
├── gradle.properties
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle
/.github/workflows/continuous-build.yml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/.github/workflows/continuous-build.yml
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/.gitignore
--------------------------------------------------------------------------------
/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 |
--------------------------------------------------------------------------------
/.idea/.name:
--------------------------------------------------------------------------------
1 | Combo Breaker
--------------------------------------------------------------------------------
/.idea/AndroidProjectSystem.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/.idea/AndroidProjectSystem.xml
--------------------------------------------------------------------------------
/.idea/compiler.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/.idea/compiler.xml
--------------------------------------------------------------------------------
/.idea/deploymentTargetSelector.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/.idea/deploymentTargetSelector.xml
--------------------------------------------------------------------------------
/.idea/inspectionProfiles/Project_Default.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/.idea/inspectionProfiles/Project_Default.xml
--------------------------------------------------------------------------------
/.idea/kotlinc.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/.idea/kotlinc.xml
--------------------------------------------------------------------------------
/.idea/misc.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/.idea/misc.xml
--------------------------------------------------------------------------------
/.idea/runConfigurations.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/.idea/runConfigurations.xml
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/LICENSE
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/README.md
--------------------------------------------------------------------------------
/art/screenshot_arbitrary_shapes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/art/screenshot_arbitrary_shapes.png
--------------------------------------------------------------------------------
/art/screenshot_default_shapes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/art/screenshot_default_shapes.png
--------------------------------------------------------------------------------
/art/screenshot_shapes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/art/screenshot_shapes.png
--------------------------------------------------------------------------------
/art/screenshot_styles_and_justification.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/art/screenshot_styles_and_justification.png
--------------------------------------------------------------------------------
/combo-breaker-demo/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/combo-breaker-demo/build.gradle:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/build.gradle
--------------------------------------------------------------------------------
/combo-breaker-demo/proguard-rules.pro:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/proguard-rules.pro
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/AndroidManifest.xml
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/java/dev/romainguy/text/combobreaker/demo/ComboBreakerActivity.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/java/dev/romainguy/text/combobreaker/demo/ComboBreakerActivity.kt
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/java/dev/romainguy/text/combobreaker/demo/ui/theme/Color.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/java/dev/romainguy/text/combobreaker/demo/ui/theme/Color.kt
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/java/dev/romainguy/text/combobreaker/demo/ui/theme/Shape.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/java/dev/romainguy/text/combobreaker/demo/ui/theme/Shape.kt
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/java/dev/romainguy/text/combobreaker/demo/ui/theme/Theme.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/java/dev/romainguy/text/combobreaker/demo/ui/theme/Theme.kt
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/java/dev/romainguy/text/combobreaker/demo/ui/theme/Type.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/java/dev/romainguy/text/combobreaker/demo/ui/theme/Type.kt
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/drawable-v24/ic_launcher_foreground.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/drawable-v24/ic_launcher_foreground.xml
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/drawable-xxhdpi/badge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/drawable-xxhdpi/badge.png
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/drawable-xxhdpi/hearts.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/drawable-xxhdpi/hearts.png
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/drawable-xxhdpi/landscape.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/drawable-xxhdpi/landscape.jpg
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/drawable-xxhdpi/letter_t.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/drawable-xxhdpi/letter_t.png
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/drawable-xxhdpi/microphone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/drawable-xxhdpi/microphone.png
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/drawable/baseline_line_style_24.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/drawable/baseline_line_style_24.xml
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/drawable/ic_launcher_background.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/drawable/ic_launcher_background.xml
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/values/strings.xml
--------------------------------------------------------------------------------
/combo-breaker-demo/src/main/res/values/themes.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-demo/src/main/res/values/themes.xml
--------------------------------------------------------------------------------
/combo-breaker-material3/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/combo-breaker-material3/build.gradle:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-material3/build.gradle
--------------------------------------------------------------------------------
/combo-breaker-material3/gradle.properties:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-material3/gradle.properties
--------------------------------------------------------------------------------
/combo-breaker-material3/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/combo-breaker-material3/src/main/java/dev/romainguy/text/combobreaker/material3/TextFlow.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker-material3/src/main/java/dev/romainguy/text/combobreaker/material3/TextFlow.kt
--------------------------------------------------------------------------------
/combo-breaker/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/combo-breaker/build.gradle:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/build.gradle
--------------------------------------------------------------------------------
/combo-breaker/gradle.properties:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/gradle.properties
--------------------------------------------------------------------------------
/combo-breaker/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/BasicTextFlow.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/BasicTextFlow.kt
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/Clipping.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/Clipping.kt
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/FlowShape.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/FlowShape.kt
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/FlowSlots.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/FlowSlots.kt
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/Geometry.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/Geometry.kt
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/IntervalTree.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/IntervalTree.kt
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/Locale.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/Locale.kt
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/MeasuredText.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/MeasuredText.kt
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/TextLayout.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/TextLayout.kt
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/TextPaint.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/TextPaint.kt
--------------------------------------------------------------------------------
/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/Utilities.kt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/combo-breaker/src/main/java/dev/romainguy/text/combobreaker/Utilities.kt
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/gradle.properties
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/gradle/wrapper/gradle-wrapper.properties
--------------------------------------------------------------------------------
/gradlew:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/gradlew
--------------------------------------------------------------------------------
/gradlew.bat:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/gradlew.bat
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/romainguy/combo-breaker/HEAD/settings.gradle
--------------------------------------------------------------------------------