[gnome-builder] libide/sourceview: place popover relative to click event
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] libide/sourceview: place popover relative to click event
- Date: Thu, 14 Jul 2022 21:14:21 +0000 (UTC)
commit 28b770833667569c05db747e64a4b010b2108dca
Author: Christian Hergert <chergert redhat com>
Date: Thu Jul 14 14:14:16 2022 -0700
libide/sourceview: place popover relative to click event
Fixes #1708
src/libide/sourceview/ide-source-view.c | 35 ++-------------------------------
1 file changed, 2 insertions(+), 33 deletions(-)
---
diff --git a/src/libide/sourceview/ide-source-view.c b/src/libide/sourceview/ide-source-view.c
index dd69deb36..1442fa952 100644
--- a/src/libide/sourceview/ide-source-view.c
+++ b/src/libide/sourceview/ide-source-view.c
@@ -385,12 +385,6 @@ ide_source_view_menu_popup_action (GtkWidget *widget,
GVariant *param)
{
IdeSourceView *self = (IdeSourceView *)widget;
- GtkTextView *text_view = (GtkTextView *)widget;
- GtkTextBuffer *buffer;
- GtkTextIter iter;
- GdkRectangle iter_location;
- GdkRectangle visible_rect;
- gboolean is_visible;
IDE_ENTRY;
@@ -411,33 +405,8 @@ ide_source_view_menu_popup_action (GtkWidget *widget,
gtk_widget_set_valign (GTK_WIDGET (self->popup_menu), GTK_ALIGN_START);
}
- buffer = gtk_text_view_get_buffer (text_view);
- gtk_text_buffer_get_iter_at_mark (buffer, &iter,
- gtk_text_buffer_get_insert (buffer));
- gtk_text_view_get_iter_location (text_view, &iter, &iter_location);
- gtk_text_view_get_visible_rect (text_view, &visible_rect);
-
- is_visible = (iter_location.x + iter_location.width > visible_rect.x &&
- iter_location.x < visible_rect.x + visible_rect.width &&
- iter_location.y + iter_location.height > visible_rect.y &&
- iter_location.y < visible_rect.y + visible_rect.height);
-
- if (is_visible)
- {
- gtk_text_view_buffer_to_window_coords (text_view,
- GTK_TEXT_WINDOW_WIDGET,
- iter_location.x,
- iter_location.y,
- &iter_location.x,
- &iter_location.y);
-
- gtk_popover_set_pointing_to (self->popup_menu, &iter_location);
- }
- else
- {
- gtk_popover_set_pointing_to (self->popup_menu,
- &(GdkRectangle) { self->click_x, self->click_y, 1, 1 });
- }
+ gtk_popover_set_pointing_to (self->popup_menu,
+ &(GdkRectangle) { self->click_x, self->click_y, 1, 1 });
gtk_popover_popup (self->popup_menu);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]