[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
feature/pgtk 19da22e 018/100: Add support for handing the internal borde
From: |
Yuuki Harano |
Subject: |
feature/pgtk 19da22e 018/100: Add support for handing the internal border |
Date: |
Tue, 24 Nov 2020 08:02:28 -0500 (EST) |
branch: feature/pgtk
commit 19da22ed25753d0e90b9cbc2c79b37d0aae67712
Author: Yuuki Harano <masm+github@masm11.me>
Commit: Jeff Walsh <fejfighter@gmail.com>
Add support for handing the internal border
src/pgtkterm.c (pgtk_clear_under_internal_border): remove #if 0
src/pgtkfns.c (x_set_internal_border_width): add clear and fill support
internal-border 対応。
---
src/pgtkfns.c | 2 --
src/pgtkterm.c | 29 +++++++++++++++++++++--------
2 files changed, 21 insertions(+), 10 deletions(-)
diff --git a/src/pgtkfns.c b/src/pgtkfns.c
index b726d1b..3f31c08 100644
--- a/src/pgtkfns.c
+++ b/src/pgtkfns.c
@@ -549,7 +549,6 @@ x_set_tool_bar_lines (struct frame *f, Lisp_Object value,
Lisp_Object oldval)
static void
x_set_internal_border_width (struct frame *f, Lisp_Object arg, Lisp_Object
oldval)
{
-#if 0
int old_width = FRAME_INTERNAL_BORDER_WIDTH (f);
CHECK_TYPE_RANGED_INTEGER (int, arg);
@@ -564,7 +563,6 @@ x_set_internal_border_width (struct frame *f, Lisp_Object
arg, Lisp_Object oldva
adjust_frame_size (f, -1, -1, 3, 0, Qinternal_border_width);
SET_FRAME_GARBAGED (f);
-#endif
}
diff --git a/src/pgtkterm.c b/src/pgtkterm.c
index 1c2f0c9..56a05da 100644
--- a/src/pgtkterm.c
+++ b/src/pgtkterm.c
@@ -4734,19 +4734,32 @@ pgtk_clear_under_internal_border (struct frame *f)
block_input ();
+ struct {
+ int x, y, w, h;
+ } rects[] = {
+ { 0, margin, width, border },
+ { 0, 0, border, height },
+ { width - border, 0, border, height },
+ { 0, height - border, width, border },
+ };
+
if (face)
{
- pgtk_fill_rectangle (f, color, 0, margin, width, border);
- pgtk_fill_rectangle (f, color, 0, 0, border, height);
- pgtk_fill_rectangle (f, color, width - border, 0, border, height);
- pgtk_fill_rectangle (f, color, 0, height - border, width, border);
+ for (int i = 0; i < 4; i++) {
+ int x = rects[i].x;
+ int y = rects[i].y;
+ int w = rects[i].w;
+ int h = rects[i].h;
+ cairo_surface_t *bg = create_background_surface_by_face (f, face,
x, y, w, h);
+ cairo_set_source_surface (cr, bg, x, y);
+ cairo_rectangle (cr, x, y, w, h);
+ cairo_fill (cr);
+ }
}
else
{
- pgtk_clear_area (f, 0, 0, border, height);
- pgtk_clear_area (f, 0, margin, width, border);
- pgtk_clear_area (f, width - border, 0, border, height);
- pgtk_clear_area (f, 0, height - border, width, border);
+ for (int i = 0; i < 4; i++)
+ pgtk_clear_area (f, rects[i].x, rects[i].y, rects[i].w, rects[i].h);
}
unblock_input ();
- feature/pgtk 014d56f 052/100: * src/pgtkterm.c: Remove incorrect mark_object call., (continued)
- feature/pgtk 014d56f 052/100: * src/pgtkterm.c: Remove incorrect mark_object call., Yuuki Harano, 2020/11/24
- feature/pgtk bc35a1e 032/100: Make multipdisplay work by limiting selection while enabed, Yuuki Harano, 2020/11/24
- feature/pgtk d68633b 056/100: * src/pgtkterm.c (pgtk_defined_color): support gtk special colors, Yuuki Harano, 2020/11/24
- feature/pgtk 6957f94 024/100: Add PGTK support for fullscreen, Yuuki Harano, 2020/11/24
- feature/pgtk ae3bb14 029/100: implement restacking and cleanup frame z order, Yuuki Harano, 2020/11/24
- feature/pgtk 49645df 047/100: minimize gtkutil.c differences., Yuuki Harano, 2020/11/24
- feature/pgtk d2a29e8 040/100: emacsclient should use both of DISPLAY and WAYLAND_DISPLAY., Yuuki Harano, 2020/11/24
- feature/pgtk be47e34 077/100: Re-port image drawing code from X, Yuuki Harano, 2020/11/24
- feature/pgtk 0b69b73 085/100: Fix crash when child frame updates toolbar, Yuuki Harano, 2020/11/24
- feature/pgtk 1d549fa 015/100: Add support for make-frame-(in)visible, Yuuki Harano, 2020/11/24
- feature/pgtk 19da22e 018/100: Add support for handing the internal border,
Yuuki Harano <=
- feature/pgtk e021e23 043/100: End Resize flickering by copying surface rather than just clearing, Yuuki Harano, 2020/11/24
- feature/pgtk fd61a86 030/100: improve some efficiency - simplify draws, Yuuki Harano, 2020/11/24
- feature/pgtk 330a346 012/100: Migrate to Emacs_GC, Yuuki Harano, 2020/11/24
- feature/pgtk b1cc62c 037/100: Add support for Jpeglib, Yuuki Harano, 2020/11/24
- feature/pgtk fe2297c 055/100: * pgtkmenu.c (set_frame_menubar): fix empty menu., Yuuki Harano, 2020/11/24
- feature/pgtk a167e23 057/100: * src/pgtkmenu.c (set_frame_menubar): Suppress gcc warning, Yuuki Harano, 2020/11/24
- feature/pgtk 5a72a07 053/100: * pgtk-win.el: fix compile-time warnings., Yuuki Harano, 2020/11/24
- feature/pgtk bb6862d 089/100: Fix crash on drag and drop, Yuuki Harano, 2020/11/24
- feature/pgtk e405404 095/100: Fix startup failure on svg-unsupported environments, Yuuki Harano, 2020/11/24