summaryrefslogtreecommitdiff
path: root/src/drivers/Android/Fl_Android_Graphics_Driver.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'src/drivers/Android/Fl_Android_Graphics_Driver.cxx')
-rw-r--r--src/drivers/Android/Fl_Android_Graphics_Driver.cxx26
1 files changed, 24 insertions, 2 deletions
diff --git a/src/drivers/Android/Fl_Android_Graphics_Driver.cxx b/src/drivers/Android/Fl_Android_Graphics_Driver.cxx
index 1df52462a..2a0b62cc8 100644
--- a/src/drivers/Android/Fl_Android_Graphics_Driver.cxx
+++ b/src/drivers/Android/Fl_Android_Graphics_Driver.cxx
@@ -55,10 +55,32 @@ static uint16_t make565(Fl_Color crgba)
void Fl_Android_Graphics_Driver::rectf_unscaled(float x, float y, float w, float h) {
Fl_Android_Application::log_w("rectf %g %g %g %g", x, y, w, h);
- Fl_Clip_Rect r(x, y, w, h);
- if (r.intersect_with(&pClipRect)) {
+ Fl_Rect_Region r(x, y, w, h);
+ if (r.intersect_with(&pWindowRegion)) {
rectf_unclipped(r.x(), r.y(), r.w(), r.h());
}
+
+ /*
+ * rectf(x, y, w, h) {
+ * rectf(complex_window_region, drawing_rect(x, y, w, h))
+ * }
+ *
+ * rectf( complexRgn, drawRgn) {
+ * // B: start of iterator
+ * if (intersect(rect_of_complexRgn, drawRgn) {
+ * if (complexRgn->is_complex() {
+ * rectf(complexRgn->subregion, drawRect);
+ * } else {
+ * rawRect = intersection(rect_of_complexRgn, drawRgn);
+ * rawDrawRect(rawRect);
+ * }
+ * }
+ * // A: recursion
+ * if (complexRgn->next)
+ * rectf(complexRgn->next, drawRgn);
+ * // B: end of iterator
+ * }
+ */
}
void Fl_Android_Graphics_Driver::rectf_unclipped(float x, float y, float w, float h) {