summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--framebuffer/Makefile.target1
-rw-r--r--framebuffer/fbtk/osk.c20
-rw-r--r--framebuffer/gui.c10
-rw-r--r--framebuffer/image_data.h2
-rw-r--r--framebuffer/res/icons/osk.pngbin0 -> 262 bytes
5 files changed, 21 insertions, 12 deletions
diff --git a/framebuffer/Makefile.target b/framebuffer/Makefile.target
index 8cca12060..71f7fc2ce 100644
--- a/framebuffer/Makefile.target
+++ b/framebuffer/Makefile.target
@@ -95,6 +95,7 @@ FB_IMAGE_scrollr := framebuffer/res/icons/scrollr.png
FB_IMAGE_scrollu := framebuffer/res/icons/scrollu.png
FB_IMAGE_scrolld := framebuffer/res/icons/scrolld.png
+FB_IMAGE_osk_image := framebuffer/res/icons/osk.png
FB_IMAGE_pointer_image := framebuffer/res/pointers/default.png
FB_IMAGE_hand_image := framebuffer/res/pointers/point.png
diff --git a/framebuffer/fbtk/osk.c b/framebuffer/fbtk/osk.c
index 02c9e4510..1d57f157f 100644
--- a/framebuffer/fbtk/osk.c
+++ b/framebuffer/fbtk/osk.c
@@ -173,17 +173,15 @@ fbtk_enable_oskb(fbtk_widget_t *fbtk)
fbtk_set_text(widget, kbdbase[kloop].t);
}
- widget = fbtk_create_text_button(osk,
- fbtk_get_width(osk) - furniture_width,
- fbtk_get_height(osk) - furniture_width,
- furniture_width,
- furniture_width,
- FB_FRAME_COLOUR,
- FB_COLOUR_BLACK,
- osk_close,
- NULL);
- fbtk_set_text(widget, "\xe2\x8c\xa8");
-
+ widget = fbtk_create_button(osk,
+ fbtk_get_width(osk) - furniture_width,
+ fbtk_get_height(osk) - furniture_width,
+ furniture_width,
+ furniture_width,
+ FB_FRAME_COLOUR,
+ &osk_image,
+ osk_close,
+ NULL);
}
/* exported function documented in fbtk.h */
diff --git a/framebuffer/gui.c b/framebuffer/gui.c
index e33df383f..3bcc1be57 100644
--- a/framebuffer/gui.c
+++ b/framebuffer/gui.c
@@ -1377,7 +1377,15 @@ create_normal_browser_window(struct gui_window *gw, int furniture_width)
FB_FRAME_COLOUR, FB_COLOUR_BLACK,
fb_osk_click,
NULL);
- fbtk_set_text(widget, "\xe2\x8c\xa8");
+ widget = fbtk_create_button(gw->window,
+ fbtk_get_width(gw->window) - furniture_width,
+ fbtk_get_height(gw->window) - furniture_width,
+ furniture_width,
+ furniture_width,
+ FB_FRAME_COLOUR,
+ &osk_image,
+ fb_osk_click,
+ NULL);
} else {
widget = fbtk_create_fill(gw->window,
fbtk_get_width(gw->window) - furniture_width,
diff --git a/framebuffer/image_data.h b/framebuffer/image_data.h
index a6d8b6a17..cf349f59a 100644
--- a/framebuffer/image_data.h
+++ b/framebuffer/image_data.h
@@ -38,6 +38,8 @@ extern struct fbtk_bitmap scrollr;
extern struct fbtk_bitmap scrollu;
extern struct fbtk_bitmap scrolld;
+extern struct fbtk_bitmap osk_image;
+
extern struct fbtk_bitmap pointer_image;
extern struct fbtk_bitmap hand_image;
extern struct fbtk_bitmap caret_image;
diff --git a/framebuffer/res/icons/osk.png b/framebuffer/res/icons/osk.png
new file mode 100644
index 000000000..1e64fed01
--- /dev/null
+++ b/framebuffer/res/icons/osk.png
Binary files differ