diff --git a/frontends/gnustep/BrowserWindowController.h b/frontends/gnustep/BrowserWindowController.h index 7b3167540..cc6123fae 100644 --- a/frontends/gnustep/BrowserWindowController.h +++ b/frontends/gnustep/BrowserWindowController.h @@ -71,6 +71,11 @@ struct form_control; -(void)findPrevious: (NSString*)needle matchCase: (BOOL)matchCase sender: (id)sender; -(void)showAll: (NSString*)needle matchCase: (BOOL)matchCase sender: (id)sender; -(void)bookmarkPage: (id)sender; +-(void)zoomIn: (id)sender; +-(void)zoomOut: (id)sender; +-(void)resetZoom: (id)sender; +-(void)reload: (id)sender; +-(void)stopLoading: (id)sender; -(void)showDropdownMenuWithOptions: (NSArray*)options atLocation: (NSPoint)location inTab: (id)tab control: (struct form_control*)control; diff --git a/frontends/gnustep/BrowserWindowController.m b/frontends/gnustep/BrowserWindowController.m index a42df7669..7270d75ea 100644 --- a/frontends/gnustep/BrowserWindowController.m +++ b/frontends/gnustep/BrowserWindowController.m @@ -245,7 +245,7 @@ static id newTabTarget; } -(void)updateBrowserExtentForTab: (id)tab { int width, height; - browser_window_get_extents([tab browser], false, &width, &height); + browser_window_get_extents([tab browser], true, &width, &height); NSLog(@"set frame to size: %d, %d", width, height); [[tab plotView] setFrame: NSMakeRect(0, 0, width, height)]; } @@ -353,6 +353,27 @@ static id newTabTarget; [bmController release]; } +-(void)zoomIn: (id)sender { + [plotView zoomIn: sender]; +} + +-(void)zoomOut: (id)sender { + [plotView zoomOut: sender]; +} + +-(void)resetZoom: (id)sender { + [plotView resetZoom: sender]; +} + +-(void)reload: (id)sender { + [plotView reload: sender]; +} + +-(void)stopLoading: (id)sender { + [plotView stopReloading: sender]; +} + + -(NSString*)visibleUrl { return [[self currentWebsiteForTab: activeTab] url]; } diff --git a/frontends/gnustep/PlotView.h b/frontends/gnustep/PlotView.h index 9a1b95d13..df861653c 100644 --- a/frontends/gnustep/PlotView.h +++ b/frontends/gnustep/PlotView.h @@ -17,4 +17,7 @@ -(void)reload: (id)sender; -(void)stopReloading: (id)sender; -(void)showDropdownMenuWithOptions: (NSArray*)options atLocation: (NSPoint)location control: (struct form_control*)control; +-(void)zoomIn: (id)sender; +-(void)zoomOut: (id)sender; +-(void)resetZoom: (id)sender; @end diff --git a/frontends/gnustep/PlotView.m b/frontends/gnustep/PlotView.m index 0c3473c42..f753a4f77 100644 --- a/frontends/gnustep/PlotView.m +++ b/frontends/gnustep/PlotView.m @@ -328,11 +328,6 @@ static const struct plotter_table gnustep_plotters = { - (NSPoint) convertMousePoint: (NSEvent *)event { NSPoint location = [self convertPoint: [event locationInWindow] fromView: nil]; - float bscale = browser_window_get_scale(browser); - - location.x /= bscale; - location.y /= bscale; - return location; } @@ -817,4 +812,16 @@ static browser_mouse_state cocoa_mouse_flags_for_event( NSEvent *evt ) { NSLog(@"Failed to process selection"); } +-(void)resetZoom: (id)sender { + browser_window_set_scale(browser, 1.0, true); +} + +-(void)zoomIn: (id)sender { + browser_window_set_scale(browser, 0.05, false); +} + +-(void)zoomOut: (id)sender { + browser_window_set_scale(browser, -0.05, false); +} + @end diff --git a/frontends/gnustep/res/Menu.gorm/data.classes b/frontends/gnustep/res/Menu.gorm/data.classes index 71005240e..6fd3f3b7a 100644 --- a/frontends/gnustep/res/Menu.gorm/data.classes +++ b/frontends/gnustep/res/Menu.gorm/data.classes @@ -19,16 +19,21 @@ "didTapNewWindow:", "findNext:", "findPrevious:", - "newTab:", "newFolder:", + "newTab:", + "reload:", "remove:", "removeAll:", + "resetZoom:", "showAll:", "showBookmarksWindow:", "showDownloadsWindow:", "showFindPanel:", "showHistoryWindow:", - "showPreferencesWindow:" + "showPreferencesWindow:", + "stopLoading:", + "zoomIn:", + "zoomOut:" ); Super = NSObject; }; diff --git a/frontends/gnustep/res/Menu.gorm/objects.gorm b/frontends/gnustep/res/Menu.gorm/objects.gorm index a2fc22aa9..25add3765 100644 Binary files a/frontends/gnustep/res/Menu.gorm/objects.gorm and b/frontends/gnustep/res/Menu.gorm/objects.gorm differ