Text scaling zooms the text of a particular buffer, everywhere that the buffer is displayed.
What you want to do is zoom a particular frame and not just scale the text of a particular buffer.
zoom-in/out of library
zoom-frm.el let you do both of these things easily and incrementally.
From the keyboard, command
zoom-in/out is all you need - use it as a replacement for
(define-key ctl-x-map [(control ?+)] 'zoom-in/out)
(define-key ctl-x-map [(control ?-)] 'zoom-in/out)
(define-key ctl-x-map [(control ?=)] 'zoom-in/out)
(define-key ctl-x-map [(control ?0)] 'zoom-in/out)
You can bind
zoom-out to mouse-wheel rotations:
(global-set-key (vector (list 'control mouse-wheel-down-event)) 'zoom-in)
(global-set-key (vector (list 'control mouse-wheel-up-event)) 'zoom-out)
I bind these as well, for zooming by mouse clicking:
(global-set-key [S-mouse-1] 'zoom-in)
(global-set-key [C-S-mouse-1] 'zoom-out)
;; Get rid of `mouse-set-font' or `mouse-appearance-menu':
(global-set-key [S-down-mouse-1] nil)
zoom-frm.el commands can behave like
zooming a buffer wherever it is displayed, or they can zoom an
entire single frame (all of its windows, including minibuffers; its mode line; its scroll bars; etc.).
C-u at any time while using these commands to toggle between buffer zooming and frame
zooming. The kind of zooming (buffer or frame) you get by default is defined by option
C-u with a zoom command toggles the option.